ZMeetSDK 1.0.18

ZMeetSDK 1.0.18

bing 维护。



ZMeetSDK 1.0.18

  • 作者:bing
  • bing

ZMeetSDK

Version License Platform

修订历史

版本 日期 变更者 变更内容
1.0.0 2020-11-01 Bing 1.0.0
1.0.2 2021-12-30 Bing 加入合照SDK
1.0.3 2021-01-06 Bing 加入合影编辑

准备环境

请确保满足以下开发环境要求:

  • iOS 10.0或以上版本
  • ZmeetPhotoKit
  • ZmeetCoreKit

POD

pod 'ZMeetSDK/ZmeetPhotoKit'
pod 'ZMeetSDK/ZmeetCoreKit'

接口

初始化SDK

#import <ZmeetPhotoKit/ZPhotoEngineKit>

/*!
 @param appId zmeet appid
 @param appSecret zmeet appSecret
  */
-(instancetype) initWithAppId:(NSString *) appId
                    appSecret:(NSString *) appSecret;

/**
 @param viewCtrl 唤起的viewCtrl
 @param userInfo 用户信息,targetId必填
 @param channelId 会议号
 */
-(void) join:(UIViewController *) viewCtrl userInfo:(ZPhotoUserInfo *) userInfo channelId:(NSString *) channelId;


/**
 参与者加入会议
 join with userInfo 保留
 @param viewCtrl 唤起的viewCtrl
 @param mobile 用户手机号
 @param meetId 会议号 同channelId
 */
-(void) join:(UIViewController *) viewCtrl mobile:(NSString *) mobile meetId:(NSString *) meetId;

/**
 主持人开启会议
 @param viewCtrl 唤起的viewCtrl
 @param mobile 用户手机号
 */
-(void) lauch:(UIViewController *) viewCtrl mobile:(NSString *) mobile;

model

typedef enum : NSInteger{
    ZPhotoRole_OWNER, //会议发起者
    ZPhotoRole_OTHER //会议参与者
} ZPhotoRole;

@interface ZPhotoUserInfo : NSObject

/**
 必填
 targetId   zmeet 用户身份(用户唯一标识(手机号))
 */
@property(nonatomic,strong) NSString *targetId;

/**
 头像
 */
@property(nonatomic,strong) NSString *avatar;

/**
 名字
 */
@property(nonatomic,strong) NSString *name;

/**
 角色
 */
@property(nonatomic,assign) ZPhotoRole role;


@end

回调

typedef NS_ENUM(NSUInteger, JoinFailReason) {
    JoinFailReasonNetError = -9999, //网络异常
    JoinFailReasonAuth = -1, //授权失败
    JoinFailReasonLimit = 1002, //人数上限
    JoinFailReasonServerLimit = 1001, //全网同时进行会议数限制 (根据具体服务器情况)
    JoinFailReasonRoomNotExsit =2001// 房间不存在
};

[ZPhotoEngineKit sharedEngine].delegate = self;
/*!
 加入会议回调
 
 @param reason  失败原因
 */
-(void) joinRoomError:(JoinFailReason *) reason;


/*!
 ViewController dismiss
 */
-(void) didViewControllerDismiss;

#pragma mark - meet
/**
 用户加入成功
 */
-(void) onJoinSuccess:(NSString *) channelId targetId:(NSString *) targetId;

/**
 远端用户加入
 */
-(void) onRemoteUserJoined:(NSString *) targetId name:(NSString *) name;

/**
 远端用户离开
 */
-(void) onRemoteUserOffline:(NSString *) targetId;

/**
 会议结束
 */
-(void) onMeetFinish;

快速接入会议功能

Step1 初始化SDK

token生成规则请参阅服务器文档(*建议将appid和appsecret操作于服务器端)

 [ZRtcEngineKit sharedEngine];

Step2 加入会议

/**
  [[ZRtcEngineKit sharedEngine] initSDK];
 [[ZRtcEngineKit sharedEngine] joinChannelByToken:accessToken channelId:self.textField.text uid:self.userId displayName:@"demo1"];
            } failure:^(NSError * _Nonnull error) {
                [SVProgressHUD dismiss];
            }];

其他接口

离开会议


/**
 离开
 */
-(void) leaveChannel;

设置本地视频预览view

/**
 设置本地视频载体,canvas.uid 需与本地userId对应
 */
-(void) setupLocalVideo:(ZMeetVideoCanvas *) canvas;

设置远程视频预览view

/**
 设置远端视频载体,canvas.uid与远端用户useerId对应,一般在firstRemoteVideoFrameOfUid 中掉用
 */
-(void) setupRemoteVideo:(ZMeetVideoCanvas *) canvas;

开启本地音频

/**
 开启音频
 */
-(void) enableAudio;

关闭本地音频

/**
 关闭音频
 */
-(void) disenableAudio;

开启本地视频

/**
 开启视频
 */
-(void) enableVideo;

关闭本地视频

/**
 关闭视频
 */
-(void) disEnableVideo;

切换本地摄像头

/**
 切换视频方向,如果有前后置摄像头
 */
-(void) switchCamera;

禁用本地音频

/**
 mute  本地音频
 */
-(void) muteLocalAudioStream:(BOOL)mute;

禁用本地视频

/**
 mute 本地视频
 */
-(void) muteLocalVideoStream:(BOOL)mute;