|
|
@@ -405,18 +405,29 @@ class Events
|
|
|
break;
|
|
|
// 客服更改状态.
|
|
|
case 'kfOnline':
|
|
|
+ if (!isset($_SESSION['iskefu']) || $_SESSION['iskefu'] != 1) {
|
|
|
+ return;
|
|
|
+ }
|
|
|
$kfList = self::$global->kfList;
|
|
|
$userId = $message['data']['uid'];
|
|
|
$status = $message['data']['status'];
|
|
|
+ $oldstatus = '';
|
|
|
foreach ($kfList as $k => $v) {
|
|
|
foreach ($v as $ke => $va) {
|
|
|
if ($ke == $userId) {
|
|
|
- $kfList[$k][$ke]['status'] = $status;
|
|
|
+ $oldstatus = $kfList[$k][$ke]['status'];
|
|
|
+ if ($oldstatus != $status) {
|
|
|
+ $kfList[$k][$ke]['status'] = $status;
|
|
|
+ break 2;
|
|
|
+ } else {
|
|
|
+ return;
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
self::$global->kfList = $kfList;
|
|
|
self::writeLogKfStatus($userId, $status);
|
|
|
+ Gateway::sendToCurrentClient(json_encode(['message_type' => 'cgstatus', 'data' => ['new_status' => $status, 'old_status' => $oldstatus]]));
|
|
|
|
|
|
break;
|
|
|
case 'changeOtherhKeFu';
|