WebSockets with Pusher

Pusher Channels is a hosted WebSockets solution for building powerful realtime interactive apps. We’ve solved complex realtime infrastructure so you don’t have to. Whether you have 5 concurrent connections or 1 million, our infrastructure scales with you.

What can you build?

Chat

From group chat to private realtime messaging, build complex features like ephemeral chat, encrypted messages, online presence and typing indicators for supercharged engagement

Dashboards

Continuously stream data in realtime on your user interface, from sophisticated dashboards to single in-app charts and graphs which dynamically visualize complex information for easy data management and reporting

Collaboration

Create engaging interactive tools for remote working, e-learning and other virtual workspaces. Give visibility on knowledge-work with realtime comment feeds or live text collaboration for multiple users on one document

Gaming

Synchronize game state between players by leveraging our low-latency network to build multiplayer game sync, enabling seamless experiences across multiple devices, and add interactive features to your apps for immersive and connected gaming

Realtime Maps

Build routing, navigation and dynamic location apps to keep users up to date with live geolocation data on what is happening around them. Display the moving location of any asset on a live map or even create geofences to trigger alerts

Live results

Enhance your platform and keep users up to date by displaying the live status of anything, including match scores, odds updates, election results and polls.

See what other developers are building with Channels

Simple to get started

Integrate Pusher Channels in your app quickly and securely with any of our 40+ SDKs. Our library of over 200 tutorials and first class documentation will help you get up and running with WebSockets today.

Publish

pusher->trigger('my-channel', 'my-event', [

'message' => 'hello world'

]);

pusher->trigger('my-channel', 'my-event', [

'message' => 'hello world'

]);

Subscribe

var channel = pusher.subscribe('my-channel');

channel.bind('my-event', function(data) {

alert('Received my-event with message: ' + data.message);

});

var channel = pusher.subscribe('my-channel');

channel.bind('my-event', function(data) {

alert('Received my-event with message: ' + data.message);

});

We love developers

With 40+ libraries, we make it easy build realtime features using WebSockets, whatever your stack

Get started for free