Ingester
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 |