Módulo de conmutador de alta disponibilidad

Interfaz de programación de aplicaciones fácil de usar

SECDATA

»

Api

Las comunicaciones de la API de HAsm se realizan en texto sin formato (opcionalmente cifrado) y la conexión puede existir a través de una variedad de medios, incluidos TCP/IP, serie (RS-232 o RS-485), CAN bus y más. Los mensajes se componen de pares clave-valor, y cada mensaje consta de dos o más pares clave-valor seguidos de una línea en blanco. Cada mensaje debe contener un identificador único, un tipo de mensaje y parámetros adecuados para el tipo. Se admiten tres tipos de mensajes:
  • Comando: Una solicitud de un lado al otro lado. La solicitud indica a la otra parte que realice alguna acción o proporcione información.
  • Respuesta: Cada comando debe ir seguido de una respuesta. Como mínimo, reconoce el comando, pero también puede contener datos resultantes del comando. Si no se recibe una respuesta del otro lado después de un período de tiempo predeterminado, la API del cliente devolverá una respuesta de tiempo de espera al cliente local.
  • Notificación: Un aviso de un lado al otro de que un estado ha cambiado, y ha ocurrido un evento, o se ha recibido alguna señal.
HAs
Las aplicaciones del cliente pueden comunicarse con HAsm con la misma facilidad que leer y escribir un archivo (mediante la interfaz de socket de dominio) o leer o escribir en un puerto TCP (mediante la interfaz TCP/IP). El cliente puede utilizar cualquier lenguaje de desarrollo (por ejemplo: C, Python, JavaScript, C++, Perl, etc.) para comunicarse con la API de HAsm. Telium también ofrece un cliente API de cliente precompilado (archivo .so o .a de Linux, o Windows .dll) que maneja todos los aspectos de las comunicaciones. La API de cliente precompilada es necesaria si se utiliza el cifrado de API, pero también puede acelerar el desarrollo de productos.

Ejemplo de respuesta de comando

La imagen de la derecha contiene dos mensajes, un comando y su respuesta asociada. Cada mensaje se compone de pares clave-valor en formato de texto plano, seguidos de una línea en blanco para indicar el final del mensaje. El comando de ejemplo indica al otro lado (en este caso, HAsm) que desconecte una llamada en curso. El parámetro obligatorio es el ID de llamada (que puede haberse recibido anteriormente a través de un comando/respuesta o una notificación).

Debajo del comando se encuentra el mensaje de respuesta asociado. Tenga en cuenta que el mensaje de respuesta contiene el mismo identificador que el comando, lo que permite al cliente conciliar las respuestas con los comandos. Como se pueden enviar muchos comandos secuencialmente, no hay un orden garantizado de respuestas, por lo que se deben tener en cuenta los ID. En este caso, la respuesta indica que se ha realizado correctamente (código de resultado 0) y se dispone de más detalles en el siguiente parámetro (mensaje de resultado).
Estos comandos y respuestas son solo ejemplos y es posible que no existan en todas las implementaciones de los clientes. Telium incluirá solo aquellos comandos/respuestas necesarios para ofrecer la funcionalidad especificada por el cliente. Se eliminan todos los comandos/respuestas superfluos.
API Message Command Response

Ejemplo de notificación

La imagen de la derecha contiene dos mensajes, ambos notificaciones. Los mensajes se componen de pares clave-valor en formato de texto plano, seguidos de una línea en blanco para indicar el final del mensaje. El primer ejemplo notifica a la otra parte (en este caso, la aplicación del cliente) que se ha registrado un agente de usuario. Los parámetros obligatorios son el aviso (qué tipo de notificación es este), el agente de usuario identificado, la cadena de agente de usuario y la cadena de contacto para el UA. En este ejemplo, estos son los campos requeridos por el cliente (pero hay muchos más campos informativos disponibles). El segundo mensaje notifica a la otra parte (de nuevo, la aplicación del cliente) que el nodo local está promocionando a activo porque ha perdido el contacto con su par. Los parámetros obligatorios son el código de motivo (129) y el mensaje de motivo.

Estas notificaciones son solo ejemplos y es posible que no existan en todas las implementaciones de los clientes. Telium incluirá solo las notificaciones necesarias para ofrecer la funcionalidad especificada por el cliente. Se eliminan todas las notificaciones y campos superfluos.
API Notification Message