Resumen

  • RFC 3149 permitió al Call Agent interpretar números de teclas, poner etiquetas y luces, forzar el estado hook y conducir una pantalla XML, sin convertir el evento en prueba de la función final.
  • Como la pantalla podía estar desfasada respecto de la señalización, recibió un endpoint disp/ distinto y la capa XML obtuvo prioridad sobre teclas compartidas.
  • Volumen, cambio inmediato auricular/altavoz y silencio con su indicador siguieron locales: la inteligencia externa conservó un límite físico.

Un número cruzaba la red; el significado esperaba fuera

MGCP separaba el control de llamadas del gateway. Un Media Gateway Controller o Call Agent decidía qué eventos pedir y qué señales producir. Las líneas analógicas básicas eran sencillas. Un teléfono de empresa añadía hold, transfer, conference, mensajes, teclas programables, pantalla, soft keys, altavoz y mute.

RFC 3149 creó KY para teclas, luces y etiquetas; BP para force off-hook, force on-hook y beep; XML para pantalla e ingreso del usuario. La tecla sólo reportaba un número. El mapa residente en el Call Agent decidía si ese número significaba hold, transferencia, línea u otra función.

Los modelos no compartían posiciones. Una notificación válida confirmaba un número reportado, no el sentido empresarial. Para decir que el usuario pidió hold hacía falta el mapa vigente. Para decir que la llamada quedó en espera hacían falta la decisión, las señales, la transición y el resultado de medios.

Una base que guarda button=hold borra esa cadena. Debe conservar modelo, firmware, versión del mapa, número, RQNT/NTFY, decisión y resultado.

La etiqueta y la luz eran presentación

El agente podía encender la luz de una tecla y escribir texto junto a ella. Esa flexibilidad permitía reutilizar el mismo hardware. También podía producir desajuste: etiqueta antigua después de cambiar el mapa, luz activa sin función completada o evento correcto desde una tecla diferente a la que el usuario creyó leer.

El objetivo era un conjunto mínimo y de bajo nivel sin tráfico redundante. Si al agente sólo le interesaba una pulsación, no necesitaba press y release. La economía era útil, pero el registro del protocolo no contenía toda la experiencia física.

Etiqueta, indicador, evento y función son cuatro recibos. La proximidad en el panel no autoriza a fusionarlos.

La pantalla obtuvo otro nombre

RFC 3149 reconoció que la pantalla podía cambiar en un reloj diferente de la señalización. La convirtió en otro endpoint MGCP añadiendo disp/ al nombre del teléfono.

El ejemplo mostraba una llamada entrante y una opción para enviarla de inmediato al buzón. La selección generaba un post XML y podía cancelar timers de timbre. Mostrar la opción, pulsarla, entregar el post, cancelar el temporizador, cambiar la llamada y producir el efecto remoto eran eventos separados.

El agente indicaba un deck y una card, sustituía variables y recibía entradas. Una card podía contener listas, texto, input, timers y navegación. Si una tecla pertenecía también al teléfono, la capa XML la veía primero; la consumía o la entregaba a la capa telefónica.

Prioridad de despacho no era éxito. Explicaba dónde acabó una tecla, pero no probaba render, entrega o señalización. El endpoint separado convertía la asincronía en estado observable.

El modelo era un atajo de capacidades

En vez de descubrir exhaustivamente cada tecla, el parámetro experimental X-UA pedía una cadena de marca y modelo. El Call Agent elegía con ella un perfil de capacidades.

La cadena no atestiguaba el hardware. Podía ser ignorada por un gateway sin soporte, quedar desfasada del firmware o apuntar a un perfil incompleto. No garantizaba teclado, pantalla, luz ni audio.

El prefijo X- obligaba a tolerar incertidumbre: un parámetro desconocido debía ignorarse sin derribar la interacción. No responder no significaba “teléfono estándar”. Significaba que el controlador necesitaba un modo de reserva limitado.

La mano del usuario conservó poder directo

La sección 4 dejó local el volumen de timbre, auricular y altavoz. Con el speaker activo, el usuario podía tomar el auricular y volver al speaker sin interacción con el Call Agent. Mute y su luz también debían residir localmente.

No era una excepción vergonzosa. El centro conservaba semántica variable; el extremo, manipulación inmediata del audio. El diseño distribuyó inteligencia según la consecuencia.

No debe inventarse una medición de latencia o teoría de failover. El RFC no las ofrece. La afirmación verificable es la asignación local y la ausencia explícita de viaje al agente para cambiar la ruta.

Tampoco local equivalía a correcto. Pulsación, estado mute, luz y supresión real de audio podían divergir. Los medios tenían la última palabra operacional.

La orden remota no era soberana

BP permitía forzar off-hook u on-hook y emitir un beep. Una aplicación de PC podía elegir un número y activar el altavoz. Pero el usuario podía negar el off-hook colgando.

La petición remota, la aceptación del gateway, el estado físico, el establecimiento de llamada y la reacción del usuario tenían relojes distintos. El controlador proponía una transición; no poseía el estado final.

La frase de seguridad también era estrecha: la extensión no añadía consideraciones más allá de MGCP. No declaraba seguros el XML, los mapas o las señales hook. El modo password ocultaba caracteres en pantalla; no demostraba cifrado de transporte.

La nota IESG ubicó el memo como descripción Informational de un protocolo no-IETF usado en productos, mientras Megaco/H.248 trabajaba el mismo espacio en Standards Track. Ese rango no borra ejecución ni prueba una migración posterior.

La realidad podía revocar la etiqueta central

El sistema podía perder funciones centrales y conservar mute. Una actualización podía cambiar el significado sin alterar el plástico. Una card podía anunciar desvío mientras el teléfono seguía sonando.

Si key 1 se llamaba hold pero los medios continuaban, la función no ocurrió. Si la luz mute estaba encendida y salía audio, presentación y realidad se contradecían. Si disp/ decía una cosa y el endpoint de teléfono otra, había que preservar ambas.

El botón físico marcó así un límite de autoridad. El centro podía nombrar y coordinar. Recibir eventos del teléfono no le entregó la custodia de cada acción.

Fuentes