vali 6 жил өмнө
parent
commit
84f5cd0fb5

+ 26 - 2
vendor/GatewayWorker_linux/GatewayWorker/Applications/whisper/Events.php

@@ -545,7 +545,7 @@ class Events
         //客服登陆验证 不符合的直接断掉
         $kfinfo = self::KfloginCheck($client_id, $message);
         if (empty($kfinfo)) {
-            self::MySendMsg($client_id, json_encode(["message_type" => 'checkfalse', 'data' => "验证失败111"], 256));
+            self::MySendMsg($client_id, json_encode(["message_type" => 'checkfalse', 'data' => "验证失败" . var_export($message, 1)], 256));
             Gateway::closeCurrentClient();
             return true;
         } else {
@@ -709,6 +709,28 @@ class Events
         return false;
     }
 
+    public static function getUserIPinfo($ip)
+    {
+        $url = 'http://www.ip168.com/chxip/doGetIp.do?keyword=' . $ip;
+        $ret = file_get_contents($url);
+        $defret = ['0' => '未知', '1' => '未知'];
+
+        if (empty($ret)) {
+            return $defret;
+        }
+        $word1 = explode(':', $ret);
+        if (isset($word1['2'])) {
+            $word2 = explode(" ", $word1['2']);
+            if (isset($word2['0']) && isset($word2['1'])) {
+                $defret['0'] = $word2['0'];
+                $defret['1'] = $word2['1'];
+                return $defret;
+            }
+        }
+        $defret['0'] = $ret;
+        return $defret;
+    }
+
     //用户发送邦定用户事件
     public static function userInitEnt($client_id, $message)
     {
@@ -768,7 +790,7 @@ class Events
 
         self::$redis->hset('loginTmp:' . $uid, 'uid', time());
         self::$redis->expire('loginTmp:' . $uid, 5);
-        $system=Gateway::get_os();
+ 		$system=Gateway::get_os();
         if (isset($message['settype'])){
             $system=$message['settype'];
         }
@@ -780,12 +802,14 @@ class Events
             'browse' => Gateway::browse_info(),
             'system' => $system,//$message['system'],
             'ip' => isset($_SERVER['REMOTE_ADDR']) ? $_SERVER['REMOTE_ADDR'] : '',//message['ip'],
+            'ipinfo' => self::getUserIPinfo($_SERVER['REMOTE_ADDR']),
             'group' => $message['group'],
             'intime' => time(),
             'kfuid' => '',
             'serverid' => 0,
             'client_id' => $client_id
         ];
+
         if ($last) {
             $data['group'] = $last['group_id'];
             $data['intime'] = $last['intime'];

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

@@ -545,7 +545,7 @@ class Events
         //客服登陆验证 不符合的直接断掉
         $kfinfo = self::KfloginCheck($client_id, $message);
         if (empty($kfinfo)) {
-            self::MySendMsg($client_id, json_encode(["message_type" => 'checkfalse', 'data' => "验证失败".var_export($message,1)], 256));
+            self::MySendMsg($client_id, json_encode(["message_type" => 'checkfalse', 'data' => "验证失败" . var_export($message, 1)], 256));
             Gateway::closeCurrentClient();
             return true;
         } else {
@@ -709,6 +709,28 @@ class Events
         return false;
     }
 
+    public static function getUserIPinfo($ip)
+    {
+        $url = 'http://www.ip168.com/chxip/doGetIp.do?keyword=' . $ip;
+        $ret = file_get_contents($url);
+        $defret = ['0' => '未知', '1' => '未知'];
+
+        if (empty($ret)) {
+            return $defret;
+        }
+        $word1 = explode(':', $ret);
+        if (isset($word1['2'])) {
+            $word2 = explode(" ", $word1['2']);
+            if (isset($word2['0']) && isset($word2['1'])) {
+                $defret['0'] = $word2['0'];
+                $defret['1'] = $word2['1'];
+                return $defret;
+            }
+        }
+        $defret['0'] = $ret;
+        return $defret;
+    }
+
     //用户发送邦定用户事件
     public static function userInitEnt($client_id, $message)
     {
@@ -768,21 +790,26 @@ class Events
 
         self::$redis->hset('loginTmp:' . $uid, 'uid', time());
         self::$redis->expire('loginTmp:' . $uid, 5);
-
+ 		$system=Gateway::get_os();
+        if (isset($message['settype'])){
+            $system=$message['settype'];
+        }
         $data = [
             'id' => $uid,
             'name' => $message['name'],
             'avatar' => isset($message['avatar']) ? $message['avatar'] : '',
             'website' => $_SESSION['origin'],//$message['website'],
             'browse' => Gateway::browse_info(),
-            'system' => Gateway::get_os(),//$message['system'],
+            'system' => $system,//$message['system'],
             'ip' => isset($_SERVER['REMOTE_ADDR']) ? $_SERVER['REMOTE_ADDR'] : '',//message['ip'],
+            'ipinfo' => self::getUserIPinfo($_SERVER['REMOTE_ADDR']),
             'group' => $message['group'],
             'intime' => time(),
             'kfuid' => '',
             'serverid' => 0,
             'client_id' => $client_id
         ];
+
         if ($last) {
             $data['group'] = $last['group_id'];
             $data['intime'] = $last['intime'];