公共定义说明

TalkfunSDK.h

extern NSString * const TalkfunSDKVersion;

/**
 *  用户事件(public)
 */
extern NSString * const TALKFUN_EVENT_PLAY;                 //播放
extern NSString * const TALKFUN_EVENT_PAUSE;                //暂停
extern NSString * const TALKFUN_EVENT_STOP;                 //停止
extern NSString * const TALKFUN_EVENT_CAMERA_SHOW;          //摄像头开
extern NSString * const TALKFUN_EVENT_CAMERA_HIDE;          //摄像头关
extern NSString * const TALKFUN_EVENT_DESKTOP_START;        //桌面分享开始
extern NSString * const TALKFUN_EVENT_DESKTOP_STOP;         //桌面分享结束
extern NSString * const TALKFUN_EVENT_DESKTOP_PAUSE;        //桌面分享暂停
extern NSString * const TALKFUN_EVENT_MODE_CHANGE;          //直播间模式切换
extern NSString * const TALKFUN_EVENT_NETWORK_SPEED;        //网络速度
/**
 *  用户事件(live)
 */
extern NSString * const TALKFUN_EVENT_VOTE_NEW;             //投票开始
extern NSString * const TALKFUN_EVENT_VOTE_PUB;             //投票结束
extern NSString * const TALKFUN_EVENT_VOTE_DEL;             //投票删除
extern NSString * const TALKFUN_EVENT_VOTE_INFO;            //查看投票信息
extern NSString * const TALKFUN_EVENT_VOTE_SUBMIT;          //提交投票
extern NSString * const TALKFUN_EVENT_LOTTERY_START;        //抽奖开始
extern NSString * const TALKFUN_EVENT_LOTTERY_STOP;         //抽奖结束

extern NSString * const TALKFUN_SIGN_NEW;        //签到开始
extern NSString * const TALKFUN_SIGN_END;         //签到结束
extern NSString * const TALKFUN_SIGN_IN;     //提交签到


extern NSString * const TALKFUN_EVENT_BROADCAST;            //公共广播
extern NSString * const TALKFUN_EVENT_CHAT_DISABLE;         //禁言
extern NSString * const TALKFUN_EVENT_CHAT_ENABLE;          //解除禁言
extern NSString * const TALKFUN_EVENT_CHAT_DISABLE_ALL;     //全体禁言
extern NSString * const TALKFUN_EVENT_CHAT_SEND;            //信息发送接收
extern NSString * const TALKFUN_EVENT_CHAT_PRIVATE;         //私聊
extern NSString * const TALKFUN_EVENT_FLOWER_SEND;          //送花
extern NSString * const TALKFUN_EVENT_FLOWER_INIT;      //送花初始化
extern NSString * const TALKFUN_EVENT_FLOWER_TOTAL;         //花朵总数
extern NSString * const TALKFUN_EVENT_FLOWER_TIME_LEFT;     //送花剩余时间
extern NSString * const TALKFUN_EVENT_QUESTION_LIST;        //问题列表
extern NSString * const TALKFUN_EVENT_QUESTION_ASK;         //提问
extern NSString * const TALKFUN_EVENT_QUESTION_AUDIT;//通过
extern NSString * const TALKFUN_EVENT_QUESTION_REPLY;       //问题回复
extern NSString * const TALKFUN_EVENT_QUESTION_DELETE;      //问题删除
extern NSString * const TALKFUN_EVENT_MEMBER_JOIN_ME;       //我进入房间
extern NSString * const TALKFUN_EVENT_MEMBER_JOIN_OTHER;    //其他人进入房间
extern NSString * const TALKFUN_EVENT_MEMBER_LEAVE;         //其他人离开房间
extern NSString * const TALKFUN_EVENT_MEMBER_TOTAL;         //房间总人数
extern NSString * const TALKFUN_EVENT_MEMBER_KICK;          //踢人
extern NSString * const TALKFUN_EVENT_MEMBER_FORCEOUT;      //被强迫退出房间
extern NSString * const TALKFUN_EVENT_MEMBER_LIST;          //用户列表
extern NSString * const TALKFUN_EVENT_ANNOUNCE_NOTICE;      //公告
extern NSString * const TALKFUN_EVENT_ANNOUNCE_ROLL;        //滚动公告
extern NSString * const TALKFUN_EVENT_LIVE_WAIT;            //直播未开始
extern NSString * const TALKFUN_EVENT_LIVE_START;           //直播开始
extern NSString * const TALKFUN_EVENT_LIVE_STOP;            //直播结束
extern NSString * const TALKFUN_EVENT_ROOM_INIT;            //房间初始化

extern NSString * const TALKFUN_EVENT_RTC_INVITE;            //被邀请上讲台
extern NSString * const TALKFUN_EVENT_RTC_INVITECANCEL;      //取消邀请上讲台

extern NSString * const TALKFUN_EVENT_CURRENT_VIDEO_DEFINITION_LIST;        //默认视频清晰度
/**
 *  用户事件(playback)
 */
extern NSString * const TALKFUN_EVENT_VOD_START;            //点播开始
extern NSString * const TALKFUN_EVENT_VOD_STOP;             //点播结束
extern NSString * const TALKFUN_EVENT_VOD_DURATION;         //点播总时长
extern NSString * const TALKFUN_EVENT_VOD_INFO;             //点播信息
extern NSString * const TALKFUN_EVENT_VOD_QUESTION_APPEND;  //追加问题列表
extern NSString * const TALKFUN_EVENT_VOD_QUESTION_REFRESH; //刷新问题列表
extern NSString * const TALKFUN_EVENT_VOD_QUESTION_SCROOL;  //获得问答滚动的索引,必须使用TALKFUN_EVENT_VOD_QUESTION_REFRESH获得的数据列表
extern NSString * const TALKFUN_EVENT_VOD_MESSAGE_APPEND;   //聊天信息列表
extern NSString * const TALKFUN_EVENT_VOD_MESSAGE_REFRESH;  //刷新聊天列表
extern NSString * const TALKFUN_EVENT_VOD_MESSAGE_SCROOL;   //获得聊天滚动的索引,必须使用TALKFUN_EVENT_VOD_MESSAGE_REFRESH获得的数据列表
extern NSString * const TALKFUN_EVENT_VOD_CHAPTER_LIST;     //章节列表




extern NSString * const TALKFUN_EVENT_WHITEOARD_PAGE_FRAME;     //画板当前页的白板与ppt的frame

