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

extentions_override_freepbx.conf

Добавлено: 09 фев 2014, 22:32
tss050
Добрый вечер,
читаю форум и понимаю что должен быть абсолютно рабочий момент, но не работает:
Копирую макрос macro-user-callerid из extention_aditional.conf в extentions_override_freepbx.conf,
вношу необходимые правки ,перезагружаю диалплан (dialplan reload). Изменения в override почему-то игнорируются.
Хотя если править сам extention_aditional.conf - то все работает.
И если выполнить dialplan show то выводится без учета изменений в override.
Прошу уточнить нужно ли как-то подключать использование override.
Где может быть ошибка.
Спасибо.

Re: extentions_override_freepbx.conf

Добавлено: 09 фев 2014, 23:49
ded
Найдите строку
#include extentions_override_freepbx.conf
может она есть, но замаркирована.

Re: extentions_override_freepbx.conf

Добавлено: 10 фев 2014, 07:23
tss050
Да, в extensions.conf строка есть и она не закоментирована.

Re: extentions_override_freepbx.conf

Добавлено: 10 фев 2014, 11:12
ded
Вы скопировали в extentions_override_freepbx.conf только тело макроса, без заголовка
[macro-user-callerid]

Re: extentions_override_freepbx.conf

Добавлено: 10 фев 2014, 11:28
tss050
Все перепроверил - макрос скопирован с заголовком.

Re: extentions_override_freepbx.conf

Добавлено: 10 фев 2014, 11:34
ded
Где-то опечатка. Проверяйте -

CLI> dialplan show macro-user-callerid
Если быть точным - изменения в override не игнорируются, а добавляются. Например: оригинальный macro-user-callerid

Код: Выделить всё

 'h' =>            1. Macro(hangupcall,)                         [pbx_config]
  's' =>            1. Set(AMPUSER=${IF($["foo${AMPUSER}" = "foo"]?${CALLERID(number)}:${AMPUSER})}) [pbx_config]
                    2. GotoIf($["${CUT(CHANNEL,@,2):5:5}"="queue" | ${LEN(${AMPUSERCIDNAME})}]?report) [pbx_config]
                    3. ExecIf($["${REALCALLERIDNUM:1:2}" = ""]?Set(REALCALLERIDNUM=${CALLERID(number)})) [pbx_config]
                    4. Set(AMPUSER=${DB(DEVICE/${REALCALLERIDNUM}/user)}) [pbx_config]
                    5. Set(AMPUSERCIDNAME=${DB(AMPUSER/${AMPUSER}/cidname)}) [pbx_config]
                    6. GotoIf($["x${AMPUSERCIDNAME:1:2}" = "x"]?report) [pbx_config]
                    7. Set(AMPUSERCID=${IF($["${DB_EXISTS(AMPUSER/${AMPUSER}/cidnum)}" = "1"]?${DB_RESULT}:${AMPUSER})}) [pbx_config]
                    8. Set(CALLERID(all)="${AMPUSERCIDNAME}" <${AMPUSERCID}>) [pbx_config]
                    9. GotoIf($["${ARG1}"="LIMIT" & ${LEN(${AMPUSER})} & "${DB(AMPUSER/${AMPUSER}/concurrency_limit)}">"0" & "${GROUP_COUNT(${AMPUSER}@concurrency_limit)}">="${DB(AMPUSER/${AMPUSER}/concurrency_limit)}"]?limit) [pbx_config]
                    10. ExecIf($["${ARG1}"="LIMIT" & ${LEN(${AMPUSER})}]?Set(GROUP(concurrency_limit)=${AMPUSER})) [pbx_config]
                    11. ExecIf($["${DB(AMPUSER/${AMPUSER}/language)}" != ""]?Set(CHANNEL(language)=${DB(AMPUSER/${AMPUSER}/language)})) [pbx_config]
                    12. GosubIf($[${LEN(${DB(AMPUSER/${AMPUSER}/ccss/cc_agent_policy)})} & "${DB(AMPUSER/${AMPUSER}/ccss/cc_agent_policy)}" != "never"]?sub-ccss,s,1(${MACRO_CONTEXT},${CALLERID(dnid)})) [pbx_config]
     [report]       13. GotoIf($[ "${ARG1}" = "SKIPTTL" | "${ARG1}" = "LIMIT" ]?continue) [pbx_config]
     [report2]      14. Set(__TTL=${IF($["foo${TTL}" = "foo"]?64:$[ ${TTL} - 1 ])}) [pbx_config]
                    15. GotoIf($[ ${TTL} > 0 ]?continue)          [pbx_config]
                    16. Wait(${RINGTIMER})                        [pbx_config]
                    17. Answer()                                  [pbx_config]
                    18. Wait(1)                                   [pbx_config]
                    19. Playback(im-sorry&an-error-has-occured&with&call-forwarding) [pbx_config]
                    20. Macro(hangupcall,)                        [pbx_config]
     [limit]        21. Answer()                                  [pbx_config]
                    22. Wait(1)                                   [pbx_config]
                    23. Playback(beep&im-sorry&your&simul-call-limit-reached&goodbye) [pbx_config]
                    24. Macro(hangupcall,)                        [pbx_config]
                    25. Congestion(20)                            [pbx_config]
     [continue]     26. Set(CALLERID(number)=${CALLERID(number):0:40}) [pbx_config]
                    27. Set(CALLERID(name)=${CALLERID(name):0:40}) [pbx_config]
                    28. Set(CHANNEL(language)=${MASTER_CHANNEL(CHANNEL(language))}) [pbx_config]
