How can ThingWorx (external) data be used to update an experience in real-time? For example, if the data does not fall within a specified range, warning messages will be shown automatically.
In ThingWorx, in Thing, create a Service to check the range and to determine if a warning should be displayed or not.
In Vuforia Studio, in the Project , in DATA panel, under External Data section, add the Service .
Under Configuration section, check all checkboxes related to refresh to call this Service .
Use the ServiceInvokeComplete Event to check the value reported by the Service
ThingWorx properties can be updated from a Vuforia Studio experience.
Below is a simple example:
Create a test Thing and a test property for the Thing in ThingWorx :
Create a service for the Thing with text input parameter(Test) and add the below code to update the TestProperty value:
Click Done and Save the Thing
In Vuforia Studio, Add a Text Input widget and a Button widget in 2D canvas
Add the service of the Thing in the External data Panel
Now, bind the Text property of the ‘Text Input’ widget to the Test Parameter of the service as shown below:
Bind the Click event of the Button widget to the Service to update the value of Thing property in ThingWorx
Test the experience by clicking Preview. Enter text in the Text Input widget and click the button. The Thing property should then be updated.
If you are creating a public experience, ensure that run time permissions for the es-public-access user have been assigned to the properties, events and services of the entity.
From ThingWorx composer, open the entity whose data must be accessed by a public experience
Click the Permissions icon in the last column of the row containing the entity
Click Run Time under Permissions
Under All Properties, Events, Services, use the search box to find and add the es-public-access user
Click green dot under the appropriate permissions columns
See the Vuforia Studio Help Center for more information on granting user permissions in ThingWorx for Vuforia Studio.
The Portal Login/Auto-Configure option within Vuforia Studio is designed to help Trial users configure their Studio instance with their assigned Experience Service and ThingMarks.
Corporate networks may block communication to the Vuforia portal or the assigned Experience Service. If you receive any of the below errors, follow our the resolution steps in our Knowledge Base article Vuforia Studio failed connection issues
Auto Configuration failed and get message to Check log for errors
Error: connect ETIMEDOUT <ip address>
Error: read ECONNRESET
If a proxy is in use on the network, it must also be configured within Vuforia Studio as Studio does not inherit browser proxy settings. A protocol must be used when defining the proxy URL within Studio. Proxy configuration can be done on the Settings menu option.
Just helped someone who was seeing a difference between the Preview mode and what Vuforia View was showing. The experience was being developed for public access, so what was happening is that Preview mode worked because they were using their Studio credentials to run the Thingworx service. When they used Vuforia View, they were using es-public-access to run the Thingworx service. And es-public-access did not have the runtime permissions to execute the service.
The error indication was found in the Application Log complaining about the Entity and Service not being able to be run.
Don't forget to set your permissions for es-public-access so it can run your services!
Often issues connecting to the Thingworx Experience Service from Thingworx Studio are related to more complex proxy configurations. One such configuration uses a .pac script that dynamically resolves the proxy based on the requested URL. Thingworx Studio has the ability to configure a proxy server but you have to explicitly specify one server URL, you can't replicate the settings in your internet connections when these use a .pac script. No worries - there is a workaround - Proxy-Vole at your rescue!
You can find Proxy Vole ( https://proxy-vole.kenai.com/ ) on the Internet. It is a little java-based application that can be used to auto-resolve your proxy configuration. It has a command line and a UI frontend. The documentation is somewhat unstructured - for the test you only need a few of the steps:
Download the Proxy Vole jar-with-dependencies
Start the proxy vole application in a command shell using the following command: java -cp ./proxy-vole-1.0.1-jar-with-dependencies.jar com.github.markusbernhardt.proxy.ui.ProxyTester
Enter the following in the dialog box: 4. Specify the resulting proxy URL in Thingworx Studio:
If you still have issues, please post the log on the Developer Forum site.
The new 3D-Guided Service Instructions example use case walks you through creating a Vuforia Studio Experience that will allow a frontline worker to:
Find the physical location of a broken part on an object using a digital model
Search for parts on a 3D model of the object
Find and order replacement parts from a vendor using a persistent shopping cart
The 3D-Guided Service Instructions use case will walk you through the following sections:
3D-Guided Service Instructions 101: Use Attributes in Creo Illustrate
3D-Guided Service Instructions 301: Add Pricing Data and a Shopping Cart to a Model
3D-Guided Service Instructions 302: Add a Simple ThingWorx Service to Vuforia Studio
3D-Guided Service Instructions 303: Create a Persistent Shopping Cart Using ThingWorx