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

Uploaded Python 3.6Windows x86-64

solace_pubsubplus-1.2.1-py36-none-win32.whl (2.0 MB view details)

Uploaded Python 3.6Windows x86

solace_pubsubplus-1.2.1-py36-none-manylinux_2_12_x86_64.whl (7.0 MB view details)

Uploaded Python 3.6manylinux: glibc 2.12+ x86-64

solace_pubsubplus-1.2.1-py36-none-macosx_10_15_x86_64.whl (5.2 MB view details)

Uploaded Python 3.6macOS 10.15+ x86-64

File details

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

File metadata

  • Download URL: solace_pubsubplus-1.2.1-py36-none-win_amd64.whl
  • Upload date:
  • Size: 2.3 MB
  • Tags: Python 3.6, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.8.2 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.5

File hashes

Hashes for solace_pubsubplus-1.2.1-py36-none-win_amd64.whl
Algorithm Hash digest
SHA256 82872d0afa8891e583a9d2abd4dee546e046fa687b96a8b0371f4f0b5cc18dd5
MD5 09c8dfef4564acb0341ce450d52e008c
BLAKE2b-256 a144d1edb0fe0612af5fb29aeece3e5653cc381b7eecc0f4cf20697ce18ee89f

See more details on using hashes here.

File details

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

File metadata

  • Download URL: solace_pubsubplus-1.2.1-py36-none-win32.whl
  • Upload date:
  • Size: 2.0 MB
  • Tags: Python 3.6, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.8.2 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.5

File hashes

Hashes for solace_pubsubplus-1.2.1-py36-none-win32.whl
Algorithm Hash digest
SHA256 cb0038e66223117247e3d12a15c79742f6035b7a5c6b278a7587f082c3f6faa0
MD5 eb1fc16a1bf84bdb045c29d704db83a5
BLAKE2b-256 f6dba6fc6f349f2666556bf1b3ac64b0d08c5e664c49e25a565e6f1b3fe0e9c9

See more details on using hashes here.

File details

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

File metadata

  • Download URL: solace_pubsubplus-1.2.1-py36-none-manylinux_2_12_x86_64.whl
  • Upload date:
  • Size: 7.0 MB
  • Tags: Python 3.6, manylinux: glibc 2.12+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.8.2 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.5

File hashes

Hashes for solace_pubsubplus-1.2.1-py36-none-manylinux_2_12_x86_64.whl
Algorithm Hash digest
SHA256 4c4534dd58a65e61c159fa7e17fb63f781bffb6368881ef7c1478e3947c40d5f
MD5 ece7292054523e4e6142ab01ed9d56b8
BLAKE2b-256 ec7ce7b58e9c7da9271e4a82fc6f78b4db7756733529ee39255032abd0cfe0f9

See more details on using hashes here.

File details

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

File metadata

  • Download URL: solace_pubsubplus-1.2.1-py36-none-macosx_10_15_x86_64.whl
  • Upload date:
  • Size: 5.2 MB
  • Tags: Python 3.6, macOS 10.15+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.8.2 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.5

File hashes

Hashes for solace_pubsubplus-1.2.1-py36-none-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 abb6fd7f45b6c429fc5b41e547c05c55068197375c03f0b975bd00a44ca75e48
MD5 8e344cd3d9e36b33d3d4f578c12dd3aa
BLAKE2b-256 3ba9bfece3582e50bab336a6fa02ea4144221e34337c3d256a01413aa65405ab

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