Заказ встречного звонка в bpm'online абонентом из очереди
Задача
Абонент находится в очереди ожидания. Необходимо предложить нажать "1" для заказа встречного звонка. Встречный звонок создается в виде активности в bpm'online.
Реализация
В разделе с public маршрутами создаем схему с очередью ожидания ACD (6 строка)
В очереди на 60 секунде (либо другое время) запускаем таймер (10 строка)
В таймер помещаем проигрывание звукового файла (14) с предложением нажать "1" для заказа обратного звонка
Проверяем, если абонент нажал "1" (33) делаем авторизацию в bpm'online (36) и создаем активность (62)
Проигрываем файл абоненту (112), что с ним свяжутся и завершаем звонок.
Пример схемы
[
{
"answer": ""
},
{
"queue": {
"name": "myACD_queue",
"timer": [
{
"interval": 60,
"tries": 1,
"actions": [
{
"playback": {
"getDigits": {
"setVar": "getIvrDigit",
"min": 1,
"max": 1,
"tries": 1,
"timeout": 4000,
"flushDTMF": true
},
"files": [
{
"name": "Press_1_for_callback.wav",
"type": "wav"
}
]
}
},
{
"if": {
"expression": "${getIvrDigit} == '1'",
"then": [
{
"httpRequest": {
"url": "https://005544-sales-team.bpmonline.com/ServiceModel/AuthService.svc/Login",
"method": "POST",
"timeout": 3000,
"exportCookie": "my_cookie",
"headers": {
"Content-Type": "application/json"
},
"data": {
"UserName": "Jons Jhone",
"UserPassword": "Jons Jhone"
}
}
},
{
"string": {
"data": "${my_cookie}",
"fn": "replace",
"setVar": "BPMCSRF",
"args": [
"/.*BPMCSRF=([-._A-Za-z0-9\/]{22});/",
"$1"
]
}
},
{
"httpRequest": {
"url": "https://005544-sales-team.bpmonline.com/0/dataservice/json/reply/InsertQuery",
"method": "POST",
"timeout": 2000,
"exportCookie": "",
"headers": {
"Cookie": "${my_cookie}",
"BPMCSRF": "${BPMCSRF}",
"Accept": "application/json;odata=verbose",
"Content-Type": "application/json"
},
"data": {
"ColumnValues": {
"Items": {
"ActivityCategory": {
"ExpressionType": 2,
"Parameter": {
"DataValueType": 0,
"Value": "E52BD583-7825-E011-8165-00155D043204"
}
},
"RemindToOwner": {
"ExpressionType": 2,
"Parameter": {
"DataValueType": 12,
"Value": true
}
},
"Title": {
"ExpressionType": 2,
"Parameter": {
"DataValueType": 1,
"Value": "Заказ встречного звонка - ${caller_id_number}"
}
},
"Type": {
"ExpressionType": 2,
"Parameter": {
"DataValueType": 0,
"Value": "E1831DEC-CFC0-DF11-B00F-001D60E938C6"
}
}
}
},
"OperationType": 1,
"RootSchemaName": "Activity"
}
}
},
{
"playback": {
"files": [
{
"name": "Thank_You.wav",
"type": "wav"
}
]
}
},
{
"hangup": "ORIGINATOR_CANCEL"
}
]
}
}
]
}
]
}
},
{
"hangup": ""
}
]