Skip to main content
1-Visitor
July 27, 2017
Solved

Binding Remote Thing

  • July 27, 2017
  • 3 replies
  • 8604 views

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

Best answer by CarlesColl

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.

3 replies

14-Alexandrite
July 27, 2017

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

1-Visitor
July 27, 2017

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.

afoo1-VisitorAuthor
1-Visitor
July 27, 2017

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

1-Visitor
July 27, 2017

Hi Alton,

Don't desperate, for sure you can. I can't be much help here, as we still are on TW 6.5.13 and Kepware 6.0.1, but we are doing everything programatically not using Composer at all.

Carles.

14-Alexandrite
July 27, 2017

Carles Coll​,

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