freeswitchforum.com
https://freeswitchforum.com/

не получается вернуть звонок из att_xfer
https://freeswitchforum.com/viewtopic.php?f=6&t=510
Страница 1 из 1

Автор:  Серега [ 29 июл 2015 11:50 ]
Заголовок сообщения:  не получается вернуть звонок из att_xfer

абонент А (0000) вызывает В (9973), В набирает *2 выполняется:
EXECUTE sofia/10.255.0.134/0000@10.1.245.130 playback(local_stream://moh)
EXECUTE sofia/10.255.0.134/9973 execute_extension(att_xfer XML outgoo_test)

далее идем в скрипт:
EXECUTE sofia/10.255.0.134/9973 javascript(js/attXferOutbound.js)

выполняется:
session.execute("read", "1 12 'pbx-transfer.wav' digits 5000 #");

далее набираем внутренний номер С (9972), при вызове устанавливаем origination_cancel_key:

EXECUTE sofia/10.255.0.134/9973 set(origination_cancel_key=**)

2015-07-29 10:06:20.998616 [NOTICE] switch_channel.c:1055 New Channel sofia/10.255.0.134/9972 [50caa7ec-35c0-11e5-89ce-efde5c1b06df]

С (9972) начинает звонить:

2015-07-29 10:06:21.058626 [NOTICE] sofia.c:6725 Ring-Ready sofia/10.255.0.134/9972!

набираем **, выполняется Hangup С (9972), вызов возвращается к В (9973):

2015-07-29 10:06:27.178624 [DEBUG] switch_rtp.c:6092 RTP RECV DTMF *:960
2015-07-29 10:06:27.178624 [DEBUG] switch_channel.c:488 RECV DTMF *:960
2015-07-29 10:06:27.178624 [NOTICE] switch_ivr_originate.c:3492 Hangup sofia/10.255.0.134/9972 [CS_CONSUME_MEDIA] [NO_ANSWER]

Все работает, как надо!!!!

проблемы возникают когда абонент C (сотовый номер), если абонент доступен после установки set(ignore_early_media=true) вызов начал возвращаться, без этой установки не возращается:

EXECUTE sofia/10.255.0.134/9973 set(origination_cancel_key=**)
2015-07-29 10:25:13.778611 [DEBUG] mod_dptools.c:1445 sofia/10.255.0.134/9973 SET [origination_cancel_key]=[**]
EXECUTE sofia/10.255.0.134/9973 set(ignore_early_media=true)
2015-07-29 10:25:13.778611 [DEBUG] mod_dptools.c:1445 sofia/10.255.0.134/9973 SET [ignore_early_media]=[true]
EXECUTE sofia/10.255.0.134/9973 att_xfer(sofia/gateway/operator_test/ХХХХХХХХХХХХ)

2015-07-29 10:25:17.758612 [NOTICE] sofia_media.c:92 Pre-Answer sofia/external/989652844829!

набираем **, выполняется Hangup С (ХХХХХХХХХХХХ), вызов возвращается к В (9973):

2015-07-29 10:25:23.938614 [DEBUG] switch_rtp.c:6092 RTP RECV DTMF *:960
2015-07-29 10:25:23.938614 [DEBUG] switch_channel.c:488 RECV DTMF *:960
2015-07-29 10:25:23.938614 [DEBUG] switch_core_codec.c:246 sofia/10.255.0.134/9973 Restore previous codec PCMU:0.
2015-07-29 10:25:23.938614 [NOTICE] switch_ivr_originate.c:3492 Hangup sofia/external/ХХХХХХХХХХХХ [CS_CONSUME_MEDIA] [NO_ANSWER]

!!!!Осталась проблема, когда номер C (сотовый номер), если номер С (сотовый номер) недоступен:

2015-07-29 10:33:15.658615 [DEBUG] mod_dptools.c:1445 sofia/10.255.0.134/9973 SET [origination_cancel_key]=[**]
EXECUTE sofia/10.255.0.134/9973 set(ignore_early_media=true)
2015-07-29 10:33:15.658615 [DEBUG] mod_dptools.c:1445 sofia/10.255.0.134/9973 SET [ignore_early_media]=[true]
EXECUTE sofia/10.255.0.134/9973 att_xfer(sofia/gateway/operator_test/ХХХХХХХХХХХХ)

2015-07-29 10:33:16.998623 [NOTICE] sofia.c:6725 Ring-Ready sofia/external/ХХХХХХХХХХХХ!
2015-07-29 10:33:23.198625 [NOTICE] sofia.c:7484 Channel [sofia/external/ХХХХХХХХХХХХ] has been answered

нажимаем **:

2015-07-29 10:33:28.898614 [DEBUG] switch_rtp.c:6092 RTP RECV DTMF *:960
2015-07-29 10:33:28.898614 [DEBUG] switch_channel.c:488 RECV DTMF *:960

набираем **, выполняется Hangup B (9973), вызов передается абоненту А (0000):
2015-07-29 10:33:28.898614 [NOTICE] mod_dptools.c:2273 Hangup sofia/10.255.0.134/9973 [CS_EXCHANGE_MEDIA] [NORMAL_CLEARING]

2015-07-29 10:33:28.918611 [INFO] switch_channel.c:3062 sofia/external/989652844829 Flipping CID from "3333" <0000> to "Outbound Call" <989652844829>

Страница 1 из 1 Часовой пояс: UTC + 4 часа
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/