官方文档

unipush使用指南 https://ask.dcloud.net.cn/article/35622

Unipush常见问题 https://ask.dcloud.net.cn/article/36611

通知:发送后会在系统通知栏收到展现,同时响铃或振动提醒用户。
消息:以透传的形式传递给客户端,无显示,发送后不会在系统通知栏展现,第三方应用后需要开发者写代码才能看到。

一句话区分两者的区别:透传消息是必须打开应用才能收到,通知是杀死应用也能收到。

什么是透传?透传即是透明传送,即传送网络无论传输业务如何,只负责将需要传送的业务传送到目的节点,同时保证传输的质量即可,而不对传输的业务进行处理。透传消息,就是消息体格式及内容,对于传递的通道来说是不去过问的,通道只负责消息的传递,对消息不做任何处理,当客户端接收到透传消息后,由客户端自己来决定如何处理消息。正是因为透传消息可以自定义消息体,也可以自定义消息的展示方式及后续动作处理,所以弥补了通知栏消息的一些不足之处(通知栏消息是直接展示出来,相关的动作客户端无法捕获到)。

透传消息主要有如下几个方面的特点:

1. 后台处理,用户无感知。
2. 前台展示,提醒用户。
3. 展示的多样化。

只有透传消息,才会触发revice事件
服务端发送消息时区分清楚,是透传消息还是通知消息,透传消息消息体需要严格按照格式传递才能触发。

离线通知

            $push_info=[
                'title'=>'大厅新工单提醒',
                'body'=>'抢单大厅有新的工单,快快查看',
            ];
            $push_info['payload'] = [
                'type'=>$type,
                'title'=>$push_info['title'],
                'body'=>$push_info['body'],
            ];
            $push_channel = [
                'android' => [
                    'ups' => [
                        'notification' => [
                            'title' => $push_info['title'],
                            'body' => $push_info['body'],
//                                'sound' => 'takeorder.wav',
                            'click_type' => 'startapp',
                         //   'click_type' => 'intent',
//                                //注意:intent参数必须按下方文档(特殊参数说明)要求的固定格式传值,intent错误会导致客户端无法收到消息
                            //"intent" => "intent:#Intent;action=android.intent.action.oppopush;launchFlags=0x14000000;component=gpkj.jishidao.app/io.dcloud.PandoraEntry;S.UP-OL-SU=true;S.title={$push_info['title']};S.content={$push_info['body']};S.payload=test;end"
                        ],
                        "options" => [
                            // 华为手机
                            "HW" => [
                                "/message/android/notification/importance" => "NORMAL",  // 取值为“LOW”时,表示消息为资讯营销;取值为“NORMAL”时,表示消息为服务与通讯
                               // "/message/android/notification/badge/set_num" =>  2   // 华为角标
                            ],
                            // 荣耀
                            "HO" => [
                               // "/android/notification/badge/setNum" => 5,
                                "/android/notification/importance" => "NORMAL"
                            ],
                            // OPPO
                            "OP" => [
                                "/channel_id" => "takeorder",  // oppo官网申请开通私信通道
                            ],
                            // VIVO
                            "VV" => [
                                "/classification" =>  1,   // 系统消息,默认0=资讯
                               // "/notifyType" =>  4
                            ],
                            // 小米
                            "XM" => [
                                "/extra.channel_id" => "high_custom_2" // 申请重要级别消息Channel
                            ]
                        ]
                    ]
                ],
                'ios'=>[
                    'aps'=>[
                        'alert'=>$push_info,
                        'sound'=>'new_order.wav'
                    ]
                ]
            ];
            $res=$get->sendToClient_transmission($clientID,$push_info,$push_channel);

vivo需要设置通知栏展示
oppo 手机端需要设置渠道分类通知

发表评论

邮箱地址不会被公开。 必填项已用*标注