Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [milo-dev] Reg: Doubt in FindServersOnNetworkResponse() API of Milo

Hi Kevin,

After restarting my server, I am able to see only one entry. 

I am working  to access 4diac PLC from Milo. 
Through, FindServerOnNetwork() I have tried to get 4diac details. Even though 4diac has inbuilt open62541 server , FindServerOnNetwork() is not finding the open62541 server.  
Correct me if I am wrong. 

Please give me suggestions on how to access 4diac PLC from Milo.
What are the different ways are there to do this? 

Thanks,
Dhanasekar


On Fri, Jun 19, 2020 at 8:07 PM J Dhanasekar <jdhanasekar@xxxxxxxxxxxxxxxxxx> wrote:
As per your suggestion, I have changed my server Registration code like this

String[] myDiscoveryURLs =  new String[]{ "opc.tcp://10.1.61.200:12686/milo/discovery/"};

 and getting output like this, 


Servers=
[ServerOnNetwork{RecordId=1, ServerName=opc.tcp://localhost:4840-localhost, DiscoveryUrl=opc.tcp://localhost:12686/milo/discovery, ServerCapabilities=[NA]},
ServerOnNetwork{RecordId=3, ServerName=opc.tcp://localhost:4840-10-1-61-200, DiscoveryUrl=opc.tcp://10.1.61.200:12686/milo/discovery, ServerCapabilities=[NA]}]}


I am getting two records for a single server. I don't know why it is happening.  

In the meantime, I am running another Milo server on windows host and 4diac PLC OPC UA server. These are not enumerated by FindServerOnNetworks().
Please help me to get details of these two servers too. 


On Fri, Jun 19, 2020 at 7:19 PM Kevin Herron <kevinherron@xxxxxxxxx> wrote:
You must have been the one to register that server, so you should probably take a look at your own code.

On Jun 19, 2020, at 06:36, J Dhanasekar <jdhanasekar@xxxxxxxxxxxxxxxxxx> wrote:


I am seeing the word "localhost" and I don't know where it is pointing to. 
I am expecting the IP address or name of the host where the OPC UA server is running. 

Correct me if I am wrong.


On Fri, Jun 19, 2020 at 6:50 PM Kevin Herron <kevinherron@xxxxxxxxx> wrote:
Using “NA” seems to give you a result with a real server. Isn’t that what you want?


On Jun 19, 2020, at 05:43, J Dhanasekar <jdhanasekar@xxxxxxxxxxxxxxxxxx> wrote:


Sorry, it is a typo error. Below the corrected changes,

If I use serverCapabilityFilter = new String[]{"DA"};, I am receiving Servers=NULL.

LastCounterResetTime=DateTime{utcTime=132368633219396840, javaDate=Wed Jun 17 15:58:41 IST 2020}, Servers=null}

If I use serverCapabilityFilter = new String[]{"NA"};, I am receiving below output. 

Servers=[ServerOnNetwork{RecordId=1, ServerName=opc.tcp://localhost:4840-localhost, DiscoveryUrl=opc.tcp://localhost:12686/milo/discovery, ServerCapabilities=[NA]}]


On Fri, Jun 19, 2020 at 6:06 PM Kevin Herron <kevinherron@xxxxxxxxx> wrote:
Why is the "LDS" result different than before?

Isn't the result using "NA" showing a Milo server instance registered?

On Thu, Jun 18, 2020 at 11:12 PM J Dhanasekar <jdhanasekar@xxxxxxxxxxxxxxxxxx> wrote:
Kevin,

If I use serverCapabilityFilter = new String[]{"LDS"};, I am receiving Servers=NULL.

LastCounterResetTime=DateTime{utcTime=132368633219396840, javaDate=Wed Jun 17 15:58:41 IST 2020}, Servers=null}

If I use serverCapabilityFilter = new String[]{"NA"};, I am receiving below output. 

Servers=[ServerOnNetwork{RecordId=1, ServerName=opc.tcp://localhost:4840-localhost, DiscoveryUrl=opc.tcp://localhost:12686/milo/discovery, ServerCapabilities=[NA]}]


It seems only LDS is working properly with FindServerOnNetworks() api service. 
I do need to do extra coding to retrieve servers on Networks ?.

Thanks,
Dhanasekar

On Thu, Jun 18, 2020 at 10:28 PM Kevin Herron <kevinherron@xxxxxxxxx> wrote:
Using "DA" seems appropriate.

On Thu, Jun 18, 2020 at 9:44 AM J Dhanasekar <jdhanasekar@xxxxxxxxxxxxxxxxxx> wrote:
Ok..If I want to retrieve the OPC UA server running in my networks, I have to mention 'DA' in filters.. Am I correct ??

On Thursday, June 18, 2020, Kevin Herron <kevinherron@xxxxxxxxx> wrote:
> It looks like you specified a serverCapabilityFilter of "LDS", so this LDS is only returning other LDS servers it knows about, and that's only itself.
> On Thu, Jun 18, 2020 at 1:34 AM J Dhanasekar <jdhanasekar@xxxxxxxxxxxxxxxxxx> wrote:
>>
>> Hi Milo,
>>
>> I have implemented FindServerOnNetwork() like this,
>>
>> UInteger startingRecordId = UInteger.valueOf(0);
>> UInteger maxRecordsToReturn = UInteger.valueOf(0);
>> String[] serverCapabilityFilter = new String[]{"LDS"};
>>
>> UaStackClient stackClient = client.getStackClient();
>> client.connect().get();
>> RequestHeader reqHead = stackClient.newRequestHeader(
>> client.getSession().get().getAuthenticationToken()
>> );
>>
>> FindServersOnNetworkRequest myServOnNetReq = new FindServersOnNetworkRequest(reqHead,startingRecordId,maxRecordsToReturn,serverCapabilityFilter);
>> FindServersOnNetworkResponse myServOnNetRes= (FindServersOnNetworkResponse) stackClient.sendRequest(myServOnNetReq).get();
>>
>> After running the program, I am getting output like this,
>>
>> FindServersOnNetworkResponse{
>> ResponseHeader=
>> ResponseHeader
>> {
>> Timestamp=DateTime{utcTime=132368706172341250, javaDate=Wed Jun 17 18:00:17 IST 2020},
>> RequestHandle=4,
>> ServiceResult=StatusCode{name=Good, value=0x00000000, quality=good},
>> ServiceDiagnostics=null,
>> StringTable=null,
>> AdditionalHeader=ExtensionObject{encoded=ByteString{bytes=null}, encodingId=NodeId{ns=0, id=0}}},
>> LastCounterResetTime=DateTime{utcTime=132368633219396840, javaDate=Wed Jun 17 15:58:41 IST 2020},
>> Servers=[
>> ServerOnNetwork{RecordId=0, ServerName=LDS-quanta, DiscoveryUrl=opc.tcp://quanta:4840, ServerCapabilities=[LDS]},
>> ServerOnNetwork{RecordId=2, ServerName=UA Local Discovery Server on BLRB1DT166.VTPPL.COM, DiscoveryUrl=opc.tcp://BLRB1DT166.VTPPL.COM:4840, ServerCapabilities=[LDS]}
>> ]}
>>
>> As OPC 4 spec , FindServerOnNetwork() should  provide servers known to DiscoverServer. But I am getting only details about DiscoveryServer , not servers known to DiscoveryServer. 
>> </mail/u/0/s/?view=att&th=172c83616c5a3b28&attid=0.0.1&disp=emb&realattid=ii_kbkixcba0&zw&atsh=1>
>>
>>
>> Please correct me, If I misunderstood the concept. 
>> Or, Please help me to retrieve list of server from DiscoveryServer
>> Thanks,
>> Dhanasekar
>> _______________________________________________
>> milo-dev mailing list
>> milo-dev@xxxxxxxxxxx
>> To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/milo-dev
> _______________________________________________
milo-dev mailing list
milo-dev@xxxxxxxxxxx
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/milo-dev
_______________________________________________
milo-dev mailing list
milo-dev@xxxxxxxxxxx
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/milo-dev
_______________________________________________
milo-dev mailing list
milo-dev@xxxxxxxxxxx
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/milo-dev
_______________________________________________
milo-dev mailing list
milo-dev@xxxxxxxxxxx
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/milo-dev
_______________________________________________
milo-dev mailing list
milo-dev@xxxxxxxxxxx
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/milo-dev
_______________________________________________
milo-dev mailing list
milo-dev@xxxxxxxxxxx
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/milo-dev
_______________________________________________
milo-dev mailing list
milo-dev@xxxxxxxxxxx
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/milo-dev
_______________________________________________
milo-dev mailing list
milo-dev@xxxxxxxxxxx
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/milo-dev

Back to the top