3 Replies Latest reply on Sep 22, 2016 3:47 PM by adamr RSS
    pyekula Explorer

    Thing GetProperties not working as expected



    We found issue that it was not possible to access dynamic data of 100+ different things using getProperties. Refer: Adding getproperties for 100+ things


    So we were using an work around to get dynamic data, following are the steps we did,


    1. Created one Generic Thing with property ThingName with Always data change set.

    2. Whenever their is change over property in any thing (in 100+ things), we updated ThingName of the thing which got updated.

    3. We mapped Generic Thing getProperties to Mashup.

    4. In Mashup, whenever getProperties triggers ServiceInvokeCompleted, we calling service which reads thing properties and provides to mashup.


    We hit roadblock in this approach also, after rigorous testing we found following issue,


    For example consider thingworx receives 5 thing updates in same millisec all things updating to ThingName Property in same milli sec. We are not receiving all the 5 thing names in getProperties we are getting only one ThingName, so in our case all 4 different thing data change are being missed in UI for dynamic data update without refresh.


    Please let us know how to receive all those 5 thingName in getproperties, if this not good approach let us know what will efficient approach to get the dynamic data update without refresh widget for 100+ different things for a dashboard.




      • Re: Thing GetProperties not working as expected
        adamr Creator

        Several questions:

        How would you be displaying values from 100+ things?  In a grid, list or other widget(s)?

        Is this version 7.2 where you are trying to us the property update push functions to see the data?

        OR what service are you using to get the properties?  I assume it would be a custom service?

        If it is in a dashboard you should only need to configure the mapping for a single thing on a gadget which would represent each thing? (Though with this volume of UI it will run slowly).

          • Re: Thing GetProperties not working as expected
            pyekula Explorer

            1. We created custom widget for display properties of 100+ things.

            2. Yes Thingworx 7.2.

            3. We have mapped getProperties serviceinvokecompleted event to a service which retrieves based ThingName Property in the Generic thing. This generic thing ThingName property is updated by all other 100+ things on data property change with Thing name which got update.

            4. It is not Thingworx Dashboard or we are not using any thingworx widget, we have created our own custom widget to solve UX issues in thingworx.