Docs

  • Channels Channels
  • Beams Beams
  • Developers
  • Support
  • Blog
  • Sign up
    • Search powered by Algolia
    • Sign in
    • Sign up
    • Channels
    • Getting started
      • SDK quick starts
        • JavaScript quick start
        • iOS quick start
        • Android quick start
        • Flutter quick start
        • React Native quick start
      • Use case quick starts
        • Javascript realtime chart
        • Javascript realtime user list
      • Debugging
    • Using channels
      • Client API overview
      • Connection
      • User authentication
      • Watchlist events
      • Functions
      • Authorized connections
      • Channels
      • Public channels
      • Private channels
      • Encrypted channels
      • Presence channels
      • Cache channels
      • Events
      • Global configuration
      • Websocket fallbacks
      • Device compatibility
    • Server api
      • Overview
      • HTTP API interaction
      • Webhooks
      • Authenticating users
      • Authorizing users
      • Sending events to authenticated users
      • Terminating user connections
      • Excluding event recipients
    • Channels libraries
      • API libraries
    • Pusher cli
      • Overview
      • Installation
      • Documentation
    • Miscellaneous
      • Clusters
      • Integrations
      • Resources
    • Library auth reference
      • Authentication and authorization signatures
      • HTTP API reference
      • Pusher Channels Protocol
      • Server library reference specification
      • Logging
    • Beams
    • Pusher lab

    Channels API libraries

    Sending and receiving messages using the Channels API requires libraries. In this section you’ll find libraries for a variety of platforms.

    Channels libraries are divided into 2 categories:

    • Client
      Client libraries predominantly consume messages using a WebSocket interface. Think of them as subscribers , although it’s possible to publish messages using Client Events.
    • Server
      Server libraries publish messages, request information using our HTTP API, authenticate users, authorize users, and handle Webhook calls. Think of them as publishers, although it’s possible to subscribe to messages using Client Event Webhooks.

    ∞ Official libraries

    The following libraries are updated and supported by Pusher.

    ∞ Client libraries

    Library Maintainer Docs Code
    Android (uses Java library) Pusher Docs pusher/pusher-websocket-android
    AngularJS (uses JavaScript library) Pusher Docs pusher/pusher-angular
    iOS: Swift and Objective-C Pusher Docs pusher/pusher-websocket-swift
    iOS: Objective-C Pusher Luke Redpath Docs pusher/libPusher
    Java Pusher Docs pusher/pusher-websocket-java
    JavaScript Pusher Docs pusher/pusher-js
    .NET Pusher Docs pusher/pusher-websocket-dotnet
    Unity Pusher Docs pusher/pusher-websocket-unity
    Flutter Pusher Docs pusher/pusher-channels-flutter
    React Native Pusher Docs pusher/pusher-websocket-react-native

    ∞ Official server libraries

    Library Maintainer Docs Code
    Go Pusher Docs pusher/pusher-http-go
    Java Pusher Docs pusher/pusher-http-java
    .NET Pusher Docs pusher/pusher-http-dotnet
    Node.js Pusher Docs pusher/pusher-http-node
    PHP Pusher Docs pusher/pusher-http-php
    Python Pusher Docs pusher/pusher-http-python
    Ruby Pusher Docs pusher/pusher-http-ruby
    Swift Pusher Docs pusher/pusher-http-swift

    Community libraries

    These libraries are built by members of the Pusher Channels Developer Community. They are potentially incomplete and are therefore not officially supported by Pusher. We recommend that you first reach out to the maintainer of the library before contacting Pusher support.

    ∞ ActionScript

    Library Type Maintainer Docs Code
    PusherAS Client rocketengine.io Docs rocketengineio/PusherAS
    Pusher-ActionScript-Library Client Shawn Makison smakinson/Pusher-ActionScript-Library

    ∞ Android

    also see Java

    Library Type Maintainer Docs Code
    titanium_pusher_android Client Ruben Fonseca Docs pusher/titanium_pusher_android

    ∞ Arduino

    Library Type Maintainer Docs Code
    ArduinoPusherClient Client Kevin Rohling Docs krohling/ArduinoPusherClient

    ∞ C++

    Library Type Maintainer Docs Code
    niv/pusher-websocket-cpp Client niv Docs niv/pusher-websocket-cpp
    pusherpp Server Mazen Abdulaziz Docs parallelfold/pusherpp
    BenPope/pusher-cpp Client and Server BenPope Docs BenPope/pusher-cpp

    ∞ Clojure

    Library Type Maintainer Docs Code
    clj-pusher Server Bartosz Blimke Docs bblimke/clj-pusher

    ∞ Coldfusion

    Library Type Maintainer Docs Code
    Pusher.cfc Server Ben Nadel Docs bennadel/Pusher.cfc

    ∞ Dart

    Library Type Maintainer Docs Code
    Dart Pusher Server Adao Junior Docs adaojunior/pusher

    ∞ Elixir

    Library Type Maintainer Docs Code
    Pushest Client Tomas Koutsky Docs stepnivlk/pushest

    ∞ Flutter

    Library Type Maintainer Docs Code
    flutter_pusher Client Genert Docs ninjasolutions/flutter_pusher
    pusher_client Client chinloyal Docs chinloyal/pusher_client

    ∞ Grails

    see Groovy

    ∞ Groovy

    Library Type Maintainer Docs Code
    groovy-libpusher Server zenuevo Docs zenuevo/groovy-libpusher
    pusher-plugin Server micpango Docs micpango/pusher-plugin

    ∞ Haskell

    Library Type Maintainer Docs Code
    pusher-http-haskell Server Will Sewell Docs WillSewell/pusher-http-haskell
    pusher-haskell Server Sid Raval Docs sidraval/pusher-haskell
    pusher-ws Client barrucadu Docs barrucadu/pusher-ws

    ∞ iOS

    also see Objective-C

    Library Type Maintainer Docs Code
    titanium_pusher_ios Client Ruben Fonseca Docs pusher/titanium_pusher_ios

    ∞ Java

    also see Android

    Library Type Maintainer Docs Code
    JavaPusherClient Client Justin Schultz Docs jmschultz/JavaPusherClient
    gae-java-libpusher Server Docs Docs marcbaechinger/gae-java-libpusher
    Play2Pusher Server Tindr Solutions Docs tindr/Play2Pusher
    Play-Pusher Server regisbamba Docs regisbamba/Play-Pusher

    ∞ JavaScript

    Library Type Maintainer Docs Code
    Laravel Echo Client Laravel Docs laravel/echo

    ∞ .NET

    Library Type Maintainer Docs Code
    pusher-universal Client Gateway Apps Docs gatewayapps/pusher-universal
    Pusher.NET Client Digital Creations AS Docs digitalcreations/Pusher.NET
    JDI PusherClient Client Jim Stabile Docs jdipusherclient.codeplex

    ∞ Node.js

    also see JavaScript

    Library Type Maintainer Docs Code
    pusher-node-client Client Abhishiv Saxena Docs abhishiv/pusher-node-client

    ∞ Objective-C

    also see iOS

    Library Type Maintainer Docs Code
    Bully Client Sam Soffes Docs samsoffes/bully

    ∞ Perl

    Library Type Maintainer Docs Code
    WWW::Pusher Server Squeeks Docs pusher/pusher-perl-server

    ∞ PHP

    Library Type Maintainer Docs Code
    Laravel Server Laravel Docs laravel/laravel
    ZfrPusher Server Michaël Gallego Docs zf-fr/zfr-pusher
    Channels PHP SDK for CodeIgniter Server Mattias Hedman Docs darkwhispering/pusher-for-codeigniter
    Symfony Server Pierre-Louis Launay Docs laupiFrpar/LopiPusherBundle
    Zend Framework 2 Server Michaël Gallego Docs zf-fr/zfr-pusher-module
    Yii PHP Framework Server nk913 Docs yiiframework/pusher
    Kohana 3 Server 2bj Docs 2bj/Pushko
    FuelPHP Server Ahmad Shah Docs lembubintik/pusherapp
    Drupal Server fabianderijk Docs drupal/pusher

    ∞ Python

    Library Type Maintainer Docs Code
    Pysher Client Nils Diefenbach Docs nlsdfnbch/Pysher

    ∞ React

    Library Type Maintainer Docs Code
    react-pusher-hoc Client Felix Wostal Docs fel1xw/react-pusher-hoc

    ∞ React Native

    ∞ QML

    Library Type Maintainer Docs Code
    qml-pusher Client Jason Barron Docs Cutehacks/qml-pusher

    ∞ Ruby

    Library Type Maintainer Docs Code
    pusher-websocket-ruby Client Logan Koester Docs pusher/pusher-websocket-ruby

    ∞ Scala

    Library Type Maintainer Docs Code
    dtaniwaki/akka-pusher Server dtaniwaki Docs dtaniwaki/akka-pusher

    ∞ Test/example applications

    For an open source example application built on libPusher, see the Github repo and the App Store

    For an open source example application built on pusher-websocket-java, see the Github repo

    ∞ Don’t see your platform?

    We’d love to see client and server libraries for other languages. Make sure to let us know if you come up with anything so we can highlight it here.

    Contents

    • Official libraries
      • Client libraries
    • Official server libraries
    • ActionScript
    • Android
    • Arduino
    • C++
    • Clojure
    • Coldfusion
    • Dart
    • Elixir
    • Flutter
    • Grails
    • Groovy
    • Haskell
    • iOS
    • Java
    • JavaScript
    • .NET
    • Node.js
    • Objective-C
    • Perl
    • PHP
    • Python
    • React
    • React Native
    • QML
    • Ruby
    • Scala
    • Test/example applications
    • Don’t see your platform?

    Spotted something that isn’t quite right? Create an issue on GitHub.

    Copyright © 2024 Pusher Ltd. All rights reserved.

    • Support,
    • Status
    • Follow Pusher on Twitter Twitter
    • Subscribe to Pusher’s channel on YouTube
    • Follow Pusher on LinkedIn
    • Follow Pusher on Github GitHub
    • Follow Pusher on Twitch Twitch
    • Follow Pusher on Discord Discord
    OSZAR »