If I run from my laptop, AND I use port 80 in the url string, then on the EMS command line I do see simulated temperatures and humidity values. But on the ThingWorx server, if I chose to monitor unbound remote things, nothing is showing up there.
On the PI, I get a different error:
20:46:12.237 DEBUG c.t.c.c.c.n.ThingworxClientConnectionHandler - WebSocket Channel is connected is open: true
20:46:21.414 INFO c.t.c.c.c.n.NettyClientConnectionFactory - forcing underlying tcp channel closed is open: false, is active: false
20:46:21.423 ERROR c.t.c.c.e.ClientCommunicationEndpoint - Refilling connections on endpoint 0, uri: ws://thingworx-academic-vu.ptcmscloud.com:80/Thingworx/ws failed : timeout waiting for websocket handshake to complete
20:46:21.425 INFO c.t.c.c.e.m.CommunicationEndpointMonitorTask - Endpoint reconnection was unsuccessful name: EP_0, id: 0</p></div></p>
Based on some email from Adrian Petrescu I can get the EMS on the Raspberry PI to run without error if I use the IP address for my ThingWorx server instead of its FQDN. I see simulated temp and humidity values in the log stream.
But I don't see anything on the server when I select the Monitoring option to look at Unbound Remote Things. The messages on the PI suggest that the name Am2302Thing is being used from there, but I have not created such a thing in the Composer. Do I need to do that? The tutorial does not show that this step is required BEFORE trying to see the connection in the Monitoring window.
BUT, later in the How to Bind Data tutorial video, the narrator shows how to create a Data Shape, then a Thing Template and finally a Thing. The Thing she creates IS Am2302Thing. So perhaps there is a cart before the horse issue here?
There is something wrong with my ThingWorx server instance I suspect. After making all of the definitions: Shape, Template, Thing and binding the remote properties to the thing successfully, I still don't see a thing name in the Monitoring window, either under the All tab or the Unbound tab.This is an educational show stopper for me at the moment!
The problem is that for the Monitoring access to work as advertised you need admin privileges to the server.
The academic instances in the cloud do NOT have admin privileges enabled for an ordinary educational user and ThingWorx is reluctant to do that for fear that the user might do damage to the instance.
There was some possibility that they could clone the Remote Thing Monitoring mashup and allow ordinary users to have access to that. But the person I am in touch with on this has been silent for over 2 weeks.
We are working on solving this issue. At the moment, the workaround for this issue is that we can see if a device was connected to its equivalent in ThingWorx (a Remote Thing in ThingWorx) by checking that the value from the isConnected property inside the Remote thing is "true".