From 47aa65b98b133d86de486a4a6b75d2b003770079 Mon Sep 17 00:00:00 2001 From: Joris Date: Thu, 23 Dec 2021 14:03:45 +0000 Subject: [PATCH] Update Get it Running - Step by Step.md --- source/usage/Get it Running - Step by Step.md | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/source/usage/Get it Running - Step by Step.md b/source/usage/Get it Running - Step by Step.md index a41867a..69d7319 100644 --- a/source/usage/Get it Running - Step by Step.md +++ b/source/usage/Get it Running - Step by Step.md @@ -175,11 +175,11 @@ The simple Shellies (1, 1pm, 2.5) have an internal timer "AUTO-OFF" which can be Go to "Timer" and set the "AUTO-OFF" to e.g. 3 seconds.
Define a machine called "door" in the bffh.dhall
--define the actor:
+- define the actor:
`shelly1-123456789ABC = { module = "Shelly", params = {=}}`
--define the machine:
+- define the machine:
`{ machine = "door", actor = "shelly1-123456789ABC" }`
--set permissions for the machine:
+- set permissions for the machine:
`door =`
` { description = Some "close it firmly"`
` , disclose = "lab.door.disclose"`
@@ -188,7 +188,7 @@ Define a machine called "door" in the bffh.dhall
` , read = "lab.door.read"`
` , write = "lab.door.write"`
` },`
--create a role having ALL permissions to the door +- create a role having ALL permissions to the door `DoorUser =`
`{ permissions = `
`[ "lab.door.write"` - allows the user to use the door
@@ -196,4 +196,7 @@ Define a machine called "door" in the bffh.dhall
`, "lab.door.disclose"` - allows the user to see the machine in the machine overview
`, "lab.door.admin"`
`]`
--assign the role DoorUser to all users +- assign the role DoorUser/internal to all users + +It is imporatant all users have admin aka manage permissions, as the request to open the door by a user, thet the door "in Use" by this user. The door can only be re-activated when the previous user "un-uses" the door or if an othe user can "force free" the door prior to using the door hin/herself +**Note** in this special case, where all users will need admin capabilities the role could also contain only the permission `lab.door.use` and all permissions (disclos, manage, read, write) assigned to the machine would simply match `lab.door.use` (e.g. disclose = "lab.door.use"`).