Skip to main content

FastStream STOMP broker

Project description

FastStream STOMP broker

How To Use

Install the package:

uv add faststream-stomp
poetry add faststream-stomp

Basic usage:

import asyncio

import faststream
import faststream_stomp
import stompman

server = stompman.ConnectionParameters(host="127.0.0.1", port=61616, login="admin", passcode="password")
broker = faststream_stomp.StompBroker(stompman.Client([server]))


@broker.subscriber("first")
@broker.publisher("second")
def _(message: str) -> str:
    print(message)  # this will print message from startup
    return "Hi from first handler!"


@broker.subscriber("second")
def _(message: str) -> None:
    print(message)  # this will print message from first handler


app = faststream.FastStream(broker)


@app.after_startup
async def send_first_message() -> None:
    await broker.connect()
    await broker.publish("Hi from startup!", "first")


if __name__ == "__main__":
    asyncio.run(app.run())

Also there are StompRouter and TestStompBroker for testing. It works similarly to built-in brokers from FastStream, I recommend to read the original FastStream documentation.

Caveats

  • When exception is raised in consumer handler, the message will be nacked (FastStream doesn't do this by default)

Project details


Download files

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

Source Distribution

faststream_stomp-1.2.0.tar.gz (7.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

faststream_stomp-1.2.0-py3-none-any.whl (12.7 kB view details)

Uploaded Python 3

File details

Details for the file faststream_stomp-1.2.0.tar.gz.

File metadata

  • Download URL: faststream_stomp-1.2.0.tar.gz
  • Upload date:
  • Size: 7.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.6.9

File hashes

Hashes for faststream_stomp-1.2.0.tar.gz
Algorithm Hash digest
SHA256 1dd549919059e0330e73378ae4461339ed3fa91ed7e54bfc518f6edc2fea32e7
MD5 5a2849e639dced7a6351695d81fb6448
BLAKE2b-256 70d04cc6026af41718d793816d9b45d2051326ae8ab515a9512cbb629ad00cd2

See more details on using hashes here.

File details

Details for the file faststream_stomp-1.2.0-py3-none-any.whl.

File metadata

File hashes

Hashes for faststream_stomp-1.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 3e4385105184eefefb772af1cd55dfca1506f372550e63a705d8b9352906cd7a
MD5 182d2efca368660e8314992a58a22a90
BLAKE2b-256 66ba3e252327cbaf3d92f7a45186ff65d7161b28d5f20ae5a700b6793abaf3ca

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page