Raritan EMX JSON-RPC API
ServerMonitor.idl
1 #include <Event.idl>
2 #include <UserEvent.idl>
3 
5 module servermon {
6 
8  interface ServerMonitor_2_0_1 {
9 
13  enumeration ServerReachability {
17  ERROR
18  };
19 
23  enumeration ServerPowerState {
25  ON,
26  OFF,
27  SHUTTING_DOWN
28  };
29 
38  POWER_CHECK_TIMEOUT
39  };
40 
44  enumeration ServerPowerCheckMethod {
46  POWER_DROP
47  };
48 
52  structure ServerPowerSettings {
53  boolean enabled;
54  Object target;
56  double powerThreshold;
57  int timeout;
58  string shutdownCmd;
59  string username;
60  string password;
61  int sshPort;
62  };
63 
67  [sparse_in]
68  structure ServerSettings {
69  string host;
70  boolean enabled;
78  };
79 
83  structure ServerStatus {
87  time lastRequest;
88  time lastResponse;
89  int requests;
90  int responses;
91  int failures;
92  int resumes;
93  };
94 
98  valueobject ServerPowerStateEvent extends idl.Event {
99  int id;
100  string host;
103  };
104 
108  valueobject ServerPowerControlInitiatedEvent extends event.UserEvent {
109  int id;
110  string host;
111  boolean on;
112  };
113 
117  valueobject ServerPowerControlCompletedEvent extends idl.Event {
118  int id;
119  string host;
121  };
122 
127  valueobject ServerReachabilityEvent extends idl.Event {
128  int id;
129  string host;
131  };
132 
136  valueobject ServerAddedEvent extends event.UserEvent {
137  int id;
139  };
140 
144  valueobject ServerSettingsChangedEvent extends event.UserEvent {
145  int id;
148  };
149 
153  valueobject ServerDeletedEvent extends event.UserEvent {
154  int id;
155  };
156 
160  structure Server {
163  };
164 
165  constant int ERR_NO_SUCH_ID = 1;
166  constant int ERR_INVALID_SETTINGS = 2;
167  constant int ERR_DUPLICATE_HOSTNAME = 3;
168  constant int ERR_MAX_SERVERS_REACHED = 4;
169 
181  int addServer(out int id, in ServerSettings settings);
182 
194  int modifyServer(in int id, in ServerSettings settings);
195 
204  int deleteServer(in int id);
205 
215  int getServer(out Server server, in int id);
216 
222  map<int, Server> listServers();
223 
236  int powerControl(in int id, in boolean on);
237 
238  };
239 
240 }
int timeout
Seconds the power check takes before it ends / times out.
Definition: ServerMonitor.idl:57
Server Monitor Interface.
Definition: ServerMonitor.idl:8
Server power target is on.
Definition: ServerMonitor.idl:25
No response from server.
Definition: ServerMonitor.idl:16
boolean on
True if server shall be switched on, false otherwise.
Definition: ServerMonitor.idl:111
int sshPort
SSH port of the server.
Definition: ServerMonitor.idl:61
ServerReachability reachable
Reachability state.
Definition: ServerMonitor.idl:86
ServerSettings newSettings
Settings after change.
Definition: ServerMonitor.idl:147
ServerPowerState
Server Power Control State.
Definition: ServerMonitor.idl:23
Switching the outlet or outlet group off failed.
Definition: ServerMonitor.idl:36
ServerPowerControlResult
Server Power Control Result.
Definition: ServerMonitor.idl:33
ServerStatus status
Server status.
Definition: ServerMonitor.idl:162
ServerSettings settings
Server settings.
Definition: ServerMonitor.idl:161
int resumeCount
Number of resumes before going back to WAITING state.
Definition: ServerMonitor.idl:76
int responses
Number of responses received.
Definition: ServerMonitor.idl:90
Object target
Target for power control, Outlet or OutletGroup.
Definition: ServerMonitor.idl:54
Power state currently not known.
Definition: ServerMonitor.idl:24
Error issuing the shutdown command to the server.
Definition: ServerMonitor.idl:35
ServerSettings settings
Settings of the added server.
Definition: ServerMonitor.idl:138
boolean enabled
Pinging enabled.
Definition: ServerMonitor.idl:70
ServerPowerControlResult result
Result of the power control operation.
Definition: ServerMonitor.idl:120
Server is up and running.
Definition: ServerMonitor.idl:15
int requests
Number of requests sent.
Definition: ServerMonitor.idl:89
ServerSettings oldSettings
Settings before change.
Definition: ServerMonitor.idl:146
ServerReachability
Server Reachability State.
Definition: ServerMonitor.idl:13
string host
Server hostname/IP address.
Definition: ServerMonitor.idl:100
int activationCount
Minimum number of successful pings to enable feature.
Definition: ServerMonitor.idl:73
boolean enabled
Power control for this server enabled.
Definition: ServerMonitor.idl:53
Basic IDL definitions.
Definition: Event.idl:6
int failures
Number of consecutive failed pings.
Definition: ServerMonitor.idl:91
ServerReachability reachable
Current Reachability state.
Definition: ServerMonitor.idl:130
ServerPowerCheckMethod powerCheck
Method to check server&#39;s power state.
Definition: ServerMonitor.idl:55
ServerPowerSettings powerSettings
Settings for controlling the power state of the server.
Definition: ServerMonitor.idl:77
Server Entry.
Definition: ServerMonitor.idl:160
Server is assumed to be off after a time interval.
Definition: ServerMonitor.idl:45
int pingInterval
Wait time after successful ping.
Definition: ServerMonitor.idl:71
string username
Login used to issue shutdown command to the server.
Definition: ServerMonitor.idl:59
ServerPowerState oldPowerState
Old power state.
Definition: ServerMonitor.idl:101
string host
Server hostname/IP address.
Definition: ServerMonitor.idl:69
Server Reachability Status.
Definition: ServerMonitor.idl:83
ServerPowerControlResult lastPowerControlResult
Last result of a power control operation.
Definition: ServerMonitor.idl:85
int failureCount
Number of unsuccessful pings to consider server down.
Definition: ServerMonitor.idl:74
int resumeDelay
Wait time before resuming pinging.
Definition: ServerMonitor.idl:75
Settings for controlling and checking power state of the server.
Definition: ServerMonitor.idl:52
string shutdownCmd
Shutdown command to send to the server.
Definition: ServerMonitor.idl:58
ServerPowerCheckMethod
Methods of checking power state.
Definition: ServerMonitor.idl:44
time lastRequest
Timestamp of last request sent.
Definition: ServerMonitor.idl:87
string password
Password for the login, write-only, not set if empty.
Definition: ServerMonitor.idl:60
Switching the outlet or outlet group on failed.
Definition: ServerMonitor.idl:37
ServerPowerState newPowerState
New power state.
Definition: ServerMonitor.idl:102
Server power target is off.
Definition: ServerMonitor.idl:26
Waiting for reliable connection.
Definition: ServerMonitor.idl:14
int retryInterval
Wait time after unsuccessful ping.
Definition: ServerMonitor.idl:72
time lastResponse
Timestamp of last response received.
Definition: ServerMonitor.idl:88
double powerThreshold
Active power below this threshold means server is off (in Watt)
Definition: ServerMonitor.idl:56
No error, operation may still be in progress.
Definition: ServerMonitor.idl:34
ServerPowerState powerState
Power control state.
Definition: ServerMonitor.idl:84
Server Reachability Settings.
Definition: ServerMonitor.idl:68
int resumes
Number of resumes.
Definition: ServerMonitor.idl:92
Server Monitor.
Definition: ServerMonitor.idl:5