Задать вопрос

Почему Asterisk OriginateResponse всегда отдаёт reason=0?

Необходимо обрабатывать результат Originate через AMI. Для этого ожидаю событие originateResponse, которое постоянно содержит reason = 0, вне зависимости от результата дозвона.

В какую строну копать?

Испытуемый: Asterisk 12.0.0, asterisk-ami@0.2.0-beta1 (node.js)

Пример на node.js
var AsteriskAmi = require('asterisk-ami'),
    ami = new AsteriskAmi({"host": "192.168.0.22", "username": "***", "password": "***"});

ami.on('data', function(data){
    console.log('AMI', data);
});
ami.on('login', function () {
    ami.send({
        action: 'originate',
        channel: 'SIP/1102',
        exten: '568',
        Priority: 1,
        context: 'test',
        callerid: '1102',
        async: true
    });
});
ami.connect();

Asterisk, если сбрасываю телефон
-- SIP/1102-00001162 is ringing
-- Got SIP response 486 "Busy Here" back from 192.168.1.100:5060
-- SIP/1102-00001162 is busy

OriginateResponse, если сбрасываю телефон
{ event: 'OriginateResponse',   
  privilege: 'call,all',            
  actionid: '42075833072885870',    
  response: 'Failure',              
  channel: 'SIP/1102-00001162',     
  context: 'test',          
  reason: '0',                      
  uniqueid: '1390211355.9012',      
  calleridnum: '1102',              
  calleridname: '<unknown>' }

Не хотелось бы вещаться на другие события.
  • Вопрос задан
  • 4045 просмотров
Подписаться 2 Оценить Комментировать
Решения вопроса 1
lomadurov
@lomadurov Автор вопроса
Помог откат до 11.7.0
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы