Pusher Channels provides realtime communication between servers, apps and devices. Channels is used for notifications, chat, gaming, web-page updates, IoT, and many other systems requiring realtime communication.
When something happens in your system, it can update web-pages, apps and devices. When an event happens on an app, the app can notify all other apps and your system. For example, If the price of Bitcoin changes, your system could update the display of all open apps and web-pages. Or if Bob starts typing a message, his app could tell Alice's app to display "Bob is typing ...".
Pusher Channels has libraries for everything: web browsers, iOS and Android apps, PHP frameworks, cloud functions, bash scripts, IoT devices. Pusher Channels works everywhere because it uses WebSockets and HTTP, and provides fallbacks for devices that don't support WebSockets.
Pusher Channels has a publish/subscribe model. A mobile app interested in the current Bitcoin price can subscribe to the channel named
bitcoin. When the price of Bitcoin changes, your system can publish the new price to the channel named
bitcoin. All subscribers to the
bitcoin channel will receive the update.
You can publish sensitive data via private channels. Apps must get permission to subscribe to a private channel. For example, you can restrict channel
private-user-alice so that only Alice's apps can subscribe to it. For public data, you can use public channels.
Presence channels show who is online. Apps can use presence channels to show user lists with an "online/offline" status. When Bob's app subscribes to a presence channel, the app provides the user id
bob. Alice's app can subscribe to the same presence channel, then show Alice that Bob is online.
Pusher Channels tells you everything that's happening, so you can debug, analyze and record your application's activity. You can see every connection, publish, and subscribe. Realtime activity is shown in your Channels dashboard and can be sent to your system via webhooks. You can query the current connections and subscriptions via the API and libraries. Metrics are shown in your dashboard and can be exported to your Datadog or Librato account.