Добрый день! Пытаюсь решить следующую проблему: допустим, кто-то набирает неверно номер и вместо 11 значного мобильного номера ошибается и набирает 12 знаков. При возникновении подобной ситуации в debug явно это видно и значение заголовка X-Asterisk-HangupCauseCode соответствует 28. При этом,если по окончанию вызова в диалплане вызвать переменную ${HANGUPCAUSE}, то значение будет другое,а именно 34.
В связи с этим вопрос: как в диалпдане получить значение из debug?
П.С. интернеты обследованы - ответ на вопрос не найден П.С.2 версия астера 1.8.8.0
Заранее благодарю
спросил 2013-10-07 17:49:58 +0400
Аноним
Можно пропатчить астериск, добавить одну строчку по сохранению этого X-Asterisk-HangupCauseCode.
Работы - на 15 минут любому достаточно опытному c/с++ программисту.
Также можно пробывать прочитать SIP_HEADER(X-Asterisk-HangupCauseCode). но там есть заморочки, только некоторые записываются.
а вы не смотрите на то что вам ваш транзитный астериск отдал в хидере X-Asterisk-HangupCauseCode. А смотрите, какой сип статус он отдал на ивайт а потом сопоставляйте с http://www.voip-info.org/wiki/view/Asterisk+variable+hangupcause.
можо конечно еще и астериск похачить чтоб ставил какую нибудь переменную с кодом из X-Asterisk-HangupCauseCode
Задан: 2013-10-07 17:49:58 +0400
Просмотрен: 379 раз
Обновлен: Oct 07 '13
Проект компании "АТС Дизайн"
Asterisk® и Digium® являются зарегистрированными торговыми марками компании
Digium, Inc., США.
IP АТС Asterisk распространяется под лицензией
GNU GPL.