Skip to main content

STOMP library for Python including a synchronous client.

Project description

stomp, stomper, stompest!

stompest is a full-featured implementation of the STOMP protocol (versions 1.0, 1.1, and 1.2) for Python 2.6 (and higher).

The STOMP client in this package is dead simple: It does not assume anything about your concurrency model (thread vs process) or force you to use it any particular way. It gets out of your way and lets you do what you want. The package also consists of a generic set of components each of which you may use independently to roll your own STOMP client:

  • a wire-level STOMP frame parser and compiler,
  • a faithful implementation of the syntax of the STOMP protocol with a simple stateless function API,
  • a generic implementation of the STOMP session state semantics, such as protocol version negotiation at connect time, transaction and subscription handling (including a generic subscription replay scheme which may be used to reconstruct the session’s subscription state after a forced disconnect),
  • and a failover transport URI scheme akin to the one used in ActiveMQ.

This package is thoroughly unit tested and production hardened for the functionality used by the current maintainer and by Mozes — persistent queueing on ActiveMQ. It is tested with Python 2.6 and 2.7, Twisted 11.0 and 12.0 (it should work with Twisted 10.1 and higher), and ActiveMQ 5.5.1, 5.6, 5.7, 5.8. The integration tests also pass against RabbitMQ 3.0.2 and Apollo 1.5. All of these brokers were tested with STOMP protocols 1.0, 1.1, and 1.2 (if applicable). Minor enhancements may be required to use this STOMP adapter with other brokers.

Asynchronous Client

The asynchronous client is based on Twisted, a very mature and powerful asynchronous programming framework. In order to keep the stompest package self-consistent, the asynchronous client is available as a separate package stompest.async.

Installation

You may install this package in any of the following ways: easy_install stompest, pip install stompest, or python setup.py install.

Questions or Suggestions?

Feel free to open an issue or post a question on the forum.

Acknowledgements

  • Version 1.x of stompest was written by Roger Hoover at Mozes and deployed in their production environment.
  • Kudos to Oisin Mulvihill, the developer of stomper! The idea of an abstract representation of the STOMP protocol lives on in stompest.

Documentation & Code Examples

The stompest API is fully documented here.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for stompest, version 2.1.0
Filename, size File type Python version Upload date Hashes
Filename, size stompest-2.1.0.tar.gz (33.1 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page