Node-Red - Zenitel Request Nodes
From Zenitel Wiki
Normally, flows in Node-RED are event‑driven using the Event nodes.
However, when data needs to be polled, the Request nodes can be used instead. These nodes can be triggered by any msg.payload, as the content of the payload is ignored. The properties window of each node can be configured to limit or filter the amount of data returned.

Device Account Request
Functional Description
This node polls the current list of physical devices in Zenitel Connect Pro and returns an array of objects with their information as stored in Zenitel Connect Pro.
Properties Window
| Device Account request node properties window |
- ZCP Link: The IP address and port number of the Zenitel Connect Pro that the node should connect to. (e.g. 10.9.8.7:8086)
- State: Is a drop down menu with the different states: All, Provisioned, Registered, Reachable, Unreachable, and Unknown.
- Name: Any descriptive name.
Output Message
The JSON objects in the array follow the next format:
{
"dirno": "101", "name": "Reception", "location": "Main building", "device_ip": "192.15.34.2", "device_type": "TCIS-1", "state": "reachable", "wamp_status": "Online"
}
- dirno: The directory number of the device
- name: The name of the device as configured in Zenitel Connect Pro
- location: The location of the device as configured in Zenitel Connect Pro
- device_ip: The ip address of the device as learned by Zenitel Connect Pro
- device_type: The type of the device as learned by Zenitel Connect Pro
- state: The current state of the device
- wamp_status - The configurational state of the device
Audio Message Request
Functional Description
This node polls the current list of messages present in Zenitel Connect Pro. This node has no filter to reduce the amaount of data returned.
Properties Window
| Audio message request node properties window |
- ZCP Link: The IP address and port number of the Zenitel Connect Pro that the node should connect to. (e.g. 10.9.8.7:8086)
- Name: Any descriptive name.
Output Message
{
"audio_messages": [
{
"description":"",
"dirno":"9001",
"dirno_id":53,
"displayname":"close 5",
"duration":3,
"feature_type":"message_call",
"filename":"LibraryClose5_1.wav16",
"filepath":"/files/audio/messages/LibraryClose5_1.wav16",
"filesize":118188,
"message_id":1,
"repetitions":1}
],
"used_space": 118188,
"available_space": 50000000
}
The audio_messages is an array with an object for each audio message configured in the system. The object in turn consists of the following items:
- description: is the description of the audio message as configured in Zenitel Connect Pro
- dirno: is the directory number assigned to the audio message.
- dirno_id: is an internal used identifier for Zenitel Connect Pro
- displayname: is the display name of the audio message as configured in Zenitel Connect Pro
- duration: is the audio duration of the message.
- feature_type: is always the same for audio messages, message_call
- filename: is the file name for the audio.
- filepath: is the full path where the audio message is stored.
- filesize: is the size of the file in bytes
- message_id: is an internal used identifier for Zenitel Connect Pro
- repetitions: is the configuration of how many times the messages needs to play on repeat, 0 = endless loop.
Besides the array of messages the total used space and available space are also returned.
Groups Request
Functional Description
The Groups request node is used to poll the groups configuration in Zenitel Connect Pro.
Properties Window
| Groups request node properties window |
- ZCP Link: The IP address and port number of the Zenitel Connect Pro that the node should connect to. (e.g. 10.9.8.7:8086)
- Group Dirno: Can be used to only return the information of a single group
- Incl. Members: is a Yes or No option to include a list of members with the group information.
- Name: Any descriptive name.
Output Message
{
"dirno": "84",
"displayname": "All call",
"priority": 100,
"call_timeout": 3600,
"members": [
"101"
]
}
The output message is an array of objects, one for each group. The object contains the following information:
- dirno: the directory number of the group as configured in Zenitel Connect Pro.
- displayname: the name of the group as configured in Zenitel Connect Pro.
- priority: is the priority of the group.
- call_timeout: is how long a call can be open for this group.
- members: Is in itself an array of members in the group. this part is only returned if the property Incl. Members is set to yes.
Directory Request
Functional Description
The Directory request node polls all configured directory numbers in Zenitel Connect Pro.
Properties Window
| Directory request node properties window |
- ZCP Link: The IP address and port number of the Zenitel Connect Pro that the node should connect to. (e.g. 10.9.8.7:8086)
- Dirno: Can be used to filter on a single directory number.
- Name: Any descriptive name.
Output Message
{
"dirno": "101", "displayname": "Control room", "feature_type": "device_call" }
The output message of the node is an array of objects, one object per directory number. The object contains three bits of information:
- dirno: The directory number as configured in Zenitel Connect Pro.
- displayname: is the display name beloning to the directory number.
- feature_type: describes what function the directory number has.
Call Forwarding Request
Functional Description
The Call forwarding request node polls all the currently configured call forwarding rules in Zenitel Connect Pro.
Properties Window
| Call forwarding request node properties window |
- ZCP Link: The IP address and port number of the Zenitel Connect Pro that the node should connect to. (e.g. 10.9.8.7:8086)
- Dirno: Is to filter on rules for a specific directory number.
- Rule Type: Is a dropdown with the options to choose between different rule types. The options are All, Unconditional, On Busy, and On Timeout
- Name: Any descriptive name.
Output Message
{
"dirno": "101", "fwd_type": "unconditional", "fwd_to": "300", "enabled": true }
The node returns an array with objects, one object per rule. The object contains the following information:
- dirno: Is the directory number the forwarding rule is configured on.
- fwd_type: Is the forwarding rule and can be one of three: unconditional, on_busy, or on_timeout.
- fwd_to: Is the directory number where the calls need to be forwarded to for this rule.
- enabled: is true if the rule is enabled, false if the rule is not enabled.
Current Calls
Functional Description
The Current Calls request node returns information on all ongoing calls and calls waiting to be answered.
Properties Window
| Current Calls request node properties window |
- ZCP Link: The IP address and port number of the Zenitel Connect Pro that the node should connect to. (e.g. 10.9.8.7:8086)
- From Dirno: Field to fill in a filter on the originating directory number
- To Dirno: Filter for the destination directory number
- State: Drop down menu for three optional call states:In call, Ringing, and Queued
- Incl. Call Legs: Is a Yes or No option to include the call legs for the calls.
- Name: Any descriptive name.
Output Message
{
"call_id":5898827,
"call_legs":[
{
"channel":"PJSIP/201-0000001d",
"dirno":"201",
"dispatcher":"ZenitelLink",
"leg_id":1945544,
"leg_role":"caller",
"queue_pos":null,
"reason":"accept",
"state":"in_call"},
{
"channel":"PJSIP/1010000001e",
"dirno":"101",
"dispatcher":null,
"leg_id":1945545,
"leg_role":"callee",
"queue_pos":null,
"reason":"accept",
"state":"in_call"}],
"call_type":"normal_call", "from_dirno":"201", "from_leg_id":1945544, "groups":null, "priority":40, "queue_pos":null, "reason":"accept", "start_time":"2026-02-16 12:04:34.2+00:00", "state":"in_call", "to_dirno":"101", "to_dirno_current":"101"}
- call_id: Is the internal identifcation of the call.
- call_legs: Is an array with the sub parts of the call, named legs. The objects in this array have the followin information in itself:
- channel: Is an internal identification.
- dirno: Is the directory number involved.
- dispatcher: Is the method by which the call was set up.
- leg_id: Is an internal identification.
- leg_role: The role is caller if the direction is from the directory number to the server, in the other direction it is callee.
- queue_pos: If the call is a queue call, the queue pos is the position in the queue.
- reason: The reason for the last state change.
- state: The current state of the leg.
- call_type: Describes what type of call it is
- from_dirno: The originating directory number
- from_leg_id: Is an internal identification
- groups: If the call type is a group call this contains an array of the groups
- priority: Denotes the priority that is used to set up the call
- queue_pos: If the call is a queue call, the queue pos is the position in the queue.
- reason: The reason for the last state change.
- start_time: The timestamp for when the call was initiated.
- state: The current state of the call.
- to_dirno: The original destination directory number
- to_dirno_current: The current destination number, which can be different to the original one after for example a forwarding.
Current Call Queues
Functional Description
The Current Call Queues request node polls both the current configuration of the call queues and the calls current in the call.
Properties Window
| Call Queues request node properties window |
- ZCP Link: The IP address and port number of the Zenitel Connect Pro that the node should connect to. (e.g. 10.9.8.7:8086)
- Queue Dirno: filters the data for a specific queue only.
- Name: Any descriptive name.
Output Message
{
"queue_dirno": "701",
"calls": [
{
"call_id": 12345,
"state": "ringing",
"reason": "accept",
"call_type": "normal_call",
"from_dirno": "101",
"from_leg_id": 56789,
"to_dirno": "102",
"to_dirno_current": "102",
"groups": [
"84"
],
"priority": 100,
"start_time": "2022-11-01 10:14:24.1+00:00",
"queue_pos": 1,
"call_legs": [
{
"leg_id": 56789,
"dirno": "101",
"state": "ringing",
"reason": "accept",
"leg_role": "caller",
"channel": "PJSIP/101-0000002c;3",
"queue_pos": 1
}
]
}
],
"operators": [
{
"dirno": "112"
}
]
}
The output message of the node returns the following information on the call queues.
- queue_dirno: is the directory number.
- calls: is an array of all the calls in the queue and their state, the information is identical to the information in Current calls request
- operators: is an array with all the operators that are configured for this call queue.
GPO Request
Functional Description
The GPO Request node polls the current state of the outputs on a device.
Properties Window
| GPO request node properties window |
- ZCP Link: The IP address and port number of the Zenitel Connect Pro that the node should connect to. (e.g. 10.9.8.7:8086)
- Dirno: This is the directory number of which the GPO needs to be polled. Since there can be so many devices with so many GPO this is a mandatory field to keep the data low
- Output: Gives a choice to check fora single output or all outputs of the device.
- Name: Any descriptive name.
Output Message
{
"id":"gpio1", "state":"low", "type":"gpo"
}
The output message of the node is an array of objects, one object per output. Each object has three bits of information on the output.
- id: Is the identifcation name of the output.
- state: Is the current state of the output.
- type: Is the type of output..
GPI Request
Functional Description
With the GPI Request node the current state of the inputs of a device can be polled.
Properties Window
| GPI request node properties window |
- ZCP Link: The IP address and port number of the Zenitel Connect Pro that the node should connect to. (e.g. 10.9.8.7:8086)
- Dirno: Is a mandatory field that needs to be filled in with the directory number of the device that the GPI needs to be polled for.
- Input: Is a dropdown to select which input needs to be checked.
- Name: Any descriptive name.
Output Message
{
"id":"gpio4", "state":"low", "type":"gpi"
}
The output meesage of the node is an array of objects, one object per input. The object contains the following information:
- id: is the identifcation name of the input.
- state: is either low or high depending on the state of the input.
- type: the type of input.
WAMP Request
The WAMP request node is a generic node for requests. Unlike the other request nodes it only has a drop down to pick between the different available WAMP URI's, except the GPI and GPO. All filtering needs to be done in other nodes.
| Generic WAMP request node properties window |
