Dans ce tutoriel, nous allons voir comment utiliser les groupes d’utilisateur et de ressource du REDY pour contrôler l’accès à un bouton intérupteur.

Etape 1 : Dans le REDY

Pour réaliser ce tutoriel, je vais utiliser une ressource Consigne que j’appelle “Lumière”.

ressource lumière

Vous voyez que nous nous avons placé la ressource dans le Groupe 1.

Aussi, nous allons utiliser un utilisateur “Exp” qui appartient au Groupe 1 qu’en lecture.

utilisateur Exp

Etape 2 : Hote avec utilisateur Exp

Nous allons maintenant créer un hôte avec l’utilisateur Exp. Pour cela, nous allons dupliquer l’hote courrant et nous renseignons les identifiants et mot de passe de l’utilisateur Exp.

Ainsi, nous pourrons basculer rapidement d’un utilisateur à l’autre dans le designer de scène et dans l’éxécution de la SynApp.

Etape 3 : La scène

Nous allons utiliser la scène suivante :

SYNAPPS-STUDIO-SCENE|{"config":{"key":"scene161","name":"Tutoriel Groupe Utilisateur"},"leadActor":{"type":"layout/stack","key":"stack1","children":[{"type":"input/switch-button","key":"switch-button1","properties":{"horizontalAlignment":"middle","verticalAlignment":"middle","fontSize":"30px"}}]}}

Elle est composée d’un bouton intérupteur affiché au centre de la scène.

scene

Etape 4 : Liaison de la valeur de la consigne

Nous allons lier la propriété Valeur du bouton à la valeur du champ SetPoint de la ressource “Lumière”.

liaison valeur

N’oubliez pas d’activer l’écriture.

Après avoir validé la liaison, la propriété Valeur du bouton intérupteur reçoit la valeur du champ SetPoint de la ressource “Lumière”.

Pour l’instant, le bouton intérupteur est accessible pour tous les utilisateurs.

Etape 5 : Utiliser les champs d’accès utilisateur

Nous allons utiliser les champs d’accès utilisateur qui se trouvent sur la ressource Lumière. En effet, comme expliqué ici, le champ Ecriture? d’une ressource permet de savoir si l’utilisateur en cours a le droit d’écrire sur la variable.

Créons donc une liaison vers le champ Ecriture? de la ressource “Lumière” sur la propriété Actif? du bouton intérupteur.

liaison actif

Etape 6 : Test

Il ne reste plus qu’à tester. Le bouton intérupteur n’est plus cliquable pour l’utilisateur Exp.

Utiliser le menu déroulant de changement rapide d’hote pour basculer entre des hotes qui se connectent avec des utilisateurs différents.

La scène solution

Voici la scène que nous devons obtenir :

SYNAPPS-STUDIO-SCENE|{"config":{"key":"scene161","name":"Tutoriel Groupe Utilisateur"},"leadActor":{"type":"layout/stack","key":"stack1","children":[{"type":"input/switch-button","key":"switch-button1","properties":{"horizontalAlignment":"middle","verticalAlignment":"middle","fontSize":"30px"},"bindings":{"properties.value":{"canWrite":true,"relativeTo":"global/resources","relativePath":"R00001.SetPoint","fieldName":"value","dataReadMode":"always","writeOnChange":true,"source":"redy/wos-relative-variable"},"properties.enabled":{"relativeTo":"global/resources","relativePath":"R00001","fieldName":"canWrite","dataReadMode":"always","source":"redy/wos-relative-variable"}}}]}}