extern NSString * const TALKFUN_EVENT_SCORE_CONFIG;   //评分配置
extern NSString * const TALKFUN_EVENT_PPT_DISPLAY;   //ppt是否显示

/**
 *  用户事件(download)
 */
extern NSString * const TALKFUN_EVENT_DOWNLOAD_STATUS;      //下载状态
extern NSString * const TALKFUN_EVENT_DOWNLOAD_PROGRESS;    //下载进度

//extern NSString * const  TALKFUN_EVENT_INSUFFICIENT_DISK_SPACE_WARNING; //警告磁盘空间不足

/**
 *  广播名
 */
extern NSString * const TalkfunErrorNotification;       //错误信息广播(类型看错误信息类型)


/**
 用户角色
 **/
extern NSString * const TalkfunMemberRoleSpadmin;       //超级管理员(老师)
extern NSString * const TalkfunMemberRoleAdmin;         //管理员(助教)
extern NSString * const TalkfunMemberRoleUser;          //普通用户(学生)
extern NSString * const TalkfunMemberRoleGuest;         //游客

extern int const TalkfunMemberGenderUnknow;             //未知性别
extern int const TalkfunMemberGenderMale;               //男性
extern int const TalkfunMemberGenderFemale;             //女性

extern NSString * const TalkfunPlaybackID;              //点播离线播放的key



@interface TalkfunSDK : NSObject

#ifndef TalkfunError

//错误信息类型
typedef enum {
    //详细错误代码
    TalkfunErrrorCourseIsFinish = 1262,           //课程已结束
    TalkfunErrorAuthenticationFail = 10010,      //鉴权失败,access_token错误或者过期


    //错误大类
    TalkfunErrorLoadingData = 200000,            //加载数据出错
    TalkfunErrorNetworkDisconnect = 200001,       //网络连接错误
    TalkfunErrorVideoError = 200002,              //视频加载错误
    TalkfunErrorDownloadError = 200003,           //下载错误
    TalkfunErrorLoadingOfflineFileError = 200004,  //加载离线文件错误
    TalkfunErrorConnectionFailedError = 200005,  //socket连接失败
    TalkfunErrorNoMoreSpace = 10035 , //房间已满
    TalkfunErrorKick = 10034  //你已被管理员移出房间


}TalkfunError;

#endif


//视频加载状态
typedef NS_OPTIONS(NSUInteger, TalkfunPlayerLoadState) {
    TalkfunPlayerLoadStateUnknown        = 0,
    TalkfunPlayerLoadStatePlayable       = 1 << 0,
    TalkfunPlayerLoadStatePlaythroughOK  = 1 << 1, // Playback will be automatically started in this state when shouldAutoplay is YES
    TalkfunPlayerLoadStateStalled        = 1 << 2, // Playback will be automatically paused in this state, if started
};

//视频播放结束原因
typedef NS_ENUM(NSInteger, TalkfunPlayerMovieFinishReason) {
    TalkfunPlayerMovieFinishReasonPlaybackEnded,
    TalkfunPlayerMovieFinishReasonPlaybackError,
    TalkfunPlayerMovieFinishReasonUserExited
};

//状态码
typedef enum{

    TalkfunCodeSuccess = 0,
    TalkfunCodeFailed  = -1,
    TalkfunCodeTimeout = -100,
    TalkfunCodeGetDataFail = -101,
    TalkfunCodeWrongPassword = -3,
    TalkfunCodeUnknownError = 1000

}TalkfunCode;

//播放状态
typedef enum {

    TalkfunPlayStatusStop    = 0,
    TalkfunPlayStatusPlaying = 1,
    TalkfunPlayStatusPause   = 2,
    TalkfunPlayStatusSeeking = 3,
    TalkfunPlayStatusError   = 4

}TalkfunPlayStatus;

//0:应用,1:播放,2:暂停,3:拖动,4:关闭
//多媒体播放状态(音视频)
typedef enum {

    TalkfunMultiMediaStatusChangeListenerPlaying      = 1,//播放
    TalkfunMultiMediaStatusChangeListenerStop         = 2,//停止
    TalkfunMultiMediaStatusChangeListenerSeek         = 3,//快进
    TalkfunMultiMediaStatusChangeListenerClose        = 4,//关闭
    TalkfunMultiMediaStatusChangeListenerComplate     = 5,//完成
    TalkfunMultiMediaStatusChangeListenerError        = 6,//错误

}TalkfunMultiMediaStatusChangeListener;

//视频模式
typedef enum {

    TalkfunLiveModeVideo   = 0,
    TalkfunLiveModeDesktop = 2,
    TalkfunLiveModeRTC= 3
}TalkfunLiveMode;

//上课模式
typedef enum {

    TalkfunPageModeCourse   = 0, //课件
    TalkfunPageModeKeyNote = 1, //主讲
    TalkfunPageModeGallery= 2  //画廊模式
}TalkfunPageMode;

//网络状态
typedef enum {

    TalkfunNetworkStatusGood    = 0,  //网络好
    TalkfunNetworkStatusGeneral = 1, //网络一般
    TalkfunNetworkStatusBad     = 2  //网络较差

}TalkfunNetworkStatus;

//日志输出控制
typedef enum {
    TalkfunLoggerLevelAll = 0,
    TalkfunLoggerLevelLog = 1,
    TalkfunLoggerLevelInfo = 2,
    TalkfunLoggerLevelDebug = 3,
    TalkfunLoggerLevelWarn = 4,
    TalkfunLoggerLevelError = 5,
    TalkfunLoggerLevelFatal = 6,
    TalkfunLoggerLevelNone = 10
}TalkfunLoggerLevel;


typedef enum {
    TalkfunLiveStatusWait  = 0, //直播未开始
    TalkfunLiveStatusStart = 1, //直播开始
    TalkfunLiveStatusStop  = 2, //直播结束

}TalkfunLiveStatus;


typedef enum {
    TalkfunCourseTypeUnknown = -1,//未知
    TalkfunCourseTypeLive = 0, //大班模式             (非互动直播)
    TalkfunCourseTypeInteractiveLive  = 1, // 大班互动模式  (互动直播)
    TalkfunCourseTypeStatusRTC  = 2, //小班模式
    TalkfunCourseTypLowLatency  = 3, //大班低延时模式
}TalkfunCourseType;
typedef NS_ENUM(NSInteger, TalkfunMovieScalingMode) {
    TalkfunMovieScalingModeAspectFit = 0, ///< 图像适应屏幕,保持画面完整,但如果图像宽高比不同于屏幕宽高比,会有黑边的存在。

    TalkfunMovieScalingModeFill = 1,// 图像铺满屏幕,不留黑边,如果图像宽高比不同于屏幕宽高比,部分画面内容会被裁剪掉

};
@end
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/**
*     大班与小班的进入房间参数的模型
*/
@interface TalkfunSDKLiveInitParams : NSObject
/**【字段含义】访问令牌 [必填]
 */
