yljphp / upush
友盟推送
V2.0.0
2022-03-21 10:46 UTC
Requires
- php: >=7.0
- ext-json: *
- guzzlehttp/guzzle: ^6.3|^7.0
This package is auto-updated.
Last update: 2024-05-22 07:45:48 UTC
README
友盟推送SDK
如需极光推送 请前往 极光推送
Installing
$ composer require yljphp/upush -vvv
配置
在使用本扩展之前,你需要去 友盟+ 注册账号,然后创建应用,获取应用的 Key 和秘钥。
使用
require __DIR__ .'/vendor/autoload.php'; use Yljphp\UPush\Android; use Yljphp\UPush\IOS; $config = [ 'Android' => [ 'appKey' => '***********', 'appMasterSecret' => '***********', 'production_mode' => true, ], 'iOS' => [ 'appKey' => '***********', 'appMasterSecret' => '***********', 'production_mode' => true, ] ]; $android = new Android($config); $ios = new IOS($config);
params 接受数组,安装官方文档示例,转化为数组格式即可
appkey
和timestamp
可传可不传。以下为示例代码。可供参考
消息发送
unicast 消息发送示例
// Android $params = [ 'type' => 'unicast', 'device_tokens' => 'xx(Android为44位)', 'payload' => [ 'display_type' => 'message', 'body' => [ 'custom' => '自定义custom', ], ], 'policy' => [ 'expire_time' => '2013-10-30 12:00:00', ], 'description' => '测试单播消息-Android', ]; print_r($android->send($params)); // iOS $params = [ 'type' => 'unicast', 'device_tokens' => 'xx(iOS为64位)', 'payload' => [ 'aps' => [ 'alert' => [ 'title' => 'title', 'subtitle' => 'subtitle', 'body' => 'body', ] ], ], 'policy' => [ 'expire_time' => '2021-04-09 10:23:24', ], 'description' => '测试单播消息-iOS', ]; print_r($push->send($params));
任务类消息状态查询
$params = [ 'task_id' => 'xx' ]; print_r($push->status($params));
任务类消息取消
$params = [ 'task_id' => 'xx' ]; print_r($push->cancel($params));
文件上传
$params = [ 'content' => 'xx' ]; print_r($push->upload($params));
在 Laravel 中使用
发布配置文件
php artisan vendor:publish --tag=push
or
php artisan vendor:publish --provider="Yljphp\UPush\PushServiceProvider"
编写配置文件
ANDROID_PUSH_APP_KEY= ANDROID_PUSH_APP_MASTER_SECRET= ANDROID_PUSH_PRODUCTION_MODE= IOS_PUSH_APP_KEY= IOS_PUSH_APP_MASTER_SECRET= IOS_PUSH_PRODUCTION_MODE=
使用
服务名访问
public function index() { return app('push.android')->send([]); return app('push.android')->status([]); return app('push.android')->cancel([]); return app('push.android')->upload([]); return app('push.ios')->send([]); }
Facades 门面使用(可以提示)
use Hedeqiang\UMeng\Facades\Push; public function index() { Push::android()->send([]); Push::android()->status([]); Push::android()->cancel([]); Push::android()->upload([]); Push::ios()->send([]); }
参考
工具
License
MIT