--- a/branches/FeatureBranches/refactorpayload/SparkplugB/Function Blocks/FB_Device/FB_DeviceMQTT/svnobj
+++ b/branches/FeatureBranches/refactorpayload/SparkplugB/Function Blocks/FB_Device/FB_DeviceMQTT/svnobj
@@ -1,4 +1,4 @@
-Gx_l='!0…jüoŒ-”Ìg‰<­8úSystem.StringL{6f9dac99-8de1-4efc-8465-68ac443b7d08}SpecialFuncL{0db3d7bb-cde0-4416-9a7b-ce49a0124323}NoneImplementationL{3b83b776-fb25-43b8-99f2-3c507c9143fc}TextDocument	L{f3878285-8e4f-490b-bb1b-9acbb7eb04db}
-TextLinesL{a5de0b0b-1cb5-4913-ac21-9d70293ec00d}Id
longTagText0// DCMD Topic Subscriber@_DCMD( xEnable := _DCMD_Enabled,D       eSubscribeQos := _DCMD_QoS,R       pbPayload := ADR( _DCMD_Message ),h       udiMaxPayloadSize := SIZEOF( _DCMD_Message ),’       mqttClient := Client, // We piggyback on the EoN client connectionT       wsTopicFilter := _DCMD_TopicFilter,6       xDone => _DCMD_Done,6       xBusy => _DCMD_Busy,:       xError => _DCMD_Error,J       eMQTTError => _DCMD_MQTTError,F       xReceived => _DCMD_Received,V       udiPayloadSize => _DCMD_PayloadSize,P       xSubscribeActive => _DCMD_Active,P       wsLastTopic => _DCMD_LastTopic ); LTerminateString( ADR( _DCMD_Message ),!J                 _DCMD_PayloadSize );"// Publisher#H_Publisher( xExecute := _PubExecute,$L            udiTimeOut := _PubTimeOut,%@            eQoS := _PublishQos,&T            xReDelivery := _PubRedelivery,'L            xRetain := _PublishRetain,(R            pbPayload := _PublishMessage,)d            udiPayloadSize := _PublishMessageSize,*œ            mqttClient := Client, // We piggyback on the EoN client connection+J            wsTopicName := _PubTopic,,<            xDone => _PubDone,-<            xBusy => _PubBusy,.@            xError => _PubError,/T            eMQTTError => _PubMQTTError );0@// Internal diagnosis           1Diag();2Interface3L{a9ed5b7e-75c5-4651-af16-d2c27e98cb94}4${attribute 'hide'}58FUNCTION_BLOCK FB_DeviceMQTT6VAR_IN_OUT7œ    Client : MQTT.MQTTClient; // EoN client connection => _pEoN^._MQTT._Client8END_VAR9VAR:(    // DCMD Subriber;\    _DCMD                : MQTT.MQTTSubscribe;<@    _DCMD_Enabled        : BOOL;=@    _DCMD_Done           : BOOL;>@    _DCMD_Busy           : BOOL;?@    _DCMD_Error          : BOOL;@Š    _DCMD_TopicFilter    : WSTRING(1024);         // the topic filterA°    _DCMD_Message        : ARRAY[0..255] OF BYTE; // For now only implement {"timestamp":1602284262173,"metrics":[{"name":"Node Control/Rebirth","timestamp":1602284262173,"dataType":"Boolean","value":true}],"seq":-1}BR    _DCMD_QoS            : MQTT.MQTT_QOS;C@    _DCMD_Active         : BOOL;DV    _DCMD_MQTTError      : MQTT.MQTT_ERROR;E@    _DCMD_Received       : BOOL;Fz    _DCMD_PayloadSize    : UDINT; // size of received messageG€    _DCMD_MaxPayloadSize : UDINT; // maximum receive buffer sizeH”    _DCMD_LastTopic      : WSTRING(GC_Sparkplug.supported_string_lengths);I’    _DCMD_Diag           : STRING := ''; // Diagnosis String for the DCMDJ@    // Publish MQTT messages    KV    _Publisher          : MQTT.MQTTPublish;LŠ    _PubExecute         : BOOL;              // Enables the publisherMÎ    _PubTimeOut         : UDINT := 10000000; // Timeout in microseconds, default set at 10000000 = 10s Nü    _PubRedelivery      : BOOL;              //TRUE: When packet got already send and now should got resend, FALSE: First timeOÆ    _PubDone            : BOOL;              // TRUE if the message has been successfully publishedP²    _PubBusy            : BOOL;              // TRUE while the message is being publishedQ    _PubError           : BOOL;              // TRUE if an error occuredRz    _PubTopic           : WSTRING(1024);     // Message TopicST    _PublishMessage     : POINTER TO BYTE;T@    _PublishMessageSize : UDINT;U|    _PublishQos         : MQTT.MQTT_QOS := MQTT.MQTT_QOS.QoS0;V¤    _PublishRetain      : BOOL; // TRUE: Stores the message on server permanently WT    _PubMQTTError       : MQTT.MQTT_ERROR;Xš    _PubDiag            : STRING := ''; // Diagnosis String for the publisherYD    //these are for GetDCMDMessageZj    _DCMDDecoderInst       : FB_PayloadSimpleDecoder;[b    _DCMDDecoderInstMetric : FB_SparkplugBoolean;\D    _DCMDDecoderInstList   : List;]"UniqueIdGenerator^521_POULevel`L{8e575c5b-1d37-49c6-941b-5c0ec7874787}aStandardb ChildObjectGuidsc8System.Collections.ArrayListd,AddAttributeSubsequenteboolÐÐ-ÐÐ	E
+Gx_lˆ'!0…jüo×Yh˜‰<­8úSystem.StringL{6f9dac99-8de1-4efc-8465-68ac443b7d08}SpecialFuncL{0db3d7bb-cde0-4416-9a7b-ce49a0124323}NoneImplementationL{3b83b776-fb25-43b8-99f2-3c507c9143fc}TextDocument	L{f3878285-8e4f-490b-bb1b-9acbb7eb04db}
+TextLinesL{a5de0b0b-1cb5-4913-ac21-9d70293ec00d}Id
longTagText0// DCMD Topic Subscriber@_DCMD( xEnable := _DCMD_Enabled,D       eSubscribeQos := _DCMD_QoS,R       pbPayload := ADR( _DCMD_Message ),h       udiMaxPayloadSize := SIZEOF( _DCMD_Message ),’       mqttClient := Client, // We piggyback on the EoN client connectionT       wsTopicFilter := _DCMD_TopicFilter,6       xDone => _DCMD_Done,6       xBusy => _DCMD_Busy,:       xError => _DCMD_Error,J       eMQTTError => _DCMD_MQTTError,F       xReceived => _DCMD_Received,V       udiPayloadSize => _DCMD_PayloadSize,P       xSubscribeActive => _DCMD_Active,P       wsLastTopic => _DCMD_LastTopic ); LTerminateString( ADR( _DCMD_Message ),!J                 _DCMD_PayloadSize );"// Publisher#H_Publisher( xExecute := _PubExecute,$L            udiTimeOut := _PubTimeOut,%@            eQoS := _PublishQos,&T            xReDelivery := _PubRedelivery,'L            xRetain := _PublishRetain,(R            pbPayload := _PublishMessage,)d            udiPayloadSize := _PublishMessageSize,*œ            mqttClient := Client, // We piggyback on the EoN client connection+J            wsTopicName := _PubTopic,,<            xDone => _PubDone,-<            xBusy => _PubBusy,.@            xError => _PubError,/T            eMQTTError => _PubMQTTError );0@// Internal diagnosis           1Diag();2Interface3L{a9ed5b7e-75c5-4651-af16-d2c27e98cb94}4${attribute 'hide'}58FUNCTION_BLOCK FB_DeviceMQTT6VAR_IN_OUT7œ    Client : MQTT.MQTTClient; // EoN client connection => _pEoN^._MQTT._Client8END_VAR9VAR:(    // DCMD Subriber;\    _DCMD                : MQTT.MQTTSubscribe;<@    _DCMD_Enabled        : BOOL;=@    _DCMD_Done           : BOOL;>@    _DCMD_Busy           : BOOL;?@    _DCMD_Error          : BOOL;@Š    _DCMD_TopicFilter    : WSTRING(1024);         // the topic filterA°    _DCMD_Message        : ARRAY[0..255] OF BYTE; // For now only implement {"timestamp":1602284262173,"metrics":[{"name":"Node Control/Rebirth","timestamp":1602284262173,"dataType":"Boolean","value":true}],"seq":-1}BR    _DCMD_QoS            : MQTT.MQTT_QOS;C@    _DCMD_Active         : BOOL;DV    _DCMD_MQTTError      : MQTT.MQTT_ERROR;E@    _DCMD_Received       : BOOL;Fz    _DCMD_PayloadSize    : UDINT; // size of received messageG€    _DCMD_MaxPayloadSize : UDINT; // maximum receive buffer sizeH”    _DCMD_LastTopic      : WSTRING(GC_Sparkplug.supported_string_lengths);I’    _DCMD_Diag           : STRING := ''; // Diagnosis String for the DCMDJ@    // Publish MQTT messages    KV    _Publisher          : MQTT.MQTTPublish;LŠ    _PubExecute         : BOOL;              // Enables the publisherMÎ    _PubTimeOut         : UDINT := 10000000; // Timeout in microseconds, default set at 10000000 = 10s Nü    _PubRedelivery      : BOOL;              //TRUE: When packet got already send and now should got resend, FALSE: First timeOÆ    _PubDone            : BOOL;              // TRUE if the message has been successfully publishedP²    _PubBusy            : BOOL;              // TRUE while the message is being publishedQ    _PubError           : BOOL;              // TRUE if an error occuredRz    _PubTopic           : WSTRING(1024);     // Message TopicST    _PublishMessage     : POINTER TO BYTE;T@    _PublishMessageSize : UDINT;U|    _PublishQos         : MQTT.MQTT_QOS := MQTT.MQTT_QOS.QoS0;V¤    _PublishRetain      : BOOL; // TRUE: Stores the message on server permanently WT    _PubMQTTError       : MQTT.MQTT_ERROR;Xš    _PubDiag            : STRING := ''; // Diagnosis String for the publisherYD    //these are for GetDCMDMessageZj    _DCMDDecoderInst       : FB_PayloadSimpleDecoder;[¬    _DCMDDecoderInstMetric : FB_RemoteMetric := (_dataType := MetricDataType.Boolean);\D    _DCMDDecoderInstList   : List;]"UniqueIdGenerator^521_POULevel`L{8e575c5b-1d37-49c6-941b-5c0ec7874787}aStandardb ChildObjectGuidsc8System.Collections.ArrayListd,AddAttributeSubsequenteboolÐÐ-ÐÐ	E
 $ÐÐ
