Entities are exported as XML files and data is exported in JSON format.
There are two types of extensions. Server-side extensions can be used to create additional entities in the Composer, while client-side extensions can be used to create additional widgets for use in mashups.
You may not delete a server-side extension that has an entity in use by other entities in the system. If you attempt to do so, an error displays, informing you where the entity is being used. You may, however, delete a Widget extension even if that widget is currently being used in a mashup.
Below are inbuilt events available in ThingTemplate. Events are set on Property. Note: Alert is also Type of Event.
Structure of Subscription. It will require Event and Property on which event is defined.Also Source on which Property is present.
Use Z-Index value to put one widget over other in Mashup Building. Higher Z-Index value widget will remain on top with lower value.
Selecting Dynamic allows for dynamically bound entities at runtime to execute the specifically selected design time service(s).
For Example:Select a User, select the ChangePassword service, then check the Dynamic option.In the Mashup data pane you’ll be given the option to dynamically bind user names to the execution of the ChangePassword service at runtime, thus wiring and executing the same service for many entity instances.
The base type selection allows you to define what type of data the property represents. The following list defines each base type:
- Blob: A binary large object.
- Boolean: A true or false value.
- DashboardName: The name of a dashboard.
- DateTime: A date value.
- Guid: A globally unique identifier.
- GroupName: A user group name.
- HTML: HTML-formatted content.
- HyperLink: A URL such as www.ThingWorx.com.
- Image: Binary data that can be rendered as an image.
- ImageLink: A URL link to an image.
- InfoTable: An infotable is a standard representation of a data payload/object in ThingWorx. If selected, you can specify a Data Shape.
- Integer: An integer value.
- Long: A long integer value.
- JSON: JavaScript Object Notation object, which is a collection of name/value pairs.
- Location: Standard World Geodetic System (WGS) 84 coordinate, expressed as [longitude, latitude], elevation.
- MashupName: The name of a mashup.
- MenuName: The name of a menu.
- Number: A numeric value.
- Password: A masked password value.
- Query: A JSON object which includes an array of filters. Each filter should include value, type, and fieldname.
- String: Alphanumeric characters.
- Text: Similar to a string, but it can be indexed and is squealable.
- ThingName: The name of a specific Thing in your model.
- UserName: The name of a user in ThingWorx.
- XML: An Extensible Markup Language document.
Persistent – Specifies if the property value should be persisted through a Thing or system restart. Properties that are not persistent will reset their values to their default after a Thing or system restart.
Logged– Specifies if the property value should be automatically logged to a value stream whenever the data changes (based on the data change type).
Binding
Properties can be bound to different constructs. The following list defines each construct:
- My Property: Property is from this entity.
- Local Bound: Property information regarding the bound local server property.
- Remote: Property information regarding the bound edge device property.
Category – Property, Service and Event definitions support the concept of categorization, so that you may order them in logical groupings.
DataChange Type:
Specifies when a DataChange Event may be triggered for a Property value change. The options are as follows:
- Always: Fire the event to subscribers for any property value change
- Never: Do not fire a change event
- On: For most values, any change will trigger this. For more complex data types, such as InfoTables, refer to the specific product documentation.
- Off: Fire the event if the new value evaluates to a Boolean false
- Value: For Numbers, if the new value has changed by more than the threshold value, fire the change event. For non-Numbers, this setting behaves the same as Always except in the case of logging to value streams. Non-Number properties will only log to value streams using the Value data change type if the value actually changes from the previous value.