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

cdr записи по отдельным папкам в зависимости от языка

Добавлено: 13 июл 2020, 23:18
serikbayxx
Здесь отрывок из диалплана. Сейчас записи пишутся в папку monitor. Каким образом можно распределить записи в разные папки в зависимости от языка обращения. К примеру создать создать две папки ru и en в папке monitor и дальше уже писать записи в зависимости от выбранного языка.

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

 same => n,Macro(app-mp3,/var/spool/asterisk/monitor/,${STRFTIME(${EPOCH},,%Y%m%d)}/${UNIQUEID})                                                 same => n,Answer()
same => n,Set(TIMEOUT(digit)=1)                 
same => n,Wait(1)                               
same => n,Set(q=1)
same => n,While($[${q} < 4])                    
same => n,Background(/var/lib/asterisk/sounds/ivr/aviata/main_menu)                             
same => n,WaitExten(4)
same => n,Set(q=$[${q} + 1])                    
same => n,EndWhile                              
exten => 1,1,GoTo(rus-main,s,1)                 
exten => 2,1,GoTo(eng-main,s,1)

Re: cdr записи по отдельным папкам в зависимости от языка

Добавлено: 14 июл 2020, 07:35
virus_net
Ну как бы логично, что сначала надо выяснить какой язык, а потом вызывать ваш макро app-mp3, где во втором параметре подставлять нужную вам папку.

Re: cdr записи по отдельным папкам в зависимости от языка

Добавлено: 14 июл 2020, 17:51
serikbayxx
ну это понятно. в этом контексте каким образом реализовать хотел спросить

Re: cdr записи по отдельным папкам в зависимости от языка

Добавлено: 15 июл 2020, 08:21
virus_net
Опять же логично, что перенести вызов app-mp3 в контекст rus-main и eng-main соответственно.

Кстати ещё вариант: добааить переменную, в которую записать выбранный язык и перемещать записанный файл в нужную папку по завершению вызова (в exten => h).