@property (nonatomic, copy, nonnull)NSString* accessToken;
/** 课程模式 :(不设置的情况下默认为大班)
 */
@property (nonatomic, assign)TalkfunCourseType courseType;
@end

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/**
*     进入房间参数的模型
*/
@interface TalkfunSDKPlaybackInitParams : NSObject
/**【字段含义】访问令牌 [必填]
 */
@property (nonatomic, copy, nonnull)NSString* accessToken;
/**课程id
 */
@property (nonatomic, copy, nonnull)NSString*playbackID;
@end

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/**
*     生活直播的进入房间参数的模型
*/
@interface TalkfunSDKLifeLiveInitParams : NSObject
///【字段含义】访问令牌 [必填],
@property (nonatomic, copy, nonnull) NSString* accessToken;
@end
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
@interface TFLotteryStartUser : NSObject
/**发起抽奖人所在的组*/
@property (nonatomic, copy, nonnull)NSString* gid;
/**名字*/
@property (nonatomic, copy, nonnull)NSString* nickname;
/**角色
*/
@property(nonatomic,assign)TalkfunRtcRole role;
@end

/*抽奖开始的回调*/
@interface TFLotteryStart : NSObject
/**抽奖编号*/
@property (nonatomic, copy, nonnull)NSString *t;
/**发起抽奖人资料*/
@property (nonatomic, strong, nonnull)TFLotteryStartUser* user;
@end

@interface TFLotteryWinner : NSObject
/**中奖人的编号*/
@property (nonatomic, copy, nonnull)NSString* xid;
/**中奖人名字*/
@property (nonatomic, copy, nonnull)NSString* nickname;
/**发起抽奖人的名字*/
@property (nonatomic, copy, nonnull)NSString* launch_nickname;
/** 是不是自己*/
@property (nonatomic, assign)BOOL isMe;
@end

/*抽奖结束的回调*/
@interface TFLotteryStop : NSObject
@property (nonatomic, copy, nonnull)NSString* gid;
/**是否显示抽奖结果*/
@property (nonatomic, assign)BOOL pub;
@property (nonatomic, copy, nonnull)NSString* lotery_id;
//中奖人列表
@property (nonatomic, strong)NSMutableArray <TFLotteryWinner *>* _Nullable winnerList;
/**奖品名称*/
@property (nonatomic, copy, nonnull)NSString*prize_name;
@end
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

/**主播回复的内容*/
@interface TFQuestionAnswer : NSObject
@property (nonatomic, copy, nonnull) NSString* status;
@property (nonatomic, copy, nonnull) NSString* sn;
@property (nonatomic, copy, nonnull) NSString* qid;
//**回复的编号*/
@property (nonatomic, copy, nonnull) NSString* replyId;
@property (nonatomic, copy, nonnull) NSString* uid;
@property (nonatomic, copy, nonnull) NSString* liveid;
/**直播间是时间戳 例:1618036620
   点播间是秒数:60
 */
@property (nonatomic, copy, nonnull)NSString* time;
@property (nonatomic, copy, nonnull)NSString* gid;
/**头像链接*/
@property (nonatomic, copy, nonnull)NSString* avatar;
@property (nonatomic, copy, nonnull)NSString* replies;
/**角色*/
@property (nonatomic, assign)TalkfunRtcRole role;
/**名字*/
@property (nonatomic, copy, nonnull)NSString* nickname;
@property (nonatomic, copy, nonnull) NSString* course_id;
@property (nonatomic, copy, nonnull) NSString* xid;
/**内容*/
@property (nonatomic, copy, nonnull) NSString* content;
@end

/*提问的回调*/
@interface TFQuestionData : NSObject
@property (nonatomic, copy, nonnull) NSString* course_id;
@property (nonatomic, copy, nonnull) NSString* xid;
/*提问的编号*/
@property (nonatomic, copy, nonnull) NSString* qid;
@property (nonatomic, copy, nonnull) NSString* uid;
/**回复的编号*/
@property (nonatomic, copy, nonnull) NSString* replyId;
@property (nonatomic, copy, nonnull) NSString* liveid;
/**主播回复的内容*/
@property (nonatomic, strong)NSMutableArray <TFQuestionAnswer *>* _Nullable answer;
/**内容*/
@property (nonatomic, copy, nonnull) NSString* content;
/**直播间是时间戳 例:1618036620
   点播间是秒数:60
 */
@property (nonatomic, copy, nonnull)NSString* time;
@property (nonatomic, copy, nonnull)NSString* gid;
/**头像链接*/
@property (nonatomic, copy, nonnull)NSString* avatar;
@property (nonatomic, copy, nonnull)NSString* replies;
/**角色*/
@property (nonatomic, assign)TalkfunRtcRole role;
/**名字*/
@property (nonatomic, copy, nonnull)NSString* nickname;
@property (nonatomic, copy, nonnull) NSString* sn;
@property (nonatomic, copy, nonnull) NSString* status;
/*chat:1 */
@property (nonatomic, copy, nonnull) NSString*chat;
/*删除提问*/
@property (nonatomic, copy, nonnull) NSString * deleteQuestionID;
@end
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//网络
@interface TFCurrentNetwork: NSObject
//14.145.136.104
@property(nonatomic,strong)NSString * _Nonnull ip;
//电信
@property(nonatomic,strong)NSString * _Nonnull isp;
//中国广东广州
@property(nonatomic,strong)NSString * _Nonnull location;
@end

//------网络线路
@interface TFLiveLine: NSObject
//中国电信
@property(nonatomic,strong)NSString * _Nonnull name;
//telecom
@property(nonatomic,strong)NSString * _Nonnull key;
@end

/*网络线路组*/
@interface TFLiveLineData: NSObject
//线路列表
@property (nonatomic, strong)NSMutableArray <TFLiveLine *>* _Nullable lineList;
@end

/*直播线路管理者*/
@interface TFLiveLineManager: NSObject
/*直播的线路组
 */
