Ingester

The Ingester service will chop the incoming message in small tasks and place them on the message bus, so they can be processed asynchronous

The service

The ingester receives messages sent by the Nexus partners and will chop them up in to single tasks. For example when a message is sent to all guardians in a group, the ingester will create a single message per guardian of the group. It will also format the message per guardian if any message templates are used.

The ingester will also generate a receipt object which contains all the receivers of a message. This receipt is used to check if alle recipients have received the message.

So when a message is sent to all guardians of a group, the ingester will check which guardians are linked to this group and create a single task for the guardian. If there are for example 10 guardians linked to the group it will also create a receipt with these 10 guardian id’s. This way the single messages can be processed independent and asynchronous, but using the receipt Nexus will always be able to determine if the complete message was processed.

NATS

Request/Reply

The ingester has no request/reply subjects

Consuming

subject description
message.v1.ingest It will consume incoming messages, and process them

Publishing

subject description
message.v1.prepared The chopped up messages will be published to this subject
message.v1.receipt The created receipt will be pulished to this subject
connect.v1.error When an error is thrown a message will be published on the error subject