Re: [AsteriskBrasil] Monitar chamada usando ami ou agi?

2014-01-08 Por tôpico desenvolvimento
 

Cara, boa tarde ! 

estou desenvolvendo uma aplicação igualzinha a
sua ... com muito custo e estudo eu ja consegui retornar os status da
ligação e mostrar na tela para o originador da chamada ainda falta umas
coisnhas.. se vc quiser .. me add no ritch...@hotmail.com que trocamos
uma idéia .. qualquer coisa ate desenvolvemos soluções juntos. 

só pra
matar a dúvida ... vc tem que usar Async=yes e determinar um action id
pra ele .. e depois capturar o originate response.. 

qualquer dúvida só
entrar em contato 

Em 07.01.2014 15:04, Victor Gonçalves escreveu: 

>
Boa tarde Lista, 
> 
> Estou tentando encontrar a melhor forma de
receber o status de uma chamada e informar aos nossos atendentes. 
> 
>
Criei um sistema onde eu subo um mailing com informações de nossos
clientes, automaticamente ele cai nesse script fornecendo as informações
necessárias para efetuar a chamada. 
> 
>  
> session_start();

> 
> $strHost = "127.0.0.1"; 
> 
> $strUser = "admin"; 
> 
> $strSecret
= "xx"; 
> 
> $strChannel = "SIP/TRONCO"; 
> 
> $strContext =
"discador"; 
> 
> $numero = $i['telefone']; 
> 
> $ramal =
$_SESSION['Ramal']; 
> 
> $strWaitTime = "30"; 
> 
> $strPriority = "1";