@property (nonatomic, strong)NSMutableArray <TFLiveLineData *>* _Nullable data;
/*当前网络状态*/
@property(nonatomic,strong)TFCurrentNetwork * _Nullable network;
/*获取网络是否成功 code: 0 代表获取成功
 */
@property(nonatomic,assign)NSInteger code;
/*提示语*/
@property(nonatomic,strong)NSString* _Nonnull msg;
@end


@interface TFPlaybackLineData: NSObject
/*线路1 线路2*/
@property(nonatomic,strong)NSString* _Nonnull name;
/*索引*/
@property(nonatomic,assign)NSInteger index;
/*当前线路选中*/
@property(nonatomic,assign)BOOL current;
@end

/*回放或伪直播线路管理者*/
@interface TFPlaybackLineManager: NSObject
/*获取网络是否成功 code: 0 代表获取成功
 */
@property(nonatomic,assign)NSInteger code;
/*提示语*/
@property(nonatomic,strong)NSString* _Nonnull msg;
/*回放的线路组
 */
@property (nonatomic, strong)NSMutableArray <TFPlaybackLineData *>* _Nullable data;
@end

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/**
*    公告
*/
@interface TFAnnouncement : NSObject
///【字段含义】内容
@property (nonatomic, copy, nonnull) NSString* content;
///【字段含义】公告发起人
@property (nonatomic, copy, nonnull) NSString* nickname;
///【字段含义】内容 "2021-03-15 19:27"
@property (nonatomic, copy, nonnull) NSString* time;
@end
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/**
*      滚动通知
*/
@interface TFAnnounceRoll : NSObject
///【字段含义】时长
@property (nonatomic, assign) NSInteger duration;
///【字段含义】 内容
@property (nonatomic, copy, nonnull) NSString* content;
///【字段含义】 当前时间  (:2020-12-24 11:28)
@property (nonatomic, copy, nonnull) NSString* time;
///【字段含义】 超链接
@property (nonatomic, copy, nonnull) NSString *link;
/**名字*/
@property (nonatomic, copy, nonnull) NSString* nickname;
@end

@interface TFChat : NSObject
@property (nonatomic, assign) NSInteger enable;
@property (nonatomic, assign) NSInteger grant;
@end

@interface TFChatReply : NSObject
/*被@的人的名字*/
@property (nonatomic, copy, nonnull) NSString*nickname;
/*被@的人的xid*/
@property (nonatomic, copy, nonnull) NSString*xid;
/** 是不是自己*/
@property (nonatomic, assign)BOOL isMe;
@end


///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/**  ---------------------------------------聊天内容模型*/
@interface TFChatData : NSObject



@property (nonatomic, strong) TFChat*chat;
@property (nonatomic, copy, nonnull) NSString* gender;
//第三方身份
@property (nonatomic, copy, nonnull) NSString* uid;
@property (nonatomic, copy, nonnull) NSString* a;
@property (nonatomic, copy, nonnull) NSString* time;
@property (nonatomic, copy, nonnull) NSString* gid;
/**用户头像*/
@property (nonatomic, copy, nonnull) NSString* avatar;
/** 是不是自己*/
@property (nonatomic, assign)BOOL isMe;
/**角色*/
@property (nonatomic, assign)TalkfunRtcRole role;
@property (nonatomic, copy, nonnull) NSString* term;
/**发送数据的人的名字*/
@property (nonatomic, copy, nonnull) NSString* nickname;
@property (nonatomic, copy, nonnull) NSString* msg;
@property (nonatomic, copy, nonnull) NSString* xid;
/**聊天数据的唯一标识,可用于查询*/
@property (nonatomic, copy, nonnull) NSString* uuid;
@property (nonatomic, strong) NSArray* attr;
/**是否@
 replyList.cout  > 0  有@
 */
@property (nonatomic, strong)NSMutableArray <TFChatReply *>* _Nullable replyList;

/**聊天图片URL
          默认:@" "
 如果  imageURL.length > 0   ,证明是图片数据
 */
@property (nonatomic, strong)NSString * _Nonnull imageURL;

//打 赏
@property (nonatomic ,assign ) NSInteger   money;
@end

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/**
*    发起签到
*/
@interface TFSignNew : NSObject
///【字段含义】签到 ID
@property (nonatomic, copy, nonnull)NSString * signId;
///【字段含义】发起签到的时间  "2021-03-17 15:08:33"
@property (nonatomic, copy, nonnull)NSString * time;
///【字段含义】评论
@property (nonatomic, copy, nonnull)NSString * remark;
///【字段含义】发起签到人的名字
@property (nonatomic, copy, nonnull)NSString * nickname;
/**角色*/
@property (nonatomic, assign)TalkfunRtcRole role;
///【字段含义】签到的持续时长
@property (nonatomic, assign)NSInteger duration;
///【字段含义】发起签到人的头像
@property (nonatomic, copy, nonnull)NSString * avatar;
@end
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/**
*     结束签到的事件回调
*/
@interface TFSignEnd : NSObject
///【字段含义】 ID
@property (nonatomic, copy, nonnull)NSString * signId;
///【字段含义】total
@property (nonatomic, copy, nonnull)NSString * total;
///【字段含义】signTotal
@property (nonatomic, copy, nonnull)NSString * signTotal;
@end
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/**
*     直播时长
*/
@interface TFLiveDuration : NSObject
///    年
@property (nonatomic, assign)NSInteger year;
///    月
@property (nonatomic, assign)NSInteger month;
///    时
@property (nonatomic, assign)NSInteger day;
///    年
@property (nonatomic,assign)NSInteger hour;
///    分
@property (nonatomic, assign)NSInteger minute;
///    秒
@property (nonatomic, assign)NSInteger second;
@end



///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//学员已选择的内容列表
@interface TFOp : NSObject
///【字段含义】 选项的标题
@property (nonatomic, copy, nonnull)NSString * op;
///【字段含义】 选项的人数
@property (nonatomic, copy, nonnull)NSString * opNum;
///【字段含义】 选项的百分比
@property (nonatomic, copy, nonnull)NSString * percent;
///【字段含义】 选中
@property(nonatomic,assign)BOOL selected;
@end

