What is the Axeda Compatibility Package? > ThingWorx Remote Access Extension (RAE) > Remote Access for Axeda eMessage Agents through ThingWorx
Remote Access for Axeda eMessage Agents through ThingWorx
Remote Access for Axeda eMessage Agents in a ThingWorx environment consists of the following components:
The ThingWorx Platform with the extensions of the Axeda Compatibility Package installed, namely the Connection Services Extension (CSE), the Axeda Compatibility Extension (ACE), and the Remote Access Extension (RAE).
Either the ThingWorx Global Access Server, v.7.x, or the Axeda Global Access Server, v.6.9.2/v.6.9.3, has registered with the ThingWorx Platform.
A remote Axeda Agent device that is running a remote access server, such as SSH or Axeda Desktop Server and an eMessage Agent that can communicate with the ThingWorx Platform. For an Axeda Gateway or Connector Agent, the communication uses the Axeda eMessage Protocol to connect to the ThingWorx eMessage Connector. The Connector translates the messages from Axeda Agents into AlwaysOn messages to send to the ThingWorx Platform.
The ThingWorx Remote Access Client (RAC) installed on an end user's machine.
The client-side application to be used over the remote access connection, also known as a "tunnel". For example an SSH client or Axeda Desktop Viewer.
The following illustration depicts the interaction of these components:
In this illustration, the orange line shows the connection of a Global Access Server (GAS) v.6.9.x or 7.x to the eMessage Connector. The dashed, green line shows the GAS 7.x registered to a ThingWorx Platform. The bold lines indicate the remote access tunnel between the user and the edge device.
GAS v.6.9.2/v.6.9.3 Flow vs. GAS v.7.x Flow
The following table shows the flow for remote access with a GAS, v.6.9.2/v.6.9.3 and a GAS v.7.x.
* 
Steps 1 and 3 through 7 of the flow are the same for both versions of the GAS. Step 8 differs, and then Steps 9 through 13 are the same.
The GAS v.6.9 must register with the eMessage Connector. GAS v.7.1.x can register either with the eMessage Connector or the ThingWorx Platform directly with the appropriate version of the Axeda Compatibility Package installed.
GAS v.6.9.2/v.6.9.3
GAS v.7.x
1. The end user launches a remote session through an application or mashup. For example, Asset Advisor.
2. The mashup initiates the remote session in the ThingWorx Platform.
1. ThingWorx Platform creates the session and then sends egress to the eMessage Connector to start the remote session directly on the GAS.
2. The eMessage Connector creates the remote session on the ThingWorx Platform and invokes the method, ConnectToSession, on the Axeda Thing that implements the GASRemoteAccessible Thing Shape, which builds the request to the remote agent device to connect to GAS.
2. The mashup initiates the remote session in the ThingWorx Platform.
1. ThingWorx Platform creates the session and then sends egress to the eMessage Connector to start the remote session directly on the GAS.
2. ThingWorx updates the session and the AxedaBaseModel, intercepts the session update event, in turn calling ConnectToSession on the GASRemoteAccessible Thing, which builds the request to the remote agent device to connect to GAS.
3. The mashup launches the RAC on the user's computer.
4. The RAC creates a persistent connection back to the ThingWorx Platform for messaging and control.
5. The RAC creates a persistent connection to the GAS.
6. The remote device pings the eMessage Connector and receives instructions to start its end of the remote session with the GAS>
7. The remote device creates a persistent connection to the GAS.
8. The GAS session is started and a message is sent telling the Axeda agent to connect. When it connects successfully, the agent sends a status update to the eMessage Connector, indicating that it successfully connected. At this point, the RAC is notified that it can connect to the GAS. When that succeeds, the RAC continues with standing up the local server socket. GAS updates are only audit records or a count of actives sessions. GAS does not send a specific notification of readiness.
9. When it receives a message that the session is ready from the platform, the RAC creates a local port, notifies the user to connect their client to the local port. The RAC connects to the GAS.
10. The user launches the client and connects it to the local machine on the provided port.
11. The client sends data over the connection from the RAC through the GAS to the remote device and its remote server.
12. The remote session is established.
What's Next
To learn more about remote access for eMessage Agents, refer to the ThingWorx Remote Access section of this help center. This section provides the following topics:
For information about the releases of the Remote Access Extension and the Remote Access Client, refer to What's New in ThingWorx Remote Access Extension and ThingWorx Remote Access Client? in the ThingWorx Platform 9 Help Center.
Was this helpful?