8 Replies Latest reply on Jul 30, 2017 10:52 PM by afoo RSS
    afoo Newbie

    Binding Remote Thing

    How do you actually bind to a remote property? The only way I have successfully created a Remote Thing in Thingworx so far is by using the New Composer and selecting the appropriate channel and device, then selecting the properties and binding to new entity.

    I have tried the follow syntax to bind individual properties directly, with no success:

    • channel1.device1.propertyName
    • channel1_device1_propertyName

    Is my approach wrong? I'm using Kepware and New composer --> discovery for connection. But I hope to make it more automated by using service to create the Remote Thing.

    I also realised that when I try to detect remote properties under manage binding, it is empty when I create a new Remote Thing, but there are remote properties when I create via New Composer. So I must be missing a way to specify in the Remote Thing the respective device to point to. But I am not finding that option even when using the UI tool to create new Remote Thing.


    Help is greatly appreciated! I do believe I have been going in the wrong direction for a long time

      • Re: Binding Remote Thing
        anna Communicator

        Hi Alton Foo,

        When saying connection from Kepware to ThingWorx, as far as I know you could only bind Tags with "Discover" function in the Kepware Thing A(the one you configured in Kepware), and then you could bind it to a new Entity B, next step if you want to bind these Tags(Properties)to other Things C, just use Local bind to bind the existed Tag from B to C. I believe you could do the local  bound with manual or with scripting,  but I don't you could bind the remote Tags directly to a Thing(I mean if without Discover with the Kepware Thing A).

         

        Hope this helps,

         

        Br,

        Anna

        • Re: Binding Remote Thing
          carlesc Heavyweight Champ

          Hi Anna /Alton,

           

          Create remote bindings can be done on a Scripting way for sure, for instance on this thread Industrial Things Toolsets we where discussing how to create a Remote Binding with ThingWorx/Kepware

           

          Carles.

            • Re: Binding Remote Thing
              afoo Newbie

              Thanks so much for the reference Carles, it definitely gave me hope. But I still fail to get it working. I created a remote property named 'dc1Temp2' with propertyType INTEGER. I left everything else blank. Then I added the code.

               

              Below is my attempt:

               

              var aspects = {

                  "industrialDataType": "Short",

                  "tagAddress": "MyChannel.MyMachine.DC1_Temp2",

                  "scanRate": 1000,

                  "tagType": "Static",

                  "readOnly": "true"

              }

               

               

              var params = {

              propertyName: 'dc1Temp2' /* STRING */,

              pushThreshold: 0 /* NUMBER */,

              aspects: aspects /* JSON */,

              foldType: undefined /* STRING */,

              sourcePropertyName: undefined /* STRING */,

              timeout: 0 /* INTEGER */,

              pushType: 'VALUE' /* STRING */,

              cacheTime: undefined /* INTEGER */

              };

               

              me.SetRemotePropertyBinding(params);

               

               

              The code would work if the RemoteThing is already binded via New Composer --> discover.

              But if I use the same piece of code on a new RemoteThing, it doesn't work. I was hoping the tag address would be able to help it identify. But I realise that it probably isn't aware of the KepServerEx Thing (representing Kepware). How do I actually make the connection?

               

              Even using the UI to create a remote property, I believe it is possible too. I believe remote prop name works the same as the tagAddress property in aspects. But I must be connected first. The "connection" to the KepServerEx Thing is the missing puzzle I presume.

               

               

               

              I notice that after new composer binds the entity via "discover", you can see the remote property on clicking manage bindings.

              Whereas this is not the case when it isn't connected.

               

               

              Any clue on how to get it connected without using the "discover"? I was so excited when I saw the Thingworx 8 feature in the other discussion haha, but i believe it was there since 7.4 at least. This feeeling, so close, yet so far

              • Re: Binding Remote Thing
                afoo Newbie

                Just to close this. The answer is in Industrial Things Toolsets . Thanks Carles Coll for the reference. Hopefully this will be useful for others seeking to automate the connection.

              • Re: Binding Remote Thing
                anna Communicator

                Carles Coll,

                Yes I missed that post. Thanks for correcting me:)