跳转到主要内容

Nameko扩展,用于轻松与Salesforce通信(包括流式API)

项目描述

https://travis-ci.org/Overseas-Student-Living/nameko-salesforce.svg?branch=extract-from-internal-salesforce-lib

Nameko Salesforce

Nameko扩展,用于处理Salesforce流式API事件,并提供与Salesforce REST API轻松通信的依赖提供者。

流式API扩展基于Nameko Cometd Bayeux客户端,而REST API依赖项基于Simple Salesforce

快速入门

PyPI安装

pip install nameko-salesforce

创建一个处理Salesforce联系人对象更改的服务,并具有创建Salesforce中新的联系人对象的RPC端点

# service.py

from nameko.rpc import rpc
from nameko_salesforce.streaming import handle_sobject_notification
from nameko_salesforce.api import SalesforceAPI

class Service:

    name = 'some-service'

    salesforce = SalesforceAPI()

    @handle_sobject_notification('Contact', exclude_current_user=False)
    def handle_contact_updates(
        self, sobject_type, record_type, notification
    ):
    """ Handle Salesforce contacts updates
    """
    print(notification)

    @rpc
    def create_contact(self, last_name, email_address):
    """ Create a contact in Salesforce
    """
    self.salesforce.Contact.create(
        {'LastName': last_name,'Email': email_address})

创建一个包含基本设置的配置文件

# config.yaml

AMQP_URI: 'pyamqp://guest:guest@localhost'
SALESFORCE:
    USERNAME: ${SALESFORCE_USERNAME}
    PASSWORD: ${SALESFORCE_PASSWORD}
    SECURITY_TOKEN: ${SALESFORCE_SECURITY_TOKEN}
    SANDBOX: False

运行服务并提供您的Salesforce凭据

$ SALESFORCE_USERNAME=rocky \
  SALESFORCE_PASSWORD=*** \
  SALESFORCE_SECURITY_TOKEN=*** \
  nameko run --config config.yaml service

最后,在另一个shell中调用RPC端点以创建新用户

$ nameko shell --config config.yaml
In [1]: n.rpc['some-service'].create_contact('Yo', 'yo@yo.yo')

您应该在Salesforce中看到创建的新联系人,并且您的服务应该收到通知。在第一个shell中,您将找到打印的通知。

{'event': {'replayId': 1, 'type': 'created' ...

欲了解更多信息,请参阅文档

项目详情


下载文件

下载您平台对应的文件。如果您不确定该选择哪个,请了解更多关于安装包的信息。

源分布

nameko-salesforce-1.2.0.tar.gz (19.8 kB 查看散列)

上传时间

构建分布

nameko_salesforce-1.2.0-py3-none-any.whl (24.9 kB 查看散列)

上传时间 Python 3

由以下支持