Liberty : Communications en temps réel
La fonction de communications en temps réel rtcomm-1.0 active une infrastructure de signalisation hautement évolutive que vous pouvez utilise pour connecter les clients WebRTC et d'autre types de noeuds Internet of Things (IoT) dans des interactions audio, vidéo et données en temps réel.
Cette fonction prend en charge à la fois les enregistrements des clients ainsi que l'échange de signalisation nécessaire à la création d'une connexion homologue WebRTC entre deux noeuds finaux.
WebRTC est un ensemble standard HTML5 émergent d'API JavaScript qui permettent aux développeurs d'ajouter des communications en temps réel à leurs applications web à l'aide seulement de JavaScript sans plug-ins de navigateur. Pour en savoir plus sur WebRTC et sur les solutions IBM® pour WebRTC, voir WebSphere Liberty Real-Time Communications and WebRTC. Même si WebRTC intègre des éléments tels que des codecs audio et vidéo, l'annulation d'écho, et Interactive Connectivity Establishment (ICE) pour la traversée pare-feu de flux média, il n'inclut pas la prise en charge de la signalisation d'appel nécessaire à la définition de flux média entre des noeuds finaux qui veulent communiquer. La nouvelle fonction rtcomm-1.0 fournit un connecteur de signalisation d'appel qui s'exécute sur Liberty et inclut également une bibliothèque JavaScript côté client qui encapsule à la fois la signalisation d'appel et un encapsuleur pour WebRTC. La bibliothèque expose une API simple pour l'intégration rapide de communications audio, vidéo ou données dans des applications Web nouvelles et existantes.

Comme illustré dans le diagramme, les clients WebRTC communiquent avec le serveur Liberty de back end via Message Queue Telemetry Transport (MQTT). MQTT est un protocole (M2M)/"Internet of Things" de communication entre machines. Ce protocole est un protocole de transport de messagerie de publication et d'abonnement léger. MQTT est une norme ouverte et il existe des clients en open source pour JavaScript, Java™ et bien d'autres langages. Pour plus de détails, voir MQTT. La bibliothèque client rtcomm est construite sur le client Eclipse Paho JavaScript qui utilise WebSocket comme transport sous-jacent. Pour plus de détails, voir Paho.
Il existe actuellement sur le marché de nombreuses options de courtier de messages MQTT. A des fins de développement, IBM MessageSight for Developers peut être téléchargé depuis l'URL suivante : IBM MessageSight for Developers. Voici une liste des courtiers de messages MQTT les plus couramment utilisés :
Attention : Les courtiers MQTT publics, situés dans le cloud, tels que MQTT Dashboard, ne doivent être utilisés qu'à des fins de tests. ll n'existe aucun moyen de prévoir à quel moment les serveurs publics sont actifs et de nombreux serveurs publics suppriment régulièrement leurs connexions et abonnements ouverts. Les déploiements en production doivent toujours reposer sur un serveur sécurisé, notamment un déploiement de IBM MessageSight.