package com.threecloud.dataserviceyy.service.channel; import com.threecloud.dataserviceyy.entity.MidVoiceChannelConfig; import java.util.List; /** * 通道配置提供者接口 * 定义获取通道配置的通用方法,支持多种实现(EBOX API、数据库、手动配置等) */ public interface ChannelConfigProvider { /** * 获取指定设备的所有通道配置 * * @param deviceNo 设备编码 * @param deviceIp 设备IP地址 * @param authToken 认证令牌(部分实现需要) * @return 通道配置列表 */ List getChannelConfigs(String deviceNo, String deviceIp, String authToken); /** * 获取指定设备的单个通道配置 * * @param deviceNo 设备编码 * @param channelNo 通道号 * @param deviceIp 设备IP地址 * @param authToken 认证令牌 * @return 通道配置,不存在返回null */ MidVoiceChannelConfig getChannelConfig(String deviceNo, Integer channelNo, String deviceIp, String authToken); /** * 是否支持该设备类型 * * @param deviceModel 设备型号 * @return true表示支持 */ boolean supports(String deviceModel); /** * 提供者名称 * * @return 名称标识 */ String getProviderName(); }