|
@@ -229,6 +229,10 @@ class Events
|
|
|
case 'getkfonlines':
|
|
case 'getkfonlines':
|
|
|
Gateway::sendToCurrentClient(json_encode(self::getkfonlines(), 256));
|
|
Gateway::sendToCurrentClient(json_encode(self::getkfonlines(), 256));
|
|
|
break;
|
|
break;
|
|
|
|
|
+ case 'kfgetuserinfo':
|
|
|
|
|
+ $tmp_id = isset($message['data']['id']) ? $message['data']['id'] : 0;
|
|
|
|
|
+ self::kfgetuserinfo($client_id, intval($tmp_id));
|
|
|
|
|
+ break;
|
|
|
case 'chatMessage':
|
|
case 'chatMessage':
|
|
|
$client = Gateway::getClientIdByUid($message['data']['to_id']);
|
|
$client = Gateway::getClientIdByUid($message['data']['to_id']);
|
|
|
if (!empty($client)) {
|
|
if (!empty($client)) {
|
|
@@ -430,6 +434,15 @@ class Events
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+ //得到一个用户详细信息
|
|
|
|
|
+ public static function kfgetuserinfo($clientid, $id)
|
|
|
|
|
+ {
|
|
|
|
|
+ $ret = self::$db->select('*')->from('ws_account')->where('id=:id')->bindValues(['id' => $id])->row();
|
|
|
|
|
+ Gateway::sendToClient($clientid, json_encode(['message_type' => 'userdetailinfo', 'data' => $ret]));
|
|
|
|
|
+ return;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
//获取在线客服列表
|
|
//获取在线客服列表
|
|
|
public static function getkfonlines()
|
|
public static function getkfonlines()
|
|
|
{
|
|
{
|
|
@@ -437,7 +450,11 @@ class Events
|
|
|
'message_type' => 'onlinekfs',
|
|
'message_type' => 'onlinekfs',
|
|
|
'data' => [],
|
|
'data' => [],
|
|
|
];
|
|
];
|
|
|
- $nowkfid = $_SESSION['uid'];
|
|
|
|
|
|
|
+ $nowkfid = isset($_SESSION['uid']) ? $_SESSION['uid'] : 0;
|
|
|
|
|
+ $fromgrouupid = isset($_SESSION['uid']) ? $_SESSION['group'] : 0;
|
|
|
|
|
+ if (empty($grouupid) || empty($nowkfid)) {
|
|
|
|
|
+ return $return;
|
|
|
|
|
+ }
|
|
|
|
|
|
|
|
$kfs = self::$global->kfList;
|
|
$kfs = self::$global->kfList;
|
|
|
$groupnamemap = self::$global->groupmap;
|
|
$groupnamemap = self::$global->groupmap;
|
|
@@ -450,7 +467,7 @@ class Events
|
|
|
|
|
|
|
|
foreach ($kfs as $gruop => $users) {
|
|
foreach ($kfs as $gruop => $users) {
|
|
|
foreach ($users as $uid => $uinfo) {
|
|
foreach ($users as $uid => $uinfo) {
|
|
|
- if ($uid != $nowkfid) {
|
|
|
|
|
|
|
+ if ($uid != $nowkfid && $fromgrouupid == $gruop) {
|
|
|
$ret[] = ['groupid' => $gruop, 'groupname' => $groupnamemap[$gruop], 'kfuid' => $uid, 'kfname' => $uinfo['name'], 'kfjobname' => $uinfo['job_name']];
|
|
$ret[] = ['groupid' => $gruop, 'groupname' => $groupnamemap[$gruop], 'kfuid' => $uid, 'kfname' => $uinfo['name'], 'kfjobname' => $uinfo['job_name']];
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
@@ -527,6 +544,7 @@ class Events
|
|
|
return false;
|
|
return false;
|
|
|
}
|
|
}
|
|
|
self::$db->update('ws_service_log')->cols(['status' => 2, 'end_time' => time()])->where('servicelog_id=' . $oldlog['servicelog_id'])->query();
|
|
self::$db->update('ws_service_log')->cols(['status' => 2, 'end_time' => time()])->where('servicelog_id=' . $oldlog['servicelog_id'])->query();
|
|
|
|
|
+ $tmp_old_service_logid = $oldlog['servicelog_id'];
|
|
|
unset($oldlog['servicelog_id']);
|
|
unset($oldlog['servicelog_id']);
|
|
|
|
|
|
|
|
// 修改会话时长
|
|
// 修改会话时长
|
|
@@ -570,7 +588,7 @@ class Events
|
|
|
Gateway::sendToClient($tokfidclientid, json_encode($noticeKf, 256));
|
|
Gateway::sendToClient($tokfidclientid, json_encode($noticeKf, 256));
|
|
|
unset($noticeKf);
|
|
unset($noticeKf);
|
|
|
|
|
|
|
|
- self::servicetrutoother('OUT', $fromkfuid, $toukfid, $oldlog['servicelog_id'], $uid);
|
|
|
|
|
|
|
+ self::servicetrutoother('OUT', $fromkfuid, $toukfid, $tmp_old_service_logid, $uid);
|
|
|
self::servicetrutoother('IN', $toukfid, $fromkfuid, $new_id, $uid);
|
|
self::servicetrutoother('IN', $toukfid, $fromkfuid, $new_id, $uid);
|
|
|
|
|
|
|
|
//回转接人,转接成功
|
|
//回转接人,转接成功
|