Outgoing Webhook mengirimkan permintaan HTTP ke URL yang dikonfigurasi (server tujuan dari Webhook) setelah berikut ini.
- Ketika analisis suara call history selesai.
- Ketika penelepon memasukkan nomor IVR yang diatur di MiiTel.
- Ketika ada panggilan tak terjawab.
- Ketika tidak ada yang menjawab panggilan keluar.
- Ketika tidak ada yang menjawab panggilan yang dibuat oleh dialer prediktif.
- Ketika tidak ada yang menjawab penerusan panggilan otomatis.
Engineers dapat menggunakan Webhook untuk mengintegrasikan detail call history ke eksternal sistem.
Contents
Cara mengintegrasikan
PENTING
Challenge-Response konfirmasi
- Saat Anda Save pengaturan, tambahkan {'challenge':'hex_token'} ke setting dan payload, dan kirimkan permintaan konfirmasi Challenge-Response ke server yang diatur dalam [URL] (fixed IP address).
- Server tujuan harus mengembalikan value 'hex_token' dengan respons 200 dengan header {'Content-Type':'text/plain'}.
- Log in ke MiiTel Admin.
- Klik Third Party Integration > Outgoing Webhook.
- Klik Add new integration setting.
- Anda akan mengatur bagian-bagian berikut.
1Name: Masukkan nama dari setting (contoh: nama yang dapat mengenali integrasi ini)
2URL: Masukkan URL (server tujuan Webhook)
3Additional headers: Masukkan header yang ingin Anda tambahkan (JSON format)
Anda akan menambahkan Bearer token atau data autentikasi user untuk autentikasi BASIC.
Contoh: {”Authorization":"Bearer ACCESSTOKEN"}
IMPORTANT
- Anda tidak dapat mengubah 'User-Agent' dan 'Content-Type'. Mereka tidak akan ditampilkan dalam pengaturan ini bahkan jika Anda mengaturnya.
4Additional payload: Masukkan payload yang ingin Anda tambahkan (format JSON)
5Phrases of transcription: Ceklis di sini jika Anda tidak ingin menyertakan frasa hasil speech recognition dalam payload.
6Keywords of transcription: Ceklis di sini jika Anda tidak ingin menyertakan keywords dari hasil speech recognition di payload.
7Source IP address: Ceklis di sini jika Anda ingin source IP address diperbaiki
- MiiTel menggunakan alamat IP sumber berikut untuk mengirim request.
- 18.177.83.94/32
- 35.73.236.241/32
- Jika Anda mengaktifkan ini, request semua call history selama 10 menit terakhir dari call history akan dikirim pada menit ke-0, ke-10, ke-20, ke-30, ke-40, dan ke-50 setiap jam.
- Klik Save.
NOTE
- Jika konfirmasi tidak dapat dilakukan dengan autentikasi challenge-response, Anda akan melihat pesan kesalahan berikut dan tidak dapat menyimpan pengaturan integrasi.
- Jika Anda tidak menerima challenge value yang benar dari server
- Jika Anda tidak menerima respons untuk jangka waktu tertentu
- Jika Anda tidak menerima challenge value yang benar dari server
Cara mengedit integrasi
- Log in ke MiiTel Admin.
- Klik Third Party Integration > Outgoing Webhook.
- Klik [
] pada integration setting > Edit.
- Setelah Anda mengedit, klik Save.
Cara menghapus integrasi
- Log in ke MiiTel Admin.
- Klik Third Party Integration > Outgoing Webhook.
- Klik [
] pada integration setting > Delete.
- Klik Delete.
Kapan Outgoing Webhook mengirimkan HTTP request
- Ketika analisis suara call history selesai.
- Ketika penelepon memasukkan nomor IVR yang diatur di MiiTel.
- Ketika ada panggilan tak terjawab.
- Ketika tidak ada yang menjawab panggilan keluar.
- Ketika tidak ada yang menjawab panggilan yang dibuat oleh dialer prediktif.
- Ketika tidak ada yang menjawab penerusan panggilan otomatis.
HTTP request
Version
- HTTP/1.1
Method
- POST
Header
Key | Description |
---|---|
content-type | application/json; charset=utf-8 |
user-agent | MiiTel-Webhook/v1 |
Payload
Key | Description | ||||
---|---|---|---|---|---|
call |
Call history | ||||
id |
ID of the call history The ID in the following URL (Call history in MiiTel Analytics) https://<Company ID>.miitel.jp/app/calls/<Sequence ID> |
||||
tenant_code |
Company ID | ||||
|
details |
Details of the call history | |||
id |
ID of the call history | ||||
dial_starts_at |
Dial begin time | ||||
dial_answered_at |
Call begin time | ||||
dial_ends_at |
Call end time | ||||
queueing_starts_at |
The time when the incoming call came into the queue. | ||||
queueing_answered_at |
The time the user answered the incoming call that came into the queue or the time when someone answered the call made by the predictive dialer. | ||||
queueing_ends_at |
The time when the incoming call that came into the queue ended or the time when the phone call ended. | ||||
call_type |
Call type |
||||
circuit_number |
Circuit number | ||||
circuit_name |
Circuit name | ||||
from_number |
Phone number of the caller Check "null" for the outgoing call and "circuit_number" for the start of the outgoing call |
||||
to_number |
Phone number of the called person | ||||
previous_id |
Sequence ID of the most recent action ("null" if there are no recent actions) | ||||
dtmf |
IVR push number | ||||
analysis |
Speech evaluation | ||||
score |
Overall score | ||||
tlr |
Talk : Listen ratio |
||||
rally_count |
Number of rallies | ||||
overlap_count |
Number of overlaps | ||||
silence_count |
Number of silences | ||||
participants |
Speaker | ||||
id |
ID of the speaker | ||||
from_to |
FROM: the person who made the call |
||||
name |
Speaker MiiTel username or the contact person name that is registered in Contacts ("null" if the person is not registered in Contacts) |
||||
company_name |
Account name | ||||
analysis |
Voice evaluation | ||||
f0 | Fundamental frequency | ||||
speechrate | Speech rate | ||||
variance | Intonation strength | ||||
filler_count | Number of fillers | ||||
positive_score | Emotion recognition (positive score) Value: 0 - 1 (max: 1) |
||||
negative_score | Emotion recognition (negative score) Value: 0 - 1 (max: 1) |
||||
tags |
Call memo | ||||
created_by |
MiiTel user who registered the call memo | ||||
creator_type |
TENANT_USER: Call memo SYSTEM: Automatic call memo |
||||
value |
Call memo fields (value of the registered call memo) | ||||
comments |
Comment | ||||
created_at |
Registration date of the comment | ||||
created_by |
User who registered the comment | ||||
value |
Details of the comment | ||||
keywords |
Keyword appearance | ||||
starts_at |
The time when the keyword appeared (amount of time (sec) after the start of the call) | ||||
participant_id |
ID of the speaker who spoke the keyword (participant > id) | ||||
value |
Value of the keyword | ||||
phrases |
Speech recognition (Without fillers) | ||||
participant_id |
ID of the speaker (participant > id) | ||||
raw |
Speech recognition results of the speaker (original text) | ||||
order | Order number of the speech (0 -) | ||||
phrase | Speech recognition results (summary) | ||||
phrase_nofiller |
Speech recognition results (without fillers) |
||||
start_at | Start time of the speech (amount of time (sec) after the start of the call) | ||||
end_at | End time of the speech (amount of time (sec) after the start of the call) | ||||
filler_num | Number of characters in the speech recognition results (without fillers) | ||||
summary | Speech recognition (summary) The key is the same as details > phrases > raw |
||||
speech_recognition |
Speech recognition | ||||
raw |
Speech recognition in order of the call history (original text) | ||||
summary |
Speech recognition in order of the call history (summary) |
Request sample
Request sample (Anda dapat mengklik tautan ini untuk mengunduh sampel request.)
{
"call": {
"id": "99e2fdb7-845a-46de-8d94-882add220551",
"tenant_code": "miitel-test",
"details": [
{
"id": "99e2fdb7-845a-46de-8d94-882add220551",
"dial_starts_at": "2022-12-21T22:31:56+00:00",
"dial_answered_at": "2022-12-21T22:32:29+00:00",
"dial_ends_at": "2022-12-21T22:33:22+00:00",
"call_type": "OUTGOING_CALL",
"circuit_number": "8330000000",
"circuit_name": "8330000000",
"from_number": null,
"to_number": "4800000000",
"previous_id": null,
"dtmf": "0",
"analysis": {
"score": 29.67924528301887,
"tlr": 0.5575,
"rally_count": 1,
"overlap_count": 0,
"silence_count": 1
},
"participants": [
{
"id": "018536d0-9363-8e82-fcce-bc2a7098f830",
"from_to": "FROM",
"name": "Edgardo",
"company_name": null,
"analysis": {
"f0": 103.9616,
"speechrate": 11.0932,
"variance": 14.5887,
"filler_count": 0,
"positive_score": 0,
"negative_score": 0
}
},
{
"id": "018536d0-9363-768c-2a6b-e145d790bdb6",
"from_to": "TO",
"name": null,
"company_name": null,
"analysis": {
"f0": 182.7321,
"speechrate": 14.249,
"variance": 17.7925,
"filler_count": 0,
"positive_score": 0,
"negative_score": 0
}
}
],
"tags": [
{
"created_by": "Edgardo",
"creator_type": "TENANT_USER",
"value": "Left Message"
}
],
"comments": [],
"keywords": [
{
"starts_at": 1,
"participant_id": "018536d0-9363-768c-2a6b-e145d790bdb6",
"value": "call"
},
{
"starts_at": 29,
"participant_id": "018536d0-9363-8e82-fcce-bc2a7098f830",
"value": "call"
}
],
"phrases": [
{
"participant_id": "018536d0-9363-8e82-fcce-bc2a7098f830",
"raw": [
{
"order": 2,
"phrase": "Hello. My name is Eddie and I'm calling you from Midtown and this message is for Mark.",
"phrase_nofiller": "Hello. My name is Eddie and I'm calling you from Midtown and this mess",
"start_at": 18,
"end_at": 23.235,
"filler_num": 0
},
{
"order": 3,
"phrase": "I'm just calling in to follow up on an email that I sent to you earlier.",
"phrase_nofiller": "I'm just calling in to follow up on an email that I sent ",
"start_at": 23.695,
"end_at": 28.615,
"filler_num": 0
},
{
"order": 4,
"phrase": "And if you can, please call me at 8:33.",
"phrase_nofiller": "And if you can, please call me ",
"start_at": 29.275,
"end_at": 32.32,
"filler_num": 0
},
{
"order": 5,
"phrase": "000.",
"phrase_nofiller": "000.",
"start_at": 32.775,
"end_at": 34.06,
"filler_num": 0
},
{
"order": 6,
"phrase": "0000.",
"phrase_nofiller": "0000.",
"start_at": 34.39,
"end_at": 36.075,
"filler_num": 0
},
{
"order": 7,
"phrase": "That is 8334 m.",
"phrase_nofiller": "That is 8334",
"start_at": 36.62,
"end_at": 39.16,
"filler_num": 0
},
{
"order": 8,
"phrase": "Thanks. And I'm looking forward to speaking with you soon.",
"phrase_nofiller": "Thanks. And I'm looking forward to speaking with ",
"start_at": 39.535,
"end_at": 42.455,
"filler_num": 0
}
],
"summary": [
{
"order": 2,
"phrase": "Hello. My name is Eddie and I'm calling you from Midtown and this message is for Mark.",
"phrase_nofiller": "Hello. My name is Eddie and I'm calling you from Midtown and this mess",
"start_at": 18,
"end_at": 23.235,
"filler_num": null
},
{
"order": 3,
"phrase": "I'm just calling in to follow up on an email that I sent to you earlier.",
"phrase_nofiller": "I'm just calling in to follow up on an email that I sent ",
"start_at": 23.695,
"end_at": 28.615,
"filler_num": null
}
]
},
{
"participant_id": "018536d0-9363-768c-2a6b-e145d790bdb6",
"raw": [
{
"order": 0,
"phrase": "Hello, you've reached Arizona. Backyard custom, please leave a message. We will call you back as soon as possible. Thank you.",
"phrase_nofiller": "Hello, you've reached Arizona. Backyard custom, please leave a message. We will call you back as soon as p",
"start_at": 1.05,
"end_at": 8.14,
"filler_num": 0
},
{
"order": 1,
"phrase": "At the tone, please record your message. When you have finished recording, you may hang up or press one for more options.",
"phrase_nofiller": "At the tone, please record your message. When you have finished recording, you may hang up or press o",
"start_at": 10.7,
"end_at": 17.225,
"filler_num": 0
}
],
"summary": [
{
"order": 0,
"phrase": "Hello, you've reached Arizona. Backyard custom, please leave a message. We will call you back as soon as possible. Thank you.",
"phrase_nofiller": "Hello, you've reached Arizona. Backyard custom, please leave a message. We will call you back as soon as p",
"start_at": 1.05,
"end_at": 8.14,
"filler_num": null
},
{
"order": 1,
"phrase": "At the tone, please record your message. When you have finished recording, you may hang up or press one for more options.",
"phrase_nofiller": "At the tone, please record your message. When you have finished recording, you may hang up or press o",
"start_at": 10.7,
"end_at": 17.225,
"filler_num": null
}
]
}
],
"speech_recognition": {
"raw": "0:01 (Customer) Hello, you've reached Arizona. Backyard custom, please leave a message. We will call you back as soon as p\n0:10 (Customer) At the tone, please record your message. When you have finished recording, you may hang up or press o\n0:18 (Operator) Hello. My name is Eddie and I'm calling you from Midtown and this mess\n0:23 (Operator) I'm just calling in to follow up on an email that I sent \n0:29 (Operator) And if you can, please call me \n0:32 (Operator) 000.\n0:34 (Operator) 0000.\n0:36 (Operator) That is 8334\n0:39 (Operator) Thanks. And I'm looking forward to speaking with ",
"summary": "0:01 (Customer) Hello, you've reached Arizona. Backyard custom, please leave a message. We will call you back as soon as p\n0:10 (Customer) At the tone, please record your message. When you have finished recording, you may hang up or press o\n0:18 (Operator) Hello. My name is Eddie and I'm calling you from Midtown and this mess\n0:23 (Operator) I'm just calling in to follow up on an email that I sent "
}
}
]
},
"params_key": "z&aH+&Kz8saC"
}