Hi guys,
I need to send an Signal Event by Rest. there are many process engine that need catch the event. I want send broadcast signal (without execution). Is it possible?
In Java I can do it with this snippet:
// broadcast signal
runtimeService
.createSignalEvent(“signalName”)
.setVariables(variables)
.send();
Thanks
Luca
Hi Luca,
That is not implemented yet, see https://app.camunda.com/jira/browse/CAM-4099.
Cheers,
Thorben
@lsantaniello as à work around you can create a small process with a message start event that you capture a message and resend it as a signal.
Yes, I already make this process in order to test my flow but Into my scenario I can’t create a new process. What is the best practice? Why this Rest Service doesn’t exist?
Thanks
The other way is to not use Signals and just use Messages. In the Camunda engine, the Messages can be used to accomplish the same things as Signals. You can correlate Messages to Many instances and processes.
The Message is not a brodcast communication. Right?
A Message can be used to “broadcast”. Its just the way the engine was built. It can can be broadcasted to many process instances.
2 Likes
Have you a example scenario to show it?
Thanks
Here is a example executing using a expression: ${execution.getProcessEngineServices().getRuntimeService().createMessageCorrelation("work").correlateWithResult()}
Doc: RuntimeService (camunda BPM Javadocs 7.6.13-ee) RuntimeService (camunda BPM Javadocs 7.6.13-ee)
Here is a example using scripts/javascript where a event is received and then re-correlated based on the “Correlate With Process…” task: