Programação Asterisk IVR dentro freepbx problema continuando o programa quando balconista hangup

1

Estou tentando resolver um problema com o meu IVR, estou tentando descobrir como continuar a chamada quando o balconista desligar, para uma avaliação.

Bem ...

Eu descobri que o comando queue pode fazer isso com alguma opção específica, o problema é que o comando queue quebra o asterisco usando 100% da CPU ... (então o comando queue não está funcionando)

Se eu substituir este código de trabalho:

exten => 1235,n,Goto(ext-queues,2026,1)

Por isso:

exten => 1235,n,queue(2026,c)

A fila parece boa, a música começa a tocar, mas não há telefone tocando ... e a CPU vai para 100% de asterisco.

No fórum do FreePBX recebo alguns comentários dizendo que a coisa que eu estou tentando fazer não é possível no contexto do FreePBX nas novas versões do FreePBX, então como escapar desse contexto ou fazer algum tipo de downgrade, ou editar algum script embutido resolver este problema?

Existe alguma alternativa para eu usar o comando queue, ou fazer com que o programa continue antes que o balconista atenda a interrupção, e o programa asterisco continue sendo executado?

    
por Luciano Andress Martini 30.08.2016 / 19:13

1 resposta

0

Após uma longa pesquisa, descobri uma solução alternativa:

Crie um script em /usr/local/bin/freepbx_fix_queue_members.sh com as seguintes linhas:

#!/bin/bash
cp /etc/asterisk/queues_additional.conf /etc/asterisk/queues_additional.conf-freepbx
sed 's/member=Local\/\([0-9a-zA-Z_]*\).*,\(.*\)/member=SIP\/,/' </etc/asterisk/queues_additional.conf-freepbx >/etc/asterisk/queues_additional.conf
asterisk -rx "reload"

E dê a permissão de execução.

chmod +x /usr/local/bin/freepbx_fix_queue_members.sh

Altere o parâmetro POST_RELOAD em /etc/amportal.conf para carregar o novo script:

# POST_RELOAD Script
# Default Value:
POST_RELOAD=/usr/local/bin/freepbx_fix_queue_members.sh

Reinicie o ASTERISK e execute o script pela primeira vez:

/usr/local/bin/freepbx_fix_queue_members.sh

É isso, agora o comando queue funcionará!

Agora você pode usar em seu código personalizado a opção c da fila, para continuar a execução do script, após o desligamento do funcionário.

exten => 1235,n,queue(2026,c)
exten => 1235,n,goto(evaluation)
    
por 27.10.2016 / 22:04

Tags