Resumo

  • RFC 3149 permitiu que o Call Agent interpretasse números de teclas, ajustasse rótulos e luzes, forçasse hook e comandasse uma tela XML, sem fazer do evento prova da função concluída.
  • Como a tela podia divergir da sinalização, recebeu endpoint disp/ próprio, e a camada XML examinava primeiro teclas compartilhadas.
  • Volume, troca fone/viva-voz e mute com indicador continuaram locais, preservando um limite físico diante da inteligência externa.

A tecla transmitia um número

No MGCP, o Media Gateway Controller ou Call Agent mantinha o controle de chamadas fora do gateway. Uma linha analógica precisava de poucos sinais. Um telefone comercial acrescentava hold, transfer, conference, mensagens, teclas programáveis, display, soft keys, speaker e mute.

RFC 3149 definiu KY para teclas, lâmpadas e rótulos; BP para force off-hook/on-hook e beep; XML para tela e entrada. O aparelho não enviava “hold”. Enviava o número. O mapa no Call Agent determinava a função.

Modelos diferentes podiam usar números diferentes. Uma notificação válida comprovava um número reportado, não a intenção comercial. Dizer que o usuário pediu hold exigia o mapa daquele instante; dizer que a chamada ficou em espera exigia decisão, sinalização e mídia.

Preserve modelo, firmware, versão do mapa, número, RQNT/NTFY, decisão e resultado. Um button=hold isolado é uma conclusão disfarçada.

Texto e luz eram saídas

O agente podia ligar a luz de uma tecla e escrever texto ao lado dela. Isso tornava a interface flexível, mas permitia descompasso. Um rótulo antigo podia sobreviver a novo mapa; uma luz podia acender sem o serviço; o usuário podia interpretar outro botão.

O objetivo era um conjunto mínimo e de baixo nível, sem tráfego redundante. Se bastava saber da pressão, não era necessário relatar pressão e soltura. O log, portanto, não continha o gesto físico inteiro.

Rótulo, lâmpada, evento e função têm recibos distintos. Proximidade no painel não os torna equivalentes.

A tela ganhou identidade própria

O estado do display podia ser assíncrono em relação à sinalização. O RFC esperava um endpoint separado com prefixo disp/.

No exemplo, uma chamada toca enquanto a tela oferece envio imediato ao voice mail. A escolha gera post XML e pode cancelar timers. Mostrar, pressionar, postar, cancelar, mudar a chamada e produzir o efeito remoto são etapas diferentes.

O agente indicava deck e card, substituía valores e recebia input. Cards incluíam texto, listas, entrada, timer e navegação. Teclas compartilhadas passavam primeiro pela camada XML, que as consumia ou repassava à camada telefônica.

Prioridade de despacho não era garantia de renderização ou chamada. O endpoint separado tornava observável a discordância.

Marca e modelo eram um atalho

Em vez de descobrir cada tecla, X-UA pedia uma string de marca e modelo para selecionar um perfil. A string não atestava hardware. Podia ser ignorada, divergir do firmware ou cair em perfil incompleto.

Um parâmetro X- desconhecido devia ser ignorado, não quebrar a interação. Ausência de resposta significava incerteza, não layout padrão. O controlador precisava de fallback limitado.

A mão manteve autoridade imediata

O volume de campainha, fone e viva-voz devia ser local. Com speaker ativo, o usuário podia levantar o fone e voltar ao speaker sem Call Agent. Mute e sua luz também eram locais.

O centro guardava semântica variável; o aparelho, ação imediata sobre áudio. Não é preciso inventar medições de latência ou uma teoria de falha ausente no texto.

Local não significava correto. Pressão, estado mute, luz e supressão de áudio podiam divergir. A mídia permanecia prova separada.

A ordem remota podia ser negada

BP permitia forçar off-hook, on-hook e beep, inclusive para integração com PC. Mas o usuário podia negar o off-hook ao desligar. Pedido, aceitação, hardware, chamada e reação tinham relógios próprios.

A seção de segurança apenas herdava as considerações do MGCP. Não declarou XML, mapeamento ou hook seguros. Password mode mascarava caracteres na tela sem comprovar criptografia.

A nota IESG situou o texto como Informational sobre protocolo não-IETF usado em produtos, enquanto Megaco/H.248 tratava o mesmo espaço. Status documental não apaga execução nem prova migração universal.

O funcionamento podia corrigir o nome

Funções centrais podiam falhar e mute continuar. Uma atualização mudava a tecla sem mudar o plástico. Uma card mostrava desvio enquanto o telefone ainda tocava.

Se a tecla chamada hold não altera mídia, hold não ocorreu. Se a luz mute acende e áudio sai, apresentação e realidade discordam. Se disp/ e telefone divergem, ambos devem permanecer no registro.

O botão físico marcou uma fronteira: o centro podia nomear e coordenar, mas receber eventos não lhe entregava a custódia de toda ação.

Fontes