[AsteriskBrasil] Asterisk X FreePBX - Duvida Remanescente

Juda BenHur judabenhur em hotmail.com
Segunda Setembro 14 07:51:47 BRT 2009


Pessoal (Daviramos),


No e-mail anexo, Daviramos demonstrou uma possibilidade de executar por include, uma funcao que a interface web nao contemplasse. Otimo.

Fiz meus testes conforme o exemplo, mas fiquei na duvida sobre a sequencia desses comandos.

Minha duvida pode ser simples, boba, pode ate ter sido discutida aqui por outros angulos, mas ainda me considero um iniciante e preciso da ajuda de voces.

Explico melhor, adotando o proprio exemplo que foi passado, segue:


#extensions_additional.conf

[ivr-3]
include => ivr-3-custom
include => from-did-direct-ivr
include => app-directory
exten => #,1,dbDel(${BLKVM_OVERRIDE})
exten => #,n,Set(__NODEST=)
exten => #,n,Goto(app-directory,#,1)
exten => h,1,Hangup
exten => s,1,Set(MSG=custom/no_expediente)
exten => s,n,Set(LOOPCOUNT=0)
exten => s,n,Set(__DIR-CONTEXT=default)
exten => s,n,Set(_IVR_CONTEXT_${CONTEXT}=${IVR_CONTEXT})
exten => s,n,Set(_IVR_CONTEXT=${CONTEXT})
exten => s,n,GotoIf($["${CDR(disposition)}" = "ANSWERED"]?begin)
exten => s,n,Answer
exten => s,n,Wait(1)
exten => s,n(begin),Set(TIMEOUT(digit)=3)
exten => s,n,Set(TIMEOUT(response)=10)
exten => s,n,Set(__IVR_RETVM=)
exten => s,n,ExecIf($["${MSG}" != ""],Background,${MSG})
exten => s,n,WaitExten(,)
exten => hang,1,Playback(vm-goodbye)
exten => hang,n,Hangup
exten => 1,1,dbDel(${BLKVM_OVERRIDE})
exten => 1,n,Set(__NODEST=)
exten => 1,n,Goto(ext-queues,4001,1)
exten => 2,1,dbDel(${BLKVM_OVERRIDE})
exten => 2,n,Set(__NODEST=)
exten => 2,n,Goto(ext-queues,4002,1)
exten => 3,1,dbDel(${BLKVM_OVERRIDE})
exten => 3,n,Set(__NODEST=)
exten => 3,n,Goto(ivr-8,s,1)
exten => 4,1,dbDel(${BLKVM_OVERRIDE})
exten => 4,n,Set(__NODEST=)
exten => 4,n,Goto(ext-queues,4005,1)
exten => 9,1,dbDel(${BLKVM_OVERRIDE})
exten => 9,n,Set(__NODEST=)
exten => 9,n,Goto(ext-queues,4003,1)
exten => i,1,Playback(invalid)
exten => i,n,Goto(loop,1)
exten => t,1,Goto(loop,1)
exten => loop,1,Set(LOOPCOUNT=$[${LOOPCOUNT} + 1])
exten => loop,n,GotoIf($[${LOOPCOUNT} > 2]?hang,1)
exten => loop,n,Goto(ivr-3,s,begin)
exten => return,1,Set(MSG=custom/no_expediente)
exten => return,n,Set(_IVR_CONTEXT=${CONTEXT})
exten => return,n,Set(_IVR_CONTEXT_${CONTEXT}=${IVR_CONTEXT_${CONTEXT}})
exten => return,n,Goto(ivr-3,s,begin)
exten => fax,1,Goto(ext-fax,in_fax,1)

; end of [ivr-3]

#extensions_custom.conf

[ivr-3-custom]
exten => 5,1,Answer()
exten => 5,n,NoOp(FUNCIONOU)
exten => 5,n,Hangup


Se entendi bem, mesmo o include "ivr-3-custom" estando no inicio de "IVR-3", este include faz a mencao do item 'exten => 5,xxxxxxx', que me parece entrar entre as linhas 'exten => 4,n,Goto(ext-queues,4005,1)' e 'exten => 9,1,dbDel(${BLKVM_OVERRIDE})', estou certo?

Agora, a duvida que tenho e a seguinte: 


Se tenho o seguinte "IVR-10"

