27.05.2015

Макрос записи.

Макрос записи разговора.


Переменные ${CALLFILENAME},${monopt} выставляются в основном диалплане.
Надо переделать чтоб выставлялись в макросе.
[macro-en-record-test]
exten => s,1,NoOp(CHANNEL(from):${CHANNEL(from)})
exten => s,n,MYSQL(Connect connid localhost user pass db)
exten => s,n,MYSQL(Query resultid ${connid}  SELECT `record`  FROM `sippeers` WHERE defaultuser = '${CHANNEL(peername)}')
exten => s,n,MYSQL(Fetch fetchid ${resultid} record )
exten => s,n,MYSQL(Clear ${resultid})
exten => s,n,MYSQL(Disconnect ${connid})

exten => s,n,Gotoif($["${record}" = "no"]?dis-rec)
exten => s,n,Gotoif($["${record}" = ""]?dis-rec)
exten => s,n(monitor),MixMonitor(${CALLFILENAME}.wav,b,${monopt});

exten => s,n,MacroExit
exten => s,n(dis-rec),MacroExit
exten => s,n,Hangup

Макрос включения/выключения абонента


Макрос включения/отключения абонента.

[macro-en-peer]
exten => s,1,NoOp(CHANNEL(from):${CHANNEL(from)})
exten => s,n,MYSQL(Connect connid localhost user pass db)
exten => s,n,MYSQL(Query resultid ${connid}  SELECT `enable_peer`  FROM `sippeers` WHERE defaultuser = '${CHANNEL(peername)}')
exten => s,n,MYSQL(Fetch fetchid ${resultid} enable_peer )
exten => s,n,MYSQL(Clear ${resultid})
exten => s,n,MYSQL(Disconnect ${connid})
exten => s,n,Gotoif($["${enable_peer}" = "no"]?dis-peer)
exten => s,n,MacroExit
exten => s,n(dis-peer),Congestion(10)
exten => s,n,Hangup