diff --git a/LibOneM2M/OneM2M_Functions.ttcn b/LibOneM2M/OneM2M_Functions.ttcn index 90ea0d6482c08dbf931a2f1a5af9c8e78aff706f..3a4899a8350f67a620c68a992bd2357cea0dc76d 100644 --- a/LibOneM2M/OneM2M_Functions.ttcn +++ b/LibOneM2M/OneM2M_Functions.ttcn @@ -5629,7 +5629,7 @@ module OneM2M_Functions { * @param data Corresponding information for the correct execution of the given action * @verdict */ - function f_sendAcPrimitive(in charstring p_event, in integer p_resourceIndex) runs on Tester { + function f_sendAcPrimitive(in charstring p_event, in integer p_resourceIndex, template (omit) XSD.ID p_originator := omit) runs on Tester { var XSD.ID v_aeResourceAddress; var charstring v_spRelativeAeIdForMqtt; @@ -5675,7 +5675,7 @@ module OneM2M_Functions { } } case ("MqttSetDefaultTopicToNotRegistration") { - acPort.send(AcRequestPrimitive:{p_event, {charstring := int2str(p_resourceIndex)}}); + acPort.send(AcRequestPrimitive:{p_event, {charstring := oct2str(unichar2oct(p_originator))}}); } case ("MqttSetDefaultTopicToRegistration") { acPort.send(AcRequestPrimitive:{p_event, {charstring := int2str(p_resourceIndex)}}); @@ -6010,13 +6010,17 @@ module OneM2M_Functions { if(ispresent(p_msgOut.primitive.requestPrimitive.resourceType)) { if((valueof(p_msgOut.primitive.requestPrimitive.resourceType) != int2) and (valueof(p_msgOut.primitive.requestPrimitive.resourceType) != int16)){ //Modify default topic to publish a non-registration message - f_sendAcPrimitive("MqttSetDefaultTopicToNotRegistration", -1); + f_sendAcPrimitive("MqttSetDefaultTopicToNotRegistration", -1, valueof(p_msgOut.primitive.requestPrimitive.from_)); vc_myInterfaces[enum2int(p_interfaceIds)].myPort.send(p_msgOut); f_sendAcPrimitive("MqttSetDefaultTopicToRegistration", -1); return; - } //else { - //f_sendAcPrimitive("MqttSetDefaultTopicToRegistration", -1); - //} + } + } else {//RETRIEVE - UPDATE - DELETE - NOTIFY + //Modify default topic to publish a non-registration message + f_sendAcPrimitive("MqttSetDefaultTopicToNotRegistration", -1, valueof(p_msgOut.primitive.requestPrimitive.from_)); + vc_myInterfaces[enum2int(p_interfaceIds)].myPort.send(p_msgOut); + f_sendAcPrimitive("MqttSetDefaultTopicToRegistration", -1); + return; } } }