//发起投票者的个人数据
@interface TFVoteInfo : NSObject
///【字段含义】"正确答案 A,B , C"
@property (nonatomic, copy, nonnull)NSArray * answer;
///【字段含义】 名字
@property (nonatomic, copy, nonnull)NSString * nickname;
/**角色*/
@property (nonatomic, assign)TalkfunRtcRole role;
///【字段含义】 标题
@property (nonatomic, copy, nonnull)NSString * title;
///【字段含义】 "14:10",
@property (nonatomic, copy, nonnull)NSString * noticeTime;
///【字段含义】 图片模式的投票
@property (nonatomic, copy, nonnull)NSString * imageUrl;
///【字段含义】标签
@property (nonatomic, strong)NSString * _Nullable label;
///【字段含义】 "209890283",
@property (nonatomic, strong)NSString * _Nullable xid;
///【字段含义】 投票的发起时间 ""2021-03-24 16:13:09"
@property (nonatomic, strong)NSString * _Nullable startTime;
///【字段含义】投票的结束  endTime == 1624591186  , 投票未结束 endTime = 0
@property(nonatomic,strong)NSString* _Nullable endTime ;

@end
//投票时选项的内容列表
@interface TFVoteNewUser : NSObject
///【字段含义】 ["0,1"],     选中的 索引
@property (nonatomic, copy, nonnull)NSMutableArray * option;
///【字段含义】uid
@property (nonatomic, copy, nonnull)NSString * uid;
///【字段含义】"19:52:46",
@property (nonatomic, copy, nonnull)NSString * time;
///【字段含义】"7379725
@property (nonatomic, copy, nonnull)NSString * userId;
///【字段含义】投票唯一编码
@property (nonatomic, copy, nonnull)NSString * vid;
///【字段含义】投票人的名字
@property (nonatomic, copy, nonnull)NSString * nickname;
///【字段含义】内容
@property (nonatomic, copy, nonnull)NSString * msg;
@end

/**通过xid获取当前投票详情*/
@interface TFVoteData : NSObject
///【字段含义】1 ==  单先  其它==多选
@property (nonatomic, assign)NSInteger optional;
///【字段含义】学员选择的内容列表
@property (nonatomic, strong)NSMutableArray <TFOp *>* _Nullable opList;
///【字段含义】发起投票者的个人数据
@property (nonatomic,strong)TFVoteInfo *_Nullable info;
///【字段含义】 ID
@property (nonatomic, copy, nonnull)NSString * gid;
///【字段含义】当前投票的ID
@property (nonatomic, copy, nonnull)NSString * vid;
///【字段含义】signTotal
@property (nonatomic, copy, nonnull)NSString * t;
///【字段含义】(0 未投票   1 已投票)
@property(nonatomic,assign)BOOL voted;
///【字段含义】(是否公布答案)
@property(nonatomic,assign)BOOL isShow;
///【字段含义】投票时选项的内容列表
@property (nonatomic, strong)NSMutableArray <TFVoteNewUser *>* _Nullable userList;
@end

/**提交投票答案*/
@interface TFSubmit: NSObject
///【字段含义】投票的ID
@property (nonatomic, strong)NSString * _Nullable vid;
///【字段含义】投票时用到的答案数组  [@"1",2]     就是A, B
@property (nonatomic, strong)NSMutableArray * _Nullable option;
@end



@interface TFKeyNote : NSObject
@property(nonatomic,assign) NSInteger status; //0是主播是主讲人,1是用户是主讲人
@property(nonatomic,strong) NSString * term;
@property(nonatomic,strong)NSString * nickname;
@property(nonatomic,strong)NSString * xid;
@end

/**广播*/
@interface TFBroadcast : NSObject
/**内容*/
@property(nonatomic,strong) NSString * msg;
@property(nonatomic,strong) NSString * uniqid;
@property(nonatomic,strong)NSString * __auto;
/**所在的组*/
@property(nonatomic,strong)NSString * gid;
/**时间戳 例:1618036620*/
@property(nonatomic,strong)NSString * time;
@end
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/**网络速度*/
@interface TFNetworkSpeed : NSObject
@property(nonatomic,assign) TalkfunNetworkStatus  networkStatus;
//6.0KB/s
@property(nonatomic,strong) NSString * speed;

@end

@interface TFMemberParams : NSObject
@property(nonatomic,assign)NSInteger page;
@property(nonatomic,assign)NSInteger size;
@end

@interface TFMemberChat : NSObject
//开关
@property (nonatomic, assign)NSInteger enable;
@property (nonatomic, assign)NSInteger grant;
@end

@interface TFMemberVoice : NSObject
//开关
@property (nonatomic, assign)NSInteger enable;
@property (nonatomic, assign)NSInteger grant;
@end

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/**
*    成员信息
*/
@interface TFMember : NSObject
///【字段含义】成员名字
@property (nonatomic, copy, nonnull) NSString* nickname;
///【字段含义】成员头像
@property (nonatomic, copy, nonnull) NSString* avatar;
@property (nonatomic, copy, nonnull) NSString* gender;
@property (nonatomic, copy, nonnull) NSString* uid;
/**角色*/
@property (nonatomic, assign)TalkfunRtcRole role;
/**{
 聊天权限
"enable" : 1,
"grant" : 0
}
 */
@property (nonatomic,strong) TFMemberChat*chat;
/**{
 语音权限
"enable" : 1,
"grant" : 0
}
 */
@property (nonatomic, strong) TFMemberVoice*voice;
@property (nonatomic, copy, nonnull) NSString* a;
@property (nonatomic, copy, nonnull) NSString* xid;
/**成员所在分组*/
@property (nonatomic, copy, nonnull) NSString* gid;
@property (nonatomic, copy, nonnull) NSString* term;
/**成员是不是机器人  默认:NO*/
@property (nonatomic, assign)NSInteger robot;

//标记status;

@property (nonatomic, assign) TalkfunApplyStatus status;
//涂鸦
@property (nonatomic, assign) BOOL drawPower;


@end


/**聊天配置详情*/
@interface TFMod_text_liveConfigChat : NSObject
//聊天
@property(nonatomic,strong) NSString * name;
//开关
@property(nonatomic,assign) BOOL enable;
//聊天间隔
@property(nonatomic,strong) NSString * interval;

@end

/**问答配置详情*/
@interface TFMod_text_liveConfigQa : NSObject
//问答
@property(nonatomic,strong) NSString * name;
//开关
@property(nonatomic,assign) BOOL enable;
//问答限制 0不通过 1通过 默认不通过
@property(nonatomic,strong) NSString * logic;
//聊天间隔
@property(nonatomic,strong) NSString * interval;
@end

