Есть такой кусок диалплана:
[macro-record-transfer]
exten=>s,1,Set(fname=${STRFTIME(${EPOCH},,%Y-%m-%d__%H-%M-%S)}__${CALLERID(number)}-${CDR(dst)})
same=>n,Set(dfname=${path2rec}/${fname})
same=>n,Set(monopt=nice -n 19)
same=>n,MixMonitor(${dfname}.wav)
same=>n,Dial(${ARG1},30,t)
same=>n,Hangup
exten=>h,1,Set(fname2=${fname}_${DIALEDPEERNUMBER})
same=>n,Set(dfname2=${path2rec}/${fname2})
same=>n,System(oggenc ${dfname}.wav -Q -q 0 -o ${dfname2}.ogg && rm -f ${dfname}.wav)
same=>n,Set(CDR(userfield)=internal)
same=>n,Set(CDR(record)=${fname2}.ogg)
same=>n,Set(CDR(dialedpeernumber)=${DIALEDPEERNUMBER})
В некоторых ситуациях в переменной ${DIALEDPEERNUMBER} может быть "natali/603" или "ys/2015". Далее при записи файла имя файла с "/" создает понятную проблему. Как в диалплане заменить "/" на "-". Может быть как-то можно использовать
sed -e 's/\//-/g'?
${REPLACE()}
, либо если интересен sed , то
exten=>h,1,Set(fname2=${SHELL(echo -n "${DIALEDPEERNUMBER}" | sed 's/\//-/')})
core show function REPLACE
-= Info about function 'REPLACE' =-
[Synopsis]
Replace a set of characters in a given string with another character.
[Description]
Iterates through a string replacing all the <find-chars> with <replace-ch
ar>. <replace-char> may be either empty or contain one character. If empty,
all <find-chars> will be deleted from the output.
NOTE: The replacement only occurs in the output. The original variable is
not altered.
[Syntax]
REPLACE(varname,find-chars[,replace-char])
[Arguments]
Not available
[See Also]
Not available
Задан: 2014-05-08 09:57:11 +0400
Просмотрен: 1,166 раз
Обновлен: May 08 '14
Как задать таймаут для ringing/progress?
есть проблема travelsim и asterisk, помогите с решением.
Смена переменной periodic-announce из extensions.conf
Автоответчик (приветствие и запись сообщения)
изменить значение переменной EXTEN в диалплане
событие после того как абонент снял трубку (РЕШЕНО)
Проект компании "АТС Дизайн"
Asterisk® и Digium® являются зарегистрированными торговыми марками компании
Digium, Inc., США.
IP АТС Asterisk распространяется под лицензией
GNU GPL.