herald-project/client-php 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

herald-project/client-php

最新稳定版本:v2.9.1

Composer 安装命令:

composer require herald-project/client-php

包简介

Herald client for PHP

README 文档

README

Send beautiful messages from your application.

Installation

composer require herald-project/client-php

Example

use Herald\Client\Client as HeraldClient;
use Herald\Client\Message as HeraldMessage;

// get the client with explicit parameters
$herald = new HeraldClient(
    '[herald api username]',
    '[herald api password]',
    '[herald server uri]',
    '[herald transport, e.g. smtp]'),
    '[herald account]',
    '[herald library]',
);

// get the client by DSN

$herald = HeraldClient::fromDsn('https://username:password@herald.dev/myAccount/myLibrary/myTransport');


// check template existance.
if ($herald->templateExists('signup')) {
    // get the message
    $message = new HeraldMessage();
    // use the template
    $message->setTemplate('signup');
    // set to address
    $message->setToAddress($emailAddress, $customerName);
    // populate data
    $message->setData('firstname', 'Hongliang');
    $message->setData('nickname', 'exploder hater');
    // send
    $herald->send($message);
}

CLI usage

You can use the bin/herald-client CLI application to run commands against your herald server.

The application needs a couple of configuration directives to work:

  • username + password: The account you use to connect. Either a user account, or an API key+secret pair
  • apiurl: the base url of herald, (i.e. https://herald.dev) with postfix /api/v2
  • account + library: This is the library identifier you use to create your templates, layouts and transports

You can pass this data in 3 ways:

Individual options:

For example:

./bin/herald-client --username=x --password=y --apiurl=https://herald.dev/api/v2 --account=test --library=test template:exists welcome

A single DSN

For example:

./bin/herald-client --dsn=https://x:y@herald.dev/test/test/mandrill

By environment variables

You can define the environment variable HERALD_DSN with a valid URL, this way you don't need to pass any options to the CLI application

By .env

The Herald CLI application loads .env before running any commands, allowing you to create a .env file like this:

HERALD_DSN=https://x:y@herald.dev/test/test/mandrill

This way you also don't need to pass any options for each command

Example commands

# get list of all contact lists
bin/herald-client list:list

# get list of contacts in contact list #1
bin/herald-client list:contacts 1

# get list of segments for list #1
bin/herald-client list:segments 1

# get available list_fields for list #1
bin/herald-client list:fields 1

# delete contact #42
#bin/herald-client contact:delete 42

# get properties of contact #6
bin/herald-client contact:properties 6

# add new contact with address 'new.contact@example.com' to list #1
bin/herald-client contact:add 1 new.contact@example.com

# add new property to contact #36 for list field id #4
bin/herald-client property:add 36 4 "some value"

# send message based on template #7 to all contacts in list #1
bin/herald-client list:send 1 7

# send message based on template #1 to contacts in list #1 that meet the conditions for segment #6
bin/herald-client list:send 1 7 6

统计信息

  • 总下载量: 5.46k
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 4
  • 点击次数: 1
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 2
  • Watchers: 3
  • Forks: 2
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2015-04-07