【问题标题】:How to cancel a scheduled email in mandrill?如何取消山魈中的预定电子邮件?
【发布时间】:2015-07-16 02:05:35
【问题描述】:

我正在使用 https://github.com/abishekrsrikaanth/mailto 包在 mandrill 中处理我的电子邮件。该软件包有一种方法来安排这样的电子邮件。

$timestamp = new DateTime('+1 hour');
$mandrill = MailTo::Mandrill();
$mandrill->addRecipient($email, $name)
         ->setFrom($email, $name)
         ->setHtml($html)
         ->setText($text)
         ->setSubject($subject)
         ->send($timestamp);

但我找不到取消预定电子邮件的方法。我读了这个文档https://mandrillapp.com/api/docs/messages.JSON.html#method=cancel-scheduled

请求 JSON

 {
    "key": "example key",
    "id": null
} 

但我不知道如何实现。有人可以帮我解决这个问题吗?

【问题讨论】:

    标签: php json email laravel-4 mandrill


    【解决方案1】:

    您可以使用官方的 Mandrill PHP SDK 作为取消预定电子邮件的方法,该方法未在 MailTo 包中实现。

    <?php
    try {
        $mandrill = new Mandrill('YOUR_API_KEY');
        $id = 'YOUR-MESSAGE-ID'; // id of scheduled message to be cancelled
        $result = $mandrill->messages->cancelScheduled($id);
        print_r($result);
    } catch(Mandrill_Error $e) {
        echo 'A mandrill error occurred: ' . get_class($e) . ' - ' . $e->getMessage();
        throw $e;
    }
    ?>
    

    这是https://mandrillapp.com/api/docs/messages.php.html#method-cancel-scheduled的信息

    您只需要传递消息 id,它就会从预定的消息队列中删除。您很可能会在调度调用的响应中获得消息 ID。

    这里是设置 SDK 的详细信息https://mandrillapp.com/api/docs/index.php.html

    【讨论】:

    • 是的,取消预定的电子邮件没有在包裹上实现。但是 mandrill api 文档有关于如何通过 JSON 请求取消预定电子邮件的信息。我的问题是我不知道如何实现这个请求。
    • @JayMarz 更新了我的答案
    • 你能给你的答案提供一个示例 sn-p 吗?
    猜你喜欢
    • 2018-12-05
    • 2015-05-02
    • 2013-05-28
    • 2016-05-26
    • 2015-09-07
    • 2017-02-28
    • 2014-09-02
    • 2013-12-12
    • 2015-06-22
    相关资源
    最近更新 更多