You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
129 lines
3.7 KiB
129 lines
3.7 KiB
<?php
|
|
|
|
namespace app\base\controller\demo\api;
|
|
|
|
use think\App;
|
|
|
|
|
|
class Push extends Base
|
|
{
|
|
|
|
/**
|
|
* 通过cid单推
|
|
* @date 2022-04-26
|
|
*/
|
|
public function singlePushByCid()
|
|
{
|
|
$param = input('post.');
|
|
|
|
$uni_push_param = get_dcloud_uni_push_config();
|
|
|
|
$push_class = new \getui\push\Push($uni_push_param);
|
|
|
|
//推送消息
|
|
$request_id = date("YmdHi") . createNonceStr(4, ['number']);
|
|
// $title = '秒杀提醒';
|
|
// $content = '您预约的产品即将开枪';
|
|
$payload = 'spikenotice_1';
|
|
$result = $push_class->toSinglePushByCid($param['client_id'], $request_id, $param['title'], $param['content'], $uni_push_param['package_name'], $payload);
|
|
|
|
// 记录日志
|
|
platformLog([
|
|
'client_id' => $param['client_id'],
|
|
'request_id' => $request_id,
|
|
'title' => $param['title'],
|
|
'content' => $param['content'],
|
|
'package_name' => $uni_push_param['package_name'],
|
|
'payload' => $payload
|
|
], $result, 'getui_to_single_by_cid_' . UID);
|
|
dump($result);
|
|
|
|
|
|
if ($result['code'] != 0) {
|
|
return sendErrorMessage($result['code'], $result['msg']);
|
|
}
|
|
}
|
|
|
|
/**
|
|
* 执行cid批量推
|
|
* @date 2022-04-26
|
|
*/
|
|
public function listPushByCid()
|
|
{
|
|
$param = input('post.');
|
|
$param['client_id'] = explode(',', $param['client_id']);
|
|
|
|
$uni_push_param = get_dcloud_uni_push_config();
|
|
|
|
$push_class = new \getui\push\Push($uni_push_param);
|
|
|
|
$request_id = date("YmdHi") . createNonceStr(4, ['number']);
|
|
$payload = 'spikenotice_1';
|
|
//创建消息
|
|
$result = $push_class->toListCreatePush($request_id, $param['title'], $param['content'], $uni_push_param['package_name'], $payload);
|
|
|
|
// 记录日志
|
|
platformLog([
|
|
'request_id' => $request_id,
|
|
'title' => $param['title'],
|
|
'content' => $param['content'],
|
|
'package_name' => $uni_push_param['package_name'],
|
|
'payload' => $payload
|
|
], $result, 'getui_to_list_create_list_msg_' . UID);
|
|
dump($result);
|
|
|
|
if ($result['code'] != 0) {
|
|
return sendErrorMessage($result['code'], $result['msg']);
|
|
}
|
|
$task_id = $result['data']['taskid'];
|
|
dump($task_id);
|
|
|
|
//批量推送
|
|
$result = $push_class->toListPushByCid($param['client_id'], $task_id);
|
|
|
|
// 记录日志
|
|
platformLog([
|
|
'client_id' => $param['client_id'],
|
|
'task_id' => $task_id
|
|
], $result, 'getui_to_list_by_cid_' . UID);
|
|
dump($result);
|
|
|
|
|
|
if ($result['code'] != 0) {
|
|
return sendErrorMessage($result['code'], $result['msg']);
|
|
}
|
|
}
|
|
|
|
/**
|
|
* 执行cid群推
|
|
* @date 2022-04-27
|
|
*/
|
|
public function appPush()
|
|
{
|
|
$param = input('post.');
|
|
|
|
$uni_push_param = get_dcloud_uni_push_config();
|
|
|
|
$push_class = new \getui\push\Push($uni_push_param);
|
|
|
|
$request_id = date("YmdHi") . createNonceStr(4, ['number']);
|
|
$payload = 'spikenotice_1';
|
|
//群推
|
|
$result = $push_class->toAppPush($request_id, $param['title'], $param['content'], $uni_push_param['package_name'], $payload);
|
|
|
|
// 记录日志
|
|
platformLog([
|
|
'request_id' => $request_id,
|
|
'title' => $param['title'],
|
|
'content' => $param['content'],
|
|
'package_name' => $uni_push_param['package_name'],
|
|
'payload' => $payload
|
|
], $result, 'getui_to_app_' . UID);
|
|
dump($result);
|
|
|
|
if ($result['code'] != 0) {
|
|
return sendErrorMessage($result['code'], $result['msg']);
|
|
}
|
|
}
|
|
}
|