|
|
@ -41,6 +41,7 @@ class Events |
|
|
'type' => 'init', |
|
|
'type' => 'init', |
|
|
'client_id' => $client_id |
|
|
'client_id' => $client_id |
|
|
))); |
|
|
))); |
|
|
|
|
|
self::onlineStatistics(); |
|
|
} |
|
|
} |
|
|
/** |
|
|
/** |
|
|
* 有消息时 |
|
|
* 有消息时 |
|
|
@ -113,11 +114,13 @@ class Events |
|
|
self::closeClient($client_id); |
|
|
self::closeClient($client_id); |
|
|
} |
|
|
} |
|
|
$_SESSION['user_id']=$userInfo['user_id']; |
|
|
$_SESSION['user_id']=$userInfo['user_id']; |
|
|
|
|
|
|
|
|
self::sendStatus($client_id); |
|
|
self::sendStatus($client_id); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
//断开连接 |
|
|
//断开连接 |
|
|
protected static function closeClient($client_id){ |
|
|
protected static function closeClient($client_id){ |
|
|
|
|
|
self::onlineStatistics(); |
|
|
$_SESSION['user_id']=null; |
|
|
$_SESSION['user_id']=null; |
|
|
Gateway::closeClient($client_id); |
|
|
Gateway::closeClient($client_id); |
|
|
} |
|
|
} |
|
|
@ -136,7 +139,22 @@ class Events |
|
|
'data' => ['id'=>$user_id,'is_online'=>0] |
|
|
'data' => ['id'=>$user_id,'is_online'=>0] |
|
|
))); |
|
|
))); |
|
|
} |
|
|
} |
|
|
|
|
|
self::onlineStatistics(); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
public static function onlineStatistics() |
|
|
|
|
|
{ |
|
|
|
|
|
// 通知后台在线用户数和在线设备数 |
|
|
|
|
|
$data=[ |
|
|
|
|
|
'type' => 'statistics', |
|
|
|
|
|
'time' => time(), |
|
|
|
|
|
'data' => [ |
|
|
|
|
|
'onlineCount'=>Gateway::getAllUidCount() ?? 0, |
|
|
|
|
|
'clientCount'=>Gateway::getAllClientCount() ?? 0, |
|
|
|
|
|
] |
|
|
|
|
|
]; |
|
|
|
|
|
Gateway::sendToGroup('admin-manage', json_encode($data)); |
|
|
|
|
|
Gateway::sendToUid(1, json_encode($data)); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
} |
|
|
} |
|
|
|