Loading

Uli SDK

Subsystem Control

10.Subsystem Control

Subsystem Control implements exclusive control of the subsystem. The client is required to gain control of the Subsystem before it can obtain the exclusive control of the services provided by the components of the subsystem.

Require: none

Inherit from: none

10.1 Service Behavior

10.1.1 State Diagram



Figure 9 Platform State Diagram

10.1.2 State Actions


State Actions
NOT CONTROLLED
  • Subsystem broadcast the default session Uuid to all the access control services.
UNDER CONTROL
  • Subsystem broadcast the session Uuid to all the access control services. The client, CCU, is required to obtain control before it can gain control from the Access Control services.

10.1.3 Internal Events


Event Parameters Purpose
ieReceiveMessage Process messages

10.1.4 Transitions


Transition Trigger Condition Action
Request Subsystem Control is received and certificates of the client are verified. Certificate of the client is verified. Save the controlling client and sends Confirm Subsystem Control.
Release Subsystem Control is received. Sender is the controlling client Clear the controlling client and sends Reject Subsystem Control.
Subsystem Control timeout. Does not receive Request Subsystem Control from the client Clear the controlling client and sends Reject Subsystem Control.
Request Subsystem Control is received within timeout. Sender is the controlling client and certificate of the client is verified

10.2 Protocol

10.2.1 Incoming Message Set


# ID Message
1 H:0x00000001
L: 0x0000011F
Query Subsystem Control
2 H:0x00000001
L: 0x00000121
Request Subsystem Control
3 H:0x00000001
L: 0x00000122
Release Subsystem Control
4 H:0x00000001
L: 0x00000123
Request Handover

10.2.2 Outgoing Message Set


# ID Message
1 H:0x00000001
L: 0x00000120
Report Subsystem Control
2 H:0x00000001
L: 0x00000125
Confirm Subsystem Control
3 H:0x00000001
L: 0x00000126
Set Session Uuid
4 H:0x00000001
L: 0x00000127
Request Release
5 H:0x00000001
L: 0x00000128
Reject Subsystem Control
6 H:0x00000001
L: 0x00000129
Confirm Handover

10.3 Parameters

  1. CYCLEINTERVAL double, time interval in seconds of each cycle, default=0.1.
  2. SUBSYSTEMCONTROLTIMEOUT double, timeout in seconds not receiving request subsystem control messages from the controlling client, default=2.0.
  3. DEFAULTAUTHORITY uint8, the lowest authority that requesting client needs to have in order to have control, default=1.
  4. SETSESSIONINTERVAL double, time interval in seconds to broadcast the session uuid to all components in the subsystem, default=1.0.