![]() |
Diese Klassse implementiert das grundlegende Verhalten und Reaktion der SRCP Gerätegruppen. Es ist Implementiert wie die Kommandos in TSRCPCmd zusammengesetzt und in welcher Reihenfolge Kommandos bei Fehlermeldungen erneut gesendet werden müssen.
Für die Kommunikation auf dem Kommando-Kanal wird eine Instanz von
TSRCPCommandClient benötigt. Um auf
Veränderungen einer Gerätegruppe reagieren zu können, die durch einen anderen
Client ausgelöst wurde, ist eine Instanz von
TSRCPInfoClient notwendig.
Für alle Gerätegruppen-Objekt innerhalb eines Clients wird nur eine
Instanz für den Kommando- und eine Instanz für den Info-Kanal benötigt. Die
Komponenten implementieren einen Mechanismus, mit dem die richtigen
Gerätegruppen bei Kommandoantworten und Info-Meldungen angesprochen werden.
SessionID des Kommando-Kanals, mit der die Gerätegruppe komuniziert.
Diese SessionID wird benötigt, um entscheiden zu können, ob eine Gerätegruppe von diesem oder einem anderen Client gesperrt wurde. |
Zeigt an, ob eine Gerätegruppe im Moment gesperrt ist.
|
SessionID des Clients, der einen Lock auf die Gerätegruppe ausgeführt
hat.
|
Array mit den Timestamps für die einzelnen auf dieGerätegruppe
ausgeführten Kommandos.
Es werden drei Timestamps gespeichert. Der Zeitpunkt der Initialisierung bzw. Terminierung, der Zeitpunkt einer Sperre, bzw. deren Aufhebung, der Zeitpunkt der letzten Datenänderung. |
Referenz auf die zu verwendende Kommando-Client-Komponente. Über diese
Komponente werden Kommandos an den Server gesendet.
|
Satusinformation der Gerätegruppe. Anhanden dieser Statusinformation kann
die Komponente entscheiden, welche Kommandos zulässig sind, und welche
nicht. Ebenso kann die notwendige Kommando-Reihenfolge daraus bestimmt
werden.
|
Referenz auf die zu verwendende Info-Client-Komponente. Über diese
Komponente werden Info-Meldungen vom Server empfangen und die
entsprechenden Ereignisse werden ausgelöst.
|
Busnummer, zu der die Gerätegruppe gehört oder gehören soll. Diese
Nummer wird direkt in das SRCP-Kommando übernommen.
|
Gibt vor, wie eine Gerätegruppekomponente auf eine Info-Meldung reagiert.
Es kann eingestellt werden, ob auf alle Info-Meldungen, alle Info- Meldungen für den in Bus eingestellten Bus, alle Info- Meldungen für das in Bus und Adresse eingestellte Gerät, reagiert wird. |
Sendet ein von den eingestellten Daten abhängiges GET-Kommando über den
CommandClient an den Server.
Die Antwort löst ein OnChange Ereignis aus. Abhängig von einer etwaigen Fehlermeldung vom Server wird das GET- Kommando ein zweites mal gesendet. Davor wird aber versucht mittels einer INIT-Kommanos die Fehlermeldung zu vermeiden. |
Sendet ein von den eingestellten Daten abhängiges SET-Kommando über den
CommandClient an den Server.
Abhängig von einer etwaigen Fehlermeldung vom Server wird das SET- Kommando ein zweites mal gesendet. Davor wird aber versucht mittels einer GET-Kommandos die Fehlermeldung zu vermeiden. |
Sendet ein von den eingestellten Daten abhängiges SET-LOCK-Kommando über
den CommandClient an den Server.
|
Sendet ein von den eingestellten Daten abhängiges TERM-LOCK-Kommando
über den CommandClient an den Server.
|
Sendet ein von den eingestellten Daten abhängiges TERM-Kommando über den
CommandClient an den Server.
|
Sendet ein von den eingestellten Daten abhängiges TERM-Kommando über den
CommandClient an den Server.
|
Ereigniss wird ausgelöst, wenn eine
100 INFO "busnumber" "devicegroup" ...
Meldung vom Server empfangen wird.
|
Ereigniss wird ausgelöst, wenn eine
101 INFO "busnumber" "devicegroup" ...
Meldung vom Server empfangen wird.
|
Ereigniss wird ausgelöst, wenn eine
102 INFO "busnumber" "devicegroup" ...
Meldung vom Server empfangen wird.
|
Ereigniss wird ausgelöst, wenn eine
101 INFO "busnumber" LOCK ...
Meldung vom Server empfangen wird.
|
Ereigniss wird ausgelöst, wenn eine
102 INFO "busnumber" LOCK ...
Meldung vom Server empfangen wird.
|