Receiving plug-in does not work

We are developing a plug-in using XPP + 2019R2.

When processing is performed according to the image in the attached file, the receiving plug-in does not receive the message thereafter.

There are three questions:

(a) Is this movement a specification of MIP SDK?

(b) If (a) is yes, is it possible to change the maximum processing time?

(c) Is it possible to confirm that this event has occurred with a log file or the like?

------------------------------------------

Sample Code,

■MessageSender (exe)

var msgKind = “testMsg”;

MessageCommunicationManager.Start(EnvironmentManager.Instance.MasterSite.ServerId);

var _messageCommunication = MessageCommunicationManager.Get(EnvironmentManager.Instance.MasterSite.ServerId);

_messageCommunication.TransmitMessage(

new VideoOS.Platform.Messaging.Message(msgKind)

{

    Data = "test"

}

, null, null, null);

■MessageReciever(MIP Server Plugin)

MessageCommunicationManager.Start(EnvironmentManager.Instance.MasterSite.ServerId);

_messageCommunication = MessageCommunicationManager.Get(EnvironmentManager.Instance.MasterSite.ServerId);

_registerCommunicationFilterObjects.Add(

_messageCommunication.RegisterCommunicationFilter(

FuncitonMsgReceiver, new CommunicationIdFilter(messageId: “testMsg”)));

public object FuncitonMsgReceiver(VideoOS.Platform.Messaging.Message message, FQID sender, FQID related)

{

try

{

    Thread.Sleep(300 \* 1000);

}

catch (Exception e)

{

}

return null;

}

Please run the Chat sample, does the unmodified sample work or do you see a similar issue?

If the sample works please try to compare your code with that of the sample, it might reveal something incorrect in your current code. Hopefully it will lead you to a solution.

Dear Bo-san,​

We tried the chat sample. But the same problem occurred. Is there a way to check the cause of the problem in the error log etc.?

A 300 seconds sleep in the handler will cause MessageCommunication to fails and once this happens the Chat sample will not work either.

Please make sure if you have time consuming tasks do not do them in the handler but spawn a new thread or similar.

Milestone will do a deeper investigation to see whether resume functionality or similar can be improved, for now make sure to do your design so that the handler is quickly released.

Milestone Development tested this issue with the Chat sample (introducing the five-minute delay in reception of first chat message) and the sample keeps working fine. Also tested with having the delay in a recipient in the Event Server (you wrote MIP Server plugin for the part that is doing the delay) and although messages sent during the sleep is lost on the server as soon as the sleep is gone any messages sent after that is picked up correctly again. In addition, messages between clients are working fine throughout the sleep and after. Milestone have not been able to reproduce the symptom.

-–

Please review your design and ensure that you do not spend more time on the handler than absolutely necessary.

​Dear, Rie-san

I can’t fully understand the difference between the first and second responses.

Please tell me how you modified the sample code.

We introduced a 5 minutes sleep in the handler. That is our understanding you did in your plugin.