talalm / php-fcm-wrapper
PHP版的FCM包装器
dev-master
2017-07-10 22:14 UTC
Requires
- php: >=5.3.0
- guzzlehttp/command: 0.7.0
- guzzlehttp/guzzle: ~5.3|~6.0
- guzzlehttp/guzzle-services: 0.5.0
This package is not auto-updated.
Last update: 2024-09-14 19:25:37 UTC
README
FCM API的PHP包装器
安装
您可以使用 Composer 安装包装器
composer require talalm/php-fcm-wrapper
用法
使用包装器非常简单。
首先,您需要使用您的API密钥创建一个客户端
$client = new FCM\Client("YOUR_API_KEY");
发送一个简单的通知
将令牌放在 registration_ids 参数的数组中。
并将通知标题放在参数 notification.body_loc_key 中
示例
$client->send([
'registration_ids' => ['token1', 'token2', ...],
'notification' => ['body_loc_key' => 'This is a notification sent via php-fcm-wrapper']
]);
添加通知参数
您可以为通知添加额外的参数
- badge 值(默认为1)
- sound 值(默认为 'notif.caf')
示例
$client->send([
'registration_ids' => ['token1', 'token2', ...],
'notification' => ['body_loc_key' => 'This is a revolution',
'badge' => 1789
'sound' => 'la-marseillaise.caf'],
]);
附加数据
此外,如果您想在通知中添加额外的数据,只需将其添加到 data 参数中
$client->send([
'registration_ids' => ['token1', 'token2', ...],
'notification' => ['body_loc_key' => 'This is a revolution',
'badge' => 1789
'sound' => 'la-marseillaise.caf'],
// Additional data
'data' => ['king' => 'Louis XVI',
'location' => 'La Bastille']
]);
更改通知优先级
默认通知的 priority 被设置为 high(始终发送)。如果您想设置为 normal(则接收客户端系统将选择何时显示)
$client->send([
'registration_ids' => ['token1', 'token2', ...],
'notification' => ['body_loc_key' => 'This is a revolution',
'badge' => 1789
'sound' => 'la-marseillaise.caf'],
// Additional data
'data' => ['king' => 'Louis XVI',
'location' => 'La Bastille'],
'priority' => 'normal'
]);
这就是全部!
APNS 批量导入
如果您正在从其他服务(例如 Parse)迁移,并且已经在数据库中有了APNS令牌,您可以将它们 批量导入到Firebase。
要这样做,只需调用带有以下参数的 batchImport 方法
- application:应用程序的Bundle ID
- sandbox:布尔值,指示沙盒环境(TRUE)或生产环境(FALSE)- 默认为 TRUE
- apns_tokens:要添加或删除的应用程序实例的APNs令牌数组。每次请求最多 100 个令牌。
示例
$client->batchImport([
'application' => "com.french.revolution",
'apns_tokens' => ["Robespierre's token", "Danton's token", "Louis XVI's token", ...],
'sandbox' => false,
]);