VIDEOCHAT  ::   FAQ  ::   Поиск  ::   Регистрация  ::   Вход

Входящий вызов не hungup'пится

Новичком считается только что прочитавший «Астериск - будущее телефонии»
http://asterisk.ru/knowledgebase/books
и пытающийся сделать большее

Модераторы: april22, Zavr2008

Ответить
alexborodach
Сообщения: 84
Зарегистрирован: 01 окт 2012, 14:33

Входящий вызов не hungup'пится

Сообщение alexborodach »

Есть кусочек диалплана для звонка на городской номер

[context_aup_income_513107]
exten => s,1,Set(CALLERID(num)=8${CALLERID(num)})
exten => s,n,Dial(sip/555&sip/114&sip/132&sip/127&sip/216,4,t)
exten => s,n,Dial(sip/555&sip/114&sip/132&sip/127&sip/216&sip/116,30,t)
exten => s,n,Hangup

В логах вижу:
PRIME_BBCODE_SPOILER_SHOW PRIME_BBCODE_SPOILER:
-- Starting simple switch on 'DAHDI/11-1'
-- Executing [s@context_aup_income_513107:1] Set("DAHDI/11-1", "CALLERID(num)=8xxxxxxxxxx") in new stack
-- Executing [s@context_aup_income_513107:2] Dial("DAHDI/11-1", "sip/555&sip/114&sip/132&sip/127&sip/216,4,t") in new stack
-- Called sip/555
-- Called sip/114
[Mar 11 11:54:20] NOTICE[13516][C-00001744]: chan_sip.c:6758 update_call_counter: Call to peer '132' rejected due to usage limit of 1
-- Couldn't call sip/132
-- Called sip/127
== Extension Changed 216[context_aup_out] new state Ringing for Notify User 103
-- Called sip/216
-- SIP/127-000033b1 connected line has changed. Saving it until answer for DAHDI/11-1
-- SIP/127-000033b1 is ringing
-- SIP/114-000033af is ringing
-- SIP/555-000033ae is ringing
-- SIP/216-000033b2 is ringing
-- Nobody picked up in 4000 ms
-- Executing [s@context_aup_income_513107:3] Dial("DAHDI/11-1", "sip/555&sip/114&sip/132&sip/127&sip/216&sip/116,30,t") in new stack
== Extension Changed 216[context_aup_out] new state Idle for Notify User 103
-- Called sip/555
-- Called sip/114
[Mar 11 11:54:24] NOTICE[13516][C-00001744]: chan_sip.c:6758 update_call_counter: Call to peer '132' rejected due to usage limit of 1
-- Couldn't call sip/132
-- Called sip/127
-- Called sip/216
-- Called sip/116
-- SIP/127-000033b6 connected line has changed. Saving it until answer for DAHDI/11-1
-- SIP/127-000033b6 is ringing
-- SIP/116-000033b8 is ringing
-- SIP/114-000033b4 is ringing
-- SIP/555-000033b3 is ringing
-- SIP/114-000033b4 is ringing
-- SIP/216-000033b7 is ringing
-- SIP/216-000033b7 is ringing
-- SIP/216-000033b7 is ringing
-- Nobody picked up in 30000 ms
-- Executing [s@context_aup_income_513107:4] Hangup("DAHDI/11-1", "") in new stack
== Spawn extension (context_aup_income_513107, s, 4) exited non-zero on 'DAHDI/11-1'
-- Hanging up on 'DAHDI/11-1'
-- Hungup 'DAHDI/11-1'
т.е. астер должен сбросить вызов, так как никто трубку не поднял за 34 секунды, а потом вижу опять тоже самое
PRIME_BBCODE_SPOILER_SHOW PRIME_BBCODE_SPOILER:
-- Starting simple switch on 'DAHDI/11-1'
-- Executing [s@context_aup_income_513107:1] Set("DAHDI/11-1", "CALLERID(num)=8") in new stack
-- Executing [s@context_aup_income_513107:2] Dial("DAHDI/11-1", "sip/555&sip/114&sip/132&sip/127&sip/216,4,t") in new stack
-- Called sip/555
-- Called sip/114
-- Called sip/132
-- Called sip/127
-- Called sip/216
-- SIP/127-000033bc connected line has changed. Saving it until answer for DAHDI/11-1
-- SIP/127-000033bc is ringing
-- SIP/555-000033b9 is ringing
-- SIP/216-000033bd is ringing
-- SIP/114-000033ba is ringing
-- SIP/132-000033bb is ringing
-- Nobody picked up in 4000 ms
-- Executing [s@context_aup_income_513107:3] Dial("DAHDI/11-1", "sip/555&sip/114&sip/132&sip/127&sip/216&sip/116,30,t") in new stack
-- Called sip/555
-- Called sip/114
-- Called sip/132
-- Called sip/127
-- Called sip/216
-- Called sip/116
-- SIP/127-000033c1 connected line has changed. Saving it until answer for DAHDI/11-1
-- SIP/127-000033c1 is ringing
-- SIP/116-000033c3 is ringing
-- SIP/555-000033be is ringing
-- SIP/114-000033bf is ringing
-- SIP/114-000033bf is ringing
-- SIP/132-000033c0 is ringing
-- SIP/132-000033c0 is ringing
-- SIP/132-000033c0 is ringing
-- SIP/216-000033c2 is ringing
-- SIP/216-000033c2 is ringing
-- SIP/216-000033c2 is ringing
== Spawn extension (context_aup_income_513107, s, 3) exited non-zero on 'DAHDI/11-1'
-- Hanging up on 'DAHDI/11-1'
-- Hungup 'DAHDI/11-1'
Подскажите пожалуйста почему вызов уходит на второй круг ?
При этом при первом круге нормально отрабатывает callerid и на принимающих аппаратах видно нормальный номер, а при втором круге видно только цифру "8".
ded
Сообщения: 15628
Зарегистрирован: 26 авг 2010, 19:00

