This is an example for setting up remote desktop and file transfer for an asset in Thingworx Utilities using the Java Edge SDK.


Step 1.   EMS Configuration


ClientConfigurator config = new ClientConfigurator();


// application key RemoteAccessThingKey

String appKey = "s2ad46d04-5907-4182-88c2-0aad284f902c";



// Thingworx server Uri




SecurityClaims claims = SecurityClaims.fromAppKey(appKey);



// enable tunnels for the EMS



// initialize a virtual thing with identifier PTCDemoRemoteAccessThing

VirtualThing myThing = new VirtualThing(ThingName, "PTCDemoRemoteAccessThing", "PTCDemoRemoteAccessThing", client);


**// for the file transfer functionality

FileTransferVirtualThing myThing = new FileTransferVirtualThing(ThingName, "PTCDemoRemoteAccessThing", "PTCDemoRemoteAccessThing", client);



Step 2.   Install TightVNC on the asset ( )


Step 3.   Go to Thingworx Composer, search for thing PTCDemoRemoteAccessThing

                a.   pair  PTCDemoRemoteAccessThing with identifier PTCDemoRemoteAccessThing

                b.   go to PTCDemoRemoteAccessThing Configuration  and add a tunnel

      • name: vnc
      • host: asset IP
      • port: 5900 (this is the default port for VNC servers; it can be changed)

                c.   go to PTCDemoRemoteAccessThing Properties and set the vncPassword



                If the VNC server is on the same machine with the Thingworx server, check “Allow loopback connections” from Access Control tab in TightVNC Server Configuration.