iiivannov /branchio
Branch Metrics (Branch.io) HTTP API 客户端
Requires
- php: >=5.6.0
- guzzlehttp/guzzle: ~6.0
Requires (Dev)
- phpunit/phpunit: ~5.7
README
这是一个简单的 Branch Metrics API (Branch.io) HTTP 客户端。目前它支持创建、更新和配置 Branch 链接。未来的版本将包括从现有链接检索数据。
目录
重要通知
1.1.x 版本以后的最新版本与旧版本 1.0.x
不兼容。
更新时要小心!如果您想升级到 1.1.x
版本,请首先按照文档说明在您的代码中进行必要的更改
安装
可以使用 Composer 安装此包。只需运行此命令
$ composer require iivannov/branchio
基本用法
获取链接数据
$client = new \Iivannov\Branchio\Client(KEY, SECRET); $link = $client->getLink($url);
创建新链接
$link = new \Iivannov\Branchio\Link();
$link->setChannel('foo')
->setAlias('foobar123')
->setData([
'$always_deeplink' => 'true',
'$deeplink_path' => 'go-to-user-123'
'user_id' => 123
]);
$client = new \Iivannov\Branchio\Client(KEY, SECRET);
$client->createLink($link);
高级用法
配置链接实例
链接实例包含 Branch Metrics 链接的所有可配置选项,并提供方法来设置它们。
$link = new \Iivannov\Branchio\Link();
// Set parameters separately
$link->setChannel('Channel name');
$link->setAlias('foobar123);
$link->setTags(['foo', 'bar']);
// It's possible to chain the set methods
$link->setChannel('Channel name')
->setAlias('foobar123')
->setTags(['foo', 'bar']);
分析数据
有关可用分析选项的完整参考,请参阅:https://docs.branch.io/pages/links/integrate/#analytical-labels
$link->setChannel('Channel name');
$link->setFeature('Feature name');
$link->setCampaign('Campaign name');
$link->setStage('Stage name');
$link->setTags(['foo', 'bar']);
$link->setAlias('foobar123);
$link->setType(UrlType::ONCE);
配置链接类型
您可以通过传递类型参数轻松设置深度链接行为。您有以下选项
UrlType::DEFAULT_TYPE
- 默认值,
UrlType::ONCE
- 限制生成的链接的深度链接行为为单次使用,
UrlType::MARKETING_TYPE
- 使链接在仪表板中的营销页面显示
$link->setType(UrlType::MARKETING);
配置自定义数据
有关可能的 $data
选项的完整描述,请参阅:https://docs.branch.io/pages/links/integrate/#redirections
$data = [
'$always_deeplink' => true,
'$deeplink_path' => 'open?action_id=1234',
'$ios_url' => 'http://MyAppURL.com/ios',
'$ipad_url' => 'http://MyAppURL.com/ipad',
'$android_url' => 'http://MyAppURL.com/android',
'$og_app_id' => '1234',
'$og_title' => 'My App',
'$og_description' => 'My app\'s description.',
'$og_image_url' => 'http://MyAppURL.com/image.png',
'mydata' => 'something',
'foo' => 'bar',
];
$link->setData($data);
创建链接
要创建配置的链接,只需调用 createLink
方法并传递 Link
实例
$client = new \Iivannov\Branchio\Client(KEY, SECRET); $client->createLink($link);
更新链接
要更新已存在的链接,您需要将链接的 URL 和更新的 Link
实例传递给 updateLink
方法
$client = new \Iivannov\Branchio\Client(KEY, SECRET);
$link = $client->getLink($url);
$link->setChannel('bar');
$client->updateLink($url, $link);
与 Laravel 一起使用
如果您使用 Laravel,此包包含一个 Service Provider 和一个 Facade 供您使用。
- 首先,您需要在您的
config\app.php
中添加 ServiceProvider 和 Facade 类
'providers' => [
...
Iivannov\Branchio\Integration\Laravel\BranchioServiceProvider::class,
];
'aliases' => [
...
'Branchio' => Iivannov\Branchio\Integration\Laravel\Facade\Branchio::class
];
- 然后,您需要在
config\services.php
中添加您的用户名和密码
'branchio' => [
'key' => YOUR_BRANCHIO_KEY,
'secret' => YOUR_BRANCHIO_SECRET
]
- 您就可以开始了,只需使用 Facade 即可
Branchio::getLink($url)
Branchio::createLink($link')
Branchio::updateLink($url, $link)
许可证
MIT 许可证 (MIT)。有关更多信息,请参阅许可证文件