On Sunday 09 April 2006 23:09, Josué Conti wrote: > Caso meu link de dados onde está o iax2 "caia" preciso retirar manualmente > o comentário da outra rota, para que consiga efetuar ligações. No caso o > que queria era automatizar esse processo.Para isso como devo proceder?
Eu entendi errado ou você quer uma espécie de fail-over dos links de saída? Sei que isso pode não ter muito a ver com LCR, mas eu entendi que procura por algo assim... mas... bom, eu fiz isso com ajuda de um colega de trabalho e ficou muito decente. A idéia por trás da coisa toda é mais ou menos a seguinte: Você possui vários esquemas de saída de ligações com opções quebradas em várias variáveis no dialplan (não importa se é realtime ou não). Se é Zap ou SIP, se tem opções Dial() ou não etc etc Você tem separado alguns contextos de status, um pra PSTN e outro pra algum outro PBX, e assim vai (ou junte os todos, whatever, depende da sua rede). Mas de qualquer forma, o contexto de checagem de status é importante ter. Você vai precisar montar um loop que é alimentado pela resposta do CHANUNAVAIL (que estaria no contexto de status), e caso não satisfaça o que quer, continue indo pra sua macro de discagem padrão ou seja lá o que você usa (dica: macros salvam a sua pele). Em um dos muitos contextos de saída, onde você filtra o padrão de discagem (se é que você separa celular, locais, DDD etc... não sei), você vai precisar zerar o tal contador do loop e concatenar em uma variável só, todas as opções dos seus esquemas de saída. Ou seja, uma meta-variável que leve pra frente informações separadas de cada uma de suas saídas. Em caso de problema em uma delas, as seguintes serão tentadas automagicamente, usando a checagem que você escolher manter no contexto de status que falei. Na macro de saída propriamente dita, filtre a meta-variável e selecione o primeiro esquema de saída das ligações (tronco, AGI, tanto faz o que você usa). Se você usar append e trim na string de discagem, essa é a hora de manipulá-la e no fim deixá-la pronta pra funcionar. Agora sim você pode executar seu AGI de discagem ou chamar o Dial() direto. Obviamente você pode usar outra checagem de falha na ligação, não precisa ser CHANUNAVAIL se não quiser/puder usá-lo. Bom, é por aí... fazem uns 4 meses que fiz isso, então não devo lembrar de tudo, mas boa sorte... se é isso mesmo que procura :-) -- caio[1982] begotti http://caio.ueberalles.net