Страница 2 из 3

Re: Asterisk\FreePBX действие до совершения исходящего вызов

СообщениеДобавлено: 03 ноя 2021, 00:10
skynetyar
Так поянл что
sent to invalid extension but no invalid handler: context,exten,priority=outrt-10,79066358080,2
Потому что номер без + набирал, сделал с + набор и снова уперся в проблему
Код: выделить все
  -- Executing [+79066358080@outrt-10:1] Macro("PJSIP/703-00042cbe", "user-callerid,LIMIT,EXTERNAL,") in new stack
    -- Executing [s@macro-user-callerid:1] Set("PJSIP/703-00042cbe", "TOUCH_MONITOR=1635883349.902353") in new stack
    -- Executing [s@macro-user-callerid:2] Set("PJSIP/703-00042cbe", "AMPUSER=703") in new stack
    -- Executing [s@macro-user-callerid:3] Set("PJSIP/703-00042cbe", "HOTDESCKCHAN=703-00042cbe") in new stack
    -- Executing [s@macro-user-callerid:4] Set("PJSIP/703-00042cbe", "HOTDESKEXTEN=703") in new stack
    -- Executing [s@macro-user-callerid:5] Set("PJSIP/703-00042cbe", "HOTDESKCALL=0") in new stack
    -- Executing [s@macro-user-callerid:6] ExecIf("PJSIP/703-00042cbe", "0?Set(HOTDESKCALL=1)") in new stack
    -- Executing [s@macro-user-callerid:7] ExecIf("PJSIP/703-00042cbe", "0?Set(CALLERID(name)=)") in new stack
    -- Executing [s@macro-user-callerid:8] GotoIf("PJSIP/703-00042cbe", "18?report") in new stack
    -- Goto (macro-user-callerid,s,29)
    -- Executing [s@macro-user-callerid:29] NoOp("PJSIP/703-00042cbe", "Macro Depth is 6") in new stack
    -- Executing [s@macro-user-callerid:30] GotoIf("PJSIP/703-00042cbe", "0?report2:macroerror") in new stack
    -- Goto (macro-user-callerid,s,40)
    -- Executing [s@macro-user-callerid:40] NoOp("PJSIP/703-00042cbe", "Macro Limit Reached. Aborting Call") in new stack
    -- Executing [s@macro-user-callerid:41] Answer("PJSIP/703-00042cbe", "") in new stack
    -- Executing [s@macro-user-callerid:42] Wait("PJSIP/703-00042cbe", "1") in new stack
    -- Executing [s@macro-user-callerid:43] Gosub("PJSIP/703-00042cbe", "macro-user-callerid,lang-playback,1(hook_2)") in new stack
    -- Executing [lang-playback@macro-user-callerid:1] GosubIf("PJSIP/703-00042cbe", "0?macro-user-callerid,ru,hook_2():macro-user-callerid,en,hook_2()") in new stack
    -- Executing [en@macro-user-callerid:5] Playback("PJSIP/703-00042cbe", "im-sorry&an-error-has-occurred") in new stack


Код: выделить все
dialplan show +79066358080@outrt-10
[ Context 'outrt-10' created by 'pbx_config' ]
  '_+790663[1-9]XXXX' => 1. Macro(user-callerid,LIMIT,EXTERNAL,)       [pbx_config]
                    2. Gosub(sub-record-check,s,1(out,${EXTEN},yes)) [pbx_config]
                    3. ExecIf($[ "${CALLEE_ACCOUNCODE}" != "" ] ?Set(CDR(accountcode)=${CALLEE_ACCOUNCODE})) [pbx_config]
                    4. Set(_ROUTEID=10)                           [pbx_config]
                    5. Set(_ROUTENAME=BEELINE)                    [pbx_config]
                    6. Set(MOHCLASS=${IF($["${MOHCLASS}"=""]?default:${MOHCLASS})}) [pbx_config]
                    7. Set(_CALLERIDNAMEINTERNAL=${CALLERID(name)}) [pbx_config]
                    8. Set(_CALLERIDNUMINTERNAL=${CALLERID(num)}) [pbx_config]
                    9. Set(_EMAILNOTIFICATION=FALSE)              [pbx_config]
                    10. Set(_NODEST=)                             [pbx_config]
                    11. Macro(dialout-trunk,9,${EXTEN},,off)      [pbx_config]
                    12. Macro(dialout-trunk,10,${EXTEN},,off)     [pbx_config]
                    13. Macro(dialout-trunk,2,${EXTEN},,off)      [pbx_config]
                    14. Macro(dialout-trunk,8,${EXTEN},,off)      [pbx_config]
                    15. Macro(outisbusy,)                         [pbx_config]

-= 1 extension (15 priorities) in 1 context. =-


Не понял в чем дело =\

Re: Asterisk\FreePBX действие до совершения исходящего вызов

СообщениеДобавлено: 03 ноя 2021, 12:05
ded
"Macro Limit Reached. Aborting Call"

из-за проблемы с Caller ID

Re: Asterisk\FreePBX действие до совершения исходящего вызов

СообщениеДобавлено: 03 ноя 2021, 21:41
Zavr2008
https://www.voipsupport.it/wiki/index.php/Dynamic_Routes

Как раз на AstriCon доклад про него сейчас, делает что нужно)
Бесплатный как я понимаю если Destination выбрать Trunk.

