Legrand / Raritan / Server Technology Xerus™ JSON-RPC API

Loading...
Searching...
No Matches
PeripheralDevicePackage.idl
1/* SPDX-License-Identifier: BSD-3-Clause */
2/*
3 * Copyright 2013 Raritan Inc. All rights reserved.
4 */
5
6#ifndef __PERIPHERAL_DEVICE_PACKAGE_IDL__
7#define __PERIPHERAL_DEVICE_PACKAGE_IDL__
8
9#include <PeripheralDeviceSlot.idl>
10
11/** Peripheral Devices */
12module peripheral {
13 /** Peripheral device package information */
14 structure PackageInfo {
15 enumeration State {
16 NORMAL, ///< Device package is in normal operation
17 FW_UPDATE, ///< Device package's firmware is being updated
18 INTERNAL_ERROR, ///< Device package's internal error flag is set
19 CONFIG_ERROR ///< Device package's internal configuration is invalid
20 };
21
22 structure HardwareInfo {
23 string serial; ///< serial number
24 string packageClass; ///< serial number prefix for current packages
25 string model; ///< like 'DPX-CC2' or 'DX-D2C6'
26 int minDowngradeVersion; ///< minimum downgrade version (or -1)
27 string revision; ///< hardware revision
28 string address; ///< ROM code for 1-wire devices
29 };
30
31 structure FirmwareInfo {
32 structure Version {
33 int majorNumber; ///< firmware version encoded as 'major << 4 | minor'
34 int minorNumber; ///< depreceated, was minor firmware version
35 int bootloaderVersion; ///< device bootloader version
36 };
37
38 time compileDate; ///< Date of firmware compilation (Deprecated: always returns 0)
39 Version version; ///< Firmware version (0.0 if not applicable)
40 time updateDate; ///< Date of device firmware update (Deprecated: always returns 0)
41 string firmwareName; ///< firmware file name
42 };
43
44 State state; ///< The peripheral device package operational state
45 vector<PosElement> position; ///< Position within 1-wire topo
46 HardwareInfo hwInfo; ///< Device package hardware specific information
47 FirmwareInfo fwInfo; ///< Device package firmware specific information
48 };
49
50 interface Package {
51 PackageInfo getPackageInfo();
52 };
53
54 interface DoorHandleControllerPackage extends Package {
55
56 constant int SUCCESS = 0;
57 constant int ERR_NOT_SUPPORTED = 1;
58 constant int ERR_OPERATION_FAILED = 2;
59
60 vector<string> getSupportedHandleTypes();
61 vector<string> getSupportedExternalDeviceTypes();
62
63 string getHandleType(in int channel);
64 string getExternalDeviceType(in int channel);
65
66 int setHandleType(in int channel, in string handleType);
67 int setExternalDeviceType(in int channel, in string type);
68
69 /** Event: A handle was opened without being electronically unlocked */
70 valueobject MechanicallyUnlockedEvent extends idl.Event {
71 PackageInfo packageInfo; ///< package info
72 int channel; ///< channel number (zero-based)
73 string doorStateName; ///< name of the door state sensor (if assigned)
74 string doorHandleName; ///< name of the door handle sensor (if assigned)
75 string doorLockName; ///< name of the door lock actuator (if assigned)
76 };
77
78 /** Event: A door was opened without unlocking the door handle */
79 valueobject DoorForcedOpenEvent extends idl.Event {
80 PackageInfo packageInfo; ///< package info
81 int channel; ///< channel number (zero-based)
82 string doorStateName; ///< name of the door state sensor (if assigned)
83 string doorHandleName; ///< name of the door handle sensor (if assigned)
84 string doorLockName; ///< name of the door lock actuator (if assigned)
85 };
86 };
87
88 interface BatteryPoweredDevicePackage extends Package {
89
90 /**
91 * This method outputs the given voltage value or zero if no value is available.
92 * @return 0 or the voltage value in V
93 */
94 double getBatteryVoltage();
95
96 /** Event: the voltage of this device changed */
97 valueobject VoltageChangedEvent extends idl.Event {
98 double oldVoltage; ///< old voltage
99 double newVoltage; ///< new voltage
100 };
101 };
102}
103
104#endif /* !__PERIPHERAL_DEVICE_PACKAGE_IDL__ */
peripheral::BatteryPoweredDevicePackage
Definition PeripheralDevicePackage.idl:88
peripheral::BatteryPoweredDevicePackage::getBatteryVoltage
double getBatteryVoltage()
This method outputs the given voltage value or zero if no value is available.
peripheral::DoorHandleControllerPackage
Definition PeripheralDevicePackage.idl:54
peripheral::Package
Definition PeripheralDevicePackage.idl:50
idl
Basic IDL definitions.
Definition Event.idl:10
peripheral
Peripheral Devices.
Definition GatewaySensorManager.idl:17
serial
Serial Ports.
Definition AnalogModem.idl:12
idl::Event
Common base for all events.
Definition Event.idl:13
peripheral::BatteryPoweredDevicePackage::VoltageChangedEvent
Event: the voltage of this device changed.
Definition PeripheralDevicePackage.idl:97
peripheral::BatteryPoweredDevicePackage::VoltageChangedEvent::oldVoltage
double oldVoltage
old voltage
Definition PeripheralDevicePackage.idl:98
peripheral::BatteryPoweredDevicePackage::VoltageChangedEvent::newVoltage
double newVoltage
new voltage
Definition PeripheralDevicePackage.idl:99
peripheral::DoorHandleControllerPackage::DoorForcedOpenEvent
Event: A door was opened without unlocking the door handle.
Definition PeripheralDevicePackage.idl:79
peripheral::DoorHandleControllerPackage::DoorForcedOpenEvent::packageInfo
PackageInfo packageInfo
package info
Definition PeripheralDevicePackage.idl:80
peripheral::DoorHandleControllerPackage::DoorForcedOpenEvent::channel
int channel
channel number (zero-based)
Definition PeripheralDevicePackage.idl:81
peripheral::DoorHandleControllerPackage::DoorForcedOpenEvent::doorLockName
string doorLockName
name of the door lock actuator (if assigned)
Definition PeripheralDevicePackage.idl:84
peripheral::DoorHandleControllerPackage::DoorForcedOpenEvent::doorStateName
string doorStateName
name of the door state sensor (if assigned)
Definition PeripheralDevicePackage.idl:82
peripheral::DoorHandleControllerPackage::DoorForcedOpenEvent::doorHandleName
string doorHandleName
name of the door handle sensor (if assigned)
Definition PeripheralDevicePackage.idl:83
peripheral::DoorHandleControllerPackage::MechanicallyUnlockedEvent
Event: A handle was opened without being electronically unlocked.
Definition PeripheralDevicePackage.idl:70
peripheral::DoorHandleControllerPackage::MechanicallyUnlockedEvent::doorLockName
string doorLockName
name of the door lock actuator (if assigned)
Definition PeripheralDevicePackage.idl:75
peripheral::DoorHandleControllerPackage::MechanicallyUnlockedEvent::channel
int channel
channel number (zero-based)
Definition PeripheralDevicePackage.idl:72
peripheral::DoorHandleControllerPackage::MechanicallyUnlockedEvent::doorStateName
string doorStateName
name of the door state sensor (if assigned)
Definition PeripheralDevicePackage.idl:73
peripheral::DoorHandleControllerPackage::MechanicallyUnlockedEvent::packageInfo
PackageInfo packageInfo
package info
Definition PeripheralDevicePackage.idl:71
peripheral::DoorHandleControllerPackage::MechanicallyUnlockedEvent::doorHandleName
string doorHandleName
name of the door handle sensor (if assigned)
Definition PeripheralDevicePackage.idl:74
peripheral::PackageInfo::FirmwareInfo::Version
Definition PeripheralDevicePackage.idl:32
peripheral::PackageInfo::FirmwareInfo::Version::minorNumber
int minorNumber
depreceated, was minor firmware version
Definition PeripheralDevicePackage.idl:34
peripheral::PackageInfo::FirmwareInfo::Version::bootloaderVersion
int bootloaderVersion
device bootloader version
Definition PeripheralDevicePackage.idl:35
peripheral::PackageInfo::FirmwareInfo::Version::majorNumber
int majorNumber
firmware version encoded as 'major << 4 | minor'
Definition PeripheralDevicePackage.idl:33
peripheral::PackageInfo::FirmwareInfo
Definition PeripheralDevicePackage.idl:31
peripheral::PackageInfo::FirmwareInfo::updateDate
time updateDate
Date of device firmware update (Deprecated: always returns 0)
Definition PeripheralDevicePackage.idl:40
peripheral::PackageInfo::FirmwareInfo::version
Version version
Firmware version (0.0 if not applicable)
Definition PeripheralDevicePackage.idl:39
peripheral::PackageInfo::FirmwareInfo::firmwareName
string firmwareName
firmware file name
Definition PeripheralDevicePackage.idl:41
peripheral::PackageInfo::FirmwareInfo::compileDate
time compileDate
Date of firmware compilation (Deprecated: always returns 0)
Definition PeripheralDevicePackage.idl:38
peripheral::PackageInfo::HardwareInfo
Definition PeripheralDevicePackage.idl:22
peripheral::PackageInfo::HardwareInfo::minDowngradeVersion
int minDowngradeVersion
minimum downgrade version (or -1)
Definition PeripheralDevicePackage.idl:26
peripheral::PackageInfo::HardwareInfo::model
string model
like 'DPX-CC2' or 'DX-D2C6'
Definition PeripheralDevicePackage.idl:25
peripheral::PackageInfo::HardwareInfo::revision
string revision
hardware revision
Definition PeripheralDevicePackage.idl:27
peripheral::PackageInfo::HardwareInfo::packageClass
string packageClass
serial number prefix for current packages
Definition PeripheralDevicePackage.idl:24
peripheral::PackageInfo::HardwareInfo::address
string address
ROM code for 1-wire devices.
Definition PeripheralDevicePackage.idl:28
peripheral::PackageInfo
Peripheral device package information.
Definition PeripheralDevicePackage.idl:14
peripheral::PackageInfo::State
State
Definition PeripheralDevicePackage.idl:15
peripheral::PackageInfo::FW_UPDATE
@ FW_UPDATE
Device package's firmware is being updated.
Definition PeripheralDevicePackage.idl:17
peripheral::PackageInfo::INTERNAL_ERROR
@ INTERNAL_ERROR
Device package's internal error flag is set.
Definition PeripheralDevicePackage.idl:18
peripheral::PackageInfo::CONFIG_ERROR
@ CONFIG_ERROR
Device package's internal configuration is invalid.
Definition PeripheralDevicePackage.idl:19
peripheral::PackageInfo::NORMAL
@ NORMAL
Device package is in normal operation.
Definition PeripheralDevicePackage.idl:16
peripheral::PackageInfo::position
vector< PosElement > position
Position within 1-wire topo.
Definition PeripheralDevicePackage.idl:45
peripheral::PackageInfo::hwInfo
HardwareInfo hwInfo
Device package hardware specific information.
Definition PeripheralDevicePackage.idl:46
peripheral::PackageInfo::fwInfo
FirmwareInfo fwInfo
Device package firmware specific information.
Definition PeripheralDevicePackage.idl:47
peripheral::PackageInfo::state
State state
The peripheral device package operational state.
Definition PeripheralDevicePackage.idl:44