karacweb/infomaniak-newsletter

Laravel的Infomaniak新闻通讯服务实现

1.0.4 2024-04-17 14:33 UTC

This package is auto-updated.

Last update: 2024-09-17 15:28:11 UTC


README

Latest Stable Version

Infomaniak Newsletter for Laravel帮助您与Infomaniak的API进行交互。

安装

使用Composer安装此包。

在终端中运行Composer require命令

composer require karacweb/infomaniak-newsletter

使用以下命令发布配置

php artisan vendor:publish --provider="Karacweb\InfomaniakNewsletter\ServiceProvider"

配置

config/infomaniak-newsletter.php中设置您的环境密钥和列表(s)ID。

return [
    /*
     * The API keys of an Infomaniak newsletter account. You can find yours at
     * https://newsletter.infomaniak.com/accounts/access-token
     */
    'apiKey' => env('INFOMANIAK_APIKEY'),
    'secretKey' => env('INFOMANIAK_SECRETKEY'),

    /*
     * The listName to use when no listName has been specified in a method.
     */
    'defaultListName' => 'subscribers',

    /*
     * Here you can define properties of the lists.
     */
    'lists' => [

        /*
         * This key is used to identify this list. It can be used
         * as the listName parameter provided in the various methods.
         *
         * You can set it to any string you want and you can add
         * as many lists as you want.
         */
        'subscribers' => [

            /*
             * Id of a newsletter contact list. You can retrieve it
             * by looking at the last characters of the list's URL :
             * https://newsletter.infomaniak.com/mailinglists/show/XXXXX
             */
            'id' => env('INFOMANIAK_LISTID'),

        ],
    ],
];

用法

NewsletterInfomaniak::importContact()

将电子邮件地址订阅到默认列表。

use InfomaniakNewsletter;

InfomaniakNewsletter::importContact("email@example.com");

提供可选的firstnamelastname

InfomaniakNewsletter::importContact("email@example.com", ["firstname" => "John", "lastname" => "Doe"]);

最后,选择要添加电子邮件的列表作为第三个参数。

InfomaniakNewsletter::importContact("email@example.com", [], "subscribers");

NewsletterInfomaniak::isSubscribed()

检查电子邮件是否已订阅到默认列表。

InfomaniakNewsletter::isSubscribed("email@example.com");

检查电子邮件是否在subscribers列表中订阅。

InfomaniakNewsletter::isSubscribed("email@example.com", "subscribers");

NewsletterInfomaniak::unsubscribeContact()

从默认列表中取消订阅电子邮件。联系人不会被删除,只更改其状态。

InfomaniakNewsletter::unsubscribeContact("email@example.com");

subscribers列表中取消订阅电子邮件。

InfomaniakNewsletter::unsubscribeContact("email@example.com", "subscribers");

NewsletterInfomaniak::deleteContact()

从默认列表中删除电子邮件。

InfomaniakNewsletter::deleteContact("email@example.com");

subscribers列表中删除电子邮件。

InfomaniakNewsletter::deleteContact("email@example.com", "subscribers");

NewsletterInfomaniak::getContact()

获取有关联系人的数据。

InfomaniakNewsletter::getContact("email@example.com");

NewsletterInfomaniak::getContacts()

从默认列表中获取联系人。结果已分页。

InfomaniakNewsletter::getContacts();

subscribers列表中获取联系人。

InfomaniakNewsletter::getContacts("subscribers");

使用指定的分页选项从subscribers列表中获取联系人。

InfomaniakNewsletter::getContacts("subscribers", ["page" => 2, "perPage" => 50]);

NewsletterInfomaniak::updateContact()

更新联系人的first name。这将更新账户所有邮寄列表中的联系人。

InfomaniakNewsletter::updateContact("email@example.com", ["firstname" => "Joe"]);

您还可以提供last name。

InfomaniakNewsletter::updateContact("email@example.com", ["firstname" => "Joe", "lastname" => "Donovan"]);

NewsletterInfomaniak::getMailinglists()

获取账户的邮寄列表。结果已分页。

InfomaniakNewsletter::getMailinglists();

使用指定的分页选项获取账户的邮寄列表。

InfomaniakNewsletter::getMailinglists(["page" => 1, "perPage" => 50]);

NewsletterInfomaniak::getMailinglist()

获取默认列表的信息。

InfomaniakNewsletter::getMailinglist();

获取subscribers列表的信息。

InfomaniakNewsletter::getMailinglist("subscribers");

NewsletterInfomaniak::createMailinglist()

创建subscribers_fr邮寄列表。

InfomaniakNewsletter::createMailinglist("subscribers_fr");

NewsletterInfomaniak::updateMailinglist()

subscribers_fr邮寄列表重命名为subscribers_french

InfomaniakNewsletter::updateMailinglist("subscribers_fr", "subscribers_french");

NewsletterInfomaniak::deleteMailinglist()

删除默认列表。

InfomaniakNewsletter::deleteMailinglist();

删除subscribers_french邮寄列表。

InfomaniakNewsletter::deleteMailinglist("subscribers_french");

NewsletterInfomaniak::getTask()

获取任务123456的信息。

InfomaniakNewsletter::getTask(123456);