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.9.0-py36-none-win_amd64.whl (3.0 MB view details)

Uploaded Python 3.6 Windows x86-64

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

Uploaded Python 3.6 Windows x86

solace_pubsubplus-1.9.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.9.0-py36-none-manylinux_2_17_aarch64.whl (2.5 MB view details)

Uploaded Python 3.6 manylinux: glibc 2.17+ ARM64

solace_pubsubplus-1.9.0-py36-none-manylinux_2_12_x86_64.whl (4.4 MB view details)

Uploaded Python 3.6 manylinux: glibc 2.12+ x86-64

solace_pubsubplus-1.9.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.9.0-py36-none-win_amd64.whl.

File metadata

File hashes

Hashes for solace_pubsubplus-1.9.0-py36-none-win_amd64.whl
Algorithm Hash digest
SHA256 5a60eb95536b890e83479e130376bb6851ea0f645692ae9c726b1bb88f0beacb
MD5 70486d93611c0a769cf42b0e734cb86f
BLAKE2b-256 70482ac4f7c9f14aeef764a632a6e0cd3ee97c51aa874a8af708b3f4b382fb3c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for solace_pubsubplus-1.9.0-py36-none-win32.whl
Algorithm Hash digest
SHA256 07920b16a1cc5d0faa5d8c538054ec3924b00aff653dd1c43501ca9d7439a4f7
MD5 ca4af039ed4a78d2a519f474e3a68348
BLAKE2b-256 f75d8cfdfbe91b314496b66241d3031a1a67488eb0cc4c57fc71a7c61ad2a4e5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for solace_pubsubplus-1.9.0-py36-none-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 fc4d5029068552446e94083ce8465638f3ad0fd89e8b1d07fabf4faa3a896c36
MD5 d5c0ad6791096b7e062c54484756096f
BLAKE2b-256 f6bb9946cd8814eb7e1de0a2afbe838a9566b5089ebab80b18817af55b981149

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for solace_pubsubplus-1.9.0-py36-none-manylinux_2_17_aarch64.whl
Algorithm Hash digest
SHA256 7925960f6f4cc2abf09d9fd69791cafa36b8483bdaddd79a8573b02b322170d4
MD5 25a438daec1af475430e963151ff1c0c
BLAKE2b-256 4ab10974464f818f9384dd6129bfb07187d6c56a332c7c552a288cbf2474a202

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for solace_pubsubplus-1.9.0-py36-none-manylinux_2_12_x86_64.whl
Algorithm Hash digest
SHA256 4eebb9635f1518a3836f31cf955961790830218d4ccca32ef2c389225fed2ea4
MD5 0da03e92748a3215943f883d84b4fbf5
BLAKE2b-256 5e33e5923f962b89b5a63eac2c0f7493abb53e7a1054a1da580c0037fd51713f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for solace_pubsubplus-1.9.0-py36-none-macosx_11_0_universal2.whl
Algorithm Hash digest
SHA256 68b2893a876c41b0eeec8fa96a2edec0f556b6f8d992db322a44eb6516912f93
MD5 574f9e2c3fc4327ed852b56c5b08c384
BLAKE2b-256 2cad993040787f5830bf376f24393eb6da3e1ce10ba80a40e2a996a347508616

See more details on using hashes here.

Supported by

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