123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113 |
- //
- // webRtcManager.h
- // 双子星云手机
- //
- // Created by xd h on 2024/9/5.
- //
- #import <Foundation/Foundation.h>
- #import <WebRTC/AMediaStream.h>
- #import <WebRTC/RTCMacros.h>
- #import <WebRTC/RTCIceCandidate.h>
- #import "webRtcMsgModel.h"
- #import "USBInsertPopView.h"
- #import "addLogObject.h"
- #import "BoxHeartbeatAlertTool.h"
- #import "queryHeartbeatModel.h"
- #import "BoxHeartbeatReStartSucView.h"
- #import "BoxHeartbeatReStartView.h"
- #import "customDownloadOperation.h"
- #import "DFPlayer.h"
- #import "RCCommandHelp.h"
- #import "customDownloadCacheManager.h"
- #import "boxDownloadFileManager.h"
- #import "commandSendCheckModel.h"
- #import "couldPhoneCommonModel.h"
- #import "extraMediaEventModel.h"
- NS_ASSUME_NONNULL_BEGIN
- @interface webRtcManager : NSObject
- {
- USBInsertPopView *curUSBInsertPopV;
- //下载nas相关
- customDownloadOperation* curDownloadmodel;
- }
- /** 实例化对象(单例) */
- + (instancetype)shareManager;
- @property (nonatomic, strong) AMediaStream *mediaStream;
- @property (nonatomic, assign) BOOL didReportWebRtcOKType;
- @property (nonatomic, assign) BOOL didReportWebRtcFailType;
- @property(nonatomic,assign)BOOL isRebootIngType;//是否重启中
- @property(nonatomic,assign)BOOL isResetingType;//是否恢复出厂中
- @property(nonatomic,assign)BOOL isChangeBoxType;//是否更换盒子
- @property(nonatomic,assign)BOOL isLogoutByOtherType;//被挤下线
- @property(nonatomic,assign)BOOL isWaitShowLogoutAlert;//隐私模式等待被挤下线弹框是否弹出
- @property(nonatomic,assign)BOOL isDiDChangePhoneSizeType;//是否修改了分辨率(如果是 进去云机需要重设解码器)
- @property(nonatomic,assign) RTCDataChannelState channelState;
- @property(nonatomic,assign) RTCIceConnectionState ConnectionState;
- #pragma mark 分类属性
- #pragma mark 下载nas文件用到
- @property (nonatomic, copy) NSString*nasFullPath;
- //下载nas ws 文件 保存到文件 正在弹框中
- @property (nonatomic, assign) BOOL isShowingFileDocumentPickerType;
- @property(nonatomic,copy) NSString* webRtcChannelSessionId;//第一次链接webrtc信令的时间
- #pragma mark 开始链接
- - (void)beginToLinkWebRtcFun;
- #pragma mark 重新链接
- - (void)relinkWebRtcFun;
- #pragma mark 关闭链接
- - (void)closeLinkWebRtcFun;
- #pragma mark webrtc P2P通道发送消息
- - (void)send_data:(NSString *)dataStr;
- #pragma mark 获取云机系统镜像等信息
- - (void)getSysInfoFun;
- #pragma mark 获取云机基本信息
- - (void)getBaseInfoFun;
- #pragma mark 获取云机剩余空间(包含外挂磁盘)
- - (void)getExtraFilesListFun;
- #pragma mark 重启云机
- - (void)needToRebootFun;
- #pragma mark 恢复出厂设置云机
- - (void)needToResetFun;
- #pragma mark 云机截图保存到云机图库
- - (void)screenshotInCloudPhoneFun;
- #pragma mark 获取TV投屏状态
- - (void)getTvStatusFun;
- #pragma mark 关闭TV投屏状态
- - (void)offTvFun;
- #pragma mark 开启TV投屏状态
- - (void)onTvFun;
- //创建备份文件夹
- - (void)createBackupsFolderBy:(NSString*)backupsDefaultPath;
- //获取备份文件夹列表
- - (void)getBackupFolderListFun;
- #pragma mark 分类方向
- #pragma mark nas下载完成
- - (void)NasDownloadTaskFinishedNoti:(customDownloadOperation *)nasDownloadOperation;
- #pragma mark 上报打洞是否成功
- - (void)reportWebRtcRePoportTypeIsChannel:(BOOL)IsChannel withStats:(RTC_OBJC_TYPE(RTCStatisticsReport) *)stats withSessionId:(NSString*)sessionId withLogKey:(NSString*)logkey;
- // IsChannel:是否是P2P通道
- - (void)reportWebRtcRePoportTypeIsChannel:(BOOL)IsChannel withLocal:(RTC_OBJC_TYPE(RTCIceCandidate) *)local remoteCandidate:(RTC_OBJC_TYPE(RTCIceCandidate) *)remote withSessionId:(NSString*)sessionId withLogKey:(NSString*)logkey;
- @end
- NS_ASSUME_NONNULL_END
|