American Dynamics victor ICX - AlphaCom integration

From Zenitel Wiki



The ICX and AlphaCom systems can be interfaced to American Dynamics victor.

The interface between ICX/AlphaCom and victor, the Video Management System from American Dynamics (Tyco), is based on EDI/EDO and event handler programming in the ICX/AlphaCom. On the victor side the integration is through the General Purpose Interface.

As both products are very flexible it will be possible to closely integrate ICX/AlphaCom and victor. The following functionality can be provided:

  • Place intercom icons on a map and show Idle and Active status
  • List activity in the history log
  • Start actions in victor based on ICX/AlphaCom events, for instance connect a camera to a monitor when a call is made
  • Start actions in the ICX/AlphaCom based on events in victor, for instance play a voice message on an intercom to warn intruders when a specific video analytics event has been triggered.

The rest of this document gives an example of the programming which needs to be done to accomplish some of the above.

For details on programming of victor please refer to the manuals which are available from American Dynamics.

Note that the programming required for the interface between ICX/AlphaCom and victor is very similar to the programming of the interface between ICX/AlphaCom and Software House CCURE 9000

ICX/AlphaCom programming


  • When used with the ICX System, the following license is required in the ICX in order to enable the EDIO port: 1002602400 - ILI-IF Interface enabling

EDI/EDO port

Communication is based on EDI/EDO. Program an EDI/EDO port, for instance EDIO 2 as following:

  • Port Type: TCP/IP server
  • Port: 3020
  • Keep Alive - Enabled
  • Stop Character: 13

EDI event

The EDI event receives all data from victor. The programming below is an example and can be changed to suit specific needs. Program an event as following:

  • Owner Type: EDI Text Config
  • Event Type: 28 - EDI Text
  • Sub Event: 2
  • Action Command:

tmp 0 "%scutf(%edi, ,0)"
tmp 1 "%scutf(%edi, ,1)"
tmp 2 "%scutf(%edi, ,2)"
if %scmp(%tmp(0),Ping)
EDO 2 "Pong\r"
if %scmp(%tmp(0),Connect)
$DD L%tmp(1) L%tmp(2)
if %scmp(%tmp(0),Cancel)
$C L%tmp(1)
if %scmp(%tmp(0),VoiceMessage)
$ALRM L%tmp(1) N!%tmp(2)

The event above performs the following action:

  • Send a Pong message after receiving a Ping from victor - such a message exchange is obligatory otherwise victor will raise a communication failure event
  • Use the internal $DD command when a Connect message is received
  • Use the internal $C command when a Cancel message is received
  • Use the internal $ALRM command when a VoiceMessage message is received - note that in the example above the message number is used as second parameter, not the directory number of that message

EDO events

The events below are examples, please modify/add as appropriate.

Conversation event

This event can be used to indicate to victor that 2 stations are connected in a conversation, or that the conversation has ended:

  • Owner Type: stations With UDP: 8
  • Event type: 8 - Conversation-Outgoing
  • When Change To: ON or OFF
  • When Related To: Stations With UDP 8 - In an AlphaNet set Node to 255
  • Action Command: EDO 2 "%chg(Conn,Disconn) %1d %2d\r"

Station queued event

This event can be used to indicate to victor that a station is in a call request queue:

  • Owner Type: stations With UDP: 8
  • Event type: 11 - Call requester mode
  • When Change To: ON or OFF
  • When Related To: Stations With UDP 8 - In an AlphaNet set Node to 255
  • Action Command: EDO 2 "%chg(Queue,QRemoved) %1d\r"

Line Error

This event can be used to indicate to victor that a station is disconnected or reconnected:

  • Owner Type: stations With UDP: 8
  • Event type: 13 - Faulty station line
  • When Change To: ON or OFF
  • Action Command: EDO 2 "%chg(LineError,LineOK) %1d\r"

Programming victor


The programming instructions below only provide some pointers. Please refer to the documentation which comes with victor for much more detailed programming instructions.

Define ICX/AlphaCom as a device

