Skip to main content

Solace PubSub+ Messaging API for Python.

Project description

This package contains the Solace PubSub+ Messaging API for Python.

The Solace PubSub+ Messaging API for Python is developed and supported by the Solace Corporation.

The API provides access to Solace PubSub+ Messaging Service, supporting a variety of Message Exchange Patterns.

Installation

Install the API using pip: pip install solace-pubsubplus

Dependencies

Solace PubSub+ Messaging API for Python requires Python 3.6 or greater.

Documentation

An online reference for the API is available at docs.solace.com.

Introduction

There are four primary objects in the PubSub+ Messaging API for Python that applications can use, which are as follows:

MessagingService

from solace.messaging.messaging_service import MessagingService The starting point for all client-broker connections. MessagingService defines and controls the connection to the Solace PubSub+ Event Broker.

A MessagingService object is created by the MessagingServiceBuilder.

MessagePublisher

from solace.messaging.publisher.message_publisher import MessagePublisher The abstract base class for a Message Publisher (MessagePublisher). Applications do not build MessagePublisher objects directly, rather an application will invoke a builder. for one of two derived objects:

  1. DirectMessagePublisher: Created by a DirectMessagePublisherBuilder. DirectMessagePublisher send messages that are not acknowledged and are not stored on the Solace PubSub+ Event Broker. This is the fastest delivery path because messages are never queued and therefore cannot be delivered to offline MessageReceiver at a later time. Messages published by DirectMessagePublisher are eligible for discard when network congestion occurs.
  2. PersistentMessagePublisher: Created by a PersistentMessagePublisherBuilder. PersistentMessagePublisher sends messages that are guaranteed to be delivered to MessageReceiver, even if the MessageReceiver object is offline. PubSub+ Event Broker stores the messages until they are delivered and consumed by all subscribing receivers.

MessageReceiver

from solace.messaging.receiver.message_receiver import MessageReceiver The abstract base class for a Message Receiver (Message Receiver). Applications do not build MessageReceiver objects directly, rather an application will invoke a builder for one of two derived objects:

  1. DirectMessageReceiver: Created by a DirectMessageReceiverBuilder. DirectMessgeReceiver consumes messages as they are published. DirectMessageReceiver will not receive messages published before the receiver is created or while the receiver is offline. DirectMessageReceiver is not required to acknowledge received messages. DirectMessageReceiver may receive messages from any publisher (persistent or direct), but only while the DirectMessageReceiver is online.
  2. PersistentMessageReceiver: Created by a PersistentMessageReceiverBuilder. PersistentMessageReceiver consume messages from a queue created on the Solace Pubsub+ Event broker. When the queue is created and subscriptions applied, it will begin storing messages, even if PersistentMessageReceiver is offline. Messages are stored until delivered to the PersistentMessageReceiver and the PersistentMessageReceiver acknowledges the message. PersistentMessageReceiver is responsible for acknowledging messages received to remove them from the PubSub+ Event Broker Queue.

Message

from solace.messaging.core.message import Message The abstract base class for a Message. Applications do not build a Message object directly, rather an application will invoke a builder for an OutboundMessage (for publish) or receive an InboundMessage (from a MessageReceiver).

Samples

Sample applications are available at the Solace Developer Community

multiprocessing

Solace PubSub+ Messaging API for Python cannot be used in applications that use the Python multiprocessing module.

Project details


Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

solace_pubsubplus-1.10.0-py36-none-win_amd64.whl (3.0 MB view details)

Uploaded Python 3.6 Windows x86-64

solace_pubsubplus-1.10.0-py36-none-win32.whl (2.6 MB view details)

Uploaded Python 3.6 Windows x86

solace_pubsubplus-1.10.0-py36-none-musllinux_1_2_x86_64.whl (2.5 MB view details)

Uploaded Python 3.6 musllinux: musl 1.2+ x86-64

solace_pubsubplus-1.10.0-py36-none-manylinux_2_17_aarch64.whl (2.6 MB view details)

