极光推送php发给指定用户,PHP极光推送 简单示例

/**

* 极光推送 示例

* composer安装: composer require jpush/jpush

* 引用 src/JPush/Client.php 类

*/

namespace Admin\Controller;

use Common\Controller\AdminbaseController;

use JPush\Client;

class TestController extends AdminbaseController {

/**

* Test记录

*/

public function index() {

$uid = 2111;//推送用户id

$item_id = 100;//相关数据id

//推送消息

$alert = '充值金币';

$message_content = '系统向你账户充值金币:100,请注意查收!';

$alias[] = $uid.'PUSH';

$this->push($alert,$message_content,$alias,$item_id);

}

/**

* 极光推送

* @param string $alert

* @param string $message_content

* @param array $alias

* @param int $item_id

* @return mixed

*/

public function push($alert,$message_content,$alias,$item_id){

if(empty($alert)) return false;

$config_private = M('config_private')->where(['id'=>1])->find();

$app_key = $config_private['jpush_key'];

$master_secret = $config_private['jpush_secret'];

$client = new Client($app_key, $master_secret);

try {

$client->push()

->setPlatform(array('ios', 'android'))

// 一般情况下,关于 audience 的设置只需要调用 addAlias、addTag、addTagAnd 或 addRegistrationId

// 这四个方法中的某一个即可,这里仅作为示例,当然全部调用也可以,多项 audience 调用表示其结果的交集

// 即是说一般情况下,下面三个方法和没有列出的 addTagAnd 一共四个,只适用一个便可满足大多数的场景需求

->addAlias($alias)

// ->addTag(array('tag1', 'tag2'))

// ->addRegistrationId($registration_id)

//->addAllAudience()

->setNotificationAlert($alert)

->iosNotification($alert, array(

'sound' => 'sound.caf',

// 'badge' => '+1',

// 'content-available' => true,

// 'mutable-content' => true,

'extras' => array(

'id' => $item_id,

),

))

->androidNotification($alert, array(

'title' => $alert,

// 'builder_id' => 2,

'extras' => array(

'id' => $item_id,

),

))

->message($message_content, array(

'title' => $alert,

// 'content_type' => 'text',

'extras' => array(

'id' => $item_id,

),

))

->options(array(

// sendno: 表示推送序号,纯粹用来作为 API 调用标识,

// API 返回时被原样返回,以方便 API 调用方匹配请求与返回

// 这里设置为 100 仅作为示例

// 'sendno' => 100,

// time_to_live: 表示离线消息保留时长(秒),

// 推送当前用户不在线时,为该用户保留多长时间的离线消息,以便其上线时再次推送。

// 默认 86400 (1 天),最长 10 天。设置为 0 表示不保留离线消息,只有推送当前在线的用户可以收到

// 这里设置为 1 仅作为示例

// 'time_to_live' => 1,

// apns_production: 表示APNs是否生产环境,

// True 表示推送生产环境,False 表示要推送开发环境;如果不指定则默认为推送开发环境

'apns_production' => APNS_PRODUCTION,

// big_push_duration: 表示定速推送时长(分钟),又名缓慢推送,把原本尽可能快的推送速度,降低下来,

// 给定的 n 分钟内,均匀地向这次推送的目标用户推送。最大值为1400.未设置则不是定速推送

// 这里设置为 1 仅作为示例

// 'big_push_duration' => 1

))

->setSmsMessage(array(

'delay_time' => 60,

'signid' => 154,

'temp_id' => 1,

'temp_para' => array(

'code' => 357

),

'active_filter' => false

))

->send();

} catch (\JPush\Exceptions\JPushException $e) {

// try something else here

return $e;

}

return true;

}

}

?>

极光后台记录如下:

abc8a9ad176ae14cb05f9036759cb56a.png

2585b0be67eb12406d6d0b75b27c63be.png

4a668feaa3018a2e1706f07e5002bcc8.png

凌晨四点的_LA

发布了21 篇原创文章 · 获赞 1 · 访问量 1393

私信

关注

标签:推送,示例,alert,content,item,array,PHP,id

来源: https://blog.csdn.net/weixin_42047371/article/details/104069659

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值