Управление звонком
ringReady
Ответ 180 Ringing на входящий INVITE запрос
Code Block |
---|
{
"ringReady": ""
} |
preAnswer
Ответ 183 Session Progress на входящий INVITE запрос
Code Block |
---|
{
"preAnswer": ""
} |
answer
Ответ 200 Ok на входящий INVITE запрос
Code Block |
---|
{
"answer": ""
} |
sipRedirect
Ответ SIP 302 Moved Temporarily на входящий INVITE запрос
ringback
Приложение позволяет задать тон КПВ либо медиафайл
Code Block |
---|
{
"ringback": {
"all": true,
"call": {
"name": "%(1000,6000,425);loops=-1",
"type": "tone"
},
"hold": {
"id": 10
},
"transfer": {
"name": "%(1000,6000,425);loops=-1",
"type": "tone"
}
}
} |
sleep
updateCid
Приложение позволяет изменить значение номера и имени абонентаПауза, указывается в миллисекундах
Code Block |
---|
{
"sleep": 1000
} |
park
Удержание звонка на стороне сервера
Code Block |
---|
{
"parkupdateCid": {
"autoname": "inНовый клиент",
"lotnumber": "1000-2000",8${effective_caller_id_number}"
}
} |
sleep
Пауза, указывается в миллисекундах
Code Block |
---|
{
"namesleep": "myPark"
}1000
} |
conference
park
Удержание звонка на стороне сервераВход в конференцию
Code Block |
---|
{
"conferencepark": {
"flagsauto": ["in",
"lot": "audio1000-always2000",
],
"name": "CR-$1",
"profile": "video-mcu-stereo"name": "myPark"
}
} |
bridge
conference
Вход в конференциюИнициация Б-канала с дальнейшим соединением с А-каналом
Code Block |
---|
{
"bridgeconference": {
"endpointsflags": [
{"audio-always"
],
"extensionname": "1008CR-$1",
"profile": "video-mcu-stereo"
}
} |
bridge
Инициация Б-канала с дальнейшим соединением с А-каналом
Code Block |
---|
{
"idlebridge": true,
{
"typeendpoints": "user"[
},
{{
"dialStringextension": "3807323277581008",
"nameidle": "lifecell_out"true,
"type": "gatewayuser",
},
"parameters": {
{
"origination_caller_id_numberdialString": "380732327757380732327758",
"name": "sip_h_X-FWD-Originallifecell_out",
"type": "${caller_id_number}"
gateway",
"parameters": }{
}
]"origination_caller_id_number": "380732327757",
}
} |
hangup
Завершение звонка. В качестве параметра может быть указан код ответа из списка Hangup cause
Code Block |
---|
{
"hangupsip_h_X-FWD-Original": ""
} |
Медиавзаимодействие
inBandDTMF
Управление in-band DTMF
Code Block |
---|
{
"inBandDTMF": "start"
} |
flushDTMF
Очистка буфера ввода абонентом
Code Block |
---|
{
"flushDTMF": true
} |
playback
Воспроизведение медиафайла с возможностью сохранить ввод абонента в переменную
${caller_id_number}"
}
}
]
}
} |
hangup
Завершение звонка. В качестве параметра может быть указан код ответа из списка Hangup cause
Code Block |
---|
{
"hangup": ""
} |
Медиавзаимодействие
inBandDTMF
Управление in-band DTMF
Code Block |
---|
{
"inBandDTMF": "start"
} |
flushDTMF
Очистка буфера ввода абонентом
Code Block |
---|
{
"flushDTMF": true
} |
playback
Воспроизведение медиафайла с возможностью сохранить ввод абонента в переменную
Code Block |
---|
{
"playback": {
"files": [
{
"name": "its_${lang}.wav"
}
],
"getDigits": {
"flushDTMF": true,
"max": 4,
"min": 1,
"setVar": "getIVR",
"timeout": 3000,
"tries": 1
}
}
} |
recordFile
Записать медиа в файл
Code Block |
---|
{
"recordFile": {
"maxSec": 30,
"name": "${uuid}",
"silenceHits": 5,
"terminators": "#",
"type": "mp3",
"voiceMail": true
}
} |
recordSession
Управление записью медиапотока в файл
Code Block |
---|
{
"recordSession": {
"action": "start",
"bridged": false,
"followTransfer": true,
"minSec": 2,
"stereo": true,
"type": "mp3"
}
} |
generateLink
Приложение создает публичную ссылку на запись и сохраняет значение в переменную
Code Block |
---|
{
"generateLink": {
"expire": 604800,
"server": "https://dev.webitel.com",
"set": "record_link"
}
} |
Синтез и распознавание речи
tts
Генерация речи
Code Block |
---|
{
"tts": {
"language": "ru-RU",
"provider": "google",
"text": "<speak>Ваш номер договора ${usr_selected_prolongation}.</speak>",
"textType": "ssml"
}
} |
getSpeech
Асинхронное распознавание речи
Code Block |
---|
[
{
"set": {
"GOOGLE_DISABLE_BREAK": "true",
"GOOGLE_OFFSET": "14000",
"GOOGLE_SILENCE_THRESHOLD": "100",
"GOOGLE_SPEECH_ALTERNATIVE_LANG": "ru-RU",
"GOOGLE_SPEECH_ENABLE_AUTOMATIC_PUNCTUATION": "true",
"GOOGLE_SPEECH_LANG": "uk-UA"
}
},
{
"playback": {
"files": [
{
"name": "media_file_menu.wav"
},
{
"name": 3500,
"type": "silence"
}
],
"getSpeech": {}
}
},
{
"set": {
"usr_text": "${google_transcript}"
}
}
] |
Работа с очередями
joinQueue
Постановка абонента в очередь
Code Block |
---|
{
"joinQueue": {
"bucket_id": 1,
"priority": 100,
"agent": {
"extension": "1000"
},
"queue": {
"id": 1
},
"ringtone": {
"id": 126,
"type": "wav"
},
"timers": [
{
"actions": [
{
"playback": {
"files": [
{
"name": "hold_акции.wav"
}
|
Code Block |
---|
{
"playback": {
"files": [
]
{
"name": "its_${lang}.wav"
}
],}
"getDigits": {
],
"flushDTMF": true,
"maxinterval": 41,
"mintries": 1,20
}
"setVar": "getIVR",
],
"timeouttransferAfterBridge": 3000,{
"triesid": 12
}
}
} |
recordFile
getQueueAgents
Получить информацию по количеству операторов в зависимости от статуса в очередиЗаписать медиа в файл
Code Block |
---|
{
"getQueueAgents": {
"recordFilequeue": {
"maxSecid": 30,2
"name": "${uuid}" ,
"silenceHitsset": 5,
{
"terminatorsres_count": "#count",
"typeres_offline": "mp3offline",
"voiceMail": true
}
} |
recordSession
Управление записью медиапотока в файл
Code Block |
---|
{
"res_online": "online",
"recordSessionres_pause": {
"pause",
"actionres_waiting": "startwaiting",
"bridged": false,}
}
} |
getQueueMetrics
Рассчитать показатели по очереди
Code Block |
---|
{
"followTransfergetQueueMetrics": true,{
"minSecbucket": 2null,
"stereocalls": true"complete",
"typefield": "mp3sl",
}
} |
Работа с очередями
joinQueue
Постановка абонента в очередь
Code Block |
---|
{
"joinQueuelastMinutes": {3800,
"bucket_idmetric": 1"sl",
"priorityqueue": 100,
{
"agentid": {19
},
"extensionset": "1000varResult",
},"slSec": 20
}
} |
ccPosition
Текущая позиция абонента в очереди
Code Block |
---|
{
"queueccPosition": {
"idset": 1"pos"
}
} |
ewt
Расчет среднего времени ожидания абонентом в очереди
Code Block |
---|
{
},"ewt": {
"ringtonequeue_ids": {[
8
"id": 126,
],
"typesetVar": "wav"
}ewt",
"timersstrategy": ["puzzle"
}
} |
memberInfo
Найти информацию по абоненту дайлера
Code Block |
---|
{
"memberInfo": {
"bucket_id": 1,
"actionscompleted": [false,
"destination": "${caller_id_number}",
"name": {"Customer Name",
"queue_ids": [
"playback": {
8
],
"set": {
"filesmember_var1": ["sum",
"member_var2": "credit"
},
{"today": true
}
} |
patchMembers
Изменить информацию по абоненту дайлера
Code Block |
---|
{
"patchMembers": {
"bucket_id": 1,
"completed": false,
"namedestination": "hold_акции.wav"${caller_id_number}",
"name": "Customer Name",
"queue_ids": [
}8
],
"patch": {
]
"bucket_id": 2,
"name": "sum",
}
"priority": "credit",
}"ready_at": 2147483647,
],
"stop_cause": "cancel",
"intervalvariables": 1,{
"triesnew_var": 20"var"
}
]},
"transferAfterBridgetoday": true
}
} |
callbackQueue
Добавить абонента в оффлайн очередь
Code Block |
---|
{
"callbackQueue": {
"idcommunication": 2{
}
}
} |
getQueueAgents
Получить информацию по количеству операторов в зависимости от статуса в очереди
Code Block |
---|
{
"getQueueAgentsdestination": "${caller_id_number}",
"queuetype_id": {1
},
"idholdSec": 2"1",
"name": "${caller_id_number}",
"setqueue_id": {
26,
"res_countvariables": "count",{
"res_offlineDPD": "offline${DPD}",
"resinternal_operator_onlineid": "online${internal_operator_id}",
"resloan_pauseid": "pause${Loan}",
}
}
} |
confirm
Установка значений до набора абонента дайлером
Code Block |
---|
{
"res_waitingconfirm": "waiting"{
"destination": "8${destination_number}",
}
} |
getQueueMetrics
Рассчитать показатели по очереди
Code Block |
---|
{
"getQueueMetricsdisplay": "${agent_extension}",
"bucketexport": null,[
"calls": "completenew_variable",
"field": "sl",]
}
} |
cancel
Отмена текущей попытки набора абонента в дайлере
Code Block |
---|
{
"lastMinutescancel": 3800,{
"metricdescription": "sldo not call",
"queueexport": {[
"id": 19new_var"
}],
"setnextDistributeSec": "varResult"0,
"slSecstop": 20false
}
} |
lastBridged
Получить информацию по соединениям для липкости звонка
Code Block |
---|
{
"lastBridged": {
"calls": {
"inbound": "all",
"outbound": "all",
"queue_ids": [
1, 2
]
},
"hours": 24,
"number": "380932327757",
"set": {
"my_ag": "agent_id",
"my_ext": "extension",
"my_q": "queue_id"
}
}
} |
- false - Не учитывать данное направление звонка
- bridged - Попытки по которым было соединение
- attempt - Попытки без соединения
- all - Все попытки