php集成极光推送,Swift - JPush极光推送的使用2(PHP调用服务接口给所有人发推送)...

在前文中:Swift - JPush极光推送的使用1(配置、简单的推送测试样例)。介绍了移动客户端如何配置使用 JPush SDK。当时是登录到极光控制台,来发送推送消息进行测试的。但通常在实际项目中,我们会有专门的应用服务器来管理所有的用户,设备、消息等。

极光提供了完善的 REST API 接口,以及各个服务器语言专用的 SDK(JAVA、Python、C#、PHP、Nodejs、Ruby)。我们服务器后台只要调用一下相应的接口就可以进行消息推送了。

下面演示后台使用 PHP SDK,给所有人发送消息。(客户端还是使用前文那个,这里就不再说明了。)

1,使用PHP SDK推送广播消息

虽然我们使用REST API来推送也是可以的,但使用 JPush PHP SDK的话会更加方便快捷。

9c49ecff0c6d27315402d8f2e4c2a1d6.png

(2)将压缩包解压,里面除了接口文件外还提供了样例代码。我们使用时,只需要把压缩包里的 src 文件夹,以及 autoload.php 文件上传到服务器项目目录下。(我这里是放到 JPush文件夹下。)

b959c04c70ac02c2022fab59155eddc7.png

(3)在需要使用 JPush 的文件中,引入“autoload.php”即可。

require 'JPush/autoload.php';

(4)下面是一个完整的页面代码

注意:setOptions 方法里的第四个参数。用来指定 APNs 是否是生产环境。true 表示推送到生产环境,false 表示推送到开发环境。

//引入代码

require 'JPush/autoload.php';

use JPush\Client as JPush;

if(isset($_POST["message"])){

//初始化

$app_key = "7b528331738ec719165798fd";

$master_secret = "32da4e2c06ac7b55da2c9228";

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

//简单的推送样例

$result = $client->push()

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

->addAllAudience()

->setNotificationAlert($_POST["message"])

->options(array(

"apns_production" => true //true表示发送到生产环境(默认值),false为开发环境

))

->send();

echo 'Result=' . json_encode($result);

}

?>

推送广播通知

2,运行测试

(1)将上面的 php 页面上传到服务器并访问,页面显示如下:

8f649cd94e97a15e79dc3788d664748e.png

(2)在输入框中填写需要发送的通知消息,点击“推送广播通知”按钮。即可调用JPust API接口,将消息推送到所有的设备上。同时推送完毕后,页面上会显示接口调用的返回结果。

ecd3fe85c10197d03de17038f4905b47.png

(3)推送完毕后,手机这边也成功地显示出通知消息。

df05b729fc536cd22c7f5e2f8544f289.png

3,更完整的推送示例

上面演示的只是 php 调用 sdk 的一个最简单的样例。其实 JPush SDK提供的 API 接口配置还是很丰富的,比如下面是一个完整的推送示例。其中包含指定 Platform,指定 Alias,Tag,指定 iOS,Android notification,指定 Message 等。

(对于向指定的 Alias、Tag 设备推送通知,后面我还会写两篇相关文章来说明。)

//简单的推送样例

$result = $client->push()

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

->addAlias('alias1')

->addTag(['tag1', 'tag2'])

//->addAllAudience()

->setNotificationAlert('Hello, JPush')

->iosNotification('hello', [

'sound' => 'sound',

'badge' => '+1',

'extras' => [

'key' => 'value'

]

])

->androidNotification('hello', [

'title' => 'title',

'extras' => [

'key' => 'value'

]

])

->message('Hello JPush', [

'title' => 'Hello',

'content_type' => 'text',

'extras' => [

'key' => 'value'

]

])

->options(array(

"apns_production" => true,

'sendno' => 100,

'time_to_live' => 100,

//'big_push_duration' => 5

//'override_msg_id' => 100,

))

->send();

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值