using System; using System.Collections.Generic; using System.Threading; using System.Threading.Tasks; namespace YunDa.Server.ISMSTcp.Services { /// /// 设备通信状态服务接口 /// 用于管理设备通信状态的缓存和查询 /// public interface IDeviceCommunicationStateService { /// /// 设置设备通信状态 /// /// 设备ID /// 通信状态(0=断开,1=正常) /// 取消令牌 /// 设置是否成功 Task SetDeviceCommunicationStateAsync(string deviceId, string commState, CancellationToken cancellationToken = default); /// /// 获取设备通信状态 /// /// 设备ID /// 取消令牌 /// 通信状态(0=断开,1=正常),null表示未找到 Task GetDeviceCommunicationStateAsync(string deviceId, CancellationToken cancellationToken = default); /// /// 检查设备通信状态是否正常 /// /// 设备ID /// 取消令牌 /// true=通信正常,false=通信异常或未找到 Task IsDeviceCommunicationNormalAsync(string deviceId, CancellationToken cancellationToken = default); /// /// 批量设置设备通信状态 /// /// 设备状态字典(设备ID -> 通信状态) /// 取消令牌 /// 成功设置的设备数量 Task SetDeviceCommunicationStatesAsync(Dictionary deviceStates, CancellationToken cancellationToken = default); /// /// 清除设备通信状态缓存 /// /// 设备ID,为空则清除所有 /// 取消令牌 Task ClearDeviceCommunicationStateAsync(string? deviceId = null, CancellationToken cancellationToken = default); } }