Protocolo CTI uTech/CMD HOLD

De uTech Tecnologia
(Diferença entre revisões)
Ir para: navegação, pesquisa
(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.
  • Exemplo: INST:9e18e45af865
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




Volta ao menu

Ferramentas pessoais
Espaços nominais

Variantes
Visualizações
Ações
Navegação
Ferramentas