Re: Asterisk\FreePBX действие до совершения исходящего вызов

СообщениеДобавлено: 03 ноя 2021, 22:24
skynetyar
А я уже отчаяться хотел =( ничего не выходит, глаза на бекрень уже!
Спасибо, иду напряжонно,вдумчиво изучать!

Re: Asterisk\FreePBX действие до совершения исходящего вызов

СообщениеДобавлено: 03 ноя 2021, 22:31
Zavr2008
Там вопрос к докладу задали можно ли для исходящих маршрутов заюзать - говорит вероятно да, но автор не проверял, обещал на форуме freepbx написать.

Re: Asterisk\FreePBX действие до совершения исходящего вызов

СообщениеДобавлено: 08 ноя 2021, 13:43
skynetyar
К сожалению ненашел применение его ,да есть AGI что то, можно применять в маршрутах и .и.т.д но в входящих, как я понял модуль строит логику в зависимости данных в БД.
Мне же надо "просто" направить исходящих вызов в группу вызовов исходящих маршрутов Goto(${outrt-X},${OUTNUM},1) даже представить сперва не мог что это станет такой проблемой =\

Re: Asterisk\FreePBX действие до совершения исходящего вызов

СообщениеДобавлено: 08 ноя 2021, 20:12
skynetyar
Поднял тему на офф. форуме ,там как бы дмаю что не так меня поняли но посоветовали не оферрайдить а все делать в кастом файле.
Стал пробовать так в extensions_custom.conf
[from-internal-custom]
exten => _.,1,Noop(ASR-ASR-ASR-ASR-ASR-ASR-)
exten => _.,n,Noop(${EXTEN})
exten => _.,n,Goto(${outrt-13},${EXTEN},1)

Но это все уходит в цикл, что не так ? =(

Re: Asterisk\FreePBX действие до совершения исходящего вызов

СообщениеДобавлено: 09 ноя 2021, 00:45
ded
У вас нет переменной ${outrt-13}
outrt-13 - это контекст исходящего маршрута, который вы создали в вэб интерфейсе. И не используйте шаблон _., лучше такой - _Х.
Надо
exten => _X.,n,Goto(outrt-13,${EXTEN},1)

Проверяйте командой
CLI> dialplan show 89012345678@outrt-13

Re: Asterisk\FreePBX действие до совершения исходящего вызов

СообщениеДобавлено: 11 ноя 2021, 19:59
skynetyar
Выяснил что звонок у меня сперва идет в
[outbound-restricted-routes]

Решил его заоррадить в extensions_override_freepbx.conf

Код: выделить все
[outbound-restricted-routes]
include => outbound-restricted-routes-custom

;--== INCLUDE ==--;
exten => _[+0-9]!,n,AGI(trunk_hook.php,${EXTEN},${CALLERID(number)})
exten => _[+0-9]!,n,Set(var_trunk_outrt=${trunk_outrt})

exten => _[+0-9]!,n,GotoIf($["${var_trunk_outrt}" = "pusto"]?pusto)
exten => _[+0-9]!,n,Goto(${var_trunk_outrt},${EXTEN},1)
exten => _[+0-9]!,n(pusto),Noop(== PUSTO QUIT CUSTOMIZATION ==)
;--== INCLUDE ==--;

exten => _[+0-9]!,n,Macro(user-callerid,LIMIT)
exten => _[+0-9]!,n,Set(ROUTEUSER=${IF($["${EXTTOCALL}"!=""]?${EXTTOCALL}:${AMPUSER})})
exten => _[+0-9]!,n,Set(ROUTEUSER=${IF($["${DB_EXISTS(AMPUSER/${ROUTEUSER}/cidnum)}"="1"]?${ROUTEUSER}:${NODEST})})
exten => _[+0-9]!,n,GotoIf($["${BLINDTRANSFER}" == ""]?notblind)
exten => _[+0-9]!,n,Set(ENDPOINT=${CUT(BLINDTRANSFER,-,1)})
exten => _[+0-9]!,n,Set(ROUTEUSER=${CUT(ENDPOINT,/,2)})
exten => _[+0-9]!,n(notblind),GotoIf($[${LEN(${ROUTEUSER})}>0 & ${DB_EXISTS(AMPUSER/${ROUTEUSER}/outroute_hash)}]?${DB(AMPUSER/${ROUTEUSER}/outroute_hash)},${EXTEN},2:outbound-allroutes,${EXTEN},2)

exten => h,1,Hangup

;--== end of [outbound-restricted-routes] ==--;


Но происходит жесть, он каким то образом не получает отбой о том что клиент которому позвонили сбросил и он звонит другими номерами из данного outbound routes
Например если в исходящей группе 3 номера он будет звонить со всех по очереди если сбрасывает тому кому позвонили....

Re: Asterisk\FreePBX действие до совершения исходящего вызов

СообщениеДобавлено: 12 ноя 2021, 11:56
ded
skynetyar писал(а):Но происходит жесть, он каким то образом не получает отбой о том что клиент которому позвонили сбросил и он звонит другими номерами из данного outbound routes

Я об этом писал выше -
ded писал(а):Как вы представляете себе исходящую группу?

Допустим вам надо звонить на номер +79012345678 и макрос возвращает вам три транка для выполнения этого вызова.
Вы инициируете вызов стразу по трём? Или последовательно по каждому?