I've read through https://blogs.vmware.com/orchestrator/2013/01/how-to-deal-with-long-running-external-processes.html and the content makes sense. Based on whats there I want to see if the solution I'm considering would work or if there is a better way to implement this process.
I've got a long running process which is monitored by doing periodic polling, and when it's poll its fairly simple to get the status of every outstanding action in one call saving doing polling per instance of the long running process.
I've got a workflow which needs to invoke this long running process as part of its execution. When the workflow calls out to invoke the long running process I will register the id of the long running process and of the workflow in a configuration element.
This workflow will this sit waiting on a user interaction.
Behinds the scenes a separate scheduled workflow will periodically get the status of all long running processes and then correlate with info in the configuration element. It will then respond to the waiting user interactions with the results of the long running process.
Is there a better way to implement this kind of process, or is there anything I've missed about how orchestrator works which may prevent this from working?