Преглед изворни кода

Merge branch 'dev' of http://git.bocai108.com:10180/Ethan/Customer-Service into dev

Jonlin пре 6 година
родитељ
комит
712b41d4d0

+ 1 - 0
application/admin/view/login/index.html

@@ -7,6 +7,7 @@
     <meta http-equiv="Expires" content="0">
     <title>后台登录</title>
     <link href="__CSS__/login.css" type="text/css" rel="stylesheet">
+    <link rel="shortcut icon" href="__IMG__/favicon.ico">
 </head>
 <body>
 

+ 34 - 30
vendor/GatewayWorker_windows/Applications/whisper/Events.php

@@ -70,7 +70,7 @@ class Events
         foreach ($group as $groupid => $gname) {
             $users = self::getUselistData($groupid);
             if (!empty($users)) {
-                Gateway::sendToGroup('group_' . $groupid, json_encode(['type' => 'lineupCount', coung($users)], 256));
+                Gateway::sendToGroup('group_' . $groupid, json_encode(['type' => 'lineupCount', count($users)], 256));
             }
         }
     }
@@ -188,6 +188,7 @@ class Events
                     break;
             }
         }
+        return true;
     }
 
     // 弹出评价.
@@ -474,7 +475,8 @@ class Events
 
         if (!isset(self::$global->groupmap[$group])) {
             self::MySendMsg($client_id, (json_encode(['message_type' => 'reLoginErr', 'msg' => '不存在客服组....'], 256)));
-            Gateway::closeCurrentClient();
+            return  true;
+            //Gateway::closeCurrentClient();
         }
 
         $loginstate = self::$logic->userIsLogin($client_id, $uid, $group);
@@ -498,7 +500,7 @@ class Events
         $onlinekf = self::getOnlineKfData($group, 1);
         if (empty($onlinekf)) {
             Gateway::sendToClient($client_id, json_encode(['message_type' => 'notice', 'content' => '暂时没有客服上班,请稍后再咨询。'], 256));
-            Gateway::closeClient($client_id);
+            //Gateway::closeClient($client_id);
             return;
         }
 
@@ -556,7 +558,7 @@ class Events
             self::$redis->srem('adminList', $client_id);
         }
         if (empty($uid)) {
-            return;
+            return true;
         }
 
         if ($isKefuoff) {
@@ -564,7 +566,7 @@ class Events
         } else {
             self::guestOffline($client_id, $uid);
         }
-        return;
+        return true;
     }
 
     //客服下线了  系统调用,不能手动调用
@@ -809,38 +811,38 @@ class Events
             // 指定用指定组 [可能存在断线重连的情况] 如果存在旧的会话,直接连线客服和用户
             //否则按先到后到以及客服最大服务数限制
             $last = self::UserHasOldTalk($uid);
-            if ($last) {
+            if ($last) {print_r(time());
                 self::BeginTalk(self::getkfuid($last['kf_id']), $uid, $last['group_id'], $last['servicelog_id']);
                 return;
-            }
-        }
-
-        //系统定时调用时,无组,无用户
-        foreach ($allusergkarr as $group => $gusersArr) {
-            if (!isset($allkfgkarr[$group]) || count($allkfgkarr[$group]) <= 0) {
-                //所属客服组无人在线
-                continue;
-            }
-            $nowkfs = $allkfgkarr[$group];
-            $count = count($nowkfs);
-            $i = 0;
+            } else {
+                //系统定时调用时,无组,无用户
+                foreach ($allusergkarr as $group => $gusersArr) {
+                    if (!isset($allkfgkarr[$group]) || count($allkfgkarr[$group]) <= 0) {
+                        //所属客服组无人在线
+                        continue;
+                    }
+                    $nowkfs = $allkfgkarr[$group];
+                    $count = count($nowkfs);
+                    $i = 0;
 
-            foreach ($gusersArr as $user) {
-                if ($nowkfs[$i]['task'] > $maxset) {
-                    break;
-                }
-                $nowkfs[$i]['task']++;
+                    foreach ($gusersArr as $user) {
+                        if ($nowkfs[$i]['task'] > $maxset) {
+                            break;
+                        }
+                        $nowkfs[$i]['task']++;
 
-                self::BeginTalk($nowkfs[$i]['id'], $user['id'], $group, 0, $user);
-                self::$redis->hdel(self::USERLIST, $user['id']);
+                        self::BeginTalk($nowkfs[$i]['id'], $user['id'], $group, 0, $user);
+                        self::$redis->hdel(self::USERLIST, $user['id']);
 
-                $i++;
-                if ($i >= $count) {
-                    $i = 0;
+                        $i++;
+                        if ($i >= $count) {
+                            $i = 0;
+                        }
+                    }
                 }
+                return;
             }
         }
-        return;
     }
 
     //开启一个会话
@@ -867,7 +869,7 @@ class Events
 
         if (empty($server)) {
             $array = [
-                'user_id' => $uid,
+                'user_id' => intval($uid),
                 'client_id' => $userInfo['client_id'],
                 'user_name' => $userInfo['name'],
                 'user_avatar' => $userInfo['avatar'],
@@ -1411,6 +1413,8 @@ class Events
 
         //回转接人,转接成功
         Gateway::sendToCurrentClient(json_encode(['message_type' => 'trunconnect', 'data' => ['status' => 1]], 256));
+        // 发送给用户转接消息
+        Gateway::sendToClient($user_info['client_id'], json_encode(['message_type' => 'changeKeFuSuccess', 'data' => ['content' => "会话转接成功"]], 256));
 
         self::DebugOut('changekf 转换成功!');