Uploaded Python 3.6 manylinux: glibc 2.17+ ARM64

solace_pubsubplus-1.10.0-py36-none-manylinux_2_12_x86_64.whl (4.6 MB view details)

Uploaded Python 3.6 manylinux: glibc 2.12+ x86-64

solace_pubsubplus-1.10.0-py36-none-macosx_11_0_universal2.whl (11.3 MB view details)

Uploaded Python 3.6 macOS 11.0+ universal2 (ARM64, x86-64)

File details

Details for the file solace_pubsubplus-1.10.0-py36-none-win_amd64.whl.

File metadata

File hashes

Hashes for solace_pubsubplus-1.10.0-py36-none-win_amd64.whl
Algorithm Hash digest
SHA256 ab387d50092e48ac102cdfb5494d6c936422edf2ea13a48692ab18cddef21616
MD5 a4d3658c72540328d7bf01f58ff32cbd
BLAKE2b-256 f9639df57f7ca7e81bb9aa2963a8e9b61ab42e3da184847dc4c21a2fa27c2394

See more details on using hashes here.

File details

Details for the file solace_pubsubplus-1.10.0-py36-none-win32.whl.

File metadata

File hashes

Hashes for solace_pubsubplus-1.10.0-py36-none-win32.whl
Algorithm Hash digest
SHA256 ea188a784bee313a915489bf2493a442428d6d1147dbc22cd442b66bdaed3938
MD5 55c6cf961c810d61d83887040b1e686d
BLAKE2b-256 c961840edf4cc14b7c566e644b98f2a19ba03a4ab9dc1e2ebe9d9658788a409f

See more details on using hashes here.

File details

Details for the file solace_pubsubplus-1.10.0-py36-none-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for solace_pubsubplus-1.10.0-py36-none-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 025f901b85a157152da247b2048cbdbd2926220740939f2e1a17638335133f7c
MD5 48628ecf9d4bb86e7126b69269737fe9
BLAKE2b-256 7f85335b7ad12830ef7e2775f3f38a9c008467b3ca4ca0e20ac578d4c13b7537

See more details on using hashes here.

File details

Details for the file solace_pubsubplus-1.10.0-py36-none-manylinux_2_17_aarch64.whl.

File metadata

File hashes

Hashes for solace_pubsubplus-1.10.0-py36-none-manylinux_2_17_aarch64.whl
Algorithm Hash digest
SHA256 637733f0d4aa2bb6ad721a4533dd4c26bfa163db9efedba196dc1a688d8c0a39
MD5 64fa9570fc1757099060a85e19528f05
BLAKE2b-256 e6299d365282cf74ee12f44b3b299e37a77f9ceebc7251e7cf055e59137aae79

See more details on using hashes here.

File details

Details for the file solace_pubsubplus-1.10.0-py36-none-manylinux_2_12_x86_64.whl.

File metadata

File hashes

Hashes for solace_pubsubplus-1.10.0-py36-none-manylinux_2_12_x86_64.whl
Algorithm Hash digest
SHA256 e179ec705b7f116c91a78447067b713603017f3d112e8083d65b27abf8c40bdc
MD5 35c0ec7c3270aa1e012ee1820d1f01ef
BLAKE2b-256 33b7dfdfd385bcf66ef131a5b4ea573681d71975e4795c8afb34cc445f3e3b79

See more details on using hashes here.

File details

Details for the file solace_pubsubplus-1.10.0-py36-none-macosx_11_0_universal2.whl.

File metadata

File hashes

Hashes for solace_pubsubplus-1.10.0-py36-none-macosx_11_0_universal2.whl
Algorithm Hash digest
SHA256 a8dd3f24d5d9db1afa054c044f098071ba1aa95afdba000861a780dfad08c280
MD5 a2764fdfdbf46456ccf29b5c6fab73fa
BLAKE2b-256 ee68eea1271781f93dea3c6316fa5c52eeab70eda31ee43b51617743fbfefb55

See more details on using hashes here.

Supported by

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