balfour / laravel-klaviyo
用于在Laravel中与Klaviyo API交互的库
0.0.1-alpha
2020-02-24 11:35 UTC
Requires
- ext-json: *
- guzzlehttp/guzzle: ^6.3
- laravel/framework: ^5.7
- propaganistas/laravel-phone: ^4.1
This package is auto-updated.
Last update: 2024-09-04 19:23:15 UTC
README
这是一个用于在Laravel中与Klaviyo API交互的库。
此库处于早期发布阶段,并正在等待单元测试。
安装
composer require balfour/laravel-klaviyo
配置
该包使用了以下环境变量
KLAVIYO_ENABLED
[默认 =false
]KLAVIYO_API_KEY
[默认 =null
]KLAVIYO_QUEUE
[默认 =klaviyo
]
如果您想发布配置,可以使用以下命令:
php artisan vendor:publish --provider="Balfour\LaravelKlaviyo\ServiceProvider"
如果您计划在队列中处理events
和identities
,请确保您有一个正在运行的队列工作进程,可以处理KLAVIYO_QUEUE
作业。
用法
use App\Models\User; use Balfour\LaravelKlaviyo\Event; use Balfour\LaravelKlaviyo\Jobs\PushIdentity; use Balfour\LaravelKlaviyo\Jobs\TrackEvent; use Balfour\LaravelKlaviyo\Klaviyo; $klaviyo = app(Klaviyo::class); // pushing an identity // in a real world, this may be a `user` model implementing the `IdentityInterface` $user = User::find(1); $klaviyo->pushIdentity($user); // pushing an identity (using a queue) $user = User::find(1); PushIdentity::enqueue($user); // tracking an event $user = User::find(1); $event = new Event( 'Complete Checkout Step 2', [ 'product' => 'Chicken Soup', 'price' => 'R100.00', ] ); $event->fire($user); // or $klaviyo->trackEvent($user, $event); // tracking an event (using a queue) $event->enqueue($user); // or TrackEvent::enqueue($user, $event); // in the case that you don't have an identity object, but just an email identifier $event = new Event('Subscribed To Mailing List'); $event->fire('matthew@masterstart.com'); // create a mailing list $klaviyo->createMailingList('My List Name'); // add email to mailing list $klaviyo->addToMailingList('12345', 'matthew@masterstart.com'); // remove email from mailing list $klaviyo->removeFromMailingList('12345', 'matthew@masterstart.com');