Mensajes TSPI
Esta sección contiene una lista de los mensajes de la interfaz del proveedor de servicios de telefonía (TSPI). Estos mensajes se usan para notificar a TAPI la aparición de eventos asincrónicos que se producen espontáneamente dentro del proveedor de servicios. El proveedor de servicios pasa estos eventos a TAPI llamando a un LINEEVENT o función de devolución de llamada PHONEEVENT, dependiendo de si el proveedor de servicios está informando de un evento en una línea, llamada o dispositivo telefónico. El procedimiento LINEEVENT para notificar eventos que se producen en una línea o llamada se proporciona al proveedor de servicios en el momento en que se abre la línea con la función TSPI_lineOpen. El procedimiento PHONEEVENT para notificar eventos que se producen en un teléfono se proporciona con la función TSPI_phoneOpen.
Estos eventos espontáneas no son solicitados por TAPI en el sentido de que no son una respuesta directa a ninguna solicitud. Estos eventos contrastan con los informes de finalización de solicitudes realizadas por TAPI. Estos eventos de finalización se notifican a través de la función de devolución de llamada ASYNC_COMPLETION.
Los perfiles de parámetro para los procedimientos de eventos espontáneas incluyen parámetros que identifican el objeto pertinente para el que se notifica el evento (teléfono, línea o llamada). La identificación está en forma de un identificador opaco cuya interpretación exacta no está publicada por TSPI. TAPI determina internamente la relación entre estos controladores opacos y las estructuras de datos que usó para representar los dispositivos.
El perfil de parámetro para procedimientos de eventos espontáneas también incluye un parámetro de mensaje que identifica el tipo del mensaje. Cada tipo de mensaje tiene una definición correspondiente que determina los identificadores que se incluyen, junto con otros parámetros y sus significados. Hay una correspondencia muy fuerte entre los mensajes que aparecen en el nivel TSPI y los que aparecen en el nivel TAPI. Estas son las reglas generales de correspondencia:
- El conjunto de mensajes es casi idéntico. Cuando los mensajes corresponden, se usa el mismo nombre de mensaje y valor en el nivel de TSPI.
- Los identificadores que aparecen en el nivel de TSPI son los tipos opacos definidos por la especificación de TSPI. Estos tipos (y su interpretación) difieren de los del nivel TAPI, aunque hacen referencia a la misma clase de dispositivo. Por ejemplo, cuando un mensaje TAPI incluye un identificador HLINE, el mensaje TSPI correspondiente normalmente incluiría un identificador de HTAPILINE.
- No hay ningún dwCallbackInstance datos pasados a la devolución de llamada.
- Los parámetros dwParam1, dwParam2y dwParam3 parámetros suelen ser idénticos a los parámetros correspondientes para el mensaje TAPI.
- Los mensajes orientados a líneas y orientados a llamadas se pasan a un procedimiento de devolución de llamada diferente que los mensajes orientados al teléfono.
Para cada mensaje, en esta sección se enumeran los siguientes elementos:
- Propósito del mensaje
- Procedimiento de devolución de llamada al que se pasa este mensaje
- Descripción de los parámetros del mensaje
- Comentarios opcionales sobre el uso del mensaje
- Referencias opcionales a otras funciones, mensajes y estructuras de datos
- Comentarios opcionales que comparan este mensaje con la interfaz TAPI
Algunos mensajes se usan para notificar a TAPI sobre un cambio en el estado de un objeto. Estos mensajes proporcionan el identificador de objeto opaco TAPI y una indicación de qué elemento de estado ha cambiado. TAPI puede llamar posteriormente a una función "get status" adecuada del objeto para obtener el estado completo del objeto.
Cuando se produce un evento, es posible que un mensaje se envíe o no a TAPI. Para algunos tipos de eventos, como los cambios de estado, TAPI especifica un conjunto de cambios de estado en los que está interesado. Se recomienda al proveedor de servicios limitar los eventos de mensaje de cambio de estado que notifica a los incluidos en este conjunto. El proveedor de servicios no es necesario para cumplir este límite. En otras palabras, puede notificar más cambios de los que son estrictamente necesarios. Sin embargo, debe intentar observar el límite por motivos de rendimiento.
El mensaje LINE_REPLY no se usa en el nivel de TSPI. La finalización de una solicitud asincrónica se notifica mediante la devolución de llamada ASYNC_COMPLETION.
El mensaje PHONE_REPLY no se usa en el nivel de TSPI. La finalización de una solicitud asincrónica se notifica mediante la devolución de llamada ASYNC_COMPLETION.
Para obtener más información, vea los temas siguientes: