grundleborg / stomp.py

“stomp.py” is a Python client library for accessing messaging servers (such as Apollo or RabbitMQ) using the STOMP protocol (versions 1.0, 1.1 and 1.2). It can also be run as a standalone, command-line client for testing.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

stomp.py

PyPI version

Build Status

"stomp.py" is a Python client library for accessing messaging servers (such as ActiveMQ, Artemis or RabbitMQ) using the STOMP protocol (STOMP v1.0, STOMP v1.1 and STOMP v1.2). It can also be run as a standalone, command-line client for testing.

NOTE: Stomp.py has officially ended support for Python2.x. See python3statement.org for more information.

Quick Start

You can connect to a message broker running on the local machine, and send a message using the following example.

import stomp

conn = stomp.Connection()
conn.connect('admin', 'password', wait=True)
conn.send(body=' '.join(sys.argv[1:]), destination='/queue/test')
conn.disconnect()

Documentation and Resources

The current version of stomp.py supports:

  • Python 3.x (Python2 support ended as of Jan 2020)
  • STOMP version 1.0, 1.1 and 1.2

There is also legacy 3.1.7 version using the old 3-series code (see 3.1.7 on PyPi and 3.1.7 on GitHub). This is no longer supported, but (at least as of 2018) there were still a couple of reports of this version still being used in the wild.

Testing

stomp.py has been perfunctorily tested on:

For testing locally, you'll need to install docker. Once installed:

  1. Create the docker image:

    make docker-image

  2. Run the container:

    make run-docker

  3. Run stomp.py unit tests:

    make test

  4. Cleanup the container afterwards if you don't need it any more:

    make remove-docker

Donate

If you find this project useful, why not buy me a coffee.

About

“stomp.py” is a Python client library for accessing messaging servers (such as Apollo or RabbitMQ) using the STOMP protocol (versions 1.0, 1.1 and 1.2). It can also be run as a standalone, command-line client for testing.

License:Apache License 2.0


Languages

Language:Python 97.7%Language:Dockerfile 1.1%Language:Makefile 1.1%Language:Shell 0.0%