Skip to main content
Donate to the Python Software Foundation or Purchase a PyCharm License to Benefit the PSF! Donate Now

Salesforce Streaming API client for asyncio

Project description

aiosfstream

PyPI package Documentation Status Build status Coverage MIT license

aiosfstream is a Salesforce Streaming API client for asyncio. It can be used to receive push notifications about changes on Salesforce objects or notifications of general events sent through the Streaming API.

For detailed guidance on how to work with PushTopics or how to create Generic Streaming Channels please consult the Streaming API documentation. For working with Platform Events or Change Data Capture events check out the linked documentation.

Features

Usage

import asyncio

from aiosfstream import SalesforceStreamingClient


async def stream_events():
    # connect to Streaming API
    async with SalesforceStreamingClient(
            consumer_key="<consumer key>",
            consumer_secret="<consumer secret>",
            username="<username>",
            password="<password>") as client:

        # subscribe to topics
        await client.subscribe("/topic/one")
        await client.subscribe("/topic/two")

        # listen for incoming messages
        async for message in client:
            topic = message["channel"]
            data = message["data"]
            print(f"{topic}: {data}")

if __name__ == "__main__":
    loop = asyncio.get_event_loop()
    loop.run_until_complete(stream_events())

Changelog

0.5.0 (2019-03-08)

  • Add support for Change Data Capture events
  • Fix some typos in the documentation

0.4.0 (2019-01-06)

  • Add type hints
  • Configurable replay storage behavior

0.3.0 (2018-11-07)

  • Add support for sandbox orgs

0.2.5 (2018-11-06)

  • Add missing changelog entries

0.2.4 (2018-11-06)

  • Fix platform event message creation date extraction issue

0.2.3 (2018-09-19)

  • Fix asynchronous iterator bug in python 3.7

0.2.2 (2018-06-15)

  • Update aiocometd dependency to 0.3.1

0.2.1 (2018-05-25)

  • Fix replay issues on mass record delete operations
  • Improve the documentation of the Client.publish method

0.2.0 (2018-05-05)

  • Enable the usage of third party JSON libraries
  • Expose authentication results as public attributes in Authenticator classes

0.1.0 (2018-04-26)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, size & hash SHA256 hash help File type Python version Upload date
aiosfstream-0.5.0-py3-none-any.whl (16.3 kB) Copy SHA256 hash SHA256 Wheel py3
aiosfstream-0.5.0.tar.gz (62.8 kB) Copy SHA256 hash SHA256 Source None

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page