беру вставляю в override только первый шаг

Код: Выделить всё

[macro-user-callerid]
exten => s,1,NoOp(----------------Oh, no! ------------------------)
получаем

Код: Выделить всё

*CLI> dialplan show macro-user-callerid
[ Context 'macro-user-callerid' created by 'pbx_config' ]
  'h' =>            1. Macro(hangupcall,)                         [pbx_config]
  's' =>            1. NoOp(----------------Oh, no! ------------------------) [pbx_config]
                    2. GotoIf($["${CUT(CHANNEL,@,2):5:5}"="queue" | ${LEN(${AMPUSERCIDNAME})}]?report) [pbx_config]
                    3. ExecIf($["${REALCALLERIDNUM:1:2}" = ""]?Set(REALCALLERIDNUM=${CALLERID(number)})) [pbx_config]
                    4. Set(AMPUSER=${DB(DEVICE/${REALCALLERIDNUM}/user)}) [pbx_config]
                    5. Set(AMPUSERCIDNAME=${DB(AMPUSER/${AMPUSER}/cidname)}) [pbx_config]
                    6. GotoIf($["x${AMPUSERCIDNAME:1:2}" = "x"]?report) [pbx_config]
                    7. Set(AMPUSERCID=${IF($["${DB_EXISTS(AMPUSER/${AMPUSER}/cidnum)}" = "1"]?${DB_RESULT}:${AMPUSER})}) [pbx_config]
                    8. Set(CALLERID(all)="${AMPUSERCIDNAME}" <${AMPUSERCID}>) [pbx_config]
                    9. GotoIf($["${ARG1}"="LIMIT" & ${LEN(${AMPUSER})} & "${DB(AMPUSER/${AMPUSER}/concurrency_limit)}">"0" & "${GROUP_COUNT(${AMPUSER}@concurrency_limit)}">="${DB(AMPUSER/${AMPUSER}/concurrency_limit)}"]?limit) [pbx_config]
                    10. ExecIf($["${ARG1}"="LIMIT" & ${LEN(${AMPUSER})}]?Set(GROUP(concurrency_limit)=${AMPUSER})) [pbx_config]
                    11. ExecIf($["${DB(AMPUSER/${AMPUSER}/language)}" != ""]?Set(CHANNEL(language)=${DB(AMPUSER/${AMPUSER}/language)})) [pbx_config]
                    12. GosubIf($[${LEN(${DB(AMPUSER/${AMPUSER}/ccss/cc_agent_policy)})} & "${DB(AMPUSER/${AMPUSER}/ccss/cc_agent_policy)}" != "never"]?sub-ccss,s,1(${MACRO_CONTEXT},${CALLERID(dnid)})) [pbx_config]
     [report]       13. GotoIf($[ "${ARG1}" = "SKIPTTL" | "${ARG1}" = "LIMIT" ]?continue) [pbx_config]
     [report2]      14. Set(__TTL=${IF($["foo${TTL}" = "foo"]?64:$[ ${TTL} - 1 ])}) [pbx_config]
                    15. GotoIf($[ ${TTL} > 0 ]?continue)          [pbx_config]
                    16. Wait(${RINGTIMER})                        [pbx_config]
                    17. Answer()                                  [pbx_config]
                    18. Wait(1)                                   [pbx_config]
                    19. Playback(im-sorry&an-error-has-occured&with&call-forwarding) [pbx_config]
                    20. Macro(hangupcall,)                        [pbx_config]
     [limit]        21. Answer()                                  [pbx_config]
                    22. Wait(1)                                   [pbx_config]
                    23. Playback(beep&im-sorry&your&simul-call-limit-reached&goodbye) [pbx_config]
                    24. Macro(hangupcall,)                        [pbx_config]
                    25. Congestion(20)                            [pbx_config]
     [continue]     26. Set(CALLERID(number)=${CALLERID(number):0:40}) [pbx_config]
                    27. Set(CALLERID(name)=${CALLERID(name):0:40}) [pbx_config]
                    28. Set(CHANNEL(language)=${MASTER_CHANNEL(CHANNEL(language))}) [pbx_config]
  Include =>        'macro-user-callerid-custom'                  [pbx_config]

Re: extentions_override_freepbx.conf

Добавлено: 10 фев 2014, 12:59
zzuz
Изменения в override не изменяются. Просто диаплан в файле выполняется раньше , чем основной. Поэтому основной дублирует экстеншены и приоритеты и соответственно не принимается.

Re: extentions_override_freepbx.conf

Добавлено: 10 фев 2014, 13:06
ded
Изменения в override изменяются. Просто диаплан в файле override выполняется позже, чем основной.

Re: extentions_override_freepbx.conf

Добавлено: 10 фев 2014, 13:32
zzuz
ладно, я просто уточнил.

но порядок следования
extensions.conf
#include extensions_override_freepbx.conf
#include extensions_additional.conf

Re: extentions_override_freepbx.conf

Добавлено: 10 фев 2014, 13:41
ded
Проделай тест (который я выше описал).