You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 3 Next »

Управление звонком

ringReady

Ответ 180 Ringing на входящий INVITE запрос

{
    "ringReady": ""
}

preAnswer

Ответ 183 Session Progress на входящий INVITE запрос

{
    "preAnswer": ""
}

answer

Ответ 200 Ok на входящий INVITE запрос

{
    "answer": ""
}

sipRedirect

Ответ SIP 302 Moved Temporarily на входящий INVITE запрос

{
    "sipRedirect": "sip:[email protected]"
}

ringback

Приложение позволяет задать тон КПВ либо медиафайл

{
    "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

Пауза, указывается в миллисекундах

{
    "sleep": 1000
}

park

Удержание звонка на стороне сервера

{
    "park": {
        "auto": "in",
        "lot": "1000-2000",
        "name": "myPark"
    }
}

conference

Вход в конференцию

{
    "conference": {
        "flags": [
            "audio-always"
        ],
        "name": "CR-$1",
        "profile": "video-mcu-stereo"
    }
}

bridge

Инициация Б-канала с дальнейшим соединением с А-каналом

{
    "bridge": {
        "endpoints": [
            {
                "extension": "1008",
                "idle": true,
                "type": "user"
            },
            {
                "dialString": "380732327758",
                "name": "lifecell_out",
                "type": "gateway",
                "parameters": {
                    "origination_caller_id_number": "380732327757",
                    "sip_h_X-FWD-Original": "${caller_id_number}"
                }
            }
        ]
    }
}

hangup

Завершение звонка. В качестве параметра может быть указан код ответа из списка Hangup cause

{
    "hangup": ""
}

Медиавзаимодействие

inBandDTMF

Управление in-band DTMF

{
  "inBandDTMF": "start"
}

flushDTMF

Очистка буфера ввода абонентом

{
  "flushDTMF": true
}

playback

Воспроизведение медиафайла с возможностью сохранить ввод абонента в переменную

{
    "playback": {
        "files": [
            {
                "name": "its_${lang}.wav"
            }
        ],
        "getDigits": {
            "flushDTMF": true,
            "max": 4,
            "min": 1,
            "setVar": "getIVR",
            "timeout": 3000,
            "tries": 1
        }
    }
}

recordFile

Записать медиа в файл

{
    "recordFile": {
        "maxSec": 30,
        "name": "${uuid}",
        "silenceHits": 5,
        "terminators": "#",
        "type": "mp3",
        "voiceMail": true
    }
}

recordSession

Управление записью медиапотока в файл

{
    "recordSession": {
        "action": "start",
        "bridged": false,
        "followTransfer": true,
        "minSec": 2,
        "stereo": true,
        "type": "mp3"
    }
}

Работа с очередями

joinQueue

Постановка абонента в очередь

{
    "joinQueue": {
        "bucket_id": 1,
        "priority": 100,
        "agent": {
            "extension": "1000"
        },
        "queue": {
            "id": 1
        },
        "ringtone": {
            "id": 126,
            "type": "wav"
        },
        "timers": [
            {
                "actions": [
                    {
                        "playback": {
                            "files": [
                                {
                                    "name": "hold_акции.wav"
                                }
                            ]
                        }
                    }
                ],
                "interval": 1,
                "tries": 20
            }
        ],
        "transferAfterBridge": {
            "id": 2
        }
    }
}

getQueueAgents

Получить информацию по количеству операторов в зависимости от статуса в очереди

{
    "getQueueAgents": {
        "queue": {
            "id": 2
        },
        "set": {
            "res_count": "count",
            "res_offline": "offline",
            "res_online": "online",
            "res_pause": "pause",
            "res_waiting": "waiting"
        }
    }
}

getQueueMetrics

Рассчитать показатели по очереди

{
    "getQueueMetrics": {
        "bucket": null,
        "calls": "complete",
        "field": "sl",
        "lastMinutes": 3800,
        "metric": "sl",
        "queue": {
            "id": 19
        },
        "set": "varResult",
        "slSec": 20
    }
}

lastBridged

Получить информацию по соединениям для липкости звонка

{
    "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 - Все попытки

Голосовые приложения

  • No labels