|
|
|
@ -282,15 +282,21 @@ exten => s,n,System(/bin/rm -rf /tmp/${AUDIO}.ulaw)
|
|
|
|
|
; Channel(peername) não existe para ligações DISA. Dessa forma é inserido variável DISA quando é DISA |
|
|
|
|
; Se for DISA precisa Testar para não procurar channel(peername) |
|
|
|
|
[definir_org_id] |
|
|
|
|
exten => s,1,NooP(${DISA}) |
|
|
|
|
exten => s,1,NoOp(empresa = ${ORG_ID}) |
|
|
|
|
; chamada disa mantém o org_id da variável que herda |
|
|
|
|
exten => s,n,GotoIf($["${ISNULL(${DISA})}" = "0"]?chamada_disa) |
|
|
|
|
; Canal local mantém o org_id da variável que herda |
|
|
|
|
exten => s,n,GotoIf($["${CHANNEL:0:6}" = "Local/"]?canal_local) |
|
|
|
|
exten => s,n,GotoIf($["${ISNULL(${ORG_ID})}" = "1"]?define_org_id) |
|
|
|
|
exten => s,n,GotoIf($["${ORG_ID}" = "{DB(ORG_ID/${CHANNEL(peername)})}"]?org_id_diferente) |
|
|
|
|
exten => s,n,Return() |
|
|
|
|
|
|
|
|
|
exten => s,n(canal_local),GotoIf($["${ISNULL(${ORG_ID})}" = "1"]?fail_org_id) |
|
|
|
|
exten => s,n,Return() |
|
|
|
|
exten => s,n(define_org_id),Set(__ORG_ID=${DB(ORG_ID/${CHANNEL(peername)})}) |
|
|
|
|
exten => s,n,GotoIf($["${ISNULL(${ORG_ID})}" = "1"]?Hangup()) |
|
|
|
|
exten => s,n,Return() |
|
|
|
|
; desliga se o org_id definido é diferente do org_id do canal |
|
|
|
|
exten => s,n(org_id_diferente),Hangup() |
|
|
|
|
exten => s,n(fail_org_id),Hangup(); |
|
|
|
|
exten => s,n(chamada_disa),GotoIf($["${ISNULL(${ORG_ID})}" = "1"]?Hangup()) |
|
|
|
|