//
//  RTCXDataChannelMgr.h
//  RTCXMedia
//
//  Created by Apple on 2025/9/15.
//

#import <Foundation/Foundation.h>
#import "RTCXDataChannelnterface.h"
#import <RTCXMedia/RTCXDataChannelModel.h>
#import "RTCXDataChannel.h"
NS_ASSUME_NONNULL_BEGIN

#define kRTCXDataChannelManager [RTCXDataChannelMgr sharedManager]

@interface RTCXDataChannelMgr : NSObject
/**
 返回单例

 @return 单例
 */
+ (instancetype)sharedManager;
/**
 初始化DataChannel对象
 
 @param req 请求参数
 @return 返回 RTCXDataChannelInterface协议 对象
 */
- (id<RTCXDataChannelnterface>)buildChannel:(RTCXDataChannelReq *)req;
/**
 销毁 DataChannel 对象，在 DataChannel 不再需要时调用此方法，可以将其从 管理者维护的队列中删除
 
 @param iotId 平台为设备颁发的ID，设备的唯一标识符
 */
- (void)destroyChannel:(NSString *)iotId;
@end

NS_ASSUME_NONNULL_END
