Vocia Text Protocol (VTP) for FIDS and the TTS-1
Interfacing a Vocia paging system to a Flight Information Display System (FIDS) is possible by using Vocia Text Protocol (VTP).
VTP is an ASCII, line-based protocol. Commands are entered as a single command letter, followed by a string of arguments relevant to the command, and then terminated by a newline character (enter key). VTP commands are not case sensitive, although arguments can be case sensitive. Commands and arguments are separated by a space. There are no timeouts or checksums associated with the protocol operation and all VTP responses are in XML to facilitate parsing by third party applications.
The VTP Protocol is designed such that the Vocia equipment is a ‘slave’ device to the device controlling it. A control system can either use a third party controller or an existing FIDS control server, which has been configured with a script to send out a command sequence.
A Vocia Text-to-Speech (TTS-1) server can generate custom speech audio from text input, and it supports the inserting of a custom announcement data field as part of a VTP command. The Message Server ( MS-1) can store up to 1000 .wav files or 10 hours of audio. These are dedicated to VTP use and are in addition to the recorded messages that form part of a page code up to 999 per world. The TTS-1 server can play sequences of up to 24 custom text strings and up to 250 characters or a total page length of 2 minutes. Anything over this page length will be discarded. The TTS sequence can be comprised of custom text strings and any VTP audio files stored on the MS-1 device or a mix of both.
Connecting a FIDS server to Vocia
Airports frequently need to generate custom announcements that are based on information stored in the FIDS, for example, a boarding sequence at a gate. The FIDS system stores all or parts of the information in a database format. Vocia has the ability to generate custom voice announcements using the TTS-1 server. How can these systems interact?
Biamp has published an Application Programming Interface (API) that specifies the command structure and sequence for interfacing other programs to Vocia and triggering actions within Vocia. The full guide can be accessed in the Vocia Help File, at https://www.biamp.com/downloads (“Third Party Control Protocol Documentation” – “Vocia Text Protocol (VTP) Commands), or by using the Vocia Command String Calculator.
To drive announcements from a FIDS, either the FIDS server or a third party interface such as AMX or Crestron have to run a script that sends VTP commands to Vocia. To implement this functionality an MS-1 device and TTS-1 device are required and the control system has to be connected directly to the TTS-1 device via TCP/IP (not to the MS-1 device). The TTS commands most relevant to this application allow the creation of paging sequences comprised of pre-recorded and custom page elements. The figure below shows the necessary network connections when using TTS-VTP.
Vocia software configuration
- Add an MS-1 device to your Vocia project and configure it for IP communication.
- Add a TTS-1 server to your project. Right click on the TTS-1 server in the main tree and select IP Configuration. Enter the desired IP address and subnet mask information. If the control system resides on a different LAN, then IP routing needs to be configured accordingly using the TTS-1 Gateway.
- Configure a VTP User in the universe properties with a user name and password. Please note that the user name and password are case sensitive. In this example we will use “test” as the user name and “1234” as the password.
- Load the desired voices (languages) onto the TTS by opening TTS-1 Voice Management under the Tools menu. Select the desired voices as shown below and update the device.
- Compile and send the configuration to your Vocia system.
Example
This is an example of a command set to trigger a TTS sequence using the British English male voice font of “Daniel” and send a custom text string “Mr. Smith” and a recorded message “please pick up the white courtesy phone” to zone 1 and zone 2.
Establishing a connection
An authentication is required each time the control system opens a session with the TTS-1. Without this authentication step any subsequent control or query commands are disregarded by the Vocia system.
- Connect to the TTS-1 server using the IP address, subnet mask and gateway information that you have created in step 2 of the Vocia software configuration (see above).
- Establish a Raw connection to TCP port 8020. This is dedicated for VTP commands on the TTS-1 server. The TTS-1 server will indicate a successful connection with a “Connection accepted” message.
- Enter the user name command (U) and the user name (test) followed by a line feed or carriage return
- Enter the password command (P) and the password (1234) followed by line feed.
- Enter the authentication command (A) followed by line feed.
- The Vocia system will reply with an xml command (in blue). A successful authentication will contain (<State>AUTH_SUCCESS</State> ). If either the user name or password are incorrect the response will contain (<State>AUTH_FAIL</State> ).
NOTE: The authentication command (A) can be used to provide a ‘status poll’ of the current connection.
Connection to TTS-1 port 8020 accepted
U test
P 1234 A
<?xml version="1.0"?><Status Command="A"><State>AUTH_SUCCESS</State></Status>
Ending a connection
A full-stop (".") will terminate the VTP session and close the socket. No response is issued.
System query
If you are familiar with the Vocia system you may skip the query step and proceed directly with programming. If you do not know the available zones, recorded messages and voice fonts, use the following query commands before programming:
- Query the list of voice fonts (languages) currently loaded on the Vocia TTS-1 server by using the Q V command. In this example the TTS has been loaded with two voices: Lee English (Australia) and Daniel, English (Great Britain)
- Query the list of zones currently configured in the local world by using the Q Z command. In this example four zones have been configured: zone 1, zone 2, zone 3, zone 4.
- Query the list of audio files stored on the MS-1 for VTP use by using the Q A command. In this example one audio file “courtesy announcement” is stored on the MS-1 for use as VTP audio.
Q V
<?xml version="1.0"?><Query Command="V"><TTSVoices count="2"><TTSVoice>
<Name>Lee</Name><Language>en-au</Language></TTSVoice><TTSVoice><Name>Daniel</Name>
<Language>en-gb</Language></TTSVoice></TTSVoices></Query>
Q Z
<?xml version="1.0"?><Query Command="Z"><Zones count="4"><Zone id="1">Zone 1</Zone><Zone id="2">Zone 2</Zone><Zone id="3">Zone 3</Zone><Zone id="4">Zone 4</Zone></Zones></Query>
Q A
<?xml version="1.0"?><Query Command="A"><AudioFiles count="1">
<AudioFile id="1">/vociawavs/courtesy+0.0dB.wav</AudioFile></AudioFiles></Query>
Configuring a custom TTS sequence
Use the following commands to program a custom TTS sequence to page “Mr. Smith”.
- Select the British English male voice (Daniel) by using the V Daniel en-gb command.
- Specify the destination zones, for example zone 1 and zone 2, by using the Z command.
- Use the elements command (E 0 S) to convert custom text, for example “Mr Smith”, to a voice announcement.
- Use the elements command (E) to specify recorded message, for example, “please pick up the white courtesy phone”.
- Use the elements command (E 2 z) to denote the end of the sequence
- Use the page execute command that specifies the required preamble, priority and a custom ID number. Formatted as - X S (page execute) N (No preamble) 1 (Priority 1-4 1=lowest) 1 (Individual page request ID number)
V Daniel en-gb
Z 1 2
E 0 S Mr Smith
E 1 e /vociawavs/courtesy+0.0dB.wav
E 2 z
X S N 1 1