­çÚÐ-ÐÐ
­èÚÐ-ÐÐ
­éÚÐ-ÐÐ
­êÚÐ-ÐÐ
­ëÚÐ-ÐÐ
­ìÚÐ-ÐÐ
­íÚÐ-ÐÐ
­îÚÐ-ÐÐ
­ïÚÐ-ÐÐ
­ðÚÐ-ÐÐ
­ñÚÐ-ÐÐ
­òÚÐ-ÐÐ
­óÚÐ-ÐÐ
­ôÚÐ-ÐÐ
­õÚÐ-ÐÐ
­öÚÐ-ÐÐ
­÷ÚÐ- ÐÐ
­øÚÐ-!ÐÐ
­ùÚÐ-ÐÐ
­úÚÐ-"ÐÐ
­ûÚÐ-#ÐÐ
­üÚÐ-$ÐÐ
­ýÚÐ-%ÐÐ
­þÚÐ-&ÐÐ
­ÿÚÐ-'ÐÐ
­ÚÐ-(ÐÐ
­ÚÐ-)ÐÐ
­ÚÐ-*ÐÐ
­ÚÐ-+ÐÐ
­ÚÐ-,ÐÐ
­ÚÐ--ÐÐ
­ÚÐ-.ÐÐ
­ÚÐ-/ÐÐ
­ÚÐ-ÐÐ
­	ÚÐ-0ÐÐ
­ƒÚÐ-1Ð23Ð	E
 *ÐÐ
