[英]Multiple node read in single request from client in open62541
任何人都可以告訴我在open62541中對服務器的單個請求中讀取多個節點的語法。
我一直在從open62541客戶端到服務器的UA_Client_readValueAttribute(client, UA_NODEID_STRING(1, "variable"), &value)
執行單個讀取請求。
您可以使用標准讀取服務:
UA_Client_Service_read(UA_Client *client, const UA_ReadRequest request)
請參閱: https : //github.com/open62541/open62541/blob/6c82b082c8a6c3b1faebc43387a1b0cb3eced051/include/ua_client.h#L203
例如:
UA_ReadRequest request;
UA_ReadRequest_init(&request);
UA_ReadValueId ids[2];
UA_ReadValueId_init(&ids[0]);
ids[0].attributeId = UA_ATTRIBUTEID_VALUE;
ids[0].nodeId = UA_NODEID_NUMERIC(0, UA_NS0ID_SERVER_NAMESPACEARRAY);
UA_ReadValueId_init(&ids[1]);
ids[1].attributeId = UA_ATTRIBUTEID_VALUE;
ids[1].nodeId = UA_NODEID_NUMERIC(0, UA_NS0ID_SERVER_STATUS);
// set here the nodes you want to read
request.nodesToRead = ids;
request.nodesToReadSize = 2;
UA_ReadResponse response = UA_Client_Service_read(client, request);
// do something with the response
Crosspost: https : //github.com/open62541/open62541/issues/1426
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.