Legrand / Raritan Xerus™ JSON-RPC API for Remote Access Devices like KX4-101, KX3G2
Loading...
Searching...
No Matches
Rdm.idl
1#ifndef __RDM_RDM_IDL__
2#define __RDM_RDM_IDL__
3
4#include <UserEvent.idl>
5
6/**
7 * Rdm Model
8 */
9module rdm {
10 interface Rdm {
11 constant int ERR_INVALID_ARGUMENT = 1;
12
13 enumeration ManagementState {
14 UNMANAGED, ///< Device is not under CC-SG management
15 MANAGED, ///< Device is under active CC-SG management
16 MANAGED_CC_UNREACHABLE ///< CC-SG management was configured for the device, but the server is not reachable
17 };
18
19 /** CC-SG management state */
20 structure State {
21 ManagementState mgmtState; ///< Management state
22 boolean directAccessAllowed; ///< Whether direct access (local device login) is allowed
23 string ccIpAddress; ///< CC-SG IPv4 address
24 string ccIpv6Address; ///< CC-SG IPv6 address
25 };
26
27 /** CC-SG management settings */
28 structure Settings {
29 int discoveryPort; ///< Port number for CC-SG connection
30 boolean useEncryption; ///< Whether to encrypt management communication
31 };
32
33 /**
34 * Get CC-SG management state
35 *
36 * @return Management state
37 */
39
40 /**
41 * Get CC-SG management settings
42 *
43 * @return Management settings
44 */
46
47 /**
48 * Set CC-SG management settings
49 *
50 * @param settings New settings
51 *
52 * @return 0 on success
53 * @return 1 if any setting value was invalid
54 */
55 int setSettings(in Settings settings);
56
57 /**
58 * Stop CC-SG management for this device
59 *
60 * This operation is valid only if the device is under CC-SG
61 * management, but the CC server is unreachable.
62 *
63 * @return 0 on success
64 * @return 1 if the device is not in MANAGED_CC_UNREACHABLE state
65 */
67
68 /** Event: CC-SG management settings have changed */
69 valueobject SettingsChangedEvent extends event.UserEvent {
70 Settings oldSettings; ///< Settings before change
71 Settings newSettings; ///< Settings after change
72 };
73
74 /** Event: CC-SG management was stopped */
75 valueobject ManagementStoppedEvent extends event.UserEvent {};
76
77 /** Event: CC-SG management state has changed */
78 valueobject StateChangedEvent extends idl.Event {
79 State oldState; ///< State before change
80 State newState; ///< State after change
81 };
82 };
83}
84
85#endif
int setSettings(in Settings settings)
Set CC-SG management settings.
int stopManagement()
Stop CC-SG management for this device.
State getState()
Get CC-SG management state.
ManagementState
Definition Rdm.idl:13
@ MANAGED
Device is under active CC-SG management.
Definition Rdm.idl:15
@ UNMANAGED
Device is not under CC-SG management.
Definition Rdm.idl:14
@ MANAGED_CC_UNREACHABLE
CC-SG management was configured for the device, but the server is not reachable.
Definition Rdm.idl:16
Settings getSettings()
Get CC-SG management settings.
Basic IDL definitions.
Definition Event.idl:10
Rdm Model.
Definition Rdm.idl:9
Common base for all events.
Definition Event.idl:13
Event: CC-SG management was stopped.
Definition Rdm.idl:75
Event: CC-SG management settings have changed.
Definition Rdm.idl:69
Settings oldSettings
Settings before change.
Definition Rdm.idl:70
Settings newSettings
Settings after change.
Definition Rdm.idl:71
CC-SG management settings.
Definition Rdm.idl:28
int discoveryPort
Port number for CC-SG connection.
Definition Rdm.idl:29
boolean useEncryption
Whether to encrypt management communication.
Definition Rdm.idl:30
Event: CC-SG management state has changed.
Definition Rdm.idl:78
State oldState
State before change.
Definition Rdm.idl:79
State newState
State after change.
Definition Rdm.idl:80
CC-SG management state.
Definition Rdm.idl:20
ManagementState mgmtState
Management state.
Definition Rdm.idl:21
string ccIpAddress
CC-SG IPv4 address.
Definition Rdm.idl:23
string ccIpv6Address
CC-SG IPv6 address.
Definition Rdm.idl:24
boolean directAccessAllowed
Whether direct access (local device login) is allowed.
Definition Rdm.idl:22