Technical FAQs

Ask a Question

Real time data fails on PME Vista Client on remote machines but succeeds on server

Issue
On an Power Monitoring expert (PME) 8.x, Vista on client machines does not get any real-time data in diagrams - instead it displays yellow or orange boxes around the empty numeric objects. Opening the same diagram in Vista on the ION Enterprise server displays real-time data without problems.

Symptoms

  • Data fields in Vista on an ION Enterprise client are highlighted yellow or orange. The tool tips over the fields read "Real Time Data Service is not responding." or "ION Real Time Data Service did not respond on time."
  • Data appears correctly in Vista on the ION Enterprise server.
  • Data appears correctly in WebReach on the ION Enterprise client.
  • Historical data is returned in Vista on the ION Enterprise client.
  • Error Message: "Cannot contact the real time service"
Product Lines
ION Enterprise
Power Monitoring Expert

Environment
Remote Client
 

General Cause
In power monitoring expert, the real-time data between the server and client machines is exchanged via the ION Real-Time Data Service (IONServices). Communication between Vista and the ION Real Time Data service is handled through .NET Remoting instead of DCOM starting from from ION Enterprise 5.6 and above. When a Vista diagram is opened on a PME Engineering client, a .NET Remoting Channel is established so that the ION Real Time Data service on the ION Enterprise server can provide the real-time data to Vista on the client.IONServices uses a brand-new architecture to consolidate requests for real-time data from the meters. IONServices is based on a client-server architecture, in which IONServices serves up the real-time data to IONServices clients like Vista, Designer, the VIP, and WebReach.

*Warning: Take backups of any files prior to modifying them. Ensure the backups are in a location that will not be overwritten (i.e. the Desktop).
*Warning: This article contains information about editing the registry. Improper changes to the registry can permanently damage the operating system. Always backup the registry before making any changes.*
Potential Cause 1

The callback channel for real-time data refers to both machines by their computer names. The PME primary server and client must be able resolve each other computer name to a routable IP address. If either machine is unable to do this, no real-time data will appear in Vista on the client.

Depending on network configuration, .NET may try to use either the short (e.g. myserver) or full (e.g. myserver.canada.corp.powermeasurement.com) computer name.

In a networking environment, the exact reasons why two computers would not be able to communicate using their names are varied. Consultation with the customer's IT department may be necessary to determine the root of this issue.

Resolution 1