@interface TFMod_text_liveConfig : NSObject
//聊天配置
@property(nonatomic,strong) TFMod_text_liveConfigChat * chat;
//问答配置
@property(nonatomic,strong) TFMod_text_liveConfigQa * qa;
@end


@interface TFMod_text_live : NSObject
@property(nonatomic,strong) TFMod_text_liveConfig * config;

@end




@interface TFMod_vote_Config_visible : NSObject
@property(nonatomic,strong) NSString * name;
//开关
@property(nonatomic,assign) BOOL enable;  //投票开关
@end

/**投票配置*/
@interface TFMod_vote_Config : NSObject

@property(nonatomic,strong) TFMod_vote_Config_visible * visible;
@end

/**投票模块*/
@interface TFMod_vote : NSObject

//开关
@property(nonatomic,assign) BOOL enable;

@property(nonatomic,strong) TFMod_vote_Config * config;
@end


@interface TFLiveScoreConfigValue : NSObject
//专业能力
@property(nonatomic,strong) NSString * name;
//种类
@property(nonatomic,assign) NSInteger sort;
//速度
@property(nonatomic,assign)NSInteger rate;
/* 选项 technologyScore effectScore*/
@property(nonatomic,strong) NSString *options;
@end

@interface TFLiveFlowerData : NSObject
@property(nonatomic,assign) NSString* time_interval;
@property(nonatomic,assign) NSString* uid;
@property(nonatomic,assign) NSString* bid;
@property(nonatomic,assign) NSString* roomid;
@property(nonatomic,assign) NSString* liveid;
//花朵总数
@property(nonatomic,assign) NSInteger amount;
@property(nonatomic,assign) NSString* sendtime;
@property(nonatomic,assign) NSString* left_amount;
@property(nonatomic,assign) NSString* gid;
/**头像*/
@property(nonatomic,assign) NSString* avatar;
@property(nonatomic,assign) NSString* pass_time;
@property(nonatomic,assign) NSString* left_time;
@property (nonatomic, assign)TalkfunRtcRole role;
@property(nonatomic,assign) NSString* pid;
@property(nonatomic,assign) NSString* nickname;
@property(nonatomic,assign) NSString* time;
/**用户唯一标识符*/
@property(nonatomic,assign) NSString* xid;
/**课程id*/
@property(nonatomic,assign) NSString* course_id;
@end

/**评分*/
@interface TFLiveScoreConfig : NSObject
///【字段含义】投票时选项的内容列表
@property (nonatomic, strong)NSMutableArray <TFLiveScoreConfigValue *>* _Nullable valueList;
@end

/**主讲人*/
@interface TFZhujiang : NSObject
//开关
@property(nonatomic,assign) BOOL enable;
//状态
@property(nonatomic,assign)NSInteger status;

@property (nonatomic, copy, nonnull)NSString* xid;
@end






/**用户摄像头*/
@interface TFUserCamera : NSObject
//邀请连麦 0无 1有
@property(nonatomic,assign) BOOL invite;
//申请连麦 0无 1有
@property(nonatomic,assign)BOOL apply;
/**记录有没有开启连麦权限*/
@property(nonatomic,assign)NSInteger lastDrawPower;
/**申请列表的数据*/
@property(nonatomic,strong)NSMutableArray<TFMember*>* applyList;
/**邀请列表的数据*/
@property(nonatomic,strong)NSMutableArray<TFMember*>* inviteList2;

/**讲台列表用户的数据*/

@property(nonatomic,strong)NSMutableArray<TalkfunRtcModel*>* upUsers;


@end


/**直播信息章节*/
@interface Mod_liveInfo_ConfigChapter : NSObject
/* 开关 */
@property (nonatomic, assign) NSInteger enable;
/**名字*/
@property (nonatomic, copy, nonnull)NSString* name;
@end


/**直播信息的课程配置*/
@interface TFMod_liveInfo_Config : NSObject

@property (nonatomic, strong)Mod_liveInfo_ConfigChapter* countdown;

//直播标题
@property (nonatomic, strong)Mod_liveInfo_ConfigChapter* title;


@property (nonatomic, strong)Mod_liveInfo_ConfigChapter* theme;

//直播时间 

@property (nonatomic, strong)Mod_liveInfo_ConfigChapter* liveTime;

@end




/**直播信息的课程配置*/
@interface TFMod_liveInfo_Live : NSObject

/* 开关 */
@property (nonatomic, assign) NSInteger enable;

/**直播信息的课程配置*/
@property(nonatomic,strong)TFMod_liveInfo_Config *config;

@end

/**直播互动奖杯配置*/
@interface TFMod_zhuboaction_Cup : NSObject

/* 开关 */
@property (nonatomic, assign) BOOL enable;

@property (nonatomic,strong) NSString * name;

@end

/**直播互动投票配置*/
@interface TFMod_zhuboaction_Vote : NSObject

/* 开关 */
@property (nonatomic, assign) BOOL enable;

@property (nonatomic,strong) NSString * name;

@end

/**直播互动通知配置*/
@interface TFMod_zhuboaction_Notice:NSObject
/* 开关 */
@property (nonatomic, assign) BOOL enable;

@property (nonatomic,strong) NSString * name;

@end

/**直播互动点名配置*/
@interface TFMod_zhuboaction_Rollcall:NSObject
/* 开关 */
@property (nonatomic, assign) BOOL enable;

@property (nonatomic,strong) NSString * name;

@end

/**直播互动计时器配置*/
@interface TFMod_zhuboaction_Timer:NSObject
/* 开关 */
@property (nonatomic, assign) BOOL enable;

@property (nonatomic,strong) NSString * name;

@end

/**直播互动公告配置*/
@interface TFMod_zhuboaction_Announcement:NSObject
/* 开关 */
@property (nonatomic, assign) BOOL enable;

@property (nonatomic,strong) NSString * name;

@end

/**直播互动广播配置*/
@interface TFMod_zhuboaction_Broadcast:NSObject
/* 开关 */
@property (nonatomic, assign) BOOL enable;

@property (nonatomic,strong) NSString * name;

@end

/**直播互动抢答器配置*/
@interface TFMod_zhuboaction_Responder:NSObject
/* 开关 */
@property (nonatomic, assign) BOOL enable;

@property (nonatomic,strong) NSString * name;

@end

/**直播互动转盘配置*/
@interface TFMod_zhuboaction_Turntable:NSObject
/* 开关 */
@property (nonatomic, assign) BOOL enable;

