laravel个推设置别名
上一篇文章我们说过了怎么用laravel接个推的官方sdk实现个推推送和厂商离线推送,因为我们要用到别名推送,而前端又用到的是unipush,在前端去绑定别名的难度肯定要大一点,所以就有一个思路就是,当用户登录的时候,前端获取到个推的clientId,然后通过接口让后端来帮忙实现绑定别名。
直接上代码吧
用到的是个推的官方sdk
composer require getuilaboratory/getui-pushapi-php-client-v2
加载一下吧。
public function unbind_push(Request $request)
{
$config = ConfigModel::get_config();
$api = new \GTClient("https://restapi.getui.com", $config["push_appkey"], $config["push_appid"], $config["push_mastersecret"]);
$params = new \GTCidAlias();
$params->setCid($request->input("clientid"));
$params->setAlias($request->get("uid"));
$cidAliasListRequest = new \GTAliasRequest();
$cidAliasListRequest->addDataList($params);
$ret = $api->userApi()->unBindAlias($cidAliasListRequest);
return self::returnMsg($ret);
}
public function bind_push(Request $request)
{
$config = ConfigModel::get_config();
$api = new \GTClient("https://restapi.getui.com", $config["push_appkey"], $config["push_appid"], $config["push_mastersecret"]);
$params = new \GTCidAlias();
$params->setCid($request->input("clientid"));
$params->setAlias($request->get("uid"));
$cidAliasListRequest = new \GTAliasRequest();
$cidAliasListRequest->addDataList($params);
$ret = $api->userApi()->bindAlias($cidAliasListRequest);
return self::returnMsg($ret);
}
要用到绑定别名相应的,当用户退出登录的时候也要用到解绑别名吧,所以两个方法,实际上前面都一样的,就是userApi中用到的一个是unBindAlias一个是bindAlias而已。
// #ifdef APP-PLUS let client = plus.push.getClientInfo() this.post("/user/bind_push", client).then(res => { }) // #endif
这个是前端uniapp的获取cilentId的方法
