2017-01-02 1 views
1

Ich versuche, einen Filter für ein Abonnement zu definieren, aber ich weiß nicht, wie das ExtensionObject erstellt wird, das benötigt wird. Es ist entweder ein ByteString oder ein XmlElement, dass ich vermisse, aber ich weiß nicht, wie oder woher man einen bekommt. Wenn ich mit einem ByteString das null gehe, wird es keine Verbindung zum Server herstellen.Wie erstellt man ein ExtensionObject zum Filtern in Milo OPCUA?

DataChangeFilter filter = new DataChangeFilter(DataChangeTrigger.StatusValue, 
      UInteger.valueOf(DeadbandType.Absolute.getValue()), 10.0); 

ExtensionObject eoFilter = new ExtensionObject(???, filter.getTypeId()); 

MonitoringParameters parameters = new MonitoringParameters(clientHandle, 500.0, eoFilter, uint(10), true); 

Was füge ich für "???" in meinem Code?

Vielen Dank!

Antwort

1

Verwenden Sie nicht den ExtensionObject Konstruktor. Verwenden Sie stattdessen die statische ExtensionObject.encode(...) und übergeben Sie Ihre DataChangeFilter.

+0

Vielen Dank! Es funktionierte. Ich habe total vermisst, dass DataChangeFilter eine UAStruktur war. – Hons

+0

Bitte markieren Sie die beantwortete Frage, wenn alles funktioniert :) –

Verwandte Themen