Updated on 2025-07-28 GMT+08:00

Editing a Meeting

EditConf

API Description

This API is used to edit a scheduled meeting.

Precautions

  1. Call this API after login.
  2. This API can only be used to edit meetings that have not started. If this API is called to edit a meeting that has been started, a failure message is returned.
  3. This API is an asynchronous API. The return value only indicates whether the API is successfully called. The actual service processing result is returned in the corresponding callback function.
  4. All parameters are mandatory. Before editing a meeting, you need to query meeting details. For parameters that do not need to be changed, use the values returned by the meeting details query API.

Method Definition

1
HWM_SDK_AGENT_API hwmsdk::HwmErrCode EditConf(const HwmEditConfParam *confParam);

Callback Function

1
virtual void OnEditConfResult(hwmsdk::HwmErrCode ret, const char* reason) {};

Parameter Description

Table 1 HwmEditConfParam description

Parameter

Mandatory

Type

Description

confId

Yes

char[]

Meeting ID.

subject

Yes

char[]

Meeting topic.

startTimeStamp

Yes

long long

Meeting start time. The value is a UTC timestamp, accurate to seconds.

duration

Yes

int

Meeting duration, in minutes.

confType

Yes

HwmConfMediaType

Meeting type. The default meeting type is voice meeting.

isNeedConfPwd

Yes

bool

Whether a password is required. By default, no password is required.

isRecordOn

Yes

bool

Whether to enable recording. (This field will be deprecated and is not recommended.)

isLiveOn

Yes

bool

Reserved field. This parameter is transparently transmitted during meeting modification.

isAutoRecordOn

Yes

bool

Whether to enable automatic meeting recording.

timeZone

Yes

int

Time zone code. For details, see Time Zone Table.

vmrFlag

Yes

bool

Whether the meeting is held in a cloud meeting room. The value cannot be changed. Enter the value returned by the meeting details query API. (This parameter is deprecated.)

vmrId

Yes

char[]

Unique cloud meeting room ID. The value cannot be changed. Enter the value returned by the meeting details query API.

joinConfRestrictionType

Yes

HwmJoinConfPermissionType

Users who can join the meeting. By default, everyone is allowed.

isSmsOn

Yes

bool

Reserved field. SMS notification is not yet available.

isMailOn

Yes

bool

Whether to send an email notification.

isEmailCalendarOn

Yes

bool

Whether to send an email calendar.

attendees

Yes

HwmAttendeeInfo*

Participant list.

attendeeLen

Yes

unsigned int

Number of participants.

vmrConfIdType

Yes

HwmVmrConfIdType

ID type of the cloud meeting room. This parameter cannot be modified. If vmrConferenceId is not empty, this parameter is set to HWM_VMR_CONF_ID_TYPE_FIXED. Otherwise, it is set to HWM_VMR_CONF_ID_TYPE_RANDOM.

isOpenWaitingRoom

Yes

bool

Waiting room status.

NOTE:

The function takes effect only after the waiting room function is enabled.

allowGuestStartConf

Yes

bool

Whether to allow guests to join the meeting ahead of the host.

NOTE:

allowGuestStartConfTime

Yes

unsigned int

Time range for guests to join the meeting in advance, in minutes. 0: anytime before the scheduled time. n: n minutes before the scheduled time.

concurrentParticipants

Yes

unsigned int

Maximum number of participants in the meeting.

If this parameter is left blank, there is no restriction.

customInfo

Yes

char[]

Custom extension information.

defaultSummaryState

Yes

HwmSummaryState

Initial state of whether cloud recording contains minutes.

autoMuteMode

Yes

HwmAutoMuteType

Whether to automatically mute soft client guests when they join the meeting.

hardTerminalAutoMuteMode

Yes

HwmAutoMuteType

Whether to automatically mute hard terminal guests when they join the meeting.

autoPublishSummary

Yes

bool

Whether to automatically release minutes (without manual review).

Return Values

Table 2 Return values

Type

Description

HwmErrCode

If 0 is returned, the operation is successful. If other values are returned, the operation fails. For details about values returned upon failures, see Common Error Codes.

Sample Code

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
/**
* Edit a meeting.
*/
int demoEditConfDlg::EditConf()
{
    hwmsdkagent::HwmConfDetail confDetail{0}; // Obtain meeting details from the cache and assign them to confDetail.
    hwmsdkagent::HwmEditConfParam editConfParam{ 0 };
    // Copy the confDetail data as required.
    strncpy_s(editConfParam.confId, confDetail.confListInfo.confId, HWM_MAX_CONF_ID_LEN);
    editConfParam.vmrFlag = confDetail.vmrFlag;
    strncpy_s(editConfParam.vmrId, confInfo.vmrId, HWM_MAX_VMR_CONF_ID_LEN);
    // Part of the value assignment code is omitted here.
    editConfParam.timeZone = 56; // Local time zone. The value 56 indicates GMT+08:00.
    editConfParam.isRecordOn = false;
    editConfParam.isAutoRecordOn = false;
    editConfParam.startTimeStamp = 1598398920; // UTC timestamp
    editConfParam.duration = 0 * 60 + 30;// Meeting duration
    editConfParam.joinConfRestrictionType = hwmsdkagent::HwmJoinConfPermissionType::RESTRICTION_CALL_IN_ALL; // Obtain types of users who are allowed to join the meeting.
// If vmrConferenceId is not empty, the value is a fixed ID. Otherwise, the value is a random ID.
    editConfParam.vmrConfIdType = (strlen(confInfo.confListInfo.vmrConferenceId) != 0) ?
        hwmsdkagent::HwmVmrConfIdType::HWM_VMR_CONF_ID_TYPE_FIXED : hwmsdkagent::HwmVmrConfIdType::HWM_VMR_CONF_ID_TYPE_RANDOM;
    return hwmsdkagent::EditConf(&editConfParam);
}