Re: Входящий вызов не hungup'пится

Сообщение ded »

Диал план приведён возможно неполный.
Судя по Dial("DAHDI/11-1" - у вас аналоговые линии. На стороне оператора сделана псевдо-многоканальность: переход входящего по BUSY на другую линию (серийное искание).
Так вот на первой настроен Caller ID, а на другой - нет, поэтому первый раз вызов идёт корректно с CALLERID(num), а после перехода - в результате выполнения Set(CALLERID(num)=8${CALLERID(num)}) остаётся только 8.
awsswa
Сообщения: 2390
Зарегистрирован: 09 июн 2012, 10:52
Откуда: Россия, Пермь skype: yarick_perm

Re: Входящий вызов не hungup'пится

Сообщение awsswa »

уходит на второй круг потому что вы показали не весь кусок - кто вызывает [context_aup_income_513107] повторно
платный суппорт по мере возможностей
Samael28
Сообщения: 1057
Зарегистрирован: 08 янв 2011, 18:32
Откуда: Киев
Контактная информация:

Re: Входящий вызов не hungup'пится

Сообщение Samael28 »

Станция на другой стороне не понимает Вашего отбоя. Аналог, как я понимаю. Попробуйте перед Hangup дать Answer, чтобы сбрасывать уже отвеченный канал.
Мой профайл на Upwork
alexborodach
Сообщения: 84
Зарегистрирован: 01 окт 2012, 14:33

Re: Входящий вызов не hungup'пится

Сообщение alexborodach »

Вы все правы, это аналоговые линии заведенные в 24-портовую pci-e плату.
Специально дождался ночи, чтобы логи были чистыми. Проверил другие номера - при входящих звонках ситуация такая же. И звонок ходит по кругу не 2, а 3 раза.
ded писал(а):Диал план приведён возможно неполный.
Судя по Dial("DAHDI/11-1" - у вас аналоговые линии. На стороне оператора сделана псевдо-многоканальность: переход входящего по BUSY на другую линию (серийное искание).
Так вот на первой настроен Caller ID, а на другой - нет, поэтому первый раз вызов идёт корректно с CALLERID(num), а после перехода - в результате выполнения Set(CALLERID(num)=8${CALLERID(num)}) остаётся только 8.
Так как у меня 24 входящие линии сомневаюсь, что мой оператор такой щедрый. ;)
awsswa писал(а):уходит на второй круг потому что вы показали не весь кусок - кто вызывает [context_aup_income_513107] повторно
единственное упоминание контекста это в chan_dahdi.conf:
...
[512646]
callerid = in-512646
context=context_aup_income_512646
dahdichan = 10

[513107]
context=context_aup_income_513107
dahdichan = 11

[515607]
callerid = in-515607
context=context_aup_income_515607
dahdichan = 12
...

ну и в extensions.conf
Samael28 писал(а):Станция на другой стороне не понимает Вашего отбоя. Аналог, как я понимаю. Попробуйте перед Hangup дать Answer, чтобы сбрасывать уже отвеченный канал.
Такая конструкция не срабатывает, всё равно уходит на второй и далее круг.
PRIME_BBCODE_SPOILER_SHOW PRIME_BBCODE_SPOILER:
-- Starting simple switch on 'DAHDI/11-1'
-- Executing [s@context_aup_income_513107:1] Set("DAHDI/11-1", "CALLERID(num)=8xxxxxxxxxx") in new stack
-- Executing [s@context_aup_income_513107:2] Dial("DAHDI/11-1", "sip/555&sip/114&sip/132&sip/127&sip/216,4,t") in new stack
== Using SIP RTP TOS bits 184
== Using SIP RTP CoS mark 5
== Using SIP RTP TOS bits 184
== Using SIP RTP CoS mark 5
== Using SIP RTP TOS bits 184
== Using SIP RTP CoS mark 5
== Using SIP RTP TOS bits 184
== Using SIP RTP CoS mark 5
== Using SIP RTP TOS bits 184
== Using SIP RTP CoS mark 5
-- Called sip/555
-- Called sip/114
-- Called sip/132
-- Called sip/127
-- Called sip/216
-- SIP/127-00003af5 connected line has changed. Saving it until answer for DAHDI/11-1
-- SIP/127-00003af5 is ringing
-- SIP/114-00003af3 is ringing
-- SIP/555-00003af2 is ringing
-- SIP/132-00003af4 is ringing
-- SIP/216-00003af6 is ringing
-- Nobody picked up in 4000 ms
-- Executing [s@context_aup_income_513107:3] Dial("DAHDI/11-1", "sip/555&sip/114&sip/132&sip/127&sip/216&sip/116,10,t") in new stack
== Using SIP RTP TOS bits 184
== Using SIP RTP CoS mark 5
== Using SIP RTP TOS bits 184
== Using SIP RTP CoS mark 5
== Using SIP RTP TOS bits 184
== Using SIP RTP CoS mark 5
== Using SIP RTP TOS bits 184
== Using SIP RTP CoS mark 5
== Using SIP RTP TOS bits 184
== Using SIP RTP CoS mark 5
== Using SIP RTP TOS bits 184
== Using SIP RTP CoS mark 5
-- Called sip/555
-- Called sip/114
-- Called sip/132
-- Called sip/127
-- Called sip/216
-- Called sip/116
-- SIP/127-00003afa connected line has changed. Saving it until answer for DAHDI/11-1
-- SIP/127-00003afa is ringing
-- SIP/116-00003afc is ringing
-- SIP/555-00003af7 is ringing
-- SIP/555-00003af7 is ringing
-- SIP/216-00003afb is ringing
-- SIP/216-00003afb is ringing
-- SIP/216-00003afb is ringing
-- SIP/132-00003af9 is ringing
-- SIP/132-00003af9 is ringing
-- SIP/132-00003af9 is ringing
-- Nobody picked up in 10000 ms
-- Executing [s@context_aup_income_513107:4] Answer("DAHDI/11-1", "") in new stack
-- Executing [s@context_aup_income_513107:5] Hangup("DAHDI/11-1", "") in new stack
== Spawn extension (context_aup_income_513107, s, 5) exited non-zero on 'DAHDI/11-1'
-- Hanging up on 'DAHDI/11-1'
-- Hungup 'DAHDI/11-1'
-- Starting simple switch on 'DAHDI/11-1'
-- Executing [s@context_aup_income_513107:1] Set("DAHDI/11-1", "CALLERID(num)=8") in new stack
-- Executing [s@context_aup_income_513107:2] Dial("DAHDI/11-1", "sip/555&sip/114&sip/132&sip/127&sip/216,4,t") in new stack
...
ded
Сообщения: 15628
Зарегистрирован: 26 авг 2010, 19:00

Re: Входящий вызов не hungup'пится

Сообщение ded »

Согласно вашему диалплану
[context_aup_income_513107]
exten => s,1,Set(CALLERID(num)=8${CALLERID(num)})
exten => s,n,Dial(sip/555&sip/114&sip/132&sip/127&sip/216,4,t)
exten => s,n,Dial(sip/555&sip/114&sip/132&sip/127&sip/216&sip/116,30,t)
exten => s,n,Hangup
и вашему логу - всё выполняется:
-- Executing [s@context_aup_income_513107:4] Hangup("DAHDI/11-1", "") in new stack
== Spawn extension (context_aup_income_513107, s, 4) exited non-zero on 'DAHDI/11-1'
-- Hanging up on 'DAHDI/11-1'
-- Hungup 'DAHDI/11-1'

то есть 11-й канал (FXO порт) положил трубку. Почему снова идёт вызов - спрашивайте оператора связи. Возможно, индикация на портах FXO карты некорректная. Городская станция не понимает Hungup?
Vlad1983
Сообщения: 4251
Зарегистрирован: 09 авг 2011, 11:51

Re: Входящий вызов не hungup'пится

Сообщение Vlad1983 »

[context_aup_income_513107]
exten => s,1,Set(CALLERID(num)=8${CALLERID(num)})
exten => s,n,Dial(sip/555&sip/114&sip/132&sip/127&sip/216,4,t)
exten => s,n,Dial(sip/555&sip/114&sip/132&sip/127&sip/216&sip/116,30,t)
exten => s,n,Answer(1)
exten => s,n,Hangup
ЛС: @rostel
alexborodach
Сообщения: 84
Зарегистрирован: 01 окт 2012, 14:33

Re: Входящий вызов не hungup'пится

Сообщение alexborodach »

Vlad1983 писал(а):[context_aup_income_513107]
...
exten => s,n,Answer(1)
...
Такая конструкция работает. Спасибо.

P.S. Скоро придет аппаратный шлюз от eltex с fxo-портами - поставлю проверю как он себя ведет. Отпишусь.
Vlad1983
Сообщения: 4251
Зарегистрирован: 09 авг 2011, 11:51

Re: Входящий вызов не hungup'пится

Сообщение Vlad1983 »

скорей всего точно так же будет себя вести любое устройство с FXO
невозможно отбить звонок на аналоговой линии без "замыкания шлейфа" (переполюсовкой может быть тоже возможно. даже если будет работать, то сильно зависит от операторской АТС)
причем должна пройти определенная выдержка

при
exten => s,n,Answer
exten => s,n,Hangup
т.е. без задержки не распознается на АТС

exten => s,n,Answer(1) - приостановление дальнейшей обработки диалплана на 1 сек. после ответа
ЛС: @rostel
Ответить
© 2008 — 2025 Asterisk.ru
Digium, Asterisk and AsteriskNOW are registered trademarks of Digium, Inc.
Design and development by PostMet-Netzwerk GmbH