> 
> $strMaxRetry = "2"; 
> 
> $errno=0 ; 
> 
> $errstr=0 ; 
> 
>
$strCallerId = "$numero"; 
> 
> $oSocket = fsockopen ("localhost", 5038,
&$errno, &$errstr, 20); 
> 
> if (!$oSocket) { 
> 
> echo "$errstr
($errno)n"; 
> 
> } else { 
> 
> fputs($oSocket, "Action: loginrn");

> 
> fputs($oSocket, "Events: onrn"); 
> 
> fputs($oSocket, "Username:
$strUserrn"); 
> 
> fputs($oSocket, "Secret: $strSecretrnrn"); 
> 
>
fputs($oSocket, "Action: originatern"); 
> 
> fputs($oSocket, "Channel:
$strChannel/$numerorn"); 
> 
> fputs($oSocket, "Variable:
RAMAL=$ramalrn"); 
> 
> fputs($oSocket, "WaitTime: $strWaitTimern"); 
>

> fputs($oSocket, "CallerId: $strCallerIdrn"); 
> 
> fputs($oSocket,
"Exten: srn"); 
> 
> fputs($oSocket, "Context: $strContextrn"); 
> 
>
fputs($oSocket, "Priority: $strPriorityrnrn"); 
> 
> fputs($oSocket,
"Action: Logoffrnrn"); 
> 
> sleep(2); 
> 
> fclose($oSocket); 
> 
> }

> 
> echo "Ligando para o numero $numero" ; 
> 
> exit() ; 
> 
> ?>

> 
> Esse script eu peguei na internet e fiz pequenas modigicações!
Tudo funciona perfeitamente, a ligação é feita e cai neste contexto onde
é redirecionada para o atendente. 
> 
> [discador] 
> 
> exten =>
s,1,Set(CALLFILENAME=SAIDA${STRFTIME(,,-%H:%M:%S)}.wav) 
> 
> exten =>
s,2,MixMonitor(${CALLFILENAME}) 
> 
> exten => s,3,Dial(SIP/${RAMAL}) 
>

> exten => s,4,StopMonitor() 
> 
> exten => s,5,Hangup() 
> 
> O
problema é que se a ligação falhar, der ocupado ou qualquer outro
status, o atendente não fica sabendo!
> Qual a melhor maneira de pegar o
status dessa chamada e jogar na tela pro atendente? AGI ou AMI? 
> 
>
Agradeço qualquer ajuda. 
> 
> Victor Gonçalves 
> 
> Aktiv Telecom 
>

>   
> 
> ___
> KHOMP:
completa linha de placas externas FXO, FXS, GSM e E1
> Media Gateways de
1 a 64 E1s para SIP com R2, ISDN e SS7
> Intercomunicadores para acesso
remoto via rede IP e telefones IP
> Conheça todo o portfólio em
www.Khomp.com [1]
> ___
>
Para remover seu email desta lista, basta enviar um email em branco para
asteriskbrasil-unsubscr...@listas.asteriskbrasil.org




Links:
--
[1] http://www.Khomp.com
___
KHOMP: completa linha de placas externas FXO, FXS, GSM e E1
Media Gateways de 1 a 64 E1s para SIP com R2, ISDN e SS7
Intercomunicadores para acesso remoto via rede IP e telefones IP
Conheça todo o portfólio em www.Khomp.com
___
Para remover seu email desta lista, basta enviar um email em branco para 
asteriskbrasil-unsubscr...@listas.asteriskbrasil.org

[AsteriskBrasil] Monitar chamada usando ami ou agi?

2014-01-07 Por tôpico Victor Gonçalves
Boa tarde Lista,

 

Estou tentando encontrar a melhor forma de receber o status de uma chamada e
informar aos nossos atendentes.

 

Criei um sistema onde eu subo um mailing com informações de nossos clientes,
automaticamente ele cai nesse script fornecendo as informações necessárias
para efetuar a chamada.

 

\n";

} else {

fputs($oSocket, "Action: login\r\n");

fputs($oSocket, "Events: on\r\n");

fputs($oSocket, "Username: $strUser\r\n");

fputs($oSocket, "Secret: $strSecret\r\n\r\n");

fputs($oSocket, "Action: originate\r\n");

fputs($oSocket, "Channel: $strChannel/$numero\r\n");

fputs($oSocket, "Variable: RAMAL=$ramal\r\n");

fputs($oSocket, "WaitTime: $strWaitTime\r\n");

fputs($oSocket, "CallerId: $strCallerId\r\n");

fputs($oSocket, "Exten: s\r\n");

fputs($oSocket, "Context: $strContext\r\n");

fputs($oSocket, "Priority: $strPriority\r\n\r\n");

fputs($oSocket, "Action: Logoff\r\n\r\n");

sleep(2);

fclose($oSocket);

}

 

echo "Ligando para o numero $numero" ;

 

exit() ;

 

?>

 

Esse script eu peguei na internet e fiz pequenas modigicações! Tudo funciona
perfeitamente, a ligação é feita e cai neste contexto onde é redirecionada
para o atendente.

 

[discador]

 

exten => s,1,Set(CALLFILENAME=SAIDA${STRFTIME(,,-%H:%M:%S)}.wav)

exten => s,2,MixMonitor(${CALLFILENAME})

exten => s,3,Dial(SIP/${RAMAL})

exten => s,4,StopMonitor()

exten => s,5,Hangup()

 

O problema é que se a ligação falhar, der ocupado ou qualquer outro status,
o atendente não fica sabendo!
Qual a melhor maneira de pegar o status dessa chamada e jogar na tela pro
atendente? AGI ou AMI?

 

Agradeço qualquer ajuda.

 

Victor Gonçalves

Aktiv Telecom


 

 

 

 

___
KHOMP: completa linha de placas externas FXO, FXS, GSM e E1
Media Gateways de 1 a 64 E1s para SIP com R2, ISDN e SS7
Intercomunicadores para acesso remoto via rede IP e telefones IP
Conheça todo o portfólio em www.Khomp.com
___
Para remover seu email desta lista, basta enviar um email em branco para 
asteriskbrasil-unsubscr...@listas.asteriskbrasil.org