Wang Chen 4 years ago
parent
commit
9300c6a5e6

+ 4 - 7
app/Console/Commands/Push/PushTest.php

@@ -20,7 +20,7 @@ class PushTest extends Command
      *
      * @var string
      */
-    protected $signature = 'push:test {uid} {url}';
+    protected $signature = 'push:test {uid}';
 
     /**
      * The console command description.
@@ -36,7 +36,6 @@ class PushTest extends Command
     {
         // 用户Uid
         $uid = $this->argument('uid');
-        $url = $this->argument('url');
 
         // 获取用户push信息
         $pushUser  = QappPushUser::getPushUserByUid($uid);
@@ -65,13 +64,11 @@ class PushTest extends Command
 
         $title   = '这是' . $name . '标题';
         $content = '这是' . $name . '内容,创建于' . date('Y-m-d H:i:s');
-        $url     = $url ?: '/views/Reader';
-        $params  = ['send_order_id' => 1643289, 'bid' => 'vdqY7p15xnZQzK4VzzgmMD6wG2yr8BNX', 'chapter_id' => 4774851];
+        $url     = '/views/Reader?send_order_id=1643289&bid=vdqY7p15xnZQzK4VzzgmMD6wG2yr8BNX&chapter_id=4774851';
         var_dump('uid:' . $uid);
         var_dump('title:' . $title);
         var_dump('content:' . $content);
         var_dump('url:' . $url);
-        var_dump('params:' . json_encode($params));
         var_dump('reg id:' . $regId);
 
         $result = [];
@@ -84,7 +81,7 @@ class PushTest extends Command
 
                     // 循环推送
                     $client->setToken($regIdList);
-                    $result = $client->sendPushMessage($title, $content, $url, $params);
+                    $result = $client->sendPushMessage($title, $content, $url);
                     break;
                 // 小米
                 case PushConst::PROVIDER_MI:
@@ -99,7 +96,7 @@ class PushTest extends Command
                 case PushConst::PROVIDER_OPPO:
                     // 初始化oppo推送
                     $client    = new OPPOPushCommon($appKey, $masterSecret);
-                    $messageId = $client->getMessageId($title, $content, $url, $params);
+                    $messageId = $client->getMessageId($title, $content, $url);
 
                     // 循环推送
                     $client->setRegArr($regIdList);

+ 1 - 1
app/Libs/Push/HuaWei/Admin/Application.php

@@ -88,7 +88,7 @@ class Application
     private function logPush($className, $message, $data = [])
     {
         var_dump('[' . $className . '] ' . $message, $data);
-        myLog('push')->info('[HuaWei] [' . $className . '] ' . $message, $data);
+        myLog('push')->info('[HuaWei] [' . $className . '] ' . $message, compact('data'));
     }
 
     private function is_token_expired()

+ 2 - 3
app/Libs/Push/OPPOPush/OPPOPushCommon.php

@@ -65,11 +65,10 @@ class OPPOPushCommon
      * @param       $title
      * @param       $content
      * @param       $url
-     * @param array $params
      * @return mixed|string
      * @throws GuzzleException
      */
-    public function getMessageId($title, $content, $url, $params = [])
+    public function getMessageId($title, $content, $url)
     {
         // 组装数据
         $pushMessage = new PushMessage();
@@ -291,7 +290,7 @@ class OPPOPushCommon
 
         // reg_id 批量
         if ((int)$targetType === 2 && $this->_reg_arr) {
-            $param['target_value'] = implode(',', $this->_reg_arr);
+            $param['target_value'] = implode(';', $this->_reg_arr);
         }
 
         // 请求数据

+ 1 - 0
app/Libs/Push/OPPOPush/PushMessage.php

@@ -197,6 +197,7 @@ class PushMessage
             'content',
             'click_action_type',
             'click_action_activity',
+            'action_parameters',
             'channel_id',
             'auth_token'
         ];

+ 11 - 6
app/Libs/Push/XMPush/MiPushCommon.php

@@ -4,6 +4,11 @@
 namespace App\Libs\Push\XMPush;
 
 
+/**
+ * 文档地址:https://dev.mi.com/console/doc/detail?pId=1783
+ * Class MiPushCommon
+ * @package App\Libs\Push\XMPush
+ */
 class MiPushCommon
 {
     private $_reg_arr = [];
@@ -29,14 +34,14 @@ class MiPushCommon
      * 发送消息
      * @param $title
      * @param $desc
-     * @param $url
+     * @param $url  // 参考 /views/Reader?send_order_id=1643289&bid=vdqY7p15xnZQzK4VzzgmMD6wG2yr8BNX&chapter_id=4774851
      * @return mixed
      */
     public function sendMessage($title, $desc, $url)
     {
         $sender  = new Sender();
         $message = $this->buildMessage($title, $desc, $url);
-        $result  = $sender->sendToIds($message, $this->_reg_arr)->getRaw();
+        $result  = $sender->sendHybridMessageByRegId($message, $this->_reg_arr)->getRaw();
 
         $this->logPush(__FUNCTION__, 'result', compact('result'));
         return $result;
@@ -73,10 +78,10 @@ class MiPushCommon
         $message->title($title);  // 通知栏的title
         $message->description($desc); // 通知栏的descption
         $message->passThrough($pusType);  // 这是一条通知栏消息,如果需要透传,把这个参数设置成1,同时去掉title和descption两个参数
-        $message->payload($payload); // 携带的数据,点击后将会通过客户端的receiver中的onReceiveMessage方法传入。
-        $message->extra(Builder::intentUri, $url); // 此处设置预定义点击行为,1为打开app
-        $message->extra(Builder::notifyEffect, 2); // 此处设置预定义点击行为,1为打开app 2通知栏点击后打开app的任一Activity
-        $message->extra(Builder::notifyForeground, 1); // 应用在前台是否展示通知,如果不希望应用在前台时候弹出通知,则设置这个参数为0
+        $message->notifyType(1);
+        $message->extra(Builder::HYBRID_PATH, $url); // 此处设置预定义点击行为,1为打开app
+//        $message->extra(Builder::notifyEffect, 2); // 此处设置预定义点击行为,1为打开app 2通知栏点击后打开app的任一Activity
+//        $message->extra(Builder::notifyForeground, 1); // 应用在前台是否展示通知,如果不希望应用在前台时候弹出通知,则设置这个参数为0
         $message->extra(Builder::flowControl, 3000); // 设置平滑推送, 推送速度3000每秒(qps=3000)
         $message->notifyId(2); // 通知类型。最多支持0-4 5个取值范围,同样的类型的通知会互相覆盖,不同类型可以在通知栏并存
         $message->build();