Legrand / Raritan / Server Technology Xerus™ JSON-RPC API
Loading...
Searching...
No Matches
InternalBeeper.idl
1/* SPDX-License-Identifier: BSD-3-Clause */
2/*
3 * Copyright 2014 Raritan Inc. All rights reserved.
4 */
5
6#include <Event.idl>
7#include <UserEvent.idl>
8
9/**
10 * Human Machine Interface
11 */
12module hmi {
13
14 /** Internal beeper interface */
15 interface InternalBeeper {
16 /** Activation state */
17 enumeration State {
18 OFF, ///< Beeper is currently off
19 ON_NOTIFICATION, ///< Beeper is currently active due to an internal alarm notification
20 ON_ACTIVATION ///< Beeper is currently active due to an external activation
21 };
22
23 /** Event: The beeper has been muted or unmuted */
24 valueobject MuteChangedEvent extends event.UserEvent {
25 boolean muted;
26 };
27
28 /** Event: The beeper activation status has changed */
29 valueobject StateChangedEvent extends idl.Event {
30 State state; ///< The current beeper state
31 string reason; ///< Activation reason
32 boolean mutedTemporarily;
33 };
34
35 /**
36 * Mute beeper, turn off all internal alarm notifications.
37 *
38 * @param mute \c true to mute beeper, \c false for normal mode
39 */
40 void mute(in boolean muted);
41
42 /**
43 * Check whether beeper is currently muted
44 *
45 * @return \c true if muted, \c false if not
46 */
47 boolean isMuted();
48
49 /**
50 * Activate the beeper for a given time.
51 *
52 * @param activate Whether to turn on or off the beeper
53 * @param reason Description of the reason to turn on the beeper
54 * (only valid whtn turning on the beeper)
55 * @param timeout Activation timeout in milliseconds
56 * (only valid when turning on the beeper, 0 = infinite activation)
57 */
58 void activate(in boolean on, in string reason, in int timeout);
59
60 /**
61 * Retrieve the current beeper activation state.
62 *
63 * @param reason Return value for activation reason if the beeper
64 * is currently active
65 * @param mutedTemporarily Whether the beeper is currently muted due to a call
66 * to {@link muteCurrentActivation}.
67 * @return The current beeper state
68 */
69 State getState(out string reason, out boolean mutedTemporarily);
70
71 /**
72 * Mute the beeper for the current activation.
73 *
74 * If the beeper is currently on, it will be turned off until another call to
75 * the {@link activate} method or until a new internal notification happens.
76 */
78 };
79}
Internal beeper interface.
void activate(in boolean on, in string reason, in int timeout)
Activate the beeper for a given time.
State getState(out string reason, out boolean mutedTemporarily)
Retrieve the current beeper activation state.
void mute(in boolean muted)
Mute beeper, turn off all internal alarm notifications.
boolean isMuted()
Check whether beeper is currently muted.
void muteCurrentActivation()
Mute the beeper for the current activation.
State
Activation state.
@ OFF
Beeper is currently off.
@ ON_NOTIFICATION
Beeper is currently active due to an internal alarm notification.
Human Machine Interface.
Basic IDL definitions.
Definition: Event.idl:10
Event: The beeper has been muted or unmuted.
Event: The beeper activation status has changed.
State state
The current beeper state.
Common base for all events.
Definition: Event.idl:13