Multi-utilisateurs

ils ne connaissent pas encore Gladys :smirk:

Le système de droits va forcément devenir nécessaire, mais sans que ça soit obligatoire.
Faudra approndir mais je vois les choses de cette façon:

Sur ma domotique je ne veux pas gérer des droits directement par utilisateurs
Je veux tout de même avoir plusieurs profils

  • L’admin: le dieu de Gladys qui peux tout contrôler / configurer
  • Le user lambda ( non j’ai pas dit ma femme ) : Peux tout contrôler mais se moque royalement de la configuration
  • Les kids : Eux accès à un dashboard qui leur est propre
  • Guest: contrôle et infos seulement sur certaines pièce
2 « J'aime »

Bon, je suis lancé :smiley:

Je suis du même avis que toi :slight_smile:

L’idée de faire différents « profils » plutôt qu’une gestion trop fine, ça pourrait être une bonne solution !

2 « J'aime »

Je pense aussi que des profils prédéfinis sont un bon moyen de ne pas partir dans tous les sens.

Après, est-ce que la possibilité de gérer les droits des différents profils sera donné à l’administrateur ?

Salut à tous !

Je pense avoir fini le multi-utilisateur dans Gladys 4 :partying_face:

Dans cette première itération, il y a 2 types d’utilisateurs:

  • Admin: Il a tous les accès sur Gladys.
  • Utilisateur: Un utilisateur “simple”, qui n’a pas accès à la configuration de Gladys.

Gestion des utilisateurs

Dans la page “Paramètres” => “Utilisateurs”, en tant qu’administrateur, je retrouve tous les utilisateurs de mon instance Gladys.

En cliquant sur "Nouveau + ", je peux créer un utilisateur :

Editer un utilisateur existant, ses préférences ou son mot de passe :

Le rôle "Utilisateur"

En tant qu’utilisateur, voilà à quoi ressemble mon tableau de bord :

Le dashboard que je vois est mon dashboard à moi. Je peux l’éditer, et cela ne concerne que mon compte.

Je n’ai pas accès aux paramètres:

Je n’ai pas accès aux intégrations de configuration, je n’ai accès qu’aux intégrations “personnelles”: Telegram et Calendrier:

Côté Telegram, seul la partie “lier son compte Telegram” est affichée, il n’est pas possible d’éditer la clé d’API:

La PR

La PR est disponible ici: Multi-users in Gladys Assistant by Pierre-Gilles · Pull Request #1050 · GladysAssistant/Gladys · GitHub

Dites moi ce que vous en pensez :slight_smile:

Tout est encore modifiable, n’hésitez pas !

2 « J'aime »

Je termine les dernières modifications sur Netatmo et je teste ça dès demain.

1ere question qui me vient, est-il possible de modifier le type de compte ? Dans mon esprit cela permettrait de supprimer le bouton “Editer” du Dashboard également mais de tout de même pouvoir le configurer au préalable, ou à l’avenir, en le passant en “Admin” le temps des changements, puis de le repasser en “Utilisateur” pour son usage.

Trop classe le multi user… :+1:

@Terdious pourquoi vouloir enlever la possibilité à ton user de ne pas modifier son propre dashboard ? Toutes les confs et infos sensibles sont masquées…

@Jean34 : Par rapport à certains points cités précédemment, dans le menu “Editer” du Dashboard tu as accès à tous les devices créés, notamment, par exemple, à l’ouverture/fermeture de la barrière, les volets roulants, la gestion du chauffage, etc… du coup si tu crée un profil utilisateur pour ton enfant, ou un invité par exemple et que tu souhaites qu’il n’est pas accès a ce genre de commandes, et bien tu ne peux pas l’empêcher en l’état.
Si c’est simple et rapide à mettre en œuvre, autant le faire dès le départ non ? Si c’est plus complexe par contre en effet ça peut attendre une maj. C’est déjà une très belle avancée pour Gladys ^^.

@Terdious Toutes les fonctionnalités que j’ai développées sont dans les captures d’écrans que j’ai mise :slight_smile:

Pour la gestion fine des accès à certains appareils, comme dit plus haut ce sera une fonctionnalité séparée qui sera priorisée et séparée de cette fonctionnalité :

1 « J'aime »

J’ai testé la PR, ça fonctionne bien.

Y’a juste un truc un peu bizarre je trouve ( techniquement je sais pourquoi c’est comme ça)

Je met a la place d’un user lambda admin qui édite un utilisateur. Je trouve bizarre le fait d’avoir deux boutons save ( un pour l’utilisateur et l’autre pour les préférences)

Que j’édite l’un, l’autre ou les deux il ne faut qu’un seul bouton.
Si tu édites les deux mais ne sauve que les prefs, bah tu recommence ( car tu va pas t’en rendre compte tout de suite et sûrement t’insulter d’être trop idiot d’avoir oublié l’autre save )

Merci pour ton retour !

Et pour le reset password ça te dérange pas?

En fait j’avais envie d’avoir 3 parties séparées pour mettre à jour ces 3 choses, et sans que mettre à jour l’un doivent mettre à jour l’autre. Pour bien séparer les 3 :slight_smile:

Les autres vous trouvez ça peu clair comme @VonOx ?

Non car c’est une action à part.

Mais du coup en quoi les préférences c’est pas à part? ^^

C’était l’idée à la base, pour moi les préférences c’est différent du profil :slight_smile:

SI on suit la logique on édite que l’utilisateur ici. Donc l’édition des prefs doit se faire ailleurs.

Ce que je veux dire c’est que peu importe que ça soit une pref ou le profile , j’édite un user, je save ( 1 fois ). Un user lambda se fiche de différencier les 2 , il veut juste sauvegarder le back il s’en fou.
Si on pense simplicité, c’est 1 bouton save. 2 boutons c’est une source d’erreur/oubli. ( et la frustration que ça peut générer )

Si c’est deux opérations qu’on veut séparer ça doit être 2 vues différentes.

2 « J'aime »

@VonOx J’ai amélioré le process pour enlever cette double zone de sauvegarder, désormais il y a qu’un endroit :

J’ai aussi rajouté un scrollToTop quand on sauvegarde le profil + une indication que l’utilisateur a bien été sauvegardé.

J’ai rajouté une description de ce qu’est le rôle pour que ce soit clair.

Sinon autre paufinage d’UI, j’ai rajouté un état vide lorsque le search ne retourne rien :

Aussi, il n’est pas possible de supprimer son propre compte (ça évite les erreurs :p) :

J’ai renforcé les sécurités niveau API en bloquant l’accès à certaines routes sensibles des services.

Je pense que niveau fonctionnalité, on arrive à un niveau pas mal ! :slight_smile:

Je suis preneur de tout autre retour, sinon je merge ça vite :rocket:

Bon, j’ai mergé sur master le multi-utilisateurs! Je vais faire un build dev pour que vous puissiez tester ce weekend :slight_smile:

Edit: build en cours ici: Add Bluetooth + scene user presence (#1077) · GladysAssistant/Gladys@15b6027 · GitHub

2 « J'aime »

La fonctionnalité a été déployée dans Gladys v4.1.0 :partying_face: