Lift API

OM-120 is an output extension module which controls up to 12 output relays. It can be used as an elevator controller. Maximum 31 units can be connected to a master device via RS485. Refer to the article for examples.

Information

message LiftInfo {
  uint32 liftID;
  string name;

  repeated uint32 deviceIDs;

  uint32 activateTimeout;
  uint32 dualAuthTimeout;

  DualAuthApprovalType dualAuthApproval;
  repeated uint32 dualAuthRequiredDeviceIDs;
  uint32 dualAuthScheduleID;

  repeated Floor floors;

  repeated uint32 dualAuthApprovalGroupIDs;

  repeated Alarm alarms;
  uint32 alarmFlags;

  Alarm tamper;
  bool tamperOn;
}
liftID
The ID of the lift.
name
Maximum 48 characters in UTF-8 encoding.
deviceIDs
The ID of the devices connected to the lift. Maximum 4 devices can be connected to a lift.
floors
Maximum 192 floors can be configured in a lift.

There must be one relay per each floor. So, you cannot set 0 to Floor.deviceID.

activateTimeout
The lift door will be closed after activateTimeout seconds.
dualAuthTimeout
If DualAuthApprovalType is LAST_ON_LIFT, the second user should authenticate within dualAuthTimeout seconds after the first user.
dualAuthApproval
If it is LAST_ON_LIFT, the second user belonging to dualAuthApprovalGroupIDs should authenticate after the first user within dualAuthTimeout. If it is NONE_ON_LIFT, dual authentication is not needed.
dualAuthRequiredDeviceIDs
Specify the devices to which the dual authentication will be applied.
dualAuthScheduleID
Specify the schedule during which the dual authentication is applied.
dualAuthApprovalGroupIDs
If dualAuthApproval is LAST_ON_LIFT, a user belonging to these groups should authenticate after the first user.
alarms
You can configure two lift sensors and the corresponding actions to them.
alarmFlags
Indicate the alarm status of the lift. For example, if it is FIRST | TAMPER, it means that the first sensor and the tamper switch are detected.
tamper
You can configure the tamper switch and its corresponding action.
tamperOn
Indicate whether the tamper switch is on.
enum DualAuthApprovalType {
  NONE_ON_LIFT = 0x00;
  LAST_ON_LIFT = 0x01;
};
message Floor {
  uint32 deviceID;
  uint32 port;
  FloorStatus status;
}
deviceID
The ID of the device which controls the floor.
port
The index of the relay of the device.
status
The current status of the floor.
message FloorStatus {
  bool activated;
  uint32 activateFlags;
  uint32 deactivateFlags;
}
activated
True if the floor is activated.
activateFlags
Indicate how the floor is activated. See FloorFlag for available values.
deactivateFlags
Indicate how the floor is deactivated. See FloorFlag for available values.
enum FloorFlag {
  NONE = 0x00; 
  SCHEDULED = 0x01;
  EMERGENCY = 0x02;
  OPERATOR = 0x04;
}

Each flag has a different priority. The order of priorities are EMERGENCY > OPERATOR > SCHEDULED > NONE.

NONE
The floor is activated/deactivated by normal operations.
SCHEDULED
The floor is activated/deactivated by Scheduled Lock/Unlock zones.
EMERGENCY
The floor is activated/deactivated by Fire Alarm Zone or Intrusion Alarm Zone.
OPERATOR
The floor is activated/deactivated by operators.
message Alarm {
  Sensor sensor; 
  action.Action action;
}
sensor
The lift sensor to detect an alarm status.
action
The action te be triggered when the sensor detects an alarm
message Sensor {
  uint32 deviceID;
  uint32 port;
  device.SwitchType type;
  uint32 duration;
  uint32 scheduleID;
}
deviceID
The ID of the device
port
The input index of the sensor.
type
The type of the sensor.
duration
The minimum duration for which the signal should be detected in milliseconds.
scheduleID
Specify the schedule during which the sensor is monitored. If it is 0, the port will be monitored all the time.
enum AlarmFlag {
  NO_ALARM = 0x00; 
  FIRST = 0x01;
  SECOND = 0x02;
  TAMPER = 0x04;
}
NO_ALARM
No alarm is detected.
FIRST
The first sensor detects an alarm status.
SECOND
The second sensor detects an alarm status.
TAMPER
The tamper switch is on.

GetList

Get the lifts configured on a device.

Request
Parameter Type Description
deviceID uint32 The ID of the device
Response
Parameter Type Description
lifts LiftInfo[] The lifts configured on the device

GetStatus

Get the status of lifts configured on a device.

message Status {
  uint32 liftID;
  uint32 alarmFlags;
  bool tamperOn;
  repeated FloorStatus floors;
}
liftID
The ID of the lift.
alarmFlags
Indicate the alarm status of the lift. For example, if it is FIRST | TAMPER, it means that the first sensor and the tamper switch are detected.
tamperOn
Indicate whether the tamper switch is on.
floors
The current status of the floors.
Request
Parameter Type Description
deviceID uint32 The ID of the device
Response
Parameter Type Description
status Status[] The status of the lifts configured on the device

Management

Add

Add lifts to a device.

Request
Parameter Type Description
deviceID uint32 The ID of the device
lifts LiftInfo[] The lifts to be configured on the device

Delete

Delete lifts from a device.

Request
Parameter Type Description
deviceID uint32 The ID of the device
liftIDs uint32[] The IDs of lifts to be deleted from the device

DeleteAll

Delete all lifts configured on a device.

Request
Parameter Type Description
deviceID uint32 The ID of the device

Activate/Deactivate

You can manually activate, deactivate, or release the specified floors of a lift.

Activate

Activate floors on a lift. If the activateFlag has lower priority than FloorStatus.deactivateFlags, the operation will fail.

Request
Parameter Type Description
deviceID uint32 The ID of the device
liftID uint32 The ID of the lift
floorIndexes uint32[] The indexes of floors to be activated
activateFlag uint32 One of FloorFlag

Deactivate

Deactivate floors on a lift. If the deactivateFlag has lower priority than FloorStatus.activateFlags, the operation will fail.

Request
Parameter Type Description
deviceID uint32 The ID of the device
liftID uint32 The ID of the lift
floorIndexes uint32[] The indexes of floors to be deactivated
deactivateFlag uint32 One of FloorFlag

Release

Reset the floor status. If the floorFlag has lower priority than FloorStatus.activateFlags/deactivateFlags, the operation will fail.

Request    
Parameter Type Description
deviceID uint32 The ID of the device
liftID uint32 The ID of the lift
floorIndexes uint32[] The indexes of floors to be released
floorFlag uint32 One of FloorFlag

SetAlarm

Change the Status.alarmFlags of lifts.

Request    
Parameter Type Description
deviceID uint32 The ID of the device
liftIDs uint32[] The IDs of the lifts whose alarmFlags will be changed
alarmFlag uint32 A mask of AlarmFlag