Hello Joao,
we had the same challenge in our environment and we also used event sending. But the problem ist, that in our environment it did not work reliable. So we opened a ticket at broadcom. 1/3 of the events got lost. The other 2/3 worked properly. Maybe it is just because of our architecture, but I think that there ist a general problem.
Anyway. I can tell you how we set it up:
Parentprocess:
This is looped:
In pre-execution generating a random number (EventId) as an event-identifier for the subprocess and store it in an array. Because of "N"
In initializing detached subprocess: Giving it that EventId[N]
This is also looped:
Event-Monitoring operator getting configured with a source and a destination. E.G. "Parent"+Process.EventId[N]; and "Child"+Process.EventId[N];
Detached Child-Process:
Event-Sending-Operator is getting configured the same. (Not looped because it's one of those detached subs) Here you can configure how long an event is alive. You need to put that number higher, than the delay of the loop in the parent is expected. E.G. The parent is listening for 10 events and there is a duration of 20seconds configured --> it needs 200 seconds to listen for every event. So in worst case it needs 200 seconds till your event got listened (when parent is at N+1) and your event is N.
I try to attach our example of eventsending. Maybe it's a bit complicated at the first sight.