...
Действие | Тип | Описание |
---|---|---|
| string | Припарковать вызов. При указании слота вызов будет припаркован в нужный слот. Без указания слота будет выбран случайный слот. Всего слотов доступно от 1 до 9. timeout ожидания на парковке- 3 минуты, по истечении этого времени вызов вернется к добавочному, от имени которого произошла парковка. |
| string | Соединить текущий вызов с случайным, если слот не указано, либо с указаным указанным слотом, если он задан явно |
| string | При указании слота- уточняет какой uuid (часть от call_api_id) там припаркован. Без указания слота ресурс вернет свободные слоты в данный момент. может быть от 1 до 9 |
...
Code Block | ||
---|---|---|
| ||
Нам нужно запомнить CallAPIID, по нему будет запрощензапрошен ресурс PUT /extension/{extension_id}/valet_park/{call_api_id} такжеТакже этотиз CallAPIID (3232240860-37b98fb2-a66c-11ea-ae69-6fd86d94a0e0) пригодится, если понадобится выяснить стоит ли в данный момент на паркове вызов с этим id- часть от call_api_id в виде UUID будет возвращать запрос на действие slots с указанием слота можно узнать UUID, этот UUID возвращается при запросе информации по слоту. Можно будет понять вызов этого CallAPIID все еще на парковке или его там уже нет. |
Code Block | ||
---|---|---|
| ||
Если отправить запрос на PUT /extension/{extension_id}/valet_park/{call_api_id} с телом {"action": "park", "slot" : "6"} Если парковочный слот занят - будет ошибка : 'slot already have parked member, slot is full' Без указания параметра slot- будет парковка в первый свободный слот. Если вторая сторона разговора будет поставлена в слот ожидания, то на добавочном (где сработал event) произойдет окончание разговора. По второму звонокузвонку (также не важно входящий, исходящий) Используя {call_api_id} звонка можно сразу узнать есть ли кто-нибудь в слоте (чтобы забриджить с ним, или не делать этого, если ожидающий вышел), запросить свободные слоты (чтобы узнать какой слот свободный для парковки) запрос с телом в рамахрамках этого примера: {"action": "slots", "slot" : "6"} ответ: {u'slot': u'6', u'UUID': u'37b98fb2-a66c-11ea-ae69-6fd86d94a0e0'} Чтобы узнать какие слоты свободные - не нужно указывать слот: запрос с телом {"action": "slots"} call_api_id вызова на парковке: 3232240860-37b98fb2-a66c-11ea-ae69-6fd86d94a0e0 UUID: 37b98fb2-a66c-11ea-ae69-6fd86d94a0e0 Таким образом uuid в слоте и запаркованный вызов можно соотнести. Чтобы забриджить с конкретным слотом: {"action": "bridge", "slot" : "6"} Можно забриджить также со случайным слотом не указывая слот: {"action": "bridge"} |
...