Select Setup from the menu followed by Device/New to start programming of the ICX/AlphaCom interface.
In the dialog which appears the basic information about the interface can be entered:

  • Name: AlphaCom
  • Enabled
  • Poll Command: Ping<CR>
  • Poll Command Acknowledgement: Pong<CR>
  • Select: Network Port - optionally it is possible to select a serial data link
  • IP Address: the IP address of the ICX/AlphaCom
  • Communication Port: Select the same port as defined for the AlphaCom EDI/EDO port
  • Reconnection Period: 3
  • TimeOut Delay Time: 20
  • Comm Fail Delay Tïme: 300
  • Header Character: 0
  • Trailer Character: 13
  • Message Resend Count: 0
  • Max Buffer Size: 2000
  • In the section Warnings it is possible to program an action in victor when it is detected that the ICX/AlphaCom goes OnLine/OffLine
  • In the main panel click on 'Enabled'
  • Save the settings

AlphaCom will now be added as a General Purpose Device.

General Purpose Actions

In Setup/Action Message it is possible to define commands which are sent to the AlphaCom when an event is triggered somewhere in the system which is managed by victor. Select Setup from the menu followed by Device/New
Enter a meaningful name in the dialog which appears and the appropriate Outgoing Message. The example below will set up voice message #2 to intercom station 102:

  • Name: Voice message 102 2
  • Outgoing Message: VoiceMessage<SPACE>102<SPACE>2<CR>

Note that this message must be defined in the EDI programming to actually do what is intended. Define as many Action Messages as are needed in the system.
Action Messages can be linked to Actions. Select Setup from the menu followed by Action/New

  • Enter a meaningful name
  • Click on the '+'-sign behind General Purpose Device and select AlphaCom
  • Click on the '+'-sign behind General Purpose Action Message and select one of the Action Messages which have been defined
  • Save the defined Action

The in this way defined Actions will now be available for selection when events are triggered in victor

General Purpose Protocol

Select Setup from the menu followed by Protocol/New
Here every (part of an) AlphaCom message which is received by victor needs to be defined for later use. Define a name for each message and the elements in the data string which are important. For instance if it is important to use the fact that an intercom station is in conversation then this message must be defined. The AlphaCom event handler programming described under EDO can provide the following information for victor:

  • Name: Conversation 102 - Include Conn - Include 102
  • Name: Free 102 - Include Disconn - Include 102
  • Name: Line Error 102 - Include LineError - Include 102
  • Name: Line OK 102 - Include LineOK - Include 102
  • Name: Queued 102 - Include Queue - Include 102
  • Name: Q Removed 102 - Include QRemoved - Include 102

Repeat the above programming for all intercom stations in the system

General Purpose Monitoring Points

In the context of the AlphaCom-victor interface, a monitoring point can be defined as an intercom station. Select Setup from the menu followed by Monitoring Point/New

  • Enter a meaningful name - normally the directory number or display name of the intercom station, for instance 102
  • Click on the '+'-sign behind General Purpose Device and select ICX or AlphaCom.

In the section Messages enter the messages which define the behaviour of the intercom. With the protocol messages as defined above the following behaviour can be defined for station 102 - The Journal Message is the information message which the guard will see in the event viewer; in the columns Activation Message and Deactivation Message it is possible to pick a predefined protocol message:

  • Journal Message: Conversation - Activation Message: Conversation 102 - Deactivation Message: Free 102
  • Journal Message: Line Error - Activation Message: Line Error 102 - Deactivation Message: Line OK 102
  • Journal Message: Queued - Activation Message: Queued 102 - Deactivation Message: Q Removed 102

In the Alerts section it is possible to define an action which needs to be triggered when one of the activation/deactivation messages is triggered. If a camera needs to be switched to a monitor when the station is in a call:

  • Property: Activated Status 1 (because Conversation is the first message which is defined in the General tab)
  • Value: Activated
  • Action: Activate Event
  • An entry line will become visible from which it is possible to pick an already in victor defined action.

In the main dialog click on 'Enabled' and 'Save'


Select Build, Maps/New to define a new map. In the map edit view select an active layer and click on the '+'-sign to add an icon to that layer. Double click General Purpose Monitoring Point and an icon will appear on the map. Drag the icon to the correct location, right click the icon and select 'Drop on map'. A dialog will appear where the specific monitoring point can be selected and all its properties can be set.