Puxar chamada das fila

572 views
Skip to first unread message

Clemer Arantes

unread,
Sep 28, 2017, 9:47:25 AM9/28/17
to ElastixBrasil
Bom dia pessoal, alguém já passou pelo seguinte problema:

Fila 100
 ramal 2
 ramal 3
 ramal 4

Digamos que os 3 estão em atendimento e tenha uma ligação na Fila 100
não estou conseguindo puxar a ligação da Fila, consigo apenas puxar do 
ramal, por exemplo, ambos ramais estão dentro do callgroup e pickupgroup
número 1, entao se tocar o ramal 2 o ramal 3 puxa com *8+2, porém da fila não
consegui, alguém já se deparou com esse problema ?



att.
Clemer

Roger Pitigliani

unread,
Sep 28, 2017, 11:46:48 AM9/28/17
to Lista Elastix Brasil
Usando o FOP você consegue capturar, mas é por tela.. nem todo mundo trabalha com ela..

Via discagem a captura (Pickup) trabalha em cima de ramais/extensões, e chamadas na espera da fila que não estão chamando/ringando no ramal ele não captura.

Uma forma simples eu desconheço.. mas dá pra fazer um esquema..

Eu fiz assim já quando precisei.. no seu caso é Elastix, teria que colocar esses blocos abaixo do "from-internal-custom", no arquivo extensions_custom.conf


exten => _pick.,1,Verbose(Captura Canal);
same => n,Set(RAMAL=${EXTEN:4});
same => n,Answer();
same => n,Ringing();
same => n,Wait(3); Espera 3 segundos e chama ramal que fez captura
same => n,Dial(Local/${RAMAL}@from-internal,20,Ttr);
same => n,Wait(5); Espera mais 5 e chama denovo
same => n,Dial(Local/${RAMAL}@from-internal,20,Ttr);
same => n,Hangup(); // nao atendeu, derruba

;; Para capturar a chamada espera fila - ** + numero fila ( * * 100  no seu caso )
exten => _**XXXX,1,Agi(queuecapture.agi,${EXTEN:2}); Identifica canal esperando na fila...
same => n,Pickup(${EXTEN:2}); // Se estiver ringando no ramal, captura..
same => n,Verbose(CANAL PARA CAPTURAR : ${WAITCHAN});
same => n,Verbose(${CHANNEL});
same => n,ChannelRedirect(${WAITCHAN},from-internal,pick${CALLERID(num)},1);
same => n,Hangup();


Criar o arquivo AGI "/var/lib/asterisk/agi-bin/queuecapture.agi", com o seguinte conteudo..
#!/usr/bin/php -f
<?php
        require("phpagi.php");
        $agi = new Agi();
        $queue = $argv[1];
        exec("/usr/sbin/asterisk -rx 'queue show $queue' | egrep 'wait' | awk '{print $2}'",$ret);
        $agi->exec("Playback","beep");
        if( count($ret) == 0 ){
                $agi->verbose("Nenhuma chamada na espera da fila $queue");
                $agi->hangup();
                exit(0);
        }
        $channel = $ret[0];
        $agi->set_variable("WAITCHAN","$channel");
        exit(0);
?>


Abraço..


--

---
Você recebeu essa mensagem porque está inscrito no grupo "ElastixBrasil" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para elastixbrasil+unsubscribe@googlegroups.com.
Para postar nesse grupo, envie um e-mail para elasti...@googlegroups.com.
Acesse esse grupo em https://groups.google.com/group/elastixbrasil.
Para mais opções, acesse https://groups.google.com/d/optout.



--
--
Roger Pitigliani
roger...@gmail.com
Skype: roger.pitigliani

Clemer Arantes

unread,
Sep 28, 2017, 1:20:30 PM9/28/17
to ElastixBrasil
Boa tarde Roger, 


Obrigado pela ajuda, irei testar e te retorno.


abraço.


att.
Clemer Arantes
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para elastixbrasi...@googlegroups.com.

Para postar nesse grupo, envie um e-mail para elasti...@googlegroups.com.
Acesse esse grupo em https://groups.google.com/group/elastixbrasil.
Para mais opções, acesse https://groups.google.com/d/optout.
Reply all
Reply to author
Forward
0 new messages