@property (nonatomic,strong) NSString * name;

@end

/**直播互动转盘配置*/
@interface TFMod_zhuboaction_Lottery:NSObject
/* 开关 */
@property (nonatomic, assign) BOOL enable;

@property (nonatomic,strong) NSString * name;

@end

/**直播互动信息配置*/
@interface TFMod_zhuboaction_Config : NSObject
/**奖杯*/
@property(nonatomic,strong)TFMod_zhuboaction_Cup * cup; //
/**投票*/
@property(nonatomic,strong)TFMod_zhuboaction_Vote * vote; //
/**通知*/
@property(nonatomic,strong)TFMod_zhuboaction_Notice * notice; //
/**公告*/
@property(nonatomic,strong)TFMod_zhuboaction_Announcement * announcement; //
/**广播*/
@property(nonatomic,strong)TFMod_zhuboaction_Broadcast * broadcast;
/**点名*/
@property(nonatomic,strong)TFMod_zhuboaction_Rollcall * rollcall;
/**抢答器*/
@property(nonatomic,strong)TFMod_zhuboaction_Responder * responder;

/**定时器*/
@property(nonatomic,strong)TFMod_zhuboaction_Timer * timer;

/**转盘*/
@property(nonatomic,strong)TFMod_zhuboaction_Turntable * turntable;
/**抽奖*/
@property(nonatomic,strong)TFMod_zhuboaction_Lottery * lottery;

@end


/**直播互动信息配置*/
@interface TFMod_zhuboaction_live : NSObject

/* 开关 */
@property (nonatomic, assign) BOOL enable;

/**直播互动配置*/
@property(nonatomic,strong)TFMod_zhuboaction_Config *config;

@end

/**课前聊天配置*/
@interface TFMod_beforeclass_chat : NSObject

/* 开关 */
@property (nonatomic, assign) BOOL enable;

@property (nonatomic,strong) NSString * name;

@end


/**课前信息配置*/
@interface TFMod_beforeclass_Config : NSObject

@property(nonatomic,strong)TFMod_beforeclass_chat * chat;
@end

/**课前互动信息配置*/
@interface TFMod_beforeclass_live : NSObject

/* 开关 */
@property (nonatomic, assign) BOOL enable;

/**课前互动配置*/
@property(nonatomic,strong)TFMod_beforeclass_Config *config;

@end

/**课后聊天配置*/
@interface TFMod_afterclass_chat : NSObject

/* 开关 */
@property (nonatomic, assign) BOOL enable;

@property (nonatomic,strong) NSString * name;

@end


/**课后信息配置*/
@interface TFMod_afterclass_Config : NSObject

@property(nonatomic,strong)TFMod_afterclass_chat * chat;
@end

/**课后互动信息配置*/
@interface TFMod_afterclass_live : NSObject

/* 开关 */
@property (nonatomic, assign) BOOL enable;

/**课后互动配置*/
@property(nonatomic,strong)TFMod_afterclass_Config *config;

@end


/**直播的课程配置*/
@interface TFLiveRoomInfo : NSObject

/*是否显示访客人数*/
@property (nonatomic,assign)BOOL visitors;
/*YES:单体禁言 NO:单体解除禁言 */
@property (nonatomic,assign)BOOL isChatDisable;
/*YES:全体禁言 NO:全体解除禁言 */
@property (nonatomic,assign)BOOL isDisableAll;
/*摄像头开关获取 */
@property (nonatomic,assign)BOOL isCamera;
/*同时在线人数*/
@property (nonatomic,assign)NSInteger peakConcurrentUsers;
/*在线的客服列表*/
@property (nonatomic, strong)NSMutableArray<TFMember *>* _Nullable serviceList;


@property(nonatomic,strong) TFMod_text_live * mod_text_live;
/* 课后互动信息 */
@property(nonatomic,strong) TFMod_afterclass_live * mod_afterclass_live;
/* 课前互动信息 */
@property(nonatomic,strong) TFMod_beforeclass_live * mod_beforeclass_live;
/* 直播互动信息 */
@property(nonatomic,strong) TFMod_zhuboaction_live * mod_zhuboaction_live;
/* 用户摄像头信息 */
@property(nonatomic,strong) TFUserCamera *usercamera;
/* 直播信息 */
@property(nonatomic,strong) TFMod_liveInfo_Live * mod_liveinfo_live;

/* 获取当前用户个人数据 */
@property (nonatomic,strong)TFMember * myInfo;
/*评分系统是否开启*/
//@property(nonatomic,assign)BOOL evaluate;
/* 评分的数据 */
@property(nonatomic,strong)TFLiveScoreConfig *scoreConfig;
/**获取当前花朵总数*/
@property(nonatomic,assign) NSInteger flowerTotal;
/**课程是伪直播*/
@property(nonatomic,assign) BOOL isVodLive;
/* 获取主播个人数据 */
@property (nonatomic,strong)TFMember * zhuboInfo;
/* 获取课程标题 */
@property (nonatomic,strong)NSString * title;

/* 获取主讲人数据 */
@property (nonatomic,strong)TFZhujiang* zhujiang;
/*课程开始的时间戳 */
@property (nonatomic,assign)NSInteger startTime;
/*课程结束的时间戳 */
@property (nonatomic,assign)NSInteger end_time;
///【字段含义】暖场视频
@property (nonatomic, strong)NSString* _Nullable videoUrl;
/*在线的机器人列表*/
@property (nonatomic, strong)NSMutableArray<TFMember *>* _Nullable robotList;
/**投票模块*/
@property(nonatomic,strong) TFMod_vote * mod_vote;

@end

/**课程配置*/
@interface TFLiveModeChange : NSObject
/* 当前模式 */
@property(nonatomic,assign) TalkfunLiveMode currentMode;
/* 上一次的模式 */
@property (nonatomic,assign)TalkfunLiveMode beforeMode;
@end

/**点播水印*/
@interface TFMod_theftproof : NSObject
/* 开关 */
@property (nonatomic, assign) NSInteger enable;
/**xid*/
@property (nonatomic, copy, nonnull)NSString* xid;
@end

/**点播聊天*/
@interface TFMod_playbackinfo_playbackConfigChat : NSObject
/* 开关 */
@property (nonatomic, assign) NSInteger enable;
/**名字*/
@property (nonatomic, copy, nonnull)NSString* name;
@end

