eCEBSeCEBS Docs
Signal flows

The flow wizard

The eight steps that turn an empty flow into a publishable configuration.

The wizard walks the eight decisions a flow needs, in the order they depend on one another. You can move between steps freely — the order is a recommendation, not a lock — but a step that is unfinished will say so, and publishing is refused until all of them are settled.

The eight steps

Name and claim

Name the flow and declare what it is responsible for. This is where the starting words or the pattern are actually entered, having chosen the claim type at creation.

Unfinished until: the flow has a name and says which messages it answers.

Source

Choose the channel signals arrive on, and where they are stored — a DHIS2 program and a program stage.

Unfinished until: a program and a stage are chosen.

Identity

Decide how a reporter is recognised and verified: the tracked entity attribute holding the phone number, the organisation unit to search beneath, and the accepted phone number formats.

Unfinished until: a phone attribute, a search root, and at least one format are set.

Grammar

Define the message shape the flow accepts and how it is parsed, including the option set the signal codes come from and the name of the token that carries the code.

Unfinished until: an option set is chosen and the code token is named.

Mapping

Map parsed values onto DHIS2 data elements and organisation units.

Unfinished until: every compulsory data element has a source.

Replies

Write the confirmations and errors sent back to the reporter.

Unfinished until: both the accepted and the unknown-code replies are written.

Recipients

Choose who is alerted when the flow raises a signal.

Unfinished until: there is at least one rule and an alert message.

Test and publish

Run a test signal end to end, then make the flow live.

Order of dependencies

Three steps depend on earlier ones, which is why the order is what it is.

  • Grammar needs the option set before signal codes can be curated, so the Codes tab stays empty until Grammar is settled.
  • Mapping needs the program stage chosen in Source before it knows which data elements exist.
  • Identity needs the search root before phone lookups can resolve to a reporter.

Save as you go

Progress is saved against the flow, not held in the browser. The workspace shows when there are unsaved changes; save before leaving, because publishing is refused while any remain.

Reading the blocked messages

A step that is not finished says exactly what is missing rather than only that something is. "Every compulsory data element needs a source" means the Mapping step has a required data element with nothing mapped to it — not that mapping is broken in general.

The Test and publish step lists every unfinished step at once, which makes it the fastest way to see how far from publishable a flow is.

Next

Once Grammar is settled, curate the signal codes in Codes and families.

On this page