Real-Time Messaging Overview¶
Messaging is an essential function of mobile and desktop applications. It can be used for a multitude of functions including chat, private messaging, system update broadcast, maintaining game scores, etc. The Backendless Messaging Service provides the API enabling the publish-subscribe message exchange pattern. With the pattern, one part of the code can subscribe to receive messages and another publishes messages. A message can be any data - Backendless supports messages of primitive or complex data types.
Backendless publish/subscribe system relies on the following concepts:
- channel - a logical medium "transporting" the messages.
- publisher - a program (or a part of it) which uses the Publishing API to send messages to a channel.
- subscriber - a program (or a part of it) which uses the Subscription API to receive messages from a channel.
Subscribers connect to a channel (or multiple channels) and messages are published into a channel. By default Backendless sends all messages published into a channel to all the subscribers of the channel. However, a subscription can include message filters, in this case, Backendless delivers only the messages matching the filter.