Files
server/dist/managers/DeviceManager.d.ts

119 lines
2.7 KiB
TypeScript
Raw Normal View History

2026-02-09 16:34:01 +08:00
/**
*
*/
export interface DeviceInfo {
id: string;
socketId: string;
name: string;
model: string;
osVersion: string;
appVersion: string;
appPackage?: string;
appName?: string;
screenWidth: number;
screenHeight: number;
capabilities: string[];
connectedAt: Date;
lastSeen: Date;
status: 'online' | 'offline' | 'busy';
inputBlocked?: boolean;
isLocked?: boolean;
remark?: string;
publicIP?: string;
systemVersionName?: string;
romType?: string;
romVersion?: string;
osBuildVersion?: string;
}
/**
*
*/
export interface DeviceStatus {
cpu: number;
memory: number;
battery: number;
networkSpeed: number;
orientation: 'portrait' | 'landscape';
screenOn: boolean;
}
/**
*
*/
declare class DeviceManager {
private devices;
private deviceStatuses;
private socketToDevice;
private logger;
constructor();
/**
*
*/
clearAllDevices(): void;
/**
*
*/
addDevice(deviceInfo: DeviceInfo): void;
/**
*
*/
removeDevice(deviceId: string): boolean;
/**
* Socket ID移除设备
*/
removeDeviceBySocketId(socketId: string): boolean;
/**
*
*/
getDevice(deviceId: string): DeviceInfo | undefined;
/**
* Socket ID获取设备
*/
getDeviceBySocketId(socketId: string): DeviceInfo | undefined;
/**
*
*/
getAllDevices(): DeviceInfo[];
/**
* 线
*/
getOnlineDevices(): DeviceInfo[];
/**
*
*/
getDeviceCount(): number;
/**
*
*/
updateDeviceStatus(socketId: string, status: DeviceStatus): void;
/**
*
*/
getDeviceStatus(deviceId: string): DeviceStatus | undefined;
/**
*
*/
updateDeviceConnectionStatus(deviceId: string, status: DeviceInfo['status']): void;
/**
* 线
*/
isDeviceOnline(deviceId: string): boolean;
/**
* Socket ID
*/
getDeviceSocketId(deviceId: string): string | undefined;
/**
* 线 ()
*/
cleanupOfflineDevices(timeoutMs?: number): void;
/**
*
*/
getDeviceStats(): {
total: number;
online: number;
offline: number;
busy: number;
};
}
export default DeviceManager;
//# sourceMappingURL=DeviceManager.d.ts.map