Introduction


The WIN-911 SIA InTouch Data Source utilizes a combination of the Wonderware Alarm Toolkit and SuiteLink to integrate with InTouch applications. Both the Alarm Toolkit and SuiteLink support network connections to InTouch applications which provides WIN-911 the ability to connect to local and remote WindowViewer applications, as well as applications running in a Terminal Services/Remote Desktop environment. The Alarm Toolkit connection is used to receive alarms from an InTouch application while SuiteLink is used to acknowledge alarms, update the Heartbeat, and retrieve data values for use in WIN-911 Reports.


The purpose of this document is to walk you through process of configuring WIN-911 to communicate with standalone WindowViewer applications and WindowViewer applications running in Terminal Services environments.


Installation Requirements


WIN-911 can be installed on the same PC as InTouch or a remote PC and connect through the network. When running WIN-911 on a remote PC, InTouch will need to be installed but an InTouch license is not required. InTouch must be installed as it places dependencies on the PC in order for WIN-911 to connect through Wonderware's Distributed Alarm System. (Alarm Manager and SuiteLink). Be sure to install the same version of InTouch as the InTouch server you will be connecting to. A mismatch in versions may cause connectivity issues.


Wonderware Distributed Alarm System (Alarm Manager) 

Wonderware's Distributed Alarm System consists of Alarm Providers and Alarm Consumers which is managed by the Alarm Manager application (AlarmMgr.exe).


  • Alarm Providers generate alarms and events. E.g. InTouch WindowViewer, WinPlatforms.
  • Alarm Consumers subscribe to alarms and events. E.g. AlarmViewerCtrl, Alarm Printer, Alarm Logger.


The WIN-911 InTouch Data Source is an Alarm Consumer


When an Alarm Provider launches (InTouch WindowViewer), it registers with the Alarm Manager as an Alarm Provider. Once registered, the alarms from the Alarm Provider are available to any Alarm Consumer that requests them. 


Alarm Consumers request alarms with an Alarm Query which specifies a Node Name (host name/IP address), an Alarm Provider (InTouch WindowViewer), and an Alarm Group (InTouch Group). A syntax example for an InTouch Alarm Query is \\NodeName\InTouch$System. When configuring WIN-911, only the Node Name is required since the remainder of the query will remain the same for all InTouch connections. Alarm Consumers submit their queries to the Alarm Manager which then facilitates the connection to the specified InTouch application.

Note: WIN-911 connects to the $System group as it is the root group in an InTouch application. By specifying the root Group, alarms assigned to any child Groups will also be returned by the query.


Once WIN-911 is configured with a Node Name, it can construct an InTouch Alarm Query and pass it to Alarm Manger. The Alarm Manger then creates the subscription to the specified Alarm Provider (InTouch WindowViewer) and WIN-911 can receive alarms from InTouch.


The key to configuring WIN-911 successfully is specifying the correct Node Name for the InTouch application you need to monitor.



Standalone InTouch Server Node Name


When connecting WIN-911 to a standalone InTouch Server (single instance of WindowViewer runs on the PC), whether local or remote, the Node Name can either be the host name or IP address of the PC running WindowViewer. 


InTouch for Remote Desktop Services (RDS) / Terminal Services (TS) Node Name 


When running WindowViewer on an RDS or TS server, each WindowViewer instance launched in an RDP session generates its own set of alarms. For example, when running two instances of the same InTouch application in separate RDP sessions, acking an alarm in one instance will not pass through to the other instance. Because of this, it is recommended to run a "master" copy of the InTouch application in the console session of Windows. You would then configure the Alarm Summary Control in WindowMaker, to look to this centralized location of alarms.


You can do this by following these steps.(From InSource Solutions' Tech Note IT269)


  1. Open WindowMaker to edit your InTouch application.
  2. Find the Window where your alarms are displayed.
  3. Open the properties for the Alarm Control that is displayed.
  4. Edit the alarm query.  
  5. For this application, you'll want to preface the existing application's Alarm Query with "\\TerminalServerName:".  The ":" tells InTouch to connect to the console session.
    • ex: \\TSServer1:\InTouch!$System
  6. Run a copy of the InTouch application on the console session of the RDS server.  To do this start InTouch WindowViewer directly on the server.  This will now collect alarms.
  7. Run WindowViewer on the clients, which will now read alarms out of the console session.
 

Once you have InTouch configured to run this way, you only need to supply the host name when configuring WIN-911.


If you cannot configure InTouch to run with a WindowViewer instance running in the console session, you must specify which instance of WindowViewer WIN-911 should connect to. 


When WindowViewer launches, an instance of AlarmMgr also launches. WindowViewer then registers with SuiteLink as "View" and AlarmMgr as "AlarmMgr". 

When multiple sessions of WindowViewer are launched, multiple instances of AlarmMgr launch. Each instance of AlarmMgr is tied to the WindowViewer instance which invoked it. Since there are multiple instances of WindowViewer and AlarmMgr, they can't all register with SuiteLink under the same name. 


WindowViewer and AlarmMgr instances launched from an RDP session will have the IP address of the remote host appended to their registered names. For example, if the remote host IP that initiated the RDP session is 192.168.1.50, WindowViewer will register with SuiteLink as "View192.168.1.50" and AlarmMgr as "AlarmMgr192.168.1.50".


The WindowViewer instance is represented by the IP address appended its name. The syntax for an Alarm Consumer connecting to WindowViewer running on a terminal server is, \\NodeName:ClientIPAddress\InTouch!$System. Using the example above, the query would be \\NodeName:192.168.1.50\InTouch$System. You would then need to configure WIN-911 with NodeName:192.168.1.50.


If WindowViewer is launched in a console session, as in the recommended solution above, an IP address is NOT appended to View and AlarmMgr. You can configure WIN-911 as if it were a standalone InTouch Server.