Refactor ChatConnect and related classes to use dynamic typing for properties and method parameters. Update event handling to use a consistent naming convention for emitted events. Adjust WebSocket message handling methods to accept event arrays instead of specific data structures. Update configuration for Swoole to increase ping intervals and timeouts.

This commit is contained in:
li
2026-01-29 03:04:40 +08:00
parent b8cd0c9418
commit ca996c227c
27 changed files with 441 additions and 148 deletions
+4 -4
View File
@@ -18,7 +18,7 @@ class ChatAdminStatus extends Model
/**
* 获取客服配置
*/
public static function getByAdminId(int $adminId): ?array
public static function getByAdminId($adminId)
{
$status = self::where('admin_id', $adminId)->find();
return $status ? $status->toArray() : null;
@@ -27,7 +27,7 @@ class ChatAdminStatus extends Model
/**
* 获取或创建客服配置
*/
public static function getOrCreate(int $adminId): array
public static function getOrCreate($adminId)
{
$status = self::getByAdminId($adminId);
if ($status === null) {
@@ -47,7 +47,7 @@ class ChatAdminStatus extends Model
/**
* 更新最后在线时间
*/
public static function updateLastOnlineTime(int $adminId): void
public static function updateLastOnlineTime($adminId)
{
self::where('admin_id', $adminId)->update([
'last_online_time' => time(),
@@ -58,7 +58,7 @@ class ChatAdminStatus extends Model
/**
* 获取启用客服功能的管理员ID列表
*/
public static function getEnabledAdminIds(): array
public static function getEnabledAdminIds()
{
return self::where('is_enabled', 1)->column('admin_id');
}