laoqianjunzi / getui
个推推送,提供安卓(Android)和iOS推送SDK,为App开发者提供高效稳定推送技术服
v1.1.0
2023-04-10 03:16 UTC
Requires
- php: >=5.5
Requires (Dev)
This package is not auto-updated.
Last update: 2024-12-16 11:01:10 UTC
README
个推PUSH SDK For PHP
的主要目标是提升开发者在服务端集成个推推送服务的开发效率。
开发者不需要进行复杂编程即可使用个推推送服务的各项常用功能,SDK可以自动帮您满足调用过程中所需的鉴权、组装参数、发送HTTP请求等非功能性要求。
下面向您介绍个推PUSH SDK For PHP
的使用方法。
环境要求
需要配合
PHP 5.5
或其以上版本。
安装
composer require laoqianjunzi/getui
普通调用
下列代码示例向您展示了使用个推Push SDK For PHP
调用一个API的3个主要步骤:
- 设置参数,创建API。
- 发起API调用。
- 处理响应。
使用示例:推送API_根据cid进行单推
use getui\GeTui;
$config=[
'package' => 'com.xxx.xxx', // APP
'app_id' => '必填', // APPID
'app_key' => '必填', // APPKEY
'master_secret' => '必填',//MASTERSECRET
];
return app()->make(GeTui::class)->initParams($config)->pushSingleByCid('这是标题', '内容', ['url'=>'点击跳转路径'], 'clientid');
function pushToSingleByCid(){
//创建API,APPID等配置参考 环境要求 进行获取
$api = new GTClient("https://restapi.getui.com","APPKEY", "APPID","MASTERSECRET");
//设置推送参数
$push = new GTPushRequest();
$push->setRequestId("请求唯一标识号");
$message = new GTPushMessage();
$notify = new GTNotification();
$notify->setTitle("设置通知标题");
$notify->setBody("设置通知内容");
//点击通知后续动作,目前支持以下后续动作:
//1、intent:打开应用内特定页面url:打开网页地址。2、payload:自定义消息内容启动应用。3、payload_custom:自定义消息内容不启动应用。4、startapp:打开应用首页。5、none:纯通知,无后续动作
$notify->setClickType("none");
$message->setNotification($notify);
$push->setPushMessage($message);
$push->setCid("CID");
//处理返回结果
$result = $api->pushApi()->pushToSingleByCid($push);
}
使用示例:统计API_获取单日推送数据
function queryPushResultByDate(){
//创建API,APPID等配置参考 环境要求 进行获取
$api = new GTClient("https://restapi.getui.com","APPKEY", "APPID","MASTERSECRET");
//处理返回结果
$result = $api->statisticsApi()->queryPushResultByDate("年-月-日");
}
使用示例:用户API_查询用户状态
function queryUserStatus(){
//创建API,APPID等配置参考 环境要求 进行获取
$api = new GTClient("https://restapi.getui.com","APPKEY", "APPID","MASTERSECRET");
$array = array(CID1);
//处理返回结果
$result = $api->userApi()->queryUserStatus($array);
}
其余功能可参考该链接
设置代理
我们提供系统环境变量的方式进行代理配置,当需要使用代理进行http访问时,配置以下环境变量
"getui_http_proxy_ip" : 代理ip
"getui_http_proxy_port" : 代理端口
"getui_http_proxy_username" : 鉴权用户名
"getui_http_proxy_passwd" : 鉴权密码
已支持的API列表
以下是消息推送功能与推送API的对应关系
API类别 | 功能 | 调用的API名称 |
---|---|---|
鉴权API | 鉴权 | 初始化GTClient会自动鉴权 |
鉴权API | 删除鉴权 | GTUserApi.closeAuth |
推送API | cid单推 | GTUserApi.pushToSingleByCid |
推送API | 别名单推 | GTUserApi.pushToSingleByAlias |
推送API | cid批量单推 | GTUserApi.pushBatchByCid |
推送API | 别名批量单推 | GTUserApi.pushBatchByAlias |
推送API | tolist创建消息 | GTUserApi.createListMsg |
推送API | cid批量推 | GTUserApi.pushListByCid |
推送API | 别名批量推 | GTUserApi.pushListByAlias |
推送API | 群推 | GTUserApi.pushAll |
推送API | 条件筛选用户推送 | GTUserApi.pushByTag |
推送API | 标签快速推送 | GTUserApi.pushByFastCustomTag |
推送API | 停止任务 | GTUserApi.stopPush |
推送API | 查询定时任务 | GTUserApi.queryScheduleTask |
推送API | 删除定时任务 | GTUserApi.deleteScheduleTask |
统计API | 获取推送结果 | GTStatisticsApi.queryPushResultByTaskIds |
统计API | 任务组名查报表 | GTStatisticsApi.queryPushResultByGroupName |
统计API | 单日推送数据 | GTStatisticsApi.queryPushResultByDate |
统计API | 单日用户数据接口 | GTStatisticsApi.queryUserDataByDate |
统计API | 24小时在线用户数 | GTStatisticsApi.queryOnlineUserData |
用户API | 绑定别名 | GTUserApi.bindAlias |
用户API | 根据cid查询别名 | GTUserApi.queryAliasByCid |
用户API | 根据别名查询cid | GTUserApi.queryCidByAlias |
用户API | 批量解绑别名 | GTUserApi.unbindAlias |
用户API | 解绑所有别名 | GTUserApi.unbindAllAlias |
用户API | 一个用户绑定一批标签 | GTUserApi.setTagForCid |
用户API | 一批用户绑定一个标签 | GTUserApi.batchModifyTagForBatchCid |
用户API | 一批用户解绑一个标签 | GTUserApi.unbindTag |
用户API | 查询标签 | GTUserApi.queryUserTag |
用户API | 添加黑名单用户 | GTUserApi.addBlackUser |
用户API | 移除黑名单用户 | GTUserApi.removeBlackUser |
用户API | 查询用户状态 | GTUserApi.queryUserStatus |
用户API | 设置角标(仅支持IOS) | GTUserApi.setBadge |
用户API | 查询用户总量 | GTUserApi.queryUserCount |
注:更多API持续更新中,敬请期待。