/**点播章节*/
@interface TFMod_playbackinfo_playbackConfigChapter : NSObject
/* 开关 */
@property (nonatomic, assign) NSInteger enable;
/**名字*/
@property (nonatomic, copy, nonnull)NSString* name;
@end

/**点播提问*/
@interface TFMod_playbackinfo_playbackConfigQa : NSObject
/* 开关 */
@property (nonatomic, assign) NSInteger enable;
/**名字*/
@property (nonatomic, copy, nonnull)NSString* name;
@property (nonatomic, copy, nonnull)NSString* logic;
@property (nonatomic, copy, nonnull)NSString* interval;
@end

/**点播的   聊天---章节---提问   */
@interface TFMod_playbackinfo_playbackConfig : NSObject
/* 聊天 */
@property (nonatomic, strong)TFMod_playbackinfo_playbackConfigChat *chat;
/* 章节 */
@property (nonatomic, strong)TFMod_playbackinfo_playbackConfigChapter *chapter;
/* 提问 */
@property (nonatomic, strong)TFMod_playbackinfo_playbackConfigQa *qa;
@end

@interface TFMod_playbackinfo_playback : NSObject
/**回放信息*/
@property (nonatomic, copy, nonnull)NSString* name;
/* 开关 */
@property (nonatomic, assign) NSInteger enable;
/**点播的聊天与提问的配置开关*/
@property(nonatomic,strong)TFMod_playbackinfo_playbackConfig *config;
@end

/**点播的课程配置*/
@interface TFPlaybackRoomInfo : NSObject
/* 水印 */
@property(nonatomic,strong)TFMod_theftproof *mod_theftproof;
/* 回放信息*/
@property(nonatomic,strong)TFMod_playbackinfo_playback *mod_playbackinfo_playback;

//课程总时长
@property (nonatomic,assign) CGFloat totalTime;
@end




NS_ASSUME_NONNULL_END


@interface TFPlaybackAlbum : NSObject
//1768563  id = playbackID
@property (nonatomic, copy, nonnull)NSString *playbackID;
//计算机一级-精讲6
@property (nonatomic, copy, nonnull)NSString *title;
//https://s2.talk-fun.com/4/live/563/59177/mtc7odu7mw/thumb-80x60.jpg
@property (nonatomic, copy, nonnull)NSString *img_small;
//gYyYjM5IjMxQDOElTOxQERBJTRzIkI6ICZpVnIsIiclNXdiojIlx2byJye
@property (nonatomic, copy, nonnull)NSString *access_token;
// 课程时长:秒数  161
@property (nonatomic, assign)NSInteger duration;
/**当前选中的专辑*/
@property(nonatomic,assign)BOOL select;
@end

//章节page
@interface TFPlaybackChapterPage : NSObject
/**时间  例:55  */
@property (nonatomic, assign)CGFloat starttime ;
/**图像*/
@property (nonatomic, copy, nonnull)NSString* thumbnail;
/**页面名字*/
@property (nonatomic, copy, nonnull)NSString* course;
/**当前页码*/
@property (nonatomic, assign)NSInteger page;
@end

//章节page
@interface TFPlaybackChatData : NSObject
@property (nonatomic, copy, nonnull) NSString* uid;
@property (nonatomic, copy, nonnull) NSString* a;
//1622119692
@property (nonatomic, copy, nonnull) NSString* timestamp;
//7276
@property (nonatomic, copy, nonnull) NSString* starttime;
/**时间  例:55  */
@property (nonatomic, copy, nonnull)  NSString* time;
@property (nonatomic, copy, nonnull)  NSString* gid;
/**头像链接*/
@property (nonatomic, copy, nonnull)  NSString* avatar;
@property (nonatomic, copy, nonnull)  NSString* cmd;
/**角色*/
@property (nonatomic, assign)TalkfunRtcRole role;
/**名字*/
@property (nonatomic, copy, nonnull) NSString* nickname;
/**内容*/
@property (nonatomic, copy, nonnull) NSString * msg;
@property (nonatomic, copy, nonnull) NSString* status;
@property (nonatomic, copy, nonnull) NSString* xid;
@end




/**主播回复的内容*/
@interface TFPlaybackQuestionAnswer : NSObject
//@property (nonatomic, copy, nonnull) NSString* status;
@property (nonatomic, copy, nonnull) NSString* sn;
@property (nonatomic, copy, nonnull) NSString* qid;
//**回复的编号*/
//@property (nonatomic, copy, nonnull) NSString* replyId;
@property (nonatomic, copy, nonnull) NSString* uid;
/*点播间是秒数:60*/
@property (nonatomic, copy, nonnull)NSString* startTime;
//@property (nonatomic, copy, nonnull)NSString* gid;
/**头像链接*/
@property (nonatomic, copy, nonnull)NSString* avatar;
/**角色*/
@property (nonatomic, assign)TalkfunRtcRole role;
/**名字*/
@property (nonatomic, copy, nonnull)NSString* nickname;
@property (nonatomic, copy, nonnull) NSString* xid;
/**内容*/
@property (nonatomic, copy, nonnull) NSString* content;
@end


////点播的提问
@interface TFPlaybackQuestionData : NSObject

@property (nonatomic, copy, nonnull) NSString* xid;
/*提问的编号*/
@property (nonatomic, copy, nonnull) NSString* qid;
@property (nonatomic, copy, nonnull) NSString* uid;

/**主播回复的内容*/
@property (nonatomic, strong)NSMutableArray <TFPlaybackQuestionAnswer *>* _Nullable answer;
/**内容*/
@property (nonatomic, copy, nonnull) NSString* content;
/**
   点播间是秒数:60
 */
@property (nonatomic, copy, nonnull)NSString* startTime;
//@property (nonatomic, copy, nonnull)NSString* gid;
/**头像链接*/
@property (nonatomic, copy, nonnull)NSString* avatar;

/**角色*/
@property (nonatomic, assign)TalkfunRtcRole role;
/**名字*/
@property (nonatomic, copy, nonnull)NSString* nickname;
@property (nonatomic, copy, nonnull) NSString* sn;
//@property (nonatomic, copy, nonnull) NSString* status;

@end

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/**
*    主播的资料
*/
@interface TFZhubo : NSObject
///【字段含义】名字
@property (nonatomic, copy, nonnull) NSString* nickname;
///【字段含义】头像
@property (nonatomic, copy, nonnull) NSString* avatar;
@end
Copyright Talkfun all right reserved,powered by Gitbook修订时间: 2021-08-26 17:26:23

results matching ""

    No results matching ""