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

If you're not sure about the file name format, learn more about wheel file names.

solace_pubsubplus-1.3.0-py36-none-win_amd64.whl (2.7 MB view details)

Uploaded Python 3.6Windows x86-64

solace_pubsubplus-1.3.0-py36-none-win32.whl (2.4 MB view details)

Uploaded Python 3.6Windows x86

solace_pubsubplus-1.3.0-py36-none-manylinux_2_12_x86_64.whl (6.8 MB view details)

Uploaded Python 3.6manylinux: glibc 2.12+ x86-64

solace_pubsubplus-1.3.0-py36-none-macosx_10_15_x86_64.whl (5.5 MB view details)

Uploaded Python 3.6macOS 10.15+ x86-64

File details

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

File metadata

  • Download URL: solace_pubsubplus-1.3.0-py36-none-win_amd64.whl
  • Upload date:
  • Size: 2.7 MB
  • Tags: Python 3.6, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.9 tqdm/4.63.0 importlib-metadata/4.11.3 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.8.5

File hashes

Hashes for solace_pubsubplus-1.3.0-py36-none-win_amd64.whl
Algorithm Hash digest
SHA256 d64efb20ce2f4b87a4f5da7cbc4c75abe0f7fb93d9edebfbf84e2b76ab109e47
MD5 54c0b3bf9bfb790b8e63f5c42772a28c
BLAKE2b-256 a8b187d56419b8933285433cad39c3a123e339dc440196b5a54e210a1ff16839

See more details on using hashes here.

File details

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

File metadata

  • Download URL: solace_pubsubplus-1.3.0-py36-none-win32.whl
  • Upload date:
  • Size: 2.4 MB
  • Tags: Python 3.6, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.9 tqdm/4.63.0 importlib-metadata/4.11.3 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.8.5

File hashes

Hashes for solace_pubsubplus-1.3.0-py36-none-win32.whl
Algorithm Hash digest
SHA256 95c7ff95fb2b7627b9bc3a112132edb96f9c6ce3623a52b3509236c19da50513
MD5 55cf049a12da233dbdcd453bf5076a57
BLAKE2b-256 e0cc256637541ffd01f66ab7f88852d9cca015781c1f618da0c33d728c91f821

See more details on using hashes here.

File details

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

File metadata

  • Download URL: solace_pubsubplus-1.3.0-py36-none-manylinux_2_12_x86_64.whl
  • Upload date:
  • Size: 6.8 MB
  • Tags: Python 3.6, manylinux: glibc 2.12+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.9 tqdm/4.63.0 importlib-metadata/4.11.3 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.8.5

File hashes

Hashes for solace_pubsubplus-1.3.0-py36-none-manylinux_2_12_x86_64.whl
Algorithm Hash digest
SHA256 f00a70603800783d530fdd76847d105dd9f9f805a16653534c25d0bf6d0cf3a9
MD5 fb0ef09f52f764d22db357e07463454f
BLAKE2b-256 44a98323e1724a7a9aad901e5c577cfd0564d25a43cc693c45710fc511cce042

See more details on using hashes here.

File details

Details for the file solace_pubsubplus-1.3.0-py36-none-macosx_10_15_x86_64.whl.

File metadata

  • Download URL: solace_pubsubplus-1.3.0-py36-none-macosx_10_15_x86_64.whl
  • Upload date:
  • Size: 5.5 MB
  • Tags: Python 3.6, macOS 10.15+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.9 tqdm/4.63.0 importlib-metadata/4.11.3 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.8.5

File hashes

Hashes for solace_pubsubplus-1.3.0-py36-none-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 f721ef547d80dbd0b12be06b94d530c3792246e41fd46ed04829c05a7144713b
MD5 b78016a45d0474d7d1ac4aa689d3d434
BLAKE2b-256 1c57697e5d23cf53a1e616ab8f1c26e34713c0823b44482318836366d7b1a0bd

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