This package contains the Solace Messaging API for Python.
The Solace Messaging API for Python is developed and supported by the Solace Corporation.
The API provides access to Solace Messaging Service, supporting a variety of Message Exchange Patterns.
Installation
Install the API using pip: pip install solace-pubsubplus
Dependencies
Solace 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 Solace 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 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:
DirectMessagePublisher: Created by aDirectMessagePublisherBuilder.DirectMessagePublishersend messages that are not acknowledged and are not stored on the Solace Event Broker. This is the fastest delivery path because messages are never queued and therefore cannot be delivered to offlineMessageReceiverat a later time. Messages published byDirectMessagePublisherare eligible for discard when network congestion occurs.PersistentMessagePublisher: Created by aPersistentMessagePublisherBuilder.PersistentMessagePublishersends messages that are guaranteed to be delivered toMessageReceiver, even if theMessageReceiverobject is offline. Solace 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:
DirectMessageReceiver: Created by aDirectMessageReceiverBuilder.DirectMessgeReceiverconsumes messages as they are published.DirectMessageReceiverwill not receive messages published before the receiver is created or while the receiver is offline.DirectMessageReceiveris not required to acknowledge received messages.DirectMessageReceivermay receive messages from any publisher (persistent or direct), but only while theDirectMessageReceiveris online.PersistentMessageReceiver: Created by aPersistentMessageReceiverBuilder.PersistentMessageReceiverconsume messages from a queue created on the Solace Event broker. When the queue is created and subscriptions applied, it will begin storing messages, even ifPersistentMessageReceiveris offline. Messages are stored until delivered to thePersistentMessageReceiverand thePersistentMessageReceiveracknowledges the message.PersistentMessageReceiveris responsible for acknowledging messages received to remove them from the Solace 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 Messaging API for Python cannot be used in applications that use the Python multiprocessing module.
Release files for solace-pubsubplus 1.11.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distributions (wheels)
| File | Reset | |||
|---|---|---|---|---|
| solace_pubsubplus-1.11.0-py36-none-win_amd64.whl | Python 3.6 | none | Windows x86-64 | Details |
| solace_pubsubplus-1.11.0-py36-none-win32.whl | Python 3.6 | none | Windows x86-32 | Details |
| solace_pubsubplus-1.11.0-py36-none-musllinux_1_2_x86_64.whl | Python 3.6 | none | Linux musl 1.2+ x86-64 | Details |
| solace_pubsubplus-1.11.0-py36-none-manylinux_2_17_aarch64.whl | Python 3.6 | none | Linux glibc 2.17+ ARM64 | Details |
| solace_pubsubplus-1.11.0-py36-none-manylinux_2_12_x86_64.whl | Python 3.6 | none | Linux glibc 2.12+ x86-64 | Details |
| solace_pubsubplus-1.11.0-py36-none-macosx_11_0_universal2.whl | Python 3.6 | none | macOS 11.0+ universal2 (ARM64, x86-64) | Details |
Total release size: 26.8 MB
Release files / solace_pubsubplus-1.11.0-py36-none-win_amd64.whl
| Download URL | solace_pubsubplus-1.11.0-py36-none-win_amd64.whl |
|---|---|
| Size | 3.0 MB |
| Tags | Python 3.6 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
207567d5251eff469f318ae55a40fda4e558db9bcf30a543322d5a4d396d64cd
|
|
BLAKE2b-256 checksum How to use checksums |
5cb290efcab59374ce0c7cd22e1850b2ecb965bb0c5adee1f7e1d09d7a15a242
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.1.1 CPython/3.12.2
|
Release files / solace_pubsubplus-1.11.0-py36-none-win32.whl
| Download URL | solace_pubsubplus-1.11.0-py36-none-win32.whl |
|---|---|
| Size | 2.6 MB |
| Tags | Python 3.6 Windows x86-32 |
|
SHA-256 checksum How to use checksums |
c313ecdaab7adb8fed547ae64749ab5b850f5c4370a4c7556ee38591ebdf3d05
|
|
BLAKE2b-256 checksum How to use checksums |
b3e4eeda0c376fe0bd09b640cf657ca90b5b46e9f60902593670e77849df1ad8
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.1.1 CPython/3.12.2
|
Release files / solace_pubsubplus-1.11.0-py36-none-musllinux_1_2_x86_64.whl
| Download URL | solace_pubsubplus-1.11.0-py36-none-musllinux_1_2_x86_64.whl |
|---|---|
| Size | 2.5 MB |
| Tags | Linux musl 1.2+ x86-64 Python 3.6 |
|
SHA-256 checksum How to use checksums |
d63b75f154917e2f6e3f669b6d64bd8cf774bf37b301ab42b129ac21f7cbdb9d
|
|
BLAKE2b-256 checksum How to use checksums |
77ffb36c9a348b47c868e21128d1434affad8eb7351836f7987d4f21aec397a5
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.1.1 CPython/3.12.2
|
Release files / solace_pubsubplus-1.11.0-py36-none-manylinux_2_17_aarch64.whl
| Download URL | solace_pubsubplus-1.11.0-py36-none-manylinux_2_17_aarch64.whl |
|---|---|
| Size | 2.7 MB |
| Tags | Linux glibc 2.17+ ARM64 Python 3.6 |
|
SHA-256 checksum How to use checksums |
114768fe365bc79abee90852dc483e9fa5bc3fb9a4bf218e85029f8d050d0de3
|
|
BLAKE2b-256 checksum How to use checksums |
89ec0bc2c4e1d3b80e406e9983c61b871a71db42d8d5b28f34e8edb4e0c6a82b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.1.1 CPython/3.12.2
|
Release files / solace_pubsubplus-1.11.0-py36-none-manylinux_2_12_x86_64.whl
| Download URL | solace_pubsubplus-1.11.0-py36-none-manylinux_2_12_x86_64.whl |
|---|---|
| Size | 4.7 MB |
| Tags | Linux glibc 2.12+ x86-64 Python 3.6 |
|
SHA-256 checksum How to use checksums |
6c0deb5016a4005b4f01b8f8a16c664c0b306ffb51da4ace4d24169ffbbfbdee
|
|
BLAKE2b-256 checksum How to use checksums |
40af1c754d7d819bdaf9952a429ac8309461ec5db5f87f6ca29bff6d0d35e8ae
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.1.1 CPython/3.12.2
|
Release files / solace_pubsubplus-1.11.0-py36-none-macosx_11_0_universal2.whl
| Download URL | solace_pubsubplus-1.11.0-py36-none-macosx_11_0_universal2.whl |
|---|---|
| Size | 11.3 MB |
| Tags | Python 3.6 macOS 11.0+ universal2 (ARM64, x86-64) |
|
SHA-256 checksum How to use checksums |
f9b58a3bc2c2780744399c63db7d5c062e23effa52665c4c6dc56b838311a254
|
|
BLAKE2b-256 checksum How to use checksums |
0f27d9fd4378d75929b2002c5f536a58b3e7a8ced538fa40a048919d177dd53e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.1.1 CPython/3.12.2
|