ContactManager is a device intended to manage local contact for DataStorage, updating its reference in PANIC phonebook.
It is published under the GNU Lesser General Public License
(see LICENSE.txt file).
Environment configuration
To properly work, this device needs:
- Python ≥ 3.6.8
- pytango ≥ 9.4.1, but ≠ 9.5.1
Device Properties
Name | Type | Description |
---|---|---|
ContactKey | String | The key for which to modify the value in PANIC Phonebook. |
ContactList | String[] | The contacts this device should know. Each contact should be written this way: Contact_Name:PhoneBook_Value The Contact_Name entries will represent the possible enum labels for contact attribute. The PhoneBook_Value is what to write in PANIC Phonebook at the key defined in ContactKey property when contact attribute is set with Contact_Name. Example: John:john.doe@synchrotron-soleil.fr With this example, contact attribut will have the enum labels ["Unknown", "John", "Jack", "Telma"]. |
Attributes
Every attributes are at OPERATOR Level.
Name | Dyn amic |
Attr. type | R/W type | Data type | Description |
---|---|---|---|---|---|
panicPhonebookReady | [ ] | Scalar | READ | DEV_BOOLEAN | Whether PANIC Phonebook was found. |
contact | [x] | Scalar | READ_WRITE | DEV_ENUM | What to write in PANIC Phonebook for the key defined in ContactKey property. The effective written value will be the one in ContactList property for which the key matches the selected label in contact attribute. "Unknown" will always be present in enum labels at first index. Setting contact attribute with "Unknown" will have effect neither on PANIC Phonebook, nore on contact read value. contact read value may return "Unknown" when the value in PANIC Phonebook for the key defined in ContactKey property matches no known value, or when this key is not present in PANIC Phonebook. |
Commands
Every commands are at OPERATOR Level.
Name | Input type | Output type | Description |
---|---|---|---|
Init | DEV_VOID | DEV_VOID | This command initializes the device, forcing it to parse its properties and rebuild its attributes. |
State | DEV_VOID | DEV_STATE | This command gets the device state (stored in its device_state data member) and returns it to the caller. |
Status | DEV_VOID | DEV_STRING | This command gets the device status (stored in its device_status data member) and returns it to the caller. |
States
Name | Description |
---|---|
ALARM | Device failed to update PANIC Phonebook or to init PyAlarm devices. |
FAULT | ContactList property is not correcty set. |
INIT | Device is initializing, parsing its properties and checking PANIC phonebook availability. |
MOVING | Writing PANIC Phonebook and initializing PyAlarm devices. |
ON | Device is ready to do its job. |