Client notification of workflow complete

I can pretty much track workflow execution with the client (I am using C# client); the only thing I wish I had access to were the notifications of workflow instance start and stop (use case - for bookkeeping and cleanup purposes). For example, when workflow ends, I would like to archive records in a linked database (external activity). I could add a special task at the beginning and the end of the workflow to specifically address technical bookkeeping items; however, BPMN diagrams created by business analysts would be devoid of those steps - and would have to be consequently edited.

Would it be possible to assign a default job type (or allow assigning a custom type) to start and end events, so that a client could subscribe to those as well (just as it does for any other task/job type)?

@mostwired you can create a custom exporter for those two events types and use that exporter to have the logic to store those book keeping records into the database… I think that will be the cleanest solution.

Yes, but exporter will have to be implemented in Java, and since I’m using C#, I’d be hard-pressed to call it the cleanest solution :slight_smile: I’d like it to be client- and language-agnostic.

@mostwired it is clean architecturally speaking… but I get your point… it will be great to have language agnostic exporters… for now… you can maybe look into elastic search if you are using the elastic search exporter

We have as community project an hazelcast exporter, where we have also an C# endpoint. Unfortunately it is a bit out dated and I had no time to update it yet.

Would you use something like that?

You could also use a call activity which calls your business process and in the parent process you have your management services. Take a look at the documentation.

Greets
Chris

1 Like

Hi Chris,

Per Mauricio’s comments, I’ll use Elasticsearch exporter, as it will be maintained going forward thanks to Operate (and, fingers crossed, will one day catch up to the latest Elastic version). I use Elasticsearch .net and NEST, so querying it is easy via C#. I was more interested in a seamless C# integration and thinking that a client library can benefit from having “workflow completed” event exposed.