个推推送,提供安卓(Android)和iOS推送SDK,为App开发者提供高效稳定推送技术服

v1.1.0 2023-04-10 03:16 UTC

This package is not auto-updated.

Last update: 2024-12-16 11:01:10 UTC


README

欢迎使用个推PUSH SDK For ThinkPHP

个推PUSH SDK For PHP的主要目标是提升开发者在服务端集成个推推送服务的开发效率。 开发者不需要进行复杂编程即可使用个推推送服务的各项常用功能,SDK可以自动帮您满足调用过程中所需的鉴权、组装参数、发送HTTP请求等非功能性要求。

下面向您介绍个推PUSH SDK For PHP的使用方法。

环境要求

  1. 需要配合PHP 5.5或其以上版本。

  2. 使用个推PUSH SDK前,您需要先前往个推开发者中心 完成开发者接入的一些准备工作,创建应用。详细见操作步骤

  3. 准备工作完成后,前往个推开发者中心获取应用配置,后续将作为使用SDK的输入。详细见操作步骤

安装

composer require laoqianjunzi/getui

普通调用

下列代码示例向您展示了使用个推Push SDK For PHP调用一个API的3个主要步骤:

  1. 设置参数,创建API。
  2. 发起API调用。
  3. 处理响应。
使用示例:推送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
推送APIcid单推GTUserApi.pushToSingleByCid
推送API别名单推GTUserApi.pushToSingleByAlias
推送APIcid批量单推GTUserApi.pushBatchByCid
推送API别名批量单推GTUserApi.pushBatchByAlias
推送APItolist创建消息GTUserApi.createListMsg
推送APIcid批量推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
统计API24小时在线用户数GTStatisticsApi.queryOnlineUserData
用户API绑定别名GTUserApi.bindAlias
用户API根据cid查询别名GTUserApi.queryAliasByCid
用户API根据别名查询cidGTUserApi.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持续更新中,敬请期待。

其他链接