Module de commutation haute disponibilité

Interface de programmation d’application facile à utiliser

SECDATA

»

API

Les communications de l’API HAsm s’effectuent en texte brut (éventuellement chiffré), et la connexion peut exister sur une variété de supports, notamment TCP/IP, série (RS-232 ou RS-485), bus CAN, etc. Les messages sont composés de paires clé-valeur, chaque message étant composé d’au moins deux paires clé-valeur suivies d’une ligne vide. Chaque message doit contenir un identificateur unique, un type de message et des paramètres appropriés pour le type. Trois types de messages sont pris en charge :
  • Commande : demande d’un côté à l’autre. La demande demande à l’autre partie de prendre des mesures ou de fournir des informations.
  • Réponse : Chaque commande doit être suivie d’une réponse. Au minimum, il accuse réception de la commande, mais peut également contenir des résultats de données de la commande. Si aucune réponse n’est reçue de l’autre côté après un laps de temps prédéterminé, l’API cliente renvoie une réponse de délai d’expiration au client local.
  • Notification : notification d’un côté à l’autre indiquant qu’un état a changé, qu’un événement s’est produit ou qu’un signal a été reçu.
HAs
Les applications client peuvent communiquer avec HAsm aussi facilement que la lecture/écriture d’un fichier (à l’aide de l’interface de socket de domaine) ou la lecture/écriture sur un port TCP (à l’aide de l’interface TCP/IP). Le client peut utiliser n’importe quel langage de développement (ex : C, Python, JavaScript, C++, Perl, etc.) pour communiquer avec l’API HAsm. Telium propose également un client API client précompilé (fichier Linux .so ou .a, ou Windows .dll) qui gère tous les aspects des communications. L’API client précompilée est requise si vous utilisez le chiffrement de l’API, mais elle peut également accélérer le développement du produit.

Exemple de réponse de commande

L’image de droite contient deux messages, une commande et sa réponse associée. Chaque message est composé de paires clé-valeur au format texte plan, suivies d’une ligne vide pour indiquer la fin du message. L’exemple de commande indique à l’autre partie (dans ce cas HAsm) de déconnecter un appel en cours. Le paramètre obligatoire est l’ID de l’appel (qui peut avoir été reçu précédemment par le biais d’une commande/réponse ou d’une notification).

Sous la commande se trouve le message de réponse associé. Notez que le message de réponse contient le même ID que la commande, ce qui permet au client de réconcilier les réponses avec les commandes. Comme de nombreuses commandes peuvent être envoyées séquentiellement, il n’y a pas d’ordre garanti des réponses, il faut donc tenir compte des ID. Dans ce cas, la réponse indique la réussite (0 code de résultat) et plus de détails sont disponibles dans le paramètre suivant (message de résultat).
Ces commandes et réponses ne sont que des exemples et peuvent ne pas exister dans tous les déploiements clients. Telium n’inclura que les commandes/réponses nécessaires pour fournir la fonctionnalité spécifiée par le client. Toutes les commandes/réponses superflues sont supprimées.
API Message Command Response

Exemple de notification

L’image de droite contient deux messages, tous deux des notifications. Les messages sont composés de paires clé-valeur au format texte plan, suivies d’une ligne vide pour indiquer la fin du message. Le premier exemple informe l’autre partie (dans ce cas, l’application cliente) qu’un agent utilisateur s’est inscrit. Les paramètres obligatoires sont l’avis (de quel type de notification s’agit-il), l’agent utilisateur identifié, la chaîne de l’agent utilisateur et la chaîne de contact de l’UA. Dans cet exemple, il s’agit des champs requis par le client (mais de nombreux autres champs d’information sont disponibles). Le deuxième message informe l’autre partie (encore une fois l’application cliente) que le nœud local est promu à actif car il a perdu le contact avec son homologue. Les paramètres obligatoires sont le code motif (129) et le message motif.

Ces notifications ne sont données qu’à titre d’exemple et peuvent ne pas exister dans tous les déploiements clients. Telium n’inclura que les notifications nécessaires pour fournir la fonctionnalité spécifiée par le client. Toutes les notifications et tous les champs superflus sont supprimés.
API Notification Message