Add entries to the "hosts" file on each computer to allow them to successfully connect using their computer names.

  1. On the Power Monitoring Expert primary server, find its fully-qualified computer name.
    1. Right click on "My Computer" and select "Properties"
    2. Go to the "Computer Name" tab
    3. Note the value in the "Full computer name" field
  2. On the Power Monitoring Expert client, check if the server can be pinged by both its short and full name.
    1. Open a DOS prompt (Start Menu > Run, type "cmd" in the Run window)
    2. Type "ping [short computer name]" (e.g. "ping myserver") without the double quotes. Hit enter.
    3. Type "ping [full computer name]" (e.g. "ping myserver.canada.corp.powermeasurement.com") without the double quotes. Hit enter.
    4. If for either case, no replies are received, proceed to step 3. If the client can successfully ping the server, skip to step 4.
  3. On the Power Monitoring Expert client, add an entry to the hosts file.
    1. Navigate to C:\Windows\System32\Drivers\Etc
    2. Open the file "hosts" in a text editor such as Notepad
    3.  At the end of the file, add the IP address of the PME primary server and the short name of the server from step 1.
    4. Add the IP address of the PME primary server and the full name of the server from step 1.
    5. Add a period (.) immediately after the full name of the server. The contents of the file should be similar to the example below.
                               127.0.0.1 localhost
                               192.168.0.100 myserver
                               192.168.0.100 myserver.canada.corp.powermeasurement.com.​
  1. Save and close the file.
  2. Repeat step 2. Replies from the server should now be received. If Vista on the client now displays real-time data, the workaround is complete. If Vista on the client still doesn't show real-time data, then proceed to step 4. 
  • NOTE: having both the short and full computer name in the hosts file should not cause any problems, and ensure that .NET Remoting can resolve either to an IP address.
  1. On the Power Monitoring Expert client, find its fully-qualified computer name.
    1. Right click on "My Computer" and select "Properties"
    2. Go to the "Computer Name" tab
    3. Note the value in the "Full computer name" field
  2. On the Power Monitoring Expert primary server, check if the client can be pinged by both its short and full name.
    1. Open a DOS prompt (Start Menu > Run, type "cmd" in the Run window)
    2. Type "ping [short computer name]" (e.g. "ping myclient") without the double quotes. Hit enter.
    3. Type "ping [full computer name]" (e.g. "ping myclient.canada.corp.powermeasurement.com") without the double quotes. Hit enter.
    4. If for either case, no replies are received, proceed to step 6. If the client can successfully ping the server, skip to Workaround 2.
  3. On the Power Monitoring Expert primary server, add an entry to the hosts file.
    1. Navigate to C:\Windows\System32\Drivers\Etc
    2. Open the file "hosts" in a text editor such as Notepad
    3. At the end of the file, add the IP address of the PME  client and the full name of the client from step 4.
    4. Add a period (.) immediately after the full name of the client. The contents of the file should be similar to the example below:
                               127.0.0.1 localhost
                               192.168.0.101 myclient
                               192.168.0.101 myclient.canada.corp.powermeasurement.com.​
  1. Save and close the file.
  2. Repeat step 5. Replies from the client should now be received. If Vista on the client now displays real-time data, the workaround is complete. If Vista on the client still doesn't show real-time data, proceed to Workaround 2.
  • NOTE: having both the short and full computer name in the hosts file should not cause any problems, and ensure that .NET Remoting can resolve either to an IP address.


Potential Cause 2
When Vista is started on a client machine, a brand-new callback channel is established between the ION Real-Time Data Service on the server and the client. This channel is created with dynamic TCP ports on the client and server side; i.e. it is not established on a fixed port - every connection is on a different, dynamic port. This kind of dynamic connection may be blocked by any firewalls between the client and server, and/or anti-virus software, as well as other as-yet unidentified factors that block this kind of dynamic port usage.

If a dynamic connection such as this cannot be created between the client and server, real-time data will not show up in Vista.

Resolution 2
The ION Real-Time Data Service can be configured to use HTTP protocol instead of TCP for this callback channel. Using HTTP has a better chance of working in an environment where dynamic port usage is blocked - it uses a fixed port (80) that is usually left open by default on most firewalls. One drawback of using HTTP is that it is typically slower than TCP.

  1. Shut down all ION Enterprise applications on the client machines.
  2. On the server where the ION Enterprise databases reside, modify the ION_Network database.
    • In the Registry table, in the row with name "Remoting.IONServices.Protocol", change the Value to "Http".
  3. On all ION Enterprise/Power Monitoring Expert client machines, enter the following key and value into the Windows Registry:
    1. For a 32-bit system:
      • under the HKLM\SOFTWARE\Schneider Electric\ION Enterprise\5.6 key, create a new key with name "IONServices"
      • under the HKLM\SOFTWARE\Schneider Electric\ION Enterprise\5.6\IONServices key, create a new String value with name "CallbackChannelProtocol"
      • enter a value of "Http" for it
    2. For a 64-bit system:
      • under the HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Schneider Electric\Power Monitoring Expert\8.1 key, create a new key with name "IONServices"
      • under the HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Schneider Electric\Power Monitoring Expert\8.1\IONServices key, create a new String value with name "CallbackChannelProtocol"
      • enter a value of "Http" for it
  4. Restart the ION Real Time Data Service on the primary server.
This must be done on the client machines (doing it on the server is optional, since it will not have any trouble making a TCP connection to itself). Now programs like Vista and Designer on the client machine will be getting real-time updates from the server properly.


 
Was this helpful?
What can we do to improve the information ?