2017

Here is a quick update on new Next Gen Composer features in our latest release, ThingWorx 8.1.  We have new functionality for Mashups, Notifications, Script Editing, Industrial Connectivity, XML export and more!

 

Mashup Builder

The Mashup Builder is now available in the Next Gen Composer 8.1.  Users will find a similar experience to the existing Composer through drag and drop of widgets, full property editing support, binding configuration and mashup preview.


MashupBuilder.png

Mashup Builder now in Next Gen Composer

 

Notifications

The ThingWorx platform now has inbuilt support for notifications, both SMS and email.  In conjunction with some notification provider extensions from ThingWorx Marketplace, we now offer entities for notifications and ability to create content, recipients, localized and dynamic content through tokens. Notifications can be triggered from alerts and events on entities.


Notification.png

Creating a Notification

 

KEPServerEX configuration management

Administrators can now import KEPServerEX configurations and remotely push them down to connected instances of KEPServerEX with a few mouse clicks.


kepserver.png

KEPServerEX Configuration File Management

 

Font Resize

In the JavaScript and SQL Service editors, there is now a new toolbar option “Font Resize” which sets your editor font small, normal or large.  This font setting is saved for each user.


font_resize.png

Font Resize toolbar button for Script Editing

 

Data Shapes for Remote Services

In the entity property Manage Bindings editor, you now have the ability to create a DataShape automatically (with required field definitions) when adding a remote binding.  If the DataShape does exist at the time of binding, it should be automatically selected in the dialog by default.

 

Saving with Comments

In NG Composer, we’ve cleaned up the entity “Save” process for those who wish to supply change commentary.  In the older Composer versions, there was a button with an icon to the right of the “Save” button that enabled you to capture save comments.  This button was a little hidden and very easy to forget to click.  We’ve enhanced this feature in NG Composer with a user preference setting “Provide comment with save”.  When this preference is used, Composer will prompt for comments on all save actions and the user does not have to worry about two different Save buttons.


save.png

Prompting for Save Comments


We also implemented Import from File, Change Password for the logged in user, Project DependsOn associations, and Change History for all entities.  Each of features should be similar to their older Composer versions.

 

 

*Bonus* Entity XML export

In 8.1, we have also cleaned up the export of entity XML to now be deterministic in its contents and also formatted better. This should help developers doing those side by side comparisons of changes in their text editors.  It also lines us up nicely for some enhanced source code integrations we have planned for 2018, so stay tuned for more.  Here are some samples of comparison improvements:

 

Notice in the example below that the attributes of the service definition tags are all on one line, and the CDATA section of the code is also poorly formatted.  We’ve reformatted these, see the before and after pictures.


entity comparison 8.0.png

Before: Entity comparison in 8.0


entity comparison 8.1.png

After: Entity comparison in 8.1

 

Here is also an example of a Mashup comparison for widget properties.  See the before and after, we’ve cleaned up the formatting and also sorted the attributes to be consistent with each export for a more deterministic comparison with each change.


mashup comparison 8.0.png

Before: Mashup comparison in 8.0


mashup comparison 8.1.png

After: Mashup comparison in 8.1


These are small enhancements but make a major difference developers and teams struggle with today in managing their ThingWorx applications.

 

Final Thoughts

We are making a big push in our development to complete the Next Generation Composer in the next two quarters.  What “complete” means is full feature-parity with the existing Composer and enabling it as the default.  Once we hit that completion milestone though our work isn’t finished.  We have a backlog full of new Composer features to make our developers more productive in every release.


Can’t figure out what is available or not sure if you are taking advantage of all Composer has to offer?  Visit this link for an up to date view on all features available in the Next Gen Composer.  We’re also taking suggestions for enhancements through this Community, so please share your ideas!