GAS (Global Access Server) Enablement
The ThingWorx Global Access Server, 7.0.x and 7.1.0, enables users to access Axeda eMessage Agents remotely either directly through the ThingWorx Platform (7.1.0 only) or through the ThingWorx eMessage Connector and GAS (7.0.x and 7.1.0). Users can perform remote sessions using the ThingWorx Remote Access Client and the user's preferred connection type, such as SSH or VNC/Axeda Desktop.
The following figure illustrates the integration of the ThingWorx Global Access Server (GAS), 7.x, in a ThingWorx environment:
On the left is the end user setup, with the Remote Access Client (RAC) connected to a custom mashup or application that communicates with the ThingWorx Platform. Once a remote session is established, the end user can use a locally installed VNC Viewer to access the remote device.
In the center are the ThingWorx Platform with the Remote Access Extension (RAE) running, the eMessage Connector that communicates with remote assets, and the ThingWorx Global Access Server (GAS), which handles all activities related to establishing and ending remote sessions.
On the right is the remote device that is remotely accessible over the Internet. The RAC establishes a remote session with the device through the ThingWorx GAS.
The following figure illustrates the integration of the ThingWorx Remote Access Extension with an C SDK device.
The following sections describe changes to the ThingWorx products to support remote access. Click the title of a section to display its content. Click the title again to hide the content.
ThingWorx Global Access Server, 7.x
The features that have been added to ThingWorx Global Access Server (GAS) since 6.9.x of the Axeda Global Access Server follow:
• The GAS communicates directly with ThingWorx Platform via REST requests (7.x).
• The GAS sends current session counts to ThingWorx Platform (7.x).
• The GAS sends full audit records as JSON to ThingWorx Platform (7.1 or later).
• The GAS can function in the 6.9.x mode, referred to as "AXEDA" compatibility mode with the eMessagee Connector.
• ThingWorx Platform can start and end GAS sessions directly using the Remote Access Extension 3.x or later.
ThingWorx Remote Access Extension (RAE), 3.x
The changes to the ThingWorx Remote Access Extension (RAE), 3.x, include the following to support the ThingWorx GAS, 7.x.x while still supporting Axeda GAS 6.9.2/6.9.3:
• Implemented the following services in the for GAS and the eMessage Connector:
◦ RegisterExternalRemoteAccessServer — Allows a GAS to register itself directly with ThingWorx Platform.
◦ UnregisterExternalRemoteAccessServer — Allows a GAS to unregister itself or a user to unregister a GAS that is no longer needed.
◦ UpdateExternalRemoteAccessServerStatus — Allows a GAS to send status updates and audit records directly to ThingWorx Platform.
• Updated RAE Thing Shapes, as follows:
◦ RemoteAccessServer Thing Shape —The EndSession has a thing parameter.
◦ RemomteAccessible Thing Shape — The endpoints property has been added, along with remotely-bound services: ConnectToSession and EndSession.
• Updated the RemoteAccessPermissionServices Thing to run the permissions services for GAS.
• All GAS-related entities that were previously provided in the Axeda Compatibility Extension have been migrated to the Remote Access Extension (RAE) and where needed, new entities were created. As a result, the RAE 3.0.0 includes the following entities:
◦ TokenPropertyAuthenticator Authenticator checks the token sent in by an Axeda Agent.
◦ GASModel Thing Template
◦ GlobalAccessServer Thing Shape
◦ GASFileTranssferEvents Thing Shape
◦ GASRemoteAccessible Thing Shape. Previously Axeda.RemoteAccessible Thing Shape.
| The RAE has another RemoteAccessible Thing Shape that should be used for ThingWorx Edge SDK or EMS agent Things. |
◦ GASSelectorService Thing Shape
◦ GASModelConnectionSettings Data Shape
◦ GASRemoteEndpointProviderConfig Data Shape
◦ GASessionParametersProviderConfig Data Shape
◦ GASSessionConfig Data Shape
◦ RemoteSessionEvent Data Shape
◦ ThingworxInternal.RemoteEndpointProviderConfig Data Shape
◦ ThingworxInternal.SessionParametersProviderConfig Data Shape
• New ExternalRemoteAccessSserver services for both GAS and the eMessage Connector have been implemented.
• The GAS 7.1 audit-message handling has been implemented in the RAE, 3.x.
• The RAE, 3.x, handles failover of the useInternalHostname flag to an external hostname.
ThingWorx Axeda Compatibility Extension (ACE), v.4.x - applies to Axeda Agents only
The changes to the Axeda Compatibility Extension (ACE), v.4.x, follow:
• All GAS-related entities that were previously provided in the Axeda Compatibility Extension have been removed from the ACE.
• The Axeda.RemoteAccessible Thing Shape is no longer necessary so it too has been removed from the ACE. Instead, thre is a GASRemoteAccessible Thing Shape in the RAE.
ThingWorx eMessage Connector, 2.2.x - applies to Axeda Agents only
The changes to the ThingWorx eMessage Connector, 2.2.x, to support the ThingWorx GAS as well as the Axeda GAS 6.9.x, follow:
• The audit workflows of the GAS were updated to use the UpdateExternalRemoteAccessServerStatus service provided in RAE, 3.x.
• The workflow for GAS registration and un-registration use the RegisterExternalRemoteAccessServer and UnregisterExternalRemoteAccessServer services provided in RAE, 3.x.