Streaming API Message Reliability and Acknowledgement

How does the Salesforce streaming API ensure message reliability? I understand you can replay events from any replay id within the retention period, but this does not guarantee message delivery.

CometD supports message reliability through the acknowledgement extension but this does not appear to be supported by Salesforce. Anyone aware of a way to guarantee delivery or acknowledge message receipt to the server?

Answer

Since the concept of Platform Events relies on publishing to an Event Bus, you can only guarantee that the message is posted to said bus, but cannot guarantee that whoever is listening for events in the Bus actually receives it (at least not in a standard way that I know of).

To guarantee message posting to the Event Bus, you could create a trigger / process builder that subscribes to said event, this way when said automation listens for the event you could say it was posted successfully since you have a subscriber that did receive it.

Attribution
Source : Link , Question Author : ogoodwin , Answer Author : jonathanwiesel

Leave a Comment