Node-Red - Zenitel Event Nodes
From Zenitel Wiki
Event nodes operate based on subscriptions. When an event node subscribes to data in Zenitel Connect Pro, any change to that data triggers a WAMP event, which is then sent to Node‑RED. The data sent to Node‑RED is unfiltered. For example, if you subscribe to GPO events, all GPO events will be delivered.
Each event node includes filter options in its properties panel that allow you to forward only events that match specific criteria. Leaving a filter field empty means no filtering will be applied for that parameter.
If you require more advanced filtering than what the event node’s properties allow—for instance, filtering a range of directory numbers—you should use a standard Node‑RED Switch node to perform the additional filtering.

Zenitel GPI Event
Functional description
The GPI Event node is reporting changes to an input. When a General Purpose Input (GPI) on a device changes state this node will output a message.
Properties window
| GPI Event node |
This node as the following properties:
- ZCP Link: The IP address and port number of the ZCP that the GPI Event node should subscribe to (e.g. 10.9.8.7:8086)
- Dirno: Forward events related to this specific directory number. If the field is empty, input state change related to any directory number will be forwarded.
- Input: Forward events related to this specific Input. All means that a change on any input on the selected directory number will be forwarded.
- State: Select the input state change: Active, Inactive or Both
- Name: Any descriptive name
Output Message
The GPI Event node outputs a JSON object on the following format:
{
"dirno": "1001", "gpis": "100", "id": "gpi3", "state": "active"
}
- dirno - This is the directory number of the device reporting a change to its General Purpose Input
- gpis - Is a mapping of all the current states of the General Purpose Inputs of the above mentioned device
- id - Is the input that has changed state
- state - Is the new state of the input and can be either active or inactive
Zenitel GPO Event
Functional description
The GPO Event node is reporting changes to an output. When a General Purpose Output (GPO) on a device changes state this node will output a message.
Properties window
| GPO Event node |
This node as the following properties:
- ZCP Link: The IP address and port number of the ZCP that the GPO Event node should subscribe to (e.g. 10.9.8.7:8086)
- Dirno: Forward events related to this specific directory number. If the field is empty, output state change from any directory number will be forwarded.
- Input: Forward events related to this specific Output. All means that a change on any output on the selected directory number will be forwarded.
- State: Select the output state change: Active, Inactive, Fast Blink, Slow Blink or All.
- Name: Any descriptive name
Output Message
The GPO Event node outputs a JSON object on the following format:
{
GPIOS: "--s---" dirno: "103" id: "gpio3" operation: "slow_blink" relays: "0"
}
- GPIOS - Is a mapping of the current states of all the General Purpose outputs of the above mentioned device
- dirno - This is the directory number of the device reporting a change in its General Purpose Output
- id - Is the output (or relay) that has changed state, e.g. relay1, gpio3, e_relay2.
- e_relays - Is a mapping of the current states of the Additional Relays of e.g. an IP-LCM device
- operation - Is the new state of the output that has changed state: set, clear, slow_blink, fast_blink
- relays - The state of the relays on the device: 0 (off), 1 (on), s (slow blink), f (fast blink)
Zenitel Door Open
Functional description
The Door Open node subscribes to Door Open related events. When a Door Open command is send to a device (e.g. pressing digit "6" during a call) this node outputs a message.
Properties window
| Open Door Event node |
This node as the following properties:
- ZCP Link: The IP address and port number of the ZCP that the Open Door Event node should subscribe to (e.g. 10.9.8.7:8086)
- Door Dirno: Forward events related to a specific Door Intercom directory number.
- From Dirno: Forward events related to a specific Operator Intercom directory number that triggers the door opening feature.
- Name: Any descriptive name.
Output Message
The Open Door node outputs a JSON object on the following format:
{
"door_dirno": "102",
"door_name": "Door Station",
"from_dirno": "101",
"from_name": "Operator",
"gpo": {
"gpo_id": "relay1",
"mac_address": "00:13:cb:00:55:55",
"time": 3
}
}
- door_dirno - The directory number of the door device
- door_name - The name of the above mentioned directory number
- from_dirno - The directory number of the device sending the door open command
- from_name - The name of the above mentioned directory number
- gpo_id - The ID of the output that is triggered to open the door
- mac_address - The MAC address of the door device
- time - The pulse time (seconds) of the output
Zenitel Call State
Functional Description
The Call State node subscribes to Call State e.g. Ringing, In call, related events in Zenitel Connect Pro. When a device changes its call state this node outputs a message. For example if the device changes state from Ringing to In call, this node outputs the new state In call
Properties Window
| Call State node |
This node has the following properties:
- ZCP Link: The IP address and port number of the ZCP that the GPI Event node should subscribe to (e.g. 10.9.8.7:8086)
- From Dirno: This property filters calls from a originating directory number.
- To Dirno: This property filters calls with a specific destination directory number.
- Call Type: Is a dropdown to filter on Normal call, Queue call, Group call, Message play, or Activation call.
- Call State: Is a dropdown to select a specific call state to filter on.
- Reason: Is a drop down to filter for the reason the state change took place, e.g. Busy or Cancelled
- Name: Any descriptive name
Output Message
The node outputs a JSON object of the following example format:
{
"call_id":5898816, "call_type":"normal_call", "from_dirno":"101", "from_leg_id":null, "groups":null, "priority":70, "queue_pos":1, "reason":"incoming", "start_time":"2026-02-13 08:21:41.7+00:00", "state":"init", "to_dirno":"201", "to_dirno_current":"201"
}
- call_id: This is the internal number in Zenitel Connect Pro to identify the call by.
- call_type: Is the type of the call.
- from_dirno: Is the originating directory number.
- from_leg_id: This is the internal number that Zenitel Connect Pro identifies the part from the originating directory number to Zenitel Connect Pro by.
- groups: In case of a group call this is an array of the groups.
- priority: Is the priority used to set up the call.
- queue_pos: In case of a queue call the position in the queue.
- reason: Is the reason for the change to the current state.
- start_time:The start time of the call.
- state: Is the current state of the call.
- to_dirno: Is the original destination directory number.
- from_dirno_current: Is the current destination directory number, might be different than the original because of forwarding.
Zenitel Device State
Functional Description
The Device State node subscribes to device state events in Zenitel Connect Pro. When a device changes its state this node outputs a message. For example if a device changes from Offline to Online this node outputs the new state of Online
Properties Window
| Device State node |
This node as the following properties:
- ZCP Link: The IP address and port number of the ZCP that the GPI Event node should subscribe to (e.g. 10.9.8.7:8086)
- Dirno: This property filters device state changes from a certain directory number.
- Device State: Is a dropdown to filter on the states, Unknown, Reachable, Unreachable or All.
- Name: Any descriptive name
Output Message
The node outputs a JSON object of the following example format:
{
"device_ip": "192.15.34.2", "device_type": "TCIS-1", "dirno": "101", "location": "Main building", "name": "Reception", "serial_number":"", "state": "reachable", "wamp_status": "Online"
}
- device_ip: Is known IP address of the device.
- device_type: Is the device type as configured in Zenitel Connect Pro.
- dirno: This is the directory of the device That has changed state in Zenitel Connect Pro.
- location: Is location of the device as configured in Zenitel Connect Pro.
- name: Is name of the device as configured in Zenitel Connect Pro.
- serial_number: Is the known serial number of the device.
- state: Is the new state of the device.
- wamp_status: Is the new WAMP state of the device.
Zenitel Event Trigger
Functional Description
This node subscribes to Event trigger events in Zenitel Connect Pro. When a device dials a directory number that is configured as an Event trigger this node outputs a message.
Properties Window
| Event Trigger node |
This node as the following properties:
- ZCP Link: The IP address and port number of the ZCP that the GPI Event node should subscribe to (e.g. 10.9.8.7:8086)
- Eventno: This property filters on the event trigger number that was dialed.
- Dirno: For filtering on which station has dialed the event trigger this field can be used.
- Name: Any descriptive name
Output Message
The node outputs a JSON object of the following example format:
{
"from_dirno": "1001", "to_dirno": "7900"
}
- from_dirno: This is the directory that dialed the event trigger.
- to_dirno: The event trigger that was dialed.
Zenitel Extended State
Functional Description
The Extended state node subscribes to extended state events in Zenitel Connect Pro. Extended state events are the reporting of Button test and Tone test. This node is used in combination with the action nodes for Button test and Tone test.
Properties Window
| Extended state node |
This node as the following properties:
- ZCP Link: The IP address and port number of the ZCP that the GPI Event node should subscribe to (e.g. 10.9.8.7:8086)
- Dirno: This property filters on Extended state events from a certain directory number.
- Test Type: Is a dropdown to select Buttontest or Tonetest.
- Test Result: Is a dropdown to select on Passed or Failed.
- Name: Any descriptive name
Output Message
The node outputs a JSON object of the following example format:
{
"current_status": "passed", "device_id": 4, "dirno": "103", "error_message": "Test PASSED, silence: -91 tone: -130", "last_fail": "2024-10-29T15:12:30.717033+00:00", "last_pass": "2024-10-29T15:12:23.70557+00:00", "last_queued": "2024-10-29T15:12:22.062465+00:00", "pending_test": false, "status_type": "tonetest"
}
- current status: Is the current pass/fail status of the test.
- device_id: Is the internal ID of the device in Zenitel Connect Pro.
- dirno: Is the directory number of the device where the test is conducted.
- error_message: Is a string with the pass/fail information and the measured values.
- last_fail: The timestamp of when the test last failed on the device.
- last_pass: The timestamp of when the test was last succesful on the device
- last_queued: The timestamp of when the test was last scheduled on the device
- pending_test: Is a boolean true if there is a test in the queue that has not been performed yet.
- status_type: The type of test reported, this can be either tonetest or buttontest.
Zenitel WAMP In
The Zenitel WAMP In node is different in that it more generic and has no filter options. It only provides a drop down menu with all the options for the different URI's available in the Zenitel Connect Pro WAMP API. Some of these options do not have dedicated nodes as described above as they are less used and only for very specific cases.
| GPI Event node |
When using this node refer to the swagger page of your Zenitel Connect Pro to find documentation on the URI.
