Aktoren (Actors) und Initiatoren (Initiators)
Um FabAccess erweiterbar zu halten, basiert die Steuerung externer Geräte wie Wifi-Schaltsteckdosen oder Türschlössern auf einem Aktoren- und Initiatorenkonzept.
Aktoren (Actors)
Aktoren in FabAccess haben die Aufgabe, die digitalen Zustände von Ressourcen in reale Zustände umzusetzen. Vom Server aus werden die Übergänge der Traits (Eigenschaften) an kleine Skripte oder Prozesse weitergegeben, die entsprechend darauf reagieren. Aktoren erhalten vom Server Mitteilungen über Änderungen an Maschinen,Ressourcen, beispielsweise wenn eine MaschineRessource ausgeliehen wird, und passen dann den realen Zustand der MaschineRessource an. Dadurch wird die MaschineRessource für Nutzer freigeschaltet. Darüber hinaus ermöglichen Aktoren die Steuerung zusätzlicher Anzeigen wie Maschinenampeln oder Displays. Aktoren werden an MaschinenRessourcen (Maschinen) gebunden.
Initiatoren (Initiators)
Mit Initiatoren werden reale Zustände auf die digitalen Zustände in FabAccess abgebildet. Initiatoren sind Plugins, die den Status einer MaschineRessource aktiv verändern können. Initiatoren werden an MaschinenRessourcen (Maschinen) gebunden. Dies ermöglicht beispielsweise die automatische Rückgabe von Maschinen,Ressourcen, wenn sie nicht verwendet werden oder das Festlegen von Zeitschaltungen oder Türkontakte, die den aktuellen Zustand der Tür übertragen können, und FabAccess kann entsprechend darauf reagieren. Sie agieren sozusagen als Callbacks.
Wie wird das genutzt?
Das Einbinden von Aktoren und Initiatoren geschieht in der Hauptkonfiguration bffh.dhall
.
Eine Sammlung von Initiatoren und Aktoren ist hier zu finden.