|
@@ -46,7 +46,9 @@ addPubSubConnection(UA_Server *server, UA_String *transportProfile,
|
|
|
connectionConfig.enabled = UA_TRUE;
|
|
|
UA_Variant_setScalar(&connectionConfig.address, networkAddressUrl,
|
|
|
&UA_TYPES[UA_TYPES_NETWORKADDRESSURLDATATYPE]);
|
|
|
- connectionConfig.publisherId.numeric = UA_UInt32_random();
|
|
|
+ /* Changed to static publisherId from random generation to identify
|
|
|
+ * the publisher on Subscriber side */
|
|
|
+ connectionConfig.publisherId.numeric = 2234;
|
|
|
UA_Server_addPubSubConnection(server, &connectionConfig, &connectionIdent);
|
|
|
}
|
|
|
|
|
@@ -106,11 +108,23 @@ addWriterGroup(UA_Server *server) {
|
|
|
writerGroupConfig.enabled = UA_FALSE;
|
|
|
writerGroupConfig.writerGroupId = 100;
|
|
|
writerGroupConfig.encodingMimeType = UA_PUBSUB_ENCODING_UADP;
|
|
|
+ writerGroupConfig.messageSettings.encoding = UA_EXTENSIONOBJECT_DECODED;
|
|
|
+ writerGroupConfig.messageSettings.content.decoded.type = &UA_TYPES[UA_TYPES_UADPWRITERGROUPMESSAGEDATATYPE];
|
|
|
/* The configuration flags for the messages are encapsulated inside the
|
|
|
* message- and transport settings extension objects. These extension
|
|
|
* objects are defined by the standard. e.g.
|
|
|
* UadpWriterGroupMessageDataType */
|
|
|
+ UA_UadpWriterGroupMessageDataType *writerGroupMessage = UA_UadpWriterGroupMessageDataType_new();
|
|
|
+ /* Change message settings of writerGroup to send PublisherId,
|
|
|
+ * WriterGroupId in GroupHeader and DataSetWriterId in PayloadHeader
|
|
|
+ * of NetworkMessage */
|
|
|
+ writerGroupMessage->networkMessageContentMask = (UA_UadpNetworkMessageContentMask)(UA_UADPNETWORKMESSAGECONTENTMASK_PUBLISHERID |
|
|
|
+ (UA_UadpNetworkMessageContentMask)UA_UADPNETWORKMESSAGECONTENTMASK_GROUPHEADER |
|
|
|
+ (UA_UadpNetworkMessageContentMask)UA_UADPNETWORKMESSAGECONTENTMASK_WRITERGROUPID |
|
|
|
+ (UA_UadpNetworkMessageContentMask)UA_UADPNETWORKMESSAGECONTENTMASK_PAYLOADHEADER);
|
|
|
+ writerGroupConfig.messageSettings.content.decoded.data = writerGroupMessage;
|
|
|
UA_Server_addWriterGroup(server, connectionIdent, &writerGroupConfig, &writerGroupIdent);
|
|
|
+ UA_UadpWriterGroupMessageDataType_delete(writerGroupMessage);
|
|
|
}
|
|
|
|
|
|
/**
|