[ivr-10]
include => ivr-10-custom
include => from-did-direct-ivr
include => app-directory
exten => #,1,dbDel(${BLKVM_OVERRIDE})
exten => #,n,Set(__NODEST=)
exten => #,n,Goto(app-directory,#,1)
exten => h,1,Hangup
exten => s,1,Set(LOOPCOUNT=0)
exten => s,n,Set(__DIR-CONTEXT=default)
exten => s,n,Set(_IVR_CONTEXT_${CONTEXT}=${IVR_CONTEXT})
exten => s,n,Set(_IVR_CONTEXT=${CONTEXT})
exten => s,n,GotoIf($["${CDR(disposition)}" = "ANSWERED"]?begin)
exten => s,n,Answer
exten => s,n,Wait(1)
exten => s,n(begin),Set(TIMEOUT(digit)=3)
exten => s,n,Set(TIMEOUT(response)=10)
exten => s,n,Background(custom/ura-pt/ramal&custom/ura-pt/marketing&custom/ura-pt/farmacia&custom/ura-pt/laboratorio&custom/ura-pt/sistemas&custom/ura-pt/cobranca)
exten => s,n,WaitExten(,)
exten => hang,1,Playback(vm-goodbye)
exten => hang,n,Hangup
exten => 1,1,dbDel(${BLKVM_OVERRIDE})
exten => 1,n,Set(__NODEST=)
exten => 1,n,Goto(from-did-direct,10,1)
exten => 2,1,dbDel(${BLKVM_OVERRIDE})
exten => 2,n,Set(__NODEST=)
exten => 2,n,Goto(ext-group,333,1)
exten => 3,1,dbDel(${BLKVM_OVERRIDE})
exten => 3,n,Set(__NODEST=)
exten => 3,n,Goto(ext-group,335,1)
exten => 4,1,dbDel(${BLKVM_OVERRIDE})
exten => 4,n,Set(__NODEST=)
exten => 4,n,Goto(ext-group,334,1)
exten => 5,1,dbDel(${BLKVM_OVERRIDE})
exten => 5,n,Set(__NODEST=)
exten => 5,n,Goto(ext-group,330,1)
exten => 6,1,dbDel(${BLKVM_OVERRIDE})
exten => 6,n,Set(__NODEST=)
exten => 6,n,Goto(ext-group,331,1)
exten => 7,1,dbDel(${BLKVM_OVERRIDE})
exten => 7,n,Set(__NODEST=)
exten => 7,n,Goto(from-did-direct,52,1)
exten => i,1,Set(LOOPCOUNT=$[${LOOPCOUNT} + 1])
exten => i,n,ExecIf($[${LOOPCOUNT} <= 2],Playback,invalid)
exten => i,n,GotoIf($[${LOOPCOUNT} <= 2]?s,begin)
exten => i,n,dbDel(${BLKVM_OVERRIDE})
exten => i,n,Set(__NODEST=)
exten => i,n,Goto(app-blackhole,hangup,1)
exten => t,1,Goto(loop,1)
exten => loop,1,Set(LOOPCOUNT=$[${LOOPCOUNT} + 1])
exten => loop,n,GotoIf($[${LOOPCOUNT} > 2]?hang,1)
exten => loop,n,Goto(ivr-10,s,begin)
exten => return,1,Set(_IVR_CONTEXT=${CONTEXT})
exten => return,n,Set(_IVR_CONTEXT_${CONTEXT}=${IVR_CONTEXT_${CONTEXT}})
exten => return,n,Goto(ivr-10,s,begin)
exten => fax,1,Goto(ext-fax,in_fax,1)

; end of [ivr-10]

.... E se eu quero deixar em um "custom" o menu de opcoes de discagem ["exten => s,n,Background(custom/ura-pt/ramal&custom/ura-pt/marketing&custom/ura-pt/farmacia&custom/ura-pt/laboratorio&custom/ura-pt/sistemas&custom/ura-pt/cobranca)"], posso deixar somente essa linha no meu custom ou tenho que deixar todas as linhas "s,n," ? Se tiver que deixar todas as linhas "s,n,", como posso saber que serao executas na sequencia desejada?


Muitissimo obrigado,
Juda Benhur.





-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: http://listas.asteriskbrasil.org/pipermail/asteriskbrasil/attachments/20090914/aed5e2d7/attachment-0001.htm 
-------------- Próxima Parte ----------
Uma mensagem embutida foi limpa...
De: Daviramos Roussenq Fortunato <daviramosrf em gmail.com>
Assunto: Re: [AsteriskBrasil] Asterisk X FreePBX
Data: Thu, 30 Jul 2009 09:11:10 -0300
Tam: 24738
Url: http://listas.asteriskbrasil.org/pipermail/asteriskbrasil/attachments/20090914/aed5e2d7/attachment-0001.eml 


Mais detalhes sobre a lista de discussão AsteriskBrasil