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-2.0.2.tar.gz (8.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-2.0.2-py3-none-any.whl (13.7 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for faststream_stomp-2.0.2.tar.gz
Algorithm Hash digest
SHA256 b881e846d6b1f6ca167432f5273d57a8f3a9d9872bb4acc57d3217a87cb132e0
MD5 617a7c035b4c3ef22dac04e8b41213fb
BLAKE2b-256 4c62290587255dc607fb690f9caaa7c896f940bbb6fb6b59afaef92502244ded

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for faststream_stomp-2.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 cf831533fe6871f1874f2d91e221e215e34f8ce88608da9f1641be266e864e5c
MD5 ce3b089c27210842ce33f065044bc1c3
BLAKE2b-256 2582a38a059ffda038185625446ab8d1702a94dc1e94a20f470e03a64cd6c631

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