Infrastructure
Fonctionnalités
Le service IoT Hub permet :
Les fonctions de pilotage et de monitoring à distance depuis l’Application mobile (par une connexion IP 3G/4G),
La gestion des comptes utilisateurs pour les accès distants avec son service de mails,
La fourniture d’une interface Web pour l’administration de l’ecosystème en tout ou partie par les différents acteurs,
Le stockage des historiques de données,
La gestion des mises à jour (DFU) des passerelles Wifi/BLE et des produits en local,
La connectivité aux assistants vocaux,
La fourniture d’APIs pour les connexions en Cloud-to-Cloud d’autres solutions (Hue, Legrand,…),
La connectivité aux outils de production pour les fabricants
Le back-office
Une interface Web de management de la solution est disponible pour les acteurs suivants pour gérer leur parc de matériels :
Un super administrateur,
Les fabricants (niveau 1 et 2),
Les installateurs,
Les revendeurs.
Chacun des acteurs ont des droits d’accès spécifiques.
Cette interface permet :
de visualiser le parc des utilisateurs (compte clients) et des realms
de visualiser le parc des gateways et des produits associés et de leurs etats de fonctionnement
de monitorer les données associés aux produits
d’activer les mises à jour des gateways (et des produits dans le cadre du BLE Mesh SIG)
Il n’est pas prévu d’interface web pour les utilisateurs, dont l’interface privilégiée reste l’App mobile.
LinkIO IoT Hub Web interface user accounts list
LinkIO IoT Hub Web interface hubs list
LinkIO IoT Hub Web interface appliance example
Architecture de l’infrastructure
Le BackOffice Linkio permet de contrôler les appareils domotiques à distance au travers du cloud public ainsi que l’administration des produits par les fabricants aux moyens de dashboard. La solution est composée de :
Le backend
Le backend utilise la technologie NodeJS en Typescript. Ce dernier est responsable des échanges MQTT avec les gateways. La gateway (ou passerelle) permet de traduire les commandes MQTT en commande Bluetooth MESH. Le broker MQTT utilisé est celui de la solution IotCore d’AWS permettant de gérer la sécurité et la scalabilité des échanges.
Le backend offre également une liste d’ API REST pour l’association des produits, la création de royaumes, … avec une sécurité optimale via la fournisseur d’authentification OKTA . Cette API est notamment utilisée par l’application mobile afin de configurer le royaume (realm) de l’habitation. Cette API peut-être ouverte pour des besoins tierces.
Le backend est aussi connecté via des fonctions Lambda d’AWS aux assistants vocaux tel que Alexa ou Google home.
La solution Elastic Beanstalk d’AWS a été utilisée pour gérer la haute disponibilité ainsi que la scalabilité.
Le frontend
Le frontend utilise le framework Angular-Ionic, permettant d’avoir une vue administration sur l’ensemble des produits et des utilisateurs. Cette interface permet aussi de réaliser des diagnostics à distance via l’envoi de commande au Backend au travers de la technologie Websocket. Ce frontend est hébergé via la solution CloudFront d’AWS.