Virtual I/O (Pulse)
From Zenitel Wiki
Virtual I/O is a feature for activating scripts on station events. The supported script languages are Lua and bash. A station can be triggered, e.g. by DTMF or an input to execute scripts towards other systems, e.g. access control systems. These scripts can be uploaded and configured via the menu options:
- Script Upload
- Script Configuration
- Script Events
- Turbine station operating in Pulse and SIP mode.
- Turbine version 4.2 or higher.
|INCA stations do not support Virtual I/O.|
To start with, a script should be uploaded to the station. It is possible to download scripts from the station by clicking its Name. Scripts are kept during a software upgrade process.
- Select SIP Configuration > Script Upload
- Upload Script: Click Browse to upload the desired script
- Select SIP Configuration > Script Configuration
After uploading a script the user must configure a script slot (Slot 1 - Slot 10). First, assign a logical name to the script in the Assign a Label field. Then, enter the script to activate and add parameters in the text field under Enter script in selected slot (note that shell scripts don’t need to be uploaded as it is possible to write the script direclty in the text field). Lua scripts have the followings syntax:
lua <scriptname> <parameter1> <parameter2> <parameter3> ....
Shell scripts follow the same syntax, but starts with sh:
sh <scriptname> <parameter1> <parameter2> <parameter3> ...
The uploaded scripts should clearly state which parameters are needed in the beginning of the file.
The example shown in the screenshot above has 4 parameters: username, password, the IP address of the TruPortal device, and door number to activate. The parameter values in the example are:
- Username = admin
- Password = alphaadmin
- IP address = 10.5.105.202
- Door number = 4
- Select SIP Configuration > Script Events
After a script slot has been created, you need to configure which Event that should Execute the script.
In the example below, the script "Grant Door Access" will be executed when the station receives DTMF digit #6 from the remote station:
If there is a need to delay the execution of the script, one can choose a time in seconds in the field "after a duration of".