Пожалуйста, войдите здесь. Часто задаваемые вопросы О нас
Задайте Ваш вопрос

a2billing проговаривать ${DIALSTATUS}

0

Схема такая:

SIP provider --- Asterisk-A2Billing == Asterisk-B --- SIP end point

Звоню с end point на свой мобильный и когда приходит звонок - то сбрасываю его. На A2B видим что от провайдера приходит response 486 "Busy here", ну и этот 486 передается дальше до Asterisk-B. На Asterisk-B в диалплане в зависимомти от переменной DIALSTATUS делаем GoTo на PlayBack с нужным файлом и End Point слышыт нужную фразу.

Вопрос. Можно ли настроить A2B чтобы он сам проговаривал статус звонка? Использовать тот же механизм (через DialPlan) как на Asterisk-B не получается так как после выполнения AGI a2billing.php - теряю контроль над диалпланом.

 -- Launched AGI Script /usr/share/asterisk/agi-bin/a2billing.php
-- AGI Script Executing Application: (DIAL) Options: (SIP/tlcmbs/XXXXXXXXXXX,60,HRrL(35077000:61000:30000))
   > Limit Data for this call:
   > timelimit      = 35077000 ms (35077.000 s)
   > play_warning   = 61000 ms (61.000 s)
   > play_to_caller = yes
   > play_to_callee = no
   > warning_freq   = 30000 ms (30.000 s)
   > start_sound    =
   > warning_sound  = timeleft
   > end_sound      =
  == Using SIP RTP CoS mark 5
-- Called SIP/tlcmbs/XXXXXXXXXX
-- SIP/tlcmbs-00000007 is ringing
-- SIP/tlcmbs-00000007 is making progress passing it to IAX2/0281591627-2257
   > 0x7f3ec8006db0 -- Probation passed - setting RTP source address to XXX.XXX.XXX.XXX:17588
-- Got SIP response 486 "Busy here" back from XXX.XXX.XXX.XXX:5060
-- SIP/tlcmbs-00000007 is busy
== Everyone is busy/congested at this time (1:1/0/0)
-- AGI Script Executing Application: (Busy) Options: (1)
-- <IAX2/0281591627-2257>AGI Script a2billing.php completed, returning 4
-- Hungup 'IAX2/0281591627-2257'
удалить закрыть спам изменить тег редактировать

спросил 2017-09-10 00:08:49 +0400

alphil Gravatar alphil flag of Spain
520 11 4 16
http://www.damal.es/

1 Ответ

0

Ответ - можно.

Class.A2Billing.php патчите приблизительно в 5 местах - и вот он у вас уже проговаривает статус.

Ну либо нанимате любого из разработчиков a2b и он вам делает за час-два.

ссылка удалить спам редактировать

ответил 2017-09-10 14:31:38 +0400

meral Gravatar meral flag of Ukraine
23107 24 20 173
http://pro-sip.net/

Comments

Спасибо. Понял. В принципе, так и предполагал, но надеялся, что ошибаюсь и что это уже запилено в а2б и надо только активировать.

alphil ( 2017-09-10 15:15:06 +0400 )редактировать

может и запилено. но врятли. это прежде всего карточная платформа, клиенты достают и с текущими более информативными сообщениями.

meral ( 2017-09-10 16:34:10 +0400 )редактировать

Сделал. Все делается в файле Class.RateEngine.php вставкой $agi->exec('Playback is-curntly-busy'); и т.д. в соответсвующих if ($this->dialstatus == "BUSY"). Но оказывается это мне портит статистику звонков на Asterisk-B, так как при выполнении Playback автоматически делается Answer. И звонок который был Busy пишется как Answered. Никак нельзя в IAX канале проиграть звуковой файл без Answer? Пробовал Playback с опцией noanswer - тогда не слышен звук. Во как.

alphil ( 2017-09-14 23:45:02 +0400 )редактировать

у вас же там еще наверно iax-sip. в сип можно если early media поддерживается ВСЕМИ в цепочке. в sip-iax нельзя.

meral ( 2017-09-15 08:25:57 +0400 )редактировать

Ваш ответ

Please start posting your answer anonymously - your answer will be saved within the current session and published after you log in or create a new account. Please try to give a substantial answer, for discussions, please use comments and please do remember to vote (after you log in)!
[скрыть предварительный просмотр]

Закладки и информация

Добавить закладку

подписаться на rss ленту новостей

Статистика

Задан: 2017-09-10 00:08:49 +0400

Просмотрен: 73 раз

Обновлен: Sep 10 '17

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

Проект компании "АТС Дизайн"
Asterisk® и Digium® являются зарегистрированными торговыми марками компании Digium, Inc., США.
IP АТС Asterisk распространяется под лицензией GNU GPL.