Skip to main content

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:

  1. DirectMessagePublisher: Created by a DirectMessagePublisherBuilder. DirectMessagePublisher send 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 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. 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:

  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 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 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)

Table of built distributions (wheels) for solace-pubsubplus 1.11.0
File
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

Release history Release notifications | RSS feed

This release

1.11.0 This release

6 release files

1.10.0

6 release files

1.9.0

6 release files

1.8.0

5 release files

1.7.0

4 release files

1.6.0

4 release files

1.5.0

4 release files

1.4.1

4 release files

1.4.0

4 release files

1.3.1

4 release files

1.3.0

4 release files

1.2.1

4 release files

1.2.0

4 release files

1.1.0

4 release files

1.0.0

4 release files

0.2.1

1 release file

0.2.0

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page