User account
Un compte utilisateur est nécéssaire pour pouvoir :
synchroniser et sauvegarder les données de son logement sur le Cloud (IoTHub),
partager son logement avec un autre utilisateur,
piloter ses produits à distance depuis l’Application mobile.
Un compteur utilisateur peut être de type :
administrateur, permettant l’accés à l’IoTHub pour la gestion complet de l’éco-système (administrations des utilisateurs, ajout de Firmware, déclenchement de mise à jour,…),
installateur, permettant l’accès à l’IoTHub de façon restreinte (administration et visibilité sur les logements installés) et à l’application mobile,
utilisateur “simple”, n’ayant accès qu’à l’application mobile pour la gestion du/de ses logements,
📋 Requirement: Un compte est composé de :
un identifiant (une adresse mail)
un mot de passe
des informations générales (Prénom, Nom, Téléphone)
📋 Requirement: Le mot de passe respecte les critères suivants :
au moins 8 caractères,
au moins une lettre majuscule,
au moins une lettre minuscule,
au moins un chiffre,
au moins un caractère spécial.
📋 Requirement: Un utilisateur peut accéder à son logement et le piloter en Bluetooth Mesh (« local ») même sans connexion internet, à condition d’être connecté à son compte.
Creating a user account
La création de compte se fait uniquement par l’application mobile pour un utilisateur ou installateur. Voir ref-app-ui-account.
Le choix du rôle se fait lors de la création.
📋 Requirement: La création du compte est indépendante de la création du logement : les deux opérations peuvent être effectuées dans l’ordre que l’on veut.
Login and logout
L’utilisateur se connecte à son compte depuis le menu « Compte » de l’App. Il reste connecté pendant toute la durée de vie de l’App installée.
La déconnexion intervient dans les cas suivants :
déconnexion manuelle depuis le menu « Compte »,
effacement des données de l’App depuis le menu « Paramètres généraux »,
désinstallation de l’App.
Changing password and email address
Depuis l’application, l’utilisateur peut changer le mot de passe et l’adresse mail associés à son compte. Le nouveau mot de passe respecte les mêmes critères qu’à la création du compte.
Deleting an account
Un utilisateur peut supprimer son compte via l’application mobile. Toutes les données le concernant seront effacées de l’IoTHub.
Lorsqu’un utilisateur supprime son compte depuis l’App, il :
se révoque de tous ses logements,
supprime les données locales en lien avec chaque logement pour lesquels il est révoqué,
appelle la route de suppression utilisateur de l’IoTHub (suppression des données en lien avec ce compte excepté les invitations afin de conservé le champ “invité par X”),
se déconnecte de son compte,
retourne à la page de connexion.
Un administrateur peut également supprimer un compte utilisateur depuis l’IoTHub.
📋 Requirement: on the IoTHub, the authentication account is deleted.
📋 Requirement: on the IoTHub, the person’s data is deleted from the database.
Deleting a home
La suppression d’un logement s’effectue depuis le menu « Logements » de l’App, selon trois cas :
Pour tous les utilisateurs — le logement est supprimé du stockage local de l’utilisateur, et supprimé côté IoTHub pour tous les utilisateurs.
Seulement pour moi — le logement est supprimé du stockage local de l’utilisateur, et son association au logement est retirée côté IoTHub ; le logement subsiste pour les autres utilisateurs.
Depuis l’IoTHub — l’App se met à jour à la synchronisation suivante, de façon à traiter la suppression sans générer d’erreur.
Data synchronization
With a user account, the data of their home is saved on the IoTHub and synchronized with the application.
Synchronization starts, if internet access is available, on the following events.
It also starts:
when a home is deleted,
every 24 hours,
before a product update (DFU).
📋 Requirement: a change to the home made from one App — product added or removed, room, feature name, binding, scenario — is visible from any other App with access to the home, once both Apps are synchronized.
📋 Requirement: a product removed from the home is not brought back by a later synchronization, including from another App with access to the home.
📋 Requirement: an installed product is present in the home after the synchronization that follows its installation, whatever the IoTHub response time.
Account sharing
Un même logement peut être piloté (ou configuré selon ses droits) par plusieurs App utilisant le même compte utilisateur.
Exemple : User1 partage son logement Realm1 avec User2. User1 pilote Realm1 depuis App1 et App2 — c’est le partage de compte ; depuis App2 il peut aussi basculer sur Realm2, par sélection du logement dans son compte. User2, lui, n’accède qu’à Realm1 depuis App3.