#asterisk
#asterisk
Вопрос:
Я использую Asterisk ARI
Как получить информацию о входящем вызове и о том, кто поднял трубку (добавочный номер оператора)
Я получаю все события через WebSocket
var connection = new WebSocket("ws://ip:port/ari/events?app=qweramp;subscribeAll=trueamp;api_key=user:password")
Приходит много событий, и я не могу в этом разобраться
Я думал, что мне нужно использовать ChannelCreated
, но в большинстве случаев он приходит пустым (без цифр)
{
"type": "ChannelCreated",
"timestamp": "2020-09-30T09:13:28.451 0500",
"channel": {
"id": "id",
"name": "SIP/",
"state": "Down",
"caller": {
"name": "",
"number": ""
},
"connected": {
"name": "",
"number": ""
},
"accountcode": "",
"dialplan": {
"context": "incoming",
"exten": "s",
"priority": 1
},
"creationtime": "2020-09-30T09:13:28.451 0500",
"language": "en"
},
"application": "qwer"
}
{
"variable": "QUEUENAME",
"value": "operators",
"type": "ChannelVarset",
"timestamp": "2020-09-30T09:14:01.628 0500",
"channel": {
"id": "id",
"name": "SIP/",
"state": "Up",
"caller": {
"name": "78008888888",
"number": " 79099999999"
},
"connected": {
"name": "",
"number": ""
},
"accountcode": "",
"dialplan": {
"context": "incoming",
"exten": "incom",
"priority": 15
},
"creationtime": "2020-09-30T09:12:38.097 0500",
"language": "ru"
},
"application": "qwer"
}
{
"variable": "QUEUESRVLEVELPERF",
"value": "0.0",
"type": "ChannelVarset",
"timestamp": "2020-09-30T09:14:01.629 0500",
"channel": {
"id": "id",
"name": "SIP/",
"state": "Up",
"caller": {
"name": "78008888888",
"number": " 79099999999"
},
"connected": {
"name": "",
"number": ""
},
"accountcode": "",
"dialplan": {
"context": "incoming",
"exten": "incom",
"priority": 15
},
"creationtime": "2020-09-30T09:12:38.097 0500",
"language": "ru"
},
"application": "qwer"
}
Ответ №1:
ARI ожидает, что вы не будете использовать диалплан, вместо этого используйте приложение Stasis.
Если вы это сделаете, вы получите события в ARI.
Ответьте на событие с именем Bridge.
Комментарии:
1. Спасибо, как правильно зарегистрировать приложение Stasis для всех входящих и исходящих вызовов?
exten => 1000
— Насколько я понимаю, это приложение будет работать только с номером 1000, но как это сделать для всех?