wondeotec/emailbidding-sdk-legacy

用于与 Emailbidding API(Guzzle 3 版本)交互的脚本集合

v1.0.0 2015-10-22 09:08 UTC

README

此 SDK 用于帮助 Emailbiddings 的出版商将其系统与 Emailbidding 平台集成。

注意:这是一个基于 wondeotec/emailbidding-sdk 的分支,使用 Guzzle 3 而不是 Guzzle 4+

需求

您需要在服务器上安装 PHP 5.4 或更高版本,并将包 'wondeotec/emailbidding-sdk' 添加到您的 composer 依赖项中。

Webhooks

如果您是 Emailbidding 出版商,则可以订阅一个端点并监听 Emailbidding 的事件,如退订、软退订、硬退订、点击或甚至打开。

此 SDK 帮助您测试您的测试以能够接收 webhook 事件。Emailbidding 系统始终向指定的端点发送一个带有 JSON 对象的 HTTP POST 请求,其主体与以下内容相同

{
  "ip_address":"127.0.0.1",
  "action":"unsubscription",
  "campaign_id":6368,
  "list_external_id":"my_list",
  "reason":"user_request",
  "recipient_email_address":"email@domain.com",
  "hash":"8d4ba2b6fc195d3f95039377ac7208e6",
  "recipient_external_id":"5556664",
  "trigger_date":"2015-09-03 11:13:34",
  "type":"unsubscription"
}

此 SDK 提供了一个对象,允许您以与 Emailbidding 系统在生产环境中向您发送的方式向您的端点发送 webhooks。

对象 'EB\SDK\Webhook\Webhook' 有一个接受有效载荷和端点的方法。您可以创建一个类型为 'EB\SDK\Webhook\Payload' 的对象,或者您也可以直接 '请求' 'EB\SDK\Webhook\Payload' 创建一个简单的对象。请参考以下示例

<?php

(...)
use EB\SDK\Webhook\PayloadFactory;
use EB\SDK\Webhook\Webhook;
(...)

$webhook = new Webhook();
$success = $webhook->post(
    PayloadFactory::createOpen('email@domain.com', 'my_list'),
    'https://your.secure.server/endpoint'
));

收件人订阅

Emailbidding 收件人订阅 API 允许您将数据库上传到 Emailbidding 平台。您有提交收件人的两种方法:简单和匿名集成。此 SDK 在集成方面帮助您,为您提供一个 'EB\SDK\RecipientSubscribe\RecipientSubscribe' 对象,您可以使用 'EB\SDK\RecipientSubscribe\Recipient' 对象实例化该对象,然后只需将收件人数据发布到 Emailbidding。以下是一个示例

<?php
(...)
use EB\SDK\RecipientSubscribe\RecipientSubscribe;
use EB\SDK\RecipientSubscribe\RecipientFactory;
(...)

// ** RECIPIENT SUBSCRIBE ** //
// Creating a recipient subscribe object with my credentials
$recipientSubscribe = new RecipientSubscribe('YOUR_PUBLISHER_API_KEY', 'YOUR_PUBLISHER_API_SECRET');

// Posting an simple recipient (minimal information) to Emailbidding API and dumping the result
var_dump($recipientSubscribe->post(
    array(RecipientFactory::createSimpleRecipient('email@domain.com', 'FR')),
    YOUR_PUBLISHER_ID,
    'my_best_database'
));

// Posting an anonymous recipient to Emailbidding (NOTE: the email address WILL NOT be sent to Emailbidding)
// The email address 'email@domain.com' will be transformed in '7328fddefd53de471baeb6e2b764f78a'
var_dump($recipientSubscribe->post(
    array(RecipientFactory::createSimpleAnonymousRecipient('email@domain.com', 'FR')),
    YOUR_PUBLISHER_ID,
    'my_best_database'
));

更多示例,您可以克隆以下从 github 的项目: https://github.com/wondeotec/sample-emailbidding-sdk