lip 3 ay önce
ebeveyn
işleme
d4bbc2593f

+ 3 - 1
app/admin/controller/Kefu.php

@@ -399,7 +399,9 @@ class Kefu extends BaseController
                             'cs_uid' => $old_cs_uid,
                         ]),
                     ];
-                    Message::sendMsg($param, 0);
+                    if (!empty($param['content'])) {
+                        Message::sendMsg($param, 0);
+                    }
                 }
             }
         } catch (\Exception $e) {

+ 12 - 14
app/common/listener/UserRegister.php

@@ -20,24 +20,20 @@ class UserRegister
             $chatInfo=Config::getFieldValue('chatInfo');
             $autoAdduser=$chatInfo['autoAddUser'] ?? [];
             $autoTask=Config::autoTask();
+            $cs_uid = getAutoCsUid();
             // 是否开启自动客服
             if($autoAdduser && $autoAdduser['status']==1){
-                // 获取客服ID
-                if($autoTask['user_id']!=0){
-                    $autoTask['user_id']=$this->findNextOrFirstId($autoAdduser['user_ids'], $autoTask['user_id'] ? : $autoAdduser['user_ids'][0]);
-                }else{
-                    $autoTask['user_id']=$autoAdduser['user_ids'][0] ?? '';
-                }
-                if($autoTask['user_id']){
-                    $user->update(['cs_uid'=>$autoTask['user_id']],['user_id'=>$data['user_id']]);
+                // 获取机器人客服ID
+                if($cs_uid){
+                    $user->update(['cs_uid'=>$cs_uid],['user_id'=>$data['user_id']]);
                     // 设置双方为好友
-                    Friend::create(['create_user'=>$data['user_id'],'friend_user_id'=>$autoTask['user_id'],'status'=>1]);
-                    Friend::create(['create_user'=>$autoTask['user_id'],'friend_user_id'=>$data['user_id'],'status'=>1]);
+                    Friend::create(['create_user'=>$data['user_id'],'friend_user_id'=>$cs_uid,'status'=>1]);
+                    Friend::create(['create_user'=>$cs_uid,'friend_user_id'=>$data['user_id'],'status'=>1]);
 
-                    KefuLog::addData($autoTask['user_id'], $data['user_id'], 3);
+                    KefuLog::addData($cs_uid, $data['user_id'], 3);
                     // 如果设置了欢迎语则发送欢迎语
                     if($autoAdduser['welcome'] ?? ''){
-                        $userInfo=$user->field('user_id,realname,avatar')->where(['user_id'=>$autoTask['user_id']])->find();
+                        $userInfo=$user->field('user_id,realname,avatar')->where(['user_id'=>$cs_uid])->find();
                         if($userInfo){
                             $userInfo['dispalayName']=$userInfo['realname'];
                             $userInfo['id']=$userInfo['user_id'];
@@ -45,7 +41,7 @@ class UserRegister
                             $first_auto_reply = Config::getFieldValue('first_auto_reply', $data['language_code']);
                             $msg=[
                                 'id'=>\utils\Str::getUuid(),
-                                'user_id'=>$autoTask['user_id'],
+                                'user_id'=>$cs_uid,
                                 'content'=>$first_auto_reply ? $first_auto_reply : $autoAdduser['welcome'],
                                 'toContactId'=>$data['user_id'],
                                 'sendTime'=>time()*1000,
@@ -55,7 +51,9 @@ class UserRegister
                                 'fromUser'=>$userInfo,
                                 'at'=>[]
                             ];
-                            Message::sendMsg($msg,0,1);
+                            if (!empty($msg['content'])) {
+                                Message::sendMsg($msg,0,1);
+                            }
                         }
                     }
                 }

+ 3 - 3
app/enterprise/controller/Im.php

@@ -340,9 +340,9 @@ class Im extends BaseController
         $message=new Message();
         $data = $message->sendMessage($param,$this->globalConfig);
         //已发送的消息,设置成已读
-        if (isset($data['is_read'])) {
-            $data['is_read'] = 1;
-        }
+        // if (isset($data['is_read'])) {
+        //     $data['is_read'] = 1;
+        // }
         if ($data) {
             return success('', $data);
         } else {

+ 12 - 11
app/enterprise/model/Message.php

@@ -45,7 +45,9 @@ class Message extends BaseModel
                     'fromUser'=>$userInfo,
                     'at'=>[],
                 ];
-                self::sendMsg($msg,0,1);
+                if (!empty($msg['content'])) {
+                    self::sendMsg($msg,0,1);
+                }
             }
         }
     }
@@ -199,17 +201,16 @@ class Message extends BaseModel
                 }
             }
             
-            $fromUserId = (int)$param['toContactId'];
-            $user_id = (int)$param['user_id'];
-            $param['toContactId'] = $user_id;
-            $param['user_id'] = $fromUserId;
-            $param['fromUser'] = null;
-            $param['id'] = \utils\Str::getUuid();
+            if (!empty($param['content'])) {
+                $fromUserId = (int)$param['toContactId'];
+                $user_id = (int)$param['user_id'];
+                $param['toContactId'] = $user_id;
+                $param['user_id'] = $fromUserId;
+                $param['fromUser'] = null;
+                $param['id'] = \utils\Str::getUuid();
 
-            self::sendMsg($param,$is_group, 0, $user_id);
-            
-            //机器人自动回复消息
-            //event('AutoReplyMessage', ['param' => $param, 'globalConfig' => $globalConfig]);
+                self::sendMsg($param,$is_group, 0, $user_id);
+            }
         }
         return $data;
     }