Protocolo CTI uTech/CMD HOLD
De uTech Tecnologia
(Diferença entre revisões)
(→Fluxo) |
|||
Linha 34: | Linha 34: | ||
! align="center" colspan="2" | APP CTI > SERVIDOR CTI | ! align="center" colspan="2" | APP CTI > SERVIDOR CTI | ||
|- | |- | ||
− | | align="left " colspan="2"| '''HOLD CALLID:30303046\r\n\r\n''' | + | | align="left " colspan="2"| '''HOLD INST:9e18e45af865 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 |
Edição atual tal como 20h32min de 28 de julho de 2021
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 INST:9e18e45af865 CALLID:30303046
[editar] Parâmetros
Parâmetros enviados para o Servidor | |
---|---|
INST | Instancia/Chave do comando enviado. Será retornado a mesma chave na resposta do comando.
|
CALLID | ID da chamada recebida nos eventos de chamadas. |
[editar] Comando
HOLD INST:9e18e45af865 CALLID:30303046\r\n\r\n |
---|
[editar] Fluxo
APP CTI > SERVIDOR CTI | |
---|---|
HOLD INST:9e18e45af865 CALLID:30303046\r\n\r\n | |
SERVIDOR CTI > APP CTI | |
HOLD INST:9e18e45af865 RESP:OK\r\n\r\n | Comando aceito pelo PABX |
HOLD INST:9e18e45af865 RESP:ERROR\r\n\r\n | Erro reportado pelo PABX |
[editar] Exemplo PHP
<?php function cti_hold_call($socket, $callid) { $data = "HOLD INST:9e18e45af865 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