| Код: |
| exten => s,n,set(VB=../custom/ivr-D/) exten => s,n,set(VN=0leg);Если закомментировать блок ниже - то голос выбирается по этой переменной. exten => s,n(SelectVoice),background(${VB}/0leg) exten => s,n,background(${VB}/oleg) exten => s,n,waitexten(10) exten => 1,1,set(VN=0leg) exten => 1,n,GoTo(s,Start) exten => 2,1,set(VN=oleg) exten => 2,n,GoTo(s,Start) exten => s,n,GoTo(s,SelectVoice) exten => s,n(Start),NoOp() exten => s,n,background(${VB}/${VN}/0-0) |
Звоню на номер, запускается диалплан и предлагает выбрать гололс. Выбираю и тишина...
в консоли вижу:
| Код: |
| == Using SIP RTP CoS mark 5 -- Executing [5555@local:1] Goto("SIP/113int-00000384", "ivr-D,s,1") in new stack -- Goto (ivr-D,s,1) -- Executing [s@ivr-D:1] BackGround("SIP/113int-00000384", "beep") in new st ack > 0x7fc230021f90 -- Probation passed - setting RTP source address to 192.168.1.135:16388 -- Playing 'beep.slin' (language 'ru') -- Executing [s@ivr-D:2] Answer("SIP/113int-00000384", "") in new stack -- Executing [s@ivr-D:3] Set("SIP/113int-00000384", "try=0") in new stack -- Executing [s@ivr-D:4] Set("SIP/113int-00000384", "VB=../custom/ivr-D/") in new stack -- Executing [s@ivr-D:5] Set("SIP/113int-00000384", "VN=0leg") in new stack -- Executing [s@ivr-D:6] BackGround("SIP/113int-00000384", "../custom/ivr-D//0leg") in new stack -- Playing '../custom/ivr-D//0leg.slin' (language 'ru') -- Executing [s@ivr-D:7] BackGround("SIP/113int-00000384", "../custom/ivr-D//oleg") in new stack -- Playing '../custom/ivr-D//oleg.slin' (language 'ru') -- Executing [1@ivr-D:1] Set("SIP/113int-00000384", "VN=0leg") in new stack -- Executing [1@ivr-D:2] Goto("SIP/113int-00000384", "s,Start") in new stack [Jun 7 11:14:25] NOTICE[16929][C-000002f4]: pbx.c:2917 pbx_extension_helper: No such label 'Start' in extension 's' in context 'ivr-D' [Jun 7 11:14:25] WARNING[16929][C-000002f4]: pbx.c:8597 pbx_parseable_goto: Priority 'Start' must be a number > 0, or valid label == Spawn extension (ivr-D, 1, 2) exited non-zero on 'SIP/113int-00000384' |
Если комментирую блок инструкций в середине то слышу голос 0leg. Как мне добиться выставления переменных и перейти на логику использующую эти переменные?
Как правильно решить мою задачу?
Есть Путь 1 - там живут файлы 1 голоса и Путь 2 с такими же файлами другого голоса.
Вначале голос 1 просит нажать 1 чтобы выбрать его
Голос 2 просит нажать 2 чтобы выбрать его и соответственно VN должна получить нужный подкаталог. Ну а потом все файлы говорятся как ${VB}/${VN}/файл
_________________
Всех благ,
0лег.
o.frolkov@ya.ru +7(999)110-2146
Последний раз редактировалось: 0лег (Ср Июн 07, 2017 13:04)
Когда вставляете код -- оформляйте его в тег
| Код: |
| [code][/code] |
Иначе мы не видим многого, что было бы видеть полезно
А это что? :exten => s,n(Start),NoOp() - Я подозревал что это Переменная Start в эксте s Того самого контекста. Конечно не полностью привёл файл. Несколькими строками выше как раз и был [ivr-D]
_________________
Всех благ,
0лег.
o.frolkov@ya.ru +7(999)110-2146
По вашим логам, я вижу, что ivr-D это блок который вы вставили первым. Никакой метки Start там нет.
Added after 1 minutes:
Или это у вас все в одном контексте? Тогда вообще все не правильно.
Где первый приоритет? Почему в середине s вдруг 1?
Оформите все правильно.