会议服务
开始会议参数
@interface YealinkSDKStartMeetingParam
是否打开音频
@property (nonatomic, assign) BOOL isOpenAudio
是否打开视频
@property (nonatomic, assign) BOOL isOpenVideo
会议设置参数
@interface YealinkSDKMeetingConfig
是否支持QA功能
@property (nonatomic, assign) BOOL isQAEnable
是否支持投票功能
@property (nonatomic, assign) BOOL isVoteEnable
未登录加入会议参数
@interface YealinkJoinMeetingWithoutLoginParam
用户名
@property (nonatomic, copy) NSString *userName
会议id
@property (nonatomic, copy) NSString *meetingId
会议密码
@property (nonatomic, copy) NSString *password
会议服务器
@property (nonatomic, copy) NSString *server
会议端口号
@property (nonatomic, copy) NSString *port
是否打开音频
@property (nonatomic, assign) BOOL isOpenAudio
是否打开音频
@property (nonatomic, assign) BOOL isOpenVideo
入会显示名
@property (nonatomic, copy) NSString *displayName
加入会议参数
@interface YealinkSDKJoinMeetingParam
是否打开音频
@property (nonatomic, assign) BOOL isOpenAudio
是否打开视频
@property (nonatomic, assign) BOOL isOpenVideo
会议号码
@property (nonatomic, copy) NSString *meetingNumber
密码
@property (nonatomic, copy) NSString *password
会议信息
@interface YealinkSDKMeetingInfo
会议号码
@property (nonatomic, copy) NSString *meetingNumber
会议密码
@property (nonatomic, copy) NSString *meetingPassword
会议主题
@property (nonatomic, copy) NSString *meetingTitle
通话创建UTC时间,单位秒
@property (nonatomic, assign) NSTimeInterval meetingCreateTime
会议加入链接
@property (nonatomic, copy) NSString *meetingJoinUrl
会议加入链接
@property (nonatomic, assign) YealinkSDKMeetingType meetingType
typedef NS_ENUM(NSInteger, YealinkSDKMeetingType) {
/// 异常
YealinkSDKMeetingType_Invalid = 0,
/// 普通会议
YealinkSDKMeetingType_Meeting = 1,
/// Webinar
YealinkSDKMeetingType_Webinar = 2,
};
自定义唯一通话VC的参数类
@interface YealinkSDKMeetingCustomTalkVCParam
是否显示本地小窗口画面
@property (assign) BOOL miniWindowHidden
是否显示本顶部栏
@property (assign) BOOL topBarHidden
是否显示底部栏
@property (assign) BOOL bottomBarHidden
是否禁用旋转
@property (assign) BOOL rotateDisable
视频窗口布局
@property (assign) CGRect videoFrame
加入第三方会议参数
@interface YealinkSDKJoinThirdPartyMeetingParam
是否打开音频
@property (nonatomic, assign) BOOL isOpenAudio
是否打开视频
@property (nonatomic, assign) BOOL isOpenVideo
会议号或uri
@property (nonatomic, copy) NSString *meetingNumberOrURI
呼叫协议
@property (nonatomic, assign) YealinkSDKJoinThirdMeetingProtocalType protocalType
typedef NS_ENUM(NSInteger, YealinkSDKJoinThirdMeetingProtocalType) {
/// SIP
YealinkSDKJoinThirdMeetingProtocalType_SIP = 0,
/// H323
YealinkSDKJoinThirdMeetingProtocalType_H323 = 1
};
会议服务类功能
@interface YealinkSDKMeetingService
会议底部菜单栏
- 说明:不设置该代理时,会使用默认底部栏实现;如果实现了该代理没有实现,底部栏不显示
@property (nonatomic, weak) id <YealinkSDKBottomMenuUIDelegate> bottomMenuUIDelegate
会议更多菜单栏
- 说明:不设置该代理时,会使用默认底部栏实现;如果实现了该代理没有实现,底部栏不显示
@property (nonatomic, weak) id <YealinkSDKMoreMenuUIDelegate> moreMenuUIDelegate
开始会议
- (void)startMeetingWithParam:(YealinkSDKStartMeetingParam *)param
NAME |
NOTERIPTION |
param |
开始会议参数 |
@interface YealinkSDKStartMeetingParam : NSObject
/*!
@brief 是否打开音频
*/
@property (nonatomic, assign) BOOL isOpenAudio;
/*!
@brief 是否打开视频
*/
@property (nonatomic, assign) BOOL isOpenVideo;
@end
加入会议
- (void)joinMeetingWithParam:(YealinkSDKJoinMeetingParam *)param
NAME |
NOTERIPTION |
param |
加入会议参数 |
设置自定义通话视图参数
- 说明:在meetingCustomTalkVCEnable设置为YES的情况下,设置此参数才有效
- (void)setMeetingCustomTalkVCParam:(YealinkSDKMeetingCustomTalkVCParam *)param
NAME |
NOTERIPTION |
param |
加入会议参数 |
@interface YealinkSDKMeetingCustomTalkVCParam : NSObject
/*!
@brief 是否显示本地小窗口画面
*/
@property (assign) BOOL miniWindowHidden;
/*!
@brief 是否显示本顶部栏
*/
@property (assign) BOOL topBarHidden;
/*!
@brief 是否显示底部栏
*/
@property (assign) BOOL bottomBarHidden;
/*!
@brief 是否禁用旋转
*/
@property (assign) BOOL rotateDisable;
/*!
@brief 视频窗口布局
*/
@property (assign) CGRect videoFrame;
@end
离开会议
- (void)leaveMeeting
结束会议
- (void)endMeeting
邀请会议成员
- 说明:邀请地址簿中的成员,参数是联系人ID,contactId需要从联系人模块获取,是一个联系人的唯一识别ID
- (void)inviteMeetingUserWithContactIdArray:(NSArray<NSString *> *)contactIdArray
NAME |
NOTERIPTION |
contactIdArray |
联系人ID数组 |
邀请会议成员
- 说明:参数是account账号数组,是一个账号的唯一识别ID
- (void)inviteMeetingUserWithAcountArray:(NSArray<NSString *> *)accountArray
NAME |
NOTERIPTION |
accountArray |
账号数组 |
获取会议信息
- (YealinkSDKMeetingInfo *)getMeetingInfo
TYPE |
NOTERIPTION |
YealinkSDKMeetingInfo |
会议信息 |
@interface YealinkSDKMeetingInfo : NSObject
/*!
@brief 会议号码
*/
@property (nonatomic, copy) NSString *meetingNumber;
/*!
@brief 会议密码
*/
@property (nonatomic, copy) NSString *meetingPassword;
/*!
@brief 会议主题
*/
@property (nonatomic, copy) NSString *meetingTitle;
/*!
@brief 通话创建UTC时间,单位秒
*/
@property (nonatomic, assign) NSTimeInterval meetingCreateTime;
/*!
@brief 会议加入链接
*/
@property (nonatomic, copy) NSString *meetingJoinUrl;
/*!
@brief 会议加入链接
@link YealinkSDKMeetingType
*/
@property (nonatomic, assign) YealinkSDKMeetingType meetingType;
@end
无登录入会
- (void)joinMeetingWithoutLogin:(YealinkJoinMeetingWithoutLoginParam *)param
@interface YealinkJoinMeetingWithoutLoginParam : NSObject
/*!
@brief 用户名
*/
@property (nonatomic, copy) NSString *userName;
/*!
@brief 会议id
*/
@property (nonatomic, copy) NSString *meetingId;
/*!
@brief 会议密码
*/
@property (nonatomic, copy) NSString *password;
/*!
@brief 会议服务器
*/
@property (nonatomic, copy) NSString *server;
/*!
@brief 会议端口号
*/
@property (nonatomic, copy) NSString *port;
/*!
@brief 是否打开音频
*/
@property (nonatomic, assign) BOOL isOpenAudio;
/*!
@brief 是否打开音频
*/
@property (nonatomic, assign) BOOL isOpenVideo;
/*!
@brief 入会显示名
*/
@property (nonatomic, copy) NSString *displayName;
@end
获取会议记录列表
- (void)getMeetingHistoryList
加入邀请会议
- (void)joinMeetingWithInvite:(YealinkSDKMeetingInvite *)invite
NAME |
NOTERIPTION |
invite |
会议邀请信息 |
@interface YealinkSDKMeetingInvite : NSObject
/*!
@brief 会议号
*/
@property (nonatomic, copy) NSString *meetingNumber;
/*!
@brief 入会秘钥
*/
@property (nonatomic, copy) NSString *credential;
/*!
@brief 会议归属地信息
*/
@property (nonatomic, copy) NSString *location;
/*!
@brief 会议主题
*/
@property (nonatomic, copy) NSString *title;
/*!
@brief 邀请者名称
*/
@property (nonatomic, copy) NSString *inviterName;
/*!
@brief 邀请事务id
*/
@property (nonatomic, copy) NSString *inviteTransId;
/*!
@brief 秘钥查询参数,用于webinar会议邀请时,get credential传给会控
*/
@property (nonatomic, copy) NSString *credentialQuery;
@end
拒绝加入邀请的会议
- (void)rejectMeetingInvite:(YealinkSDKMeetingInvite *)invite
NAME |
NOTERIPTION |
invite |
会议邀请信息 |
打开浮窗模式,收起会议画面
- (void)showFloatWindow
切换会议画面横竖屏
- (void)switchMeetingOrientation
获取输出音频设备
- (YealinkSDKAudioDeviceType)getCurrentAudioDevice
TYPE |
NOTERIPTION |
YealinkSDKAudioDeviceType |
输出音频设备 |
typedef NS_ENUM(NSUInteger, YealinkSDKAudioDeviceType) {
/// 扬声器
YealinkSDKAudioDeviceType_AudioLoudSpeaker,
/// 听筒
YealinkSDKAudioDeviceType_TelReciever,
/// 头戴设备
YealinkSDKAudioDeviceType_HeadSet,
/// 蓝牙
YealinkSDKAudioDeviceType_BlueTooth,
};
选择要使用的扬声器设备
- (void)setCurrentSpeaker:(YealinkSDKAudioOutputType)outputType
NAME |
NOTERIPTION |
outputType |
扬声器设备类型 |
typedef NS_ENUM(NSUInteger, YealinkSDKAudioOutputType) {
/// 扬声器
YealinkSDKAudioOutputType_Speaker,
/// 听筒
YealinkSDKAudioOutputType_Receiver,
};
修改麦克风静音状态
- (void)muteAudio:(BOOL)mute
NAME |
NOTERIPTION |
mute |
是否静音或解静音 |
获取发言模式
- (YealinkSDKMeetingSpeakingMode)getCurrentSpeakMode
TYPE |
NOTERIPTION |
YealinkSDKMeetingSpeakingMode |
发言模式枚举 |
typedef NS_ENUM(NSUInteger, YealinkSDKMeetingSpeakingMode) {
/// 异常值
YealinkSDKMeetingSpeakingMode_Invalid,
/// 自由发言
YealinkSDKMeetingSpeakingMode_Free,
/// 申请发言
YealinkSDKMeetingSpeakingMode_HandUp,
};
获取当前会议配置
- (YealinkSDKMeetingConfig *)getMeetingConfig
TYPE |
NOTERIPTION |
YealinkSDKMeetingConfig |
会议配置 |
@interface YealinkSDKMeetingConfig : NSObject
/*!
@brief 是否支持QA功能
*/
@property (nonatomic, assign) BOOL isQAEnable;
/*!
@brief 是否支持投票功能
*/
@property (nonatomic, assign) BOOL isVoteEnable;
@end
开启/关闭举手发言
- (void)setSpeakingMode:(YealinkSDKMeetingSpeakingMode)speakMode
NAME |
NOTERIPTION |
speakMode |
发言模式枚举 YealinkSDKMeetingSpeakingMode |
complete |
完成回调 |
typedef NS_ENUM(NSUInteger, YealinkSDKMeetingSpeakingMode) {
/// 异常值
YealinkSDKMeetingSpeakingMode_Invalid,
/// 自由发言
YealinkSDKMeetingSpeakingMode_Free,
/// 申请发言
YealinkSDKMeetingSpeakingMode_HandUp,
};
是否允许发言
- (void)replyHandUp:(int)userId permit:(BOOL)permit
NAME |
NOTERIPTION |
userId |
成员userId |
permit |
是否允许,true为允许,false为不允许 |
获取通话统计
- (void)getMeetingQualityStatisticInfo: (void(^)(YealinkSDKMeetingQualityStatisticInfo *info))complete
@interface YealinkSDKMeetingQualityStatisticInfo : NSObject
/*!
@brief 音频接收信息
*/
@property (nonatomic, strong) YealinkSDKMeetingAudioStatisticInfo *audioRecvInfo;
/*!
@brief 音频发送信息
*/
@property (nonatomic, strong) YealinkSDKMeetingAudioStatisticInfo *audioSendInfo;
/*!
@brief 视频接收信息
*/
@property (nonatomic, strong) YealinkSDKMeetingVideoStatisticInfo *videoRecvInfo;
/*!
@brief 视频发送信息
*/
@property (nonatomic, strong) YealinkSDKMeetingVideoStatisticInfo *videoSendInfo;
/*!
@brief 辅流接收信息
*/
@property (nonatomic, strong) YealinkSDKMeetingVideoStatisticInfo *shareRecvInfo;
/*!
@brief 辅流发送信息
*/
@property (nonatomic, strong) YealinkSDKMeetingVideoStatisticInfo *shareSendInfo;
@end
设置设备信息
- (void)setMeetingSignalDeviceInfo:(NSString *)deviceInfo
NAME |
NOTERIPTION |
deviceInfo |
设备信息 |
停止共享辅流
- (void)stopShareScreen
共享辅流
- (void)shareScreen
开始云端录制
- (void)startCloudRecord
停止云端录制
- (void)stopCloudRecord
根据记录ID删除会议历史记录
- (void)deleteMeetingRecordByRecordId:(int)recordId
删除所有会议历史记录
- (void)clearAllMeetingRecord
加入第三方会议
- (void)joinThirdPartyMeetingWithParam:(YealinkSDKJoinThirdPartyMeetingParam *)param
NAME |
NOTERIPTION |
param |
加入第三方会议参数 |
@interface YealinkSDKJoinThirdPartyMeetingParam : NSObject
/*!
@brief 是否打开音频
*/
@property (nonatomic, assign) BOOL isOpenAudio;
/*!
@brief 是否打开视频
*/
@property (nonatomic, assign) BOOL isOpenVideo;
/*!
@brief 会议号或uri
*/
@property (nonatomic, copy) NSString *meetingNumberOrURI;
/*!
@brief 呼叫协议
@link YealinkSDKJoinThirdMeetingProtocalType
*/
@property (nonatomic, assign) YealinkSDKJoinThirdMeetingProtocalType protocalType;
@end
弹出聊天界面
- (void)popupChatVC