­¾ÚÐ-4ÐÐ
­¿ÚÐ-5ÐÐ
­ÀÚÐ-6ÐÐ
­ÁÚÐ-7ÐÐ
­ÂÚÐ-8ÐÐ
­ÃÚÐ-9ÐÐ
­ÄÚÐ-:ÐÐ
­ÅÚÐ-;ÐÐ
­ÆÚÐ-<ÐÐ
­ÇÚÐ-=ÐÐ
­ÈÚÐ->ÐÐ
­ÉÚÐ-?ÐÐ
­ÊÚÐ-@ÐÐ
­ËÚÐ-AÐÐ
­ÌÚÐ-BÐÐ
­ÍÚÐ-CÐÐ
­ÎÚÐ-DÐÐ
­ÏÚÐ-EÐÐ
­ÐÚÐ-FÐÐ
­ÑÚÐ-GÐÐ
­ÒÚÐ-HÐÐ
­ÓÚÐ-IÐÐ
­ÔÚÐ-JÐÐ
­ÕÚÐ-KÐÐ
­ÖÚÐ-LÐÐ
­×ÚÐ-MÐÐ
­ØÚÐ-NÐÐ
­ÙÚÐ-OÐÐ
­ÚÚÐ-PÐÐ
­ÛÚÐ-QÐÐ
­ÜÚÐ-RÐÐ
­ÝÚÐ-SÐÐ
­ÞÚÐ-TÐÐ
­ßÚÐ-UÐÐ
­àÚÐ-VÐÐ
­áÚÐ-WÐÐ
­âÚÐ-XÐÐ
­ãÚÐ-YÐÐ
­äÚÐ-ZÐÐ
­åÚÐ-[ÐÐ
­æÚÐ-\ÐÐ
­ÚÐ-8Ð]-^Ð_`-abcÐde­
\ No newline at end of file