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

Originate создает повторный вызов если номер занят.

0

Добрый день.
Делаю звонок, используя AMI команду originate.
Заметил странное поведение. Если номер занят, или отбивает, то звонок приходит повторно моментально. Это не связано с повторным вызовом скрипта.

 == Connect attempt from '127.0.0.1' unable to authenticate
 == Manager 'reload_dialplan' logged on from 127.0.0.1
 -- Executing [79103478334@P8S2-out:1] NoOp("Local/79103478334@P8S2-out-00000011;2", "-->Call from Asterisk to 79103478334<--") in new stack
 -- Executing [79103478334@P8S2-out:2] Dial("Local/79103478334@P8S2-out-00000011;2", "SIP/+79103478334@sipnet1") in new stack
  == Using SIP RTP CoS mark 5
 -- Called SIP/+79103478334@sipnet1
 -- SIP/sipnet1-00000062 is ringing
 -- SIP/sipnet1-00000062 is making progress passing it to Local/79103478334@P8S2-out-00000011;2
-- SIP/sipnet1-00000062 is ringing
-- Got SIP response 486 "Busy Here" back from 212.53.40.40:5060
-- SIP/sipnet1-00000062 is busy
== Everyone is busy/congested at this time (1:1/0/0)
 -- Auto fallthrough, channel 'Local/79103478334@P8S2-out-00000011;2' status is 'BUSY'
== Manager 'reload_dialplan' logged off from 127.0.0.1

По трэйсу видно что приходит звонок

-- SIP/sipnet1-00000062 is ringing

я его отбиваю на мобильном. Проходит 3-5 секунд и звонок приходит снова. В логе это как второй рингинг

-- SIP/sipnet1-00000062 is ringing

Это баг или фича? Кто сталкивался с подобным? Как изменить поведение, чтобы Астериске не перезванивал повторно?

Сделал трэйс звонка.

|Time     | 47.4.209.111                          |
|         |                   | 212.53.40.40      |
|13,589   |         INVITE SDP (g711A g711U telephone-
eventRTPType...1)          |SIP From: "Asterisk" 
<sip:0034810580@sipnet.ru To:<sip:+79103478334@sipnet.ru
|         |(5060)   ------------------>  (5060)   |
|13,642   |         100 Trying|                   |SIP Status
|         |(5060)   <------------------  (5060)   |
|13,642   |         401 Authentication required          |SIP 
Status
|         |(5060)   <------------------  (5060)   |
|13,643   |         ACK       |                   |SIP Request
|         |(5060)   ------------------>  (5060)   |
|13,643   |         INVITE SDP (g711A g711U telephone-
eventRTPType...1)          |SIP From: "Asterisk" 
<sip:0034810580@sipnet.ru To:<sip:+79103478334@sipnet.ru
|         |(5060)   ------------------>  (5060)   |
|13,699   |         100 Trying|                   |SIP Status
|         |(5060)   <------------------  (5060)   |
|18,323   |         180 Ringing SDP (g711A telephone-
eventRTPType-...          |SIP Status
|         |(5060)   <------------------  (5060)   |
|27,868   |         180 Ringing                   |SIP Status
|         |(5060)   <------------------  (5060)   |
|33,322   |         486 Busy Here                 |SIP Status
|         |(5060)   <------------------  (5060)   |
|33,322   |         ACK       |                   |SIP Request
|         |(5060)   ------------------>  (5060)   |
удалить закрыть спам изменить тег редактировать

спросил 2013-04-13 12:26:30 +0400

brost Gravatar brost flag of Russian Federation
100 12 3 12
http://asterisk-system.ru...

обновил 2013-04-13 16:22:10 +0400

Comments

это может быть из-за особенностей диалплана

switch ( 2013-04-13 15:10:51 +0400 )редактировать

ну и где у вас на трейсе повторный звонок? второй инвайт сдесь так и должен быть, ибо он включает в себя присланный на 401 nonce( нормальная аутентификация)

соответвенно что что вам звонит после того как астериск положил канал - это проблемы настроки openser на сипнете.

как доказательство сделайте вот такое

астериск звонит. отбиваете. звонит еще раз. ждете 10 секунд и убеждаетесь что астериск канал уже убил

asterisk -rx "core show channels"

поднимате трубку. наслаждаетесь отбоем со стороны сипнета.

meral ( 2013-04-13 16:25:14 +0400 )редактировать

согласен. но это трэйс проблемного звонка. может быть что у сипнета включено два маршрута, и если один отбивает, то они кидают через второй? ну как в Астериске когда две команды Dial подряд идут?

brost ( 2013-04-13 16:31:46 +0400 )редактировать

где у астериска две команды диал? я в упор не вижу. в показанном вами примере ОДИН исходящий звонок и ОДНА dial. а ringing может быть до сотни.

meral ( 2013-04-13 16:33:13 +0400 )редактировать

нет. у меня одна команда Dial. я просто привел пример, что со стороны, это как будто у сипнета стоит same => n,Dial(SIP/prov1/${EXTEN}) same => n,Dial(SIP/prov2/${EXTEN}) могу ошибаться.

brost ( 2013-04-13 16:37:53 +0400 )редактировать

Проверил, как сказал meral. при втором звонке канал не сбрасывается. я слышу приветствие.

<pre><code> -- Called SIP/+79103478334@sipnet1 -- SIP/sipnet1-00000069 is ringing -- SIP/sipnet1-00000069 is making progress passing it to Local/79103478334@P8S2-out-00000018;2 asterisk*CLI> core show channels Channel Location State Application(Data) SIP/sipnet1-00000069 79103478334@sipnet_r Ringing AppDial((Outgoing Line)) Local/79103478334@P8 79103478334@P8S2-out Ring Dial(SIP/+79103478334@sipnet1) Local/79103478334@P8 79103478334@P8S2-out Ringing (None) 3 active channels </pre> 1 active call 86 calls processed -- SIP/sipnet1-00000069 is ringing -- SIP/sipnet1-00000069 answered Local/79103478334@P8S2-out-00000018;2

brost ( 2013-04-13 16:48:40 +0400 )редактировать

вложите отдельно лог до отбоя. сип ДЕБАГ до отбоя. потом после отбоя. у вас ОДИН звонок. что при этом делает сипнет НЕ ВАЖНО. вы вылаживаете ОДИН звонок. судя по терйсу у астериска НЕТ вариантов как отличить что вы сбросили звонок.

meral ( 2013-04-13 16:59:30 +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 ленту новостей

Статистика

Задан: 2013-04-13 12:26:30 +0400

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

Обновлен: Apr 13 '13

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

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