SENTINELA - Protocolo CTI/CMD HOLD
De uTech Tecnologia
(Diferença entre revisões)
(→Fluxo) |
|||
Linha 31: | Linha 31: | ||
! align="center" colspan="2" | APP CTI > SERVIDOR CTI | ! align="center" colspan="2" | APP CTI > SERVIDOR CTI | ||
|- | |- | ||
− | | align="left " colspan="2"| '''HOLD CALLID:30303046\n''' | + | | align="left " colspan="2"| '''HOLD CALLID:30303046\r\n\r\n''' |
|- | |- | ||
! scope="row" colspan=2 align="center"| SERVIDOR CTI > APP CTI | ! scope="row" colspan=2 align="center"| SERVIDOR CTI > APP CTI | ||
Linha 39: | Linha 39: | ||
| align="left"| '''HOLD RESP:ERROR\r\n\r\n''' || <font color=red>Erro reportado pelo PABX</font> | | align="left"| '''HOLD RESP:ERROR\r\n\r\n''' || <font color=red>Erro reportado pelo PABX</font> | ||
|} | |} | ||
− | |||
== Exemplo PHP == | == Exemplo PHP == |
Edição atual tal como 17h42min de 22 de junho de 2016
Tabela de conteúdo |
O HOLD é um comando enviado pela Aplicação CTI ao Servidor para colocar uma chamada em espera/música. Para enviar esse comando, é necessário passar o parâmetro CALLID, recebido nos eventos de chamadas, conforme mostrado abaixo.
A aplicação CTI recebe um evento de chamada com CALLID 30303046 e envia para o Servidor o comando HOLD com o CALLID do evento.
A chamada deve ser desviada quando estiver no estado established ou queued (Ver Estados de uma chamada).
NOTA: Ao colocar uma chamada em HOLD, a chamada atual é colocada em espera/música e é colocado TOM de discagem no telefone para uma nova chamada (Similar ao pressionar a tecla Flash). |
<< CALL CALLID:30303336 STATE:established CALLING:2001 CALLED:2000 >> HOLD CALLID:30303046
[editar] Parâmetros
Parâmetros enviados para o Servidor | |
---|---|
CALLID | ID da chamada recebida nos eventos de chamadas. |
[editar] Comando
HOLD CALLID:30303046\r\n\r\n |
---|
[editar] Fluxo
APP CTI > SERVIDOR CTI | |
---|---|
HOLD CALLID:30303046\r\n\r\n | |
SERVIDOR CTI > APP CTI | |
HOLD RESP:OK\r\n\r\n | Comando aceito pelo PABX |
HOLD RESP:ERROR\r\n\r\n | Erro reportado pelo PABX |
[editar] Exemplo PHP
<?php function cti_hold_call($socket, $callid) { $data = "HOLD CALLID:callid\r\n\r\n"; socket_write($socket, $data, strlen($data)); $rd = socket_read($socket, 2048); if(!$rd) return 1; return 0; } ?> |
[editar] Eventos da Chamada Realizada
[editar] Estados de uma Chamada