更新时间:2025-06-30 GMT+08:00
分享

创建会议

1
HWMSdk.getOpenApi.createConf(CreateConfParam, HwmCancelableCallBack

接口描述

该接口用于创建即时会议并立即加入会议。

注意事项

该接口会申请应用程序的audio和camera权限。

方法定义

1
2
3
4
5
6
 /**
     * 创建会议接口
     * @param createConfParam 会议配置实体
     * @param hwmCallback 会议创建回调
     */
   void createConf(CreateConfParam createConfParam , HwmCancelableCallBack <ConfInfo> hwmCallback);

参数描述

表1 参数说明

参数

是否必须

类型

描述

createConfParam

CreateConfParam

创建会议参数实体

hwmCallback

HwmCancelableCallBack

会议创建结果回调

返回值

无。

参数拓展

表2 CreateConfParam参数设置说明

参数

是否必须

类型

描述

subject

String

参数解释:

会议主题

约束限制

不涉及

取值范围

1-385个字符

默认取值

不涉及

confType

ConfType

参数解释:

会议类型

CONF_AUDIO(0, "语音会议")

CONF_VIDEO(1, "视频会议")

约束限制

不涉及

默认取值

CONF_AUDIO

needPassword

boolean

参数解释:

是否需要会议密码

约束限制

仅对随机会议ID生效

默认取值

false

guestPwd

String

参数解释:

普通与会者密码

约束限制

如果空则服务器随机生成。仅对随机会议ID生效

取值范围

0-64个字符

默认取值

不涉及

attendeeMembers

List<AttendeeModel>

参数解释:

成员列表,可选

约束限制:

不涉及

默认取值

不涉及

isCameraOn

boolean

参数解释:

是否打开摄像头

约束限制:

不涉及

默认取值:

false

isMicOn

boolean

参数解释:

是否打开麦克风

约束限制:

不涉及

默认取值:

false

isRecordOn

boolean

参数解释:

会议录制功能是否开启

约束限制:

仅对云录制生效,客户端本地录制不生效

默认取值:

false

isAutoRecord

boolean

参数解释:

会议开始后是否自动开启录制,默认false。开启自动录制必须开启会议录制功能

约束限制

仅对云录制生效,客户端本地录制不生效

默认取值

false

vmrId

String

参数解释:

个人会议或者云会议室Id

约束限制:

创建个人会议或云会议室的时候传入,其它时候传入空

取值范围:

0-128个字符

默认取值:

不涉及

joinConfRestrictionType

JoinConfPermissionType

参数解释:

允许入会范围限制

PERMIT_EVERYONE(0, "允许所有人入会")

PERMIT_ENTERPRISE_USER(2, "仅允许企业内人员入会")

PERMIT_INVITED_USER(3, "仅允许会议邀请人员入会")

约束限制:

不涉及

默认取值:

PERMIT_EVERYONE

customInfo

String

参数解释:

端侧自定义数据,服务器不感知业务

约束限制

不涉及

取值范围

0-64个字符

默认取值

不涉及

isSpeakerOff

boolean

参数解释:

是否关闭扬声器,切换到听筒

约束限制:

不涉及

默认取值:

false

concurrentParticipants

int

参数解释:

会议最大与会人数

约束限制:

不涉及

取值范围:

  • 0:无限制
  • 大于0:会议最大与会人数

默认取值:

0

confResType

ConfResType

参数解释:

会议资源类型

CONF_RESTYPE_DEFAULT(0, "默认")

CONF_RESTYPE_SHARE_VMR(3, "共享vmr")

约束限制:

  • 共享VMR需要传ConfResType.CONF_RESTYPE_SHARE_VMR
  • 非共享VMR可不传此参数

默认取值:

CONF_RESTYPE_DEFAULT

autoMuteMode

AutoMuteType

参数解释:

个人客户端入会是否自动静音

AUTO_MUTE_TYPE_DEFAULT(0, "默认")

AUTO_MUTE_TYPE_MUTE(1, "静音")

AUTO_MUTE_TYPE_UNMUTE(2, "非静音")

约束限制:

不涉及

默认取值:

AUTO_MUTE_TYPE_DEFAULT

hardTerminalAutoMuteMode

AutoMuteType

参数解释:

会议室设备入会是否自动静音

AUTO_MUTE_TYPE_DEFAULT(0, "默认")

AUTO_MUTE_TYPE_MUTE(1, "静音")

AUTO_MUTE_TYPE_UNMUTE(2, "非静音")

约束限制

不涉及

默认取值

AUTO_MUTE_TYPE_DEFAULT

defaultSummaryState

SummaryState

参数解释:

录制时,智能会议纪要的默认状态

SUMMARY_STATE_CLOSE(0, "会议纪要关闭")

SUMMARY_STATE_OPEN(1, "会议纪要开启")

约束限制:

仅企业配置支持智能会议纪要时生效(corpEnableSummary),参考6.5.3.6-企业配置变更

默认取值:

SUMMARY_STATE_CLOSE

autoPublishSummary

boolean

参数解释:

是否自动发布纪要(免人工审核)

约束限制

不涉及

默认取值

false

示例代码

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
    List<AttendeeModel> attendeeList = new ArrayList<>();
            //以下三种方式可选
	    String name = getName();
       	    String number = getNumber();
	    String thirdAccountId = getThirdAccountId();
            if (!TextUtils.isEmpty(thirdAccount)) {
                if (LoginStatusCache.getsLoginAccountInfo() instanceof AppIdAuthParam) {
                    //如果是appid的方式登录
                    attendeeList.add(AttendeeModel.buildAttendeeByThirdAccountId(thirdAccount,name));
                }
            } else if(number.startsWith("+99")){
                //sip 号码入会
                attendeeList.add(AttendeeModel.buildAttendeeBySipNumber(number, name));
            } else {
                //电话号码入会(手机和座机)
                attendeeList.add(AttendeeModel.buildAttendeeByPhone(number, name));
            }

CreateConfParam createConfParam = new CreateConfParam()                             
     .setSubject(getSubject())                             //会议主题
     .setConfType(ConfType.CONF_AUDIO)                        //会议类型
     .setVmrId(getVmrId())         // 云会议室id(非必传字段)
     .setJoinConfRestrictionType(JoinConfPermissionType.PERMIT_EVERYONE)   // 设置允许入会范围限制
     .setNeedPassword(true)                  //是否创建密码
     .setCameraOn(true)           //摄像头是否开启
     .setMicOn(true)              //麦克风是否开启
     .setRecordOn(true)    //会议录制功能是否开启
     .setAttendeeMembers(attendeeList);    //添加与会人信息

HWMSdk.getOpenApi(getActivity()).createConf(createConfParam, new HwmCancelableCallBack<ConfInfo>() {  

     //创建会议成功回调            
     @Override              
     public void onSuccess(ConfInfo confInfo) {                    
         Log.i(TAG, "创建会议成功: 会议id:" + confInfo.getConfId() +                                     
              ";会议密码:" + confInfo.getConfPwd());              
     }
         
     //创建会议失败回调
     @Override              
     public void onFailed(int retCode, String desc) {                             
         dismissLoading();                   
         String err = ErrorMessageFactory.create(Utils.getApp(), retCode);                   
         if (TextUtils.isEmpty(err)) {                       
            err = Utils.getApp().getString(com.huawei.hwmmobileconfui.R.string.conf_create_error);                   
         }                  
         Log.e(TAG, "创建会议失败: " + err);              
     }         
    @Override
    public void onCancel() {
        
    }
});

相关文档