Страница 1 из 2
Проблема с мобильными мегафона(бред).
Добавлено: 22 фев 2017, 12:08
davion
Имеем сервер asterisk для небольшого калового центра.
Сделан sip транк с ростиком. Все кто звонят на номер на транке проигрывается сообщение что "наш номер изменился, звоните на XXXXX" после чего посылается Hangup
Со всеми мобильными и не мобильными операторами работает нормально, проигрывается сообщение трубка ложится, а у мегафона трубка не ложится, вызов какбудто проходит второй раз и проигрывается сообщение заново и на hangup после него, успешно ложится трубка...
Вот лог:
Код: Выделить всё
call*CLI>
-- Executing [s@app-announcement-1:6] Goto("SIP/uXXXXX-0000d1cb", "app-blackhole,reset,1") in new stack
call*CLI>
-- Goto (app-blackhole,reset,1)
call*CLI>
-- Executing [reset@app-blackhole:1] NoOp("SIP/uXXXXX-0000d1cb", "Blackhole Dest: Hangup") in new stack
call*CLI>
-- Remote UNIX connection
-- Remote UNIX connection
call*CLI>
-- Remote UNIX connection disconnected
call*CLI>
-- Remote UNIX connection disconnected
call*CLI>
-- Executing [reset@app-blackhole:3] Hangup("SIP/uXXXXX-0000d1cb", "") in new stack
== Spawn extension (app-blackhole, reset, 3) exited non-zero on 'SIP/uXXXXXX-0000d1cb'
И начинается по новой:
call*CLI>
-- Executing [XXXX@add_8:1] Set("SIP/uXXXX-0000d1ce", "CID_LEN=10") in new stack
-- Executing [XXXX@add_8:2] GotoIf("SIP/uXXXX-0000d1ce", "0?after-cid-check") in new stack
-- Executing [XXXX@add_8:3] Set("SIP/uXXXX-0000d1ce", "CALLERID(num)=YYYYY") in new stack
-- Executing [XXXX@add_8:4] Set("SIP/uXXXX-0000d1ce", "CALLERID(ANI-num)=XXXX") in new stack
-- Executing [XXXX@add_8:5] Goto("SIP/uXXXX-0000d1ce", "from-trunk,XXXX,1") in new stack
-- Goto (from-trunk,XXXX,1)
В идеале добавить второй hungup после первого, но вопрос как???
Re: Проблема с мобильными мегафона(бред).
Добавлено: 22 фев 2017, 12:39
ded
Вот это свидетельствует о неправильном завершении:
Код: Выделить всё
== Spawn extension (app-blackhole, reset, 3) exited non-zero on 'SIP/uXXXXXX-0000d1cb'
Можно попробовать указать код завершения -Hangup(16) вместо Hangup() - вот тут видно это как пустышка ""
Код: Выделить всё
-- Executing [reset@app-blackhole:3] Hangup("SIP/uXXXXX-0000d1cb", "") in new stack
Re: Проблема с мобильными мегафона(бред).
Добавлено: 22 фев 2017, 12:50
davion
Код: Выделить всё
-- Executing [reset@app-blackhole:3] Hangup("SIP/uXXXX-0000d3b0", "16") in new stack
== Spawn extension (app-blackhole, reset, 3) exited non-zero on 'SIP/uXXXX-0000d3b0'
Не помогло....
Re: Проблема с мобильными мегафона(бред).
Добавлено: 22 фев 2017, 13:58
ded
Стандартный контекст 'app-blackhole' не содержит метки reset, которая у вас там исполняется по логу.
Код: Выделить всё
[ Context 'app-blackhole' created by 'pbx_config' ]
'busy' => 1. Noop(Blackhole Dest: Busy) [pbx_config]
2. Busy(20) [pbx_config]
3. Hangup() [pbx_config]
'congestion' => 1. Noop(Blackhole Dest: Congestion) [pbx_config]
2. Playtones(congestion) [pbx_config]
3. Congestion(20) [pbx_config]
4. Hangup() [pbx_config]
'hangup' => 1. Noop(Blackhole Dest: Hangup) [pbx_config]
2. Hangup() [pbx_config]
'musiconhold' => 1. Noop(Blackhole Dest: Put caller on hold forever) [pbx_config]
2. Answer() [pbx_config]
3. MusicOnHold() [pbx_config]
'ring' => 1. Noop(Blackhole Dest: Ring) [pbx_config]
2. Answer() [pbx_config]
3. Playtones(ring) [pbx_config]
4. Wait(300) [pbx_config]
5. Hangup() [pbx_config]
'zapateller' => 1. Noop(Blackhole Dest: Play SIT Tone) [pbx_config]
2. Answer() [pbx_config]
3. Zapateller() [pbx_config]
Include => 'app-blackhole-custom' [pbx_config]
Значит reset - это что-то самописанное, засунуто в app-blackhole-custom. Сложно прокомментировать правильность его исполнения, но вываливаться через Spawn extension из этого куска диалплана точно не должен.
Пробуйте
- проанализировать
- поставить другие коды отбоя, вместо 16 - Release complete.
Re: Проблема с мобильными мегафона(бред).
Добавлено: 22 фев 2017, 14:06
davion
Вот реализация
[app-announcement-1]
include => app-announcement-1-custom
exten => fax,1,Goto(${CUT(FAX_DEST,^,1)},${CUT(FAX_DEST,^,2)},${CUT(FAX_DEST,^,3)})
exten => s,1,GotoIf($["${CDR(disposition)}" = "ANSWERED"]?begin)
exten => s,n,Answer
exten => s,n,Wait(1)
exten => s,n(begin),Noop(Playing announcement welcome)
exten => s,n,Playback(custom/ss20,noanswer)
exten => s,n,Goto(app-blackhole,reset,1)
[app-blackhole]
include => app-blackhole-custom
exten => hangup,1,Noop(Blackhole Dest: Hangup)
exten => hangup,n,Hangup
exten => reset,1,Noop(Blackhole Dest: Hangup)
exten => reset,n,System(/usr/local/bin/python3 /var/lib/asterisk/agi-bin/sendSMS8800.py --phone=${CALLERID(number)}) (отправляет смс о смене номера, никак не влияет)
exten => reset,n,Hangup(16)
Re: Проблема с мобильными мегафона(бред).
Добавлено: 22 фев 2017, 14:18
ded
ded писал(а):Пробуйте
- проанализировать
- поставить другие коды отбоя, вместо 16 - Release complete.
Re: Проблема с мобильными мегафона(бред).
Добавлено: 22 фев 2017, 14:36
davion
уже не знаю что анализировать...
на коды не реагирует.
Можно как-то сделать два hangup подряд?
Re: Проблема с мобильными мегафона(бред).
Добавлено: 22 фев 2017, 16:49
virus_net
davion писал(а):-- Executing [reset@app-blackhole:1] NoOp("SIP/uXXXXX-0000d1cb", "Blackhole Dest: Hangup") in new stack
...
-- Executing [reset@app-blackhole:3] Hangup("SIP/uXXXXX-0000d1cb", "") in new stack
== Spawn extension (app-blackhole, reset, 3) exited non-zero on 'SIP/uXXXXXX-0000d1cb'
Что-то странное, тут т.к. шага 2 нету. Либо вы что-то недокопипастили, либо темните.
davion писал(а):И начинается по новой:
Да нет, это разные каналы. Первый
SIP/uXXXXX-0000d1cb, а второй
uXXXX-0000d1ce
davion писал(а):Можно как-то сделать два hangup подряд?
нужно не костыли выдумывать, а разобраться в том, что происходит. SIP дебаг что показывает ? Один INVITE ? Два ?
Re: Проблема с мобильными мегафона(бред).
Добавлено: 23 фев 2017, 15:01
whoim
С похожей проблемой у задармы помог hangup(17) сегодня.
Каллбек, по hangup задарма не успокаивались и слали ещё несколько вызовов. По итогу - многократное срабатывание каллбека.
Re: Проблема с мобильными мегафона(бред).
Добавлено: 25 фев 2017, 23:13
davion
virus_net писал(а):davion писал(а):-- Executing [reset@app-blackhole:1] NoOp("SIP/uXXXXX-0000d1cb", "Blackhole Dest: Hangup") in new stack
...
-- Executing [reset@app-blackhole:3] Hangup("SIP/uXXXXX-0000d1cb", "") in new stack
== Spawn extension (app-blackhole, reset, 3) exited non-zero on 'SIP/uXXXXXX-0000d1cb'
Что-то странное, тут т.к. шага 2 нету. Либо вы что-то недокопипастили, либо темните.
davion писал(а):И начинается по новой:
Да нет, это разные каналы. Первый
SIP/uXXXXX-0000d1cb, а второй
uXXXX-0000d1ce
davion писал(а):Можно как-то сделать два hangup подряд?
нужно не костыли выдумывать, а разобраться в том, что происходит. SIP дебаг что показывает ? Один INVITE ? Два ?
не темню, там была отправка смс. но удаление вызова system не на что не влияет.
Когда звонишь первое приветствие проговариватеся, потом сразу заново "этот вызов для вас бесплатный" и по новой. Повторюсь проблема только с мегафоном.
Может каналы и разные но со стороны звонящего это один вызов.
Hangup(17) ничего не меняет... бред полный. Со стороны пира(билайн) ничего проверить естественно не могу, со своей стороны все что по asterisk -rvvvv вижу, вывел.