Permalink
Switch branches/tags
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
154 lines (104 sloc) 3.77 KB

autopush

https://travis-ci.org/mozilla-services/autopush.svg?branch=master

Mozilla Push server and Push Endpoint utilizing PyPy, twisted, and DynamoDB.

Please note: The python components of this server are being deprecated in favor of a pure rust implementation. We are planning on moving the websocket handler first, followed by the endpoint handlers. See :ref:`Migrating to Rust <rust>` for details.

This is the third generation of Push server built in Mozilla Services, first to handle Push for FirefoxOS clients, then extended for push notifications for Firefox (via the W3C Push spec.)

For how to read and respond to autopush error codes, see :ref:`Errors <errors>`.

For an overview of the Mozilla Push Service and where autopush fits in, see the Mozilla Push Service architecture diagram. This push service uses websockets to talk to Firefox, with a Push endpoint that implements the :term:`WebPush` standard for its :ref:`http` API.

Autopush APIs

For developers writing mobile applications in Mozilla, or web developers using Push on the web with Firefox.

.. toctree::
    :maxdepth: 2

    http

Running Autopush

If you just want to run autopush, for testing Push locally with Firefox, or to deploy autopush to a production environment for Firefox.

.. toctree::
   :maxdepth: 2

   architecture
   running

Developing Autopush

For developers wishing to work with the latest autopush source code, it's recommended that you first familiarize yourself with :ref:`running Autopush <running-autopush>` before proceeding.

.. toctree::
   :maxdepth: 2

   install
   testing
   releasing
   style

Source Code

All source code is available on github under autopush.

:ref:`api`

.. toctree::
    :hidden:

    api

We are using rust for a number of optimizations and speed improvements. These efforts are ongoing and may be subject to change. Unfortunately, this also means that formal documentation is not yet available. You are, of course, welcome to review the code located in ./autopush_rs.

Changelog

.. toctree::
   :maxdepth: 2

   Changelog <https://github.com/mozilla-services/autopush/blob/master/CHANGELOG.md>


Bugs/Support

Bugs should be reported on the autopush github issue tracker.

The developers of autopush can frequently be found on the Mozilla IRC network (irc.mozilla.org) in the #push channel.

autopush Endpoints

autopush is automatically deployed from master to a dev environment for testing, a stage environment for tagged releases, and the production environment used by Firefox/FirefoxOS.

dev

stage

production

Reference

.. toctree::
   :hidden:

   glossary
   rust

License

autopush is offered under the Mozilla Public License 2.0.