surge-financial/laravel-salesforce

Laravel的Salesforce助手

v0.3.1 2019-02-06 17:48 UTC

README

StyleCI Scrutinizer Code Quality Build Status

Laravel的Salesforce包

此包使得与Salesforce通信变得容易。

安装

您可以通过composer安装此包

composer require surge-financial/salesforce-laravel:"dev-master"

.env配置

在.env文件中设置以下变量

SALESFORCE_AUTH_ENDPOINT=<AUTH_ENDPOINT> (e.g. https://login.salesforce.com/services/oauth2/token for the salesforce live env)
SALESFORCE_CLIENT_ID=<CLIENT_ID>
SALESFORCE_CLIENT_SECRET=<SECRET>
SALESFORCE_USERNAME=<USERNAME>
SALESFORCE_PASSWORD=<PASSWORD>
SALESFORCE_URL=<URL> (e.g. https://eu6.salesforce.com)
SALESFORCE_LEAD_RT=<LEAD_RECORD_TYPE>
SALESFORCE_ACCOUNT_RT=<ACCOUNT_RECORD_TYPE>
SALESFORCE_OPPURTUNITY_RT=<OPPURTUNITY_RECORD_TYPE>
SALESFORCE_TASK_RT=<TASK_RECORD_TYPE>
SALESFORCE_BRAND=<BRAND>
SALESFORCE_BCC_EMAIL=<BBC_EMAIL>

服务提供者

其次,您必须安装服务提供者

// config/app.php
'providers' => [
    ...
    Surge\LaravelSalesforce\SalesforceServiceProvider::class
],

'aliases' => [
    ...
    'Salesforce'   => Surge\LaravelSalesforce\Facade::class,   
]

发布包文件

接下来,使用以下命令发布配置

php artisan vendor:publish --provider="Surge\LaravelSalesforce\SalesforceServiceProvider"

注册日志事件

为了记录所有的Salesforce请求和响应 - 在Events/EventsServiceProvider $listen数组中添加以下代码。


RequestSent::class => [
    <YourListenerClass>::class,
]

ResponseReceived::class => [
    <YourListenerClass>::class,
]

用法


use Salesforce;


//Get opportunity
Salesforce::getOpportunity($id);

//Create new account
Salesforce::createAccount($params);

//Check if account exists
Salesforce::existsAccount(['PersonEmail' => 'test@test.com']);

//To check for more than one parameter with OR condition
Salesforce::existsAccount(['PersonEmail' => 'test@test.com', 'Phone' => '07846000111'], 'OR');

在本地环境工作

默认情况下,在本地环境中是禁用的。要使包在本地模式下工作

SALESFORCE_DISABLE_ON_LOCAL=false

使用Salesforce沙盒

您必须首先在salesforce上设置沙盒环境。然后修改您的.env文件中的以下变量。

SALESFORCE_AUTH_ENDPOINT (e.g. https://test.salesforce.com/services/oauth2/token)
SALESFORCE_USERNAME
SALESFORCE_PASSWORD

此外,如果您的Laravel环境是local,请确保以下键设置为false

SALESFORCE_DISABLE_ON_LOCAL=false

升级到版本0.2.5

确保您重新发布了配置文件,以便以下行出现在顶部

return [
    'auth_endpoint'   => env('SALESFORCE_AUTH_ENDPOINT'),
    ...
    ]