Scenario:
- Request to approve comes in as a message on a bus (rapidMQ)
- Subscriber reads message and kicks off workflow if required
- Workflow is state machine workflow which starts off as Unassigned
- Unassigned item is added to a work item queue
- User assigns item to himself
- Workflow continues -> moves to assigned
- User is prompted to approve
- User approves/declines
- Workflow continues -> Item is updated and transitions to Approved/Declined. Messages sent out so further processing can occur.
I want to use rapidMQ as my messaging bus, I will be using web api and wcf as well. I want everything to be controlled via the message bus, so user approval/declining/assigning will result in a message on the bus, which workflow must pick up and action.
Is it possible to use workflow foundation with an mvc front end and have it respond to a message bus? i.e. workflow must place messages on a bus and read message from a bus and transition accordingly?
Please can you point me in the right direction? I am open to using another workflow solution if that will suit my needs better.
You first have to solve your workflow hosting situation. You might be able to host in mvc, but you won't be happy with it. Usually the host is a windows service exposing a WCF endpoint for an entry point into the workflow. After you work out hosting you can address messaging and bus.