Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

aio-sf-streaming

Package Overview
Dependencies
Maintainers
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

aio-sf-streaming

aio_sf_streaming is a simple Python 3.6 asyncio library allowing to connect and receive live notifications from Salesforce.

  • 0.3.7
  • PyPI
  • Socket score

Maintainers
1

aio-sf-streaming

.. image:: https://badge.fury.io/py/aio-sf-streaming.svg :target: https://badge.fury.io/py/aio-sf-streaming :alt: Last release

.. image:: https://readthedocs.org/projects/aio-sf-streaming/badge/?version=latest :target: http://aio-sf-streaming.readthedocs.io/en/latest/?badge=latest :alt: Documentation Status

.. image:: https://travis-ci.org/papernest-public/aio_sf_streaming.svg?branch=master :target: https://travis-ci.org/papernest-public/aio_sf_streaming :alt: Build

.. image:: https://coveralls.io/repos/github/papernest-public/aio_sf_streaming/badge.svg :target: https://coveralls.io/github/papernest-public/aio_sf_streaming :alt: Coverage

.. image:: https://api.codeclimate.com/v1/badges/e0c891514893bdd4c22f/maintainability :target: https://codeclimate.com/github/papernest-public/aio_sf_streaming/maintainability :alt: Maintainability

.. image:: https://requires.io/github/papernest-public/aio_sf_streaming/requirements.svg?branch=master :target: https://requires.io/github/papernest-public/aio_sf_streaming/requirements/?branch=master :alt: Requirements Status

.. image:: https://img.shields.io/badge/License-MIT-yellow.svg :target: https://opensource.org/licenses/MIT :alt: MIT license

aio-sf-streaming is a simple Python 3.6 asyncio library allowing to connect and receive live notifications from Salesforce. This library is provided to you by papernest <http://www.papernest.com>_.

See The Force.com streaming API developer guide <https://developer.salesforce.com/docs/atlas.en-us.api_streaming.meta/api_streaming/intro_stream.htm>_ for more information about the different uses cases and how configure your Salesforce organization.

Feature

  • asyncio <https://docs.python.org/3/library/asyncio.html>_ compatible library
  • Authentication with username/password or refresh token
  • Subscribe to push topics and custom events
  • Receive events pushed by Salesforce
  • Auto-reconnect after too many time of inactivity
  • Replay support: replay events missed while your client is disconnected (see Force.com documentation <https://developer.salesforce.com/docs/atlas.en-us.api_streaming.meta/api_streaming/using_streaming_api_stateless.htm>_ for more information).

aio-sf-streaming only support Python 3.6.

Getting started

Simple use case:

.. code-block:: python

import asyncio
from aio_sf_streaming import SimpleSalesforceStreaming

async def print_event():
    # Create client and connect
    async with SimpleSalesforceStreaming(
                    username='my-username',
                    password='my-password',
                    client_id='my-client-id',
                    client_secret='my-client-secret') as client:
        # Subscribe to some push topics
        await client.subscribe('/topic/Foo')
        await client.subscribe('/topic/Bar')
        async for message in client.events():
            print(message)
            # client will wait indefinitely, you can ask to exit
            if message['channel'] == '/topic/Bar':
                break
            else:
                # You can unsubscribe when you want, too
                await client.unsubscribe('/topic/Foo')

loop = asyncio.get_event_loop()
loop.run_until_complete(print_event())

Installation

Simply use pip:

.. code-block:: bash

$ pip install aio-sf-streaming

Documentation

An online documentation is available <http://aio-sf-streaming.readthedocs.io/en/latest/>_.

Evolution

The library work well for our use-case then we does not plan a lot of new features.

Contributing

If you find any problem, feel free to fill an issue. Pull-Request are also welcomed.

You can install development dependencies with:

.. code-block:: bash

$ pip install -e .[tests,docs]

Release history

  • v. 0.3.0: Remove date-time parsing of the replay mixin, allow client to customize ReSubscribeMixin retry conditions, allow retry conditions to extend duration.
  • v. 0.2.0: Add refresh token authentication
  • v. 0.1.1: Add documentation and initial typing information.
  • v. 0.1.0: Initial release.

License

aio-sf-streaming is offered under the MIT license.

Keywords

FAQs


Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc