Thanks for posting this idea!!
From your description, you need to store the state of the overall workflow in order to proceed logically.
'
The easiest way to do this would be by chaining jobs as per this tutorial:
This is the best solution we have now and I'm curious if this is sufficient and if not, what problems does this approach have?
'
If you reaaaaally want to use the notification service, then you will need to store the state and check if the conditions have been at each stage or regularly. Here is a technique that is quite close to what you could do:
State is stored in the database. It is checked regularly to see if conditions are met. If they are met, then the next step in the process goes on.
Chaining jobs only works if there is continuous processing and/or one logical controlling process.
I can think of a couple of scenarios where it would be interesting to have multiple independent notifications trigger a workspace.
We have a lot of distributed production/worksharing. So a project could have tasks divided among different groups (in different Countries) and task D might require tasks A,B and C to be accomplished.
Right now we're coordinating in an online dashboard, and I manually trigger task D when I see all prerequisites are available.
Thanks for your comment, and sorry for responding so late.
Using a master workspace with jobsubmitters requires me to design that master workspace for a specific server environment (and by the nature of the FMEServerJobSubmitter wizzard requires me to be connected to that environment).
I would like to create an parametered deploy package based on the relations I discover. Ofcourse preferably in the new 'project format', but alternatively with a workspace filled with HTTP-callers creating notifications / subscriptions and uploading the workspaces.
New for FME Server 2019.0 is the Automations feature, and within it, a tool to Merge data streams together – you can effectively use this tool as an "AND".
For example, in the workflow below, I wait for a technician to upload file to a directory that FME Server is watching. Once that event occurs, it triggers two independent workspaces to run (these will run in parallel if I have enough available FME Engines) – the 'Merge' action waits until both workspaces are complete then sends an email to let me know updates are complete.
'
Note: Screenshot taken with FME Server 2019.0 beta Build 19224.
I encourage you to download the latest FME Server 2019.0 beta and see if this is able to solve workspace chaining woes! We are very keen on feedback to improve this experience, so please get in touch with our Support Team if you have more questions or suggestions regarding the workflow.
---
Please note that this feature is currently included with the beta version of FME Server and its functionality and appearance are subject to change as the product continues to evolve before the official release.
Should this feature or its implementation not address your concerns, related to this Idea posting, please let us know by leaving a comment.
As with all beta features and beta versions of our software, they are not considered production-safe and should be incorporated into your workflows with consideration and testing.
Note: FME Server 2019.0 was released on April 2 2019. This idea status marked as Released.