
com.huaweicloud.sdk.meeting.v1.model.RestScheduleConfDTO Maven / Gradle / Ivy
package com.huaweicloud.sdk.meeting.v1.model;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import java.util.ArrayList;
import java.util.List;
import java.util.Objects;
import java.util.function.Consumer;
/** 创建或修改会议请求体。 */
public class RestScheduleConfDTO {
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonProperty(value = "startTime")
private String startTime;
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonProperty(value = "length")
private Integer length;
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonProperty(value = "subject")
private String subject;
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonProperty(value = "mediaTypes")
private String mediaTypes;
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonProperty(value = "groupuri")
private String groupuri;
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonProperty(value = "attendees")
private List attendees = null;
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonProperty(value = "isAutoRecord")
private Integer isAutoRecord;
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonProperty(value = "encryptMode")
private Integer encryptMode;
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonProperty(value = "language")
private String language;
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonProperty(value = "timeZoneID")
private String timeZoneID;
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonProperty(value = "recordType")
private Integer recordType;
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonProperty(value = "liveAddress")
private String liveAddress;
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonProperty(value = "auxAddress")
private String auxAddress;
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonProperty(value = "recordAuxStream")
private Integer recordAuxStream;
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonProperty(value = "confConfigInfo")
private RestConfConfigDTO confConfigInfo;
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonProperty(value = "recordAuthType")
private Integer recordAuthType;
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonProperty(value = "vmrFlag")
private Integer vmrFlag;
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonProperty(value = "cycleParams")
private CycleParams cycleParams;
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonProperty(value = "vmrID")
private String vmrID;
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonProperty(value = "concurrentParticipants")
private Integer concurrentParticipants;
public RestScheduleConfDTO withStartTime(String startTime) {
this.startTime = startTime;
return this;
}
/** 会议开始时间(UTC时间)。 预定创建会议时,如果没有指定开始时间,或填空串,则表示会议马上开始。 格式:yyyy-MM-dd HH:mm
*
* @return startTime */
public String getStartTime() {
return startTime;
}
public void setStartTime(String startTime) {
this.startTime = startTime;
}
public RestScheduleConfDTO withLength(Integer length) {
this.length = length;
return this;
}
/** 会议持续时长,单位分钟,最大值为1440,最短15。default:30。 minimum: 15 maximum: 1440
*
* @return length */
public Integer getLength() {
return length;
}
public void setLength(Integer length) {
this.length = length;
}
public RestScheduleConfDTO withSubject(String subject) {
this.subject = subject;
return this;
}
/** 会议主题。长度限制为128个字符。
*
* @return subject */
public String getSubject() {
return subject;
}
public void setSubject(String subject) {
this.subject = subject;
}
public RestScheduleConfDTO withMediaTypes(String mediaTypes) {
this.mediaTypes = mediaTypes;
return this;
}
/** 会议的媒体类型。 由1个或多个枚举String组成,多个枚举时,每个枚举值之间通过”,”逗号分隔,枚举值如下: - Voice: 语音。 - Video: 标清视频。 - HDVideo:
* 高清视频(与Video互斥,如果同时选择Video、HDVideo,则系统默认选择Video) - Telepresence:
* 智真(与HDVideo、Video互斥,如果同时选择,系统使用Telepresence)。(预留字段) - Data: 多媒体(系统配置决定是否自动添加Data)。
*
* @return mediaTypes */
public String getMediaTypes() {
return mediaTypes;
}
public void setMediaTypes(String mediaTypes) {
this.mediaTypes = mediaTypes;
}
public RestScheduleConfDTO withGroupuri(String groupuri) {
this.groupuri = groupuri;
return this;
}
/** 软终端创建即时会议时在当前字段带临时群组ID,由服务器在邀请其他与会者时在或者conference-info头域中携带。长度限制为31个字符。
*
* @return groupuri */
public String getGroupuri() {
return groupuri;
}
public void setGroupuri(String groupuri) {
this.groupuri = groupuri;
}
public RestScheduleConfDTO withAttendees(List attendees) {
this.attendees = attendees;
return this;
}
public RestScheduleConfDTO addAttendeesItem(RestAttendeeDTO attendeesItem) {
if (this.attendees == null) {
this.attendees = new ArrayList<>();
}
this.attendees.add(attendeesItem);
return this;
}
public RestScheduleConfDTO withAttendees(Consumer> attendeesSetter) {
if (this.attendees == null) {
this.attendees = new ArrayList<>();
}
attendeesSetter.accept(this.attendees);
return this;
}
/** 与会者列表。该列表可以用于发送会议通知、会议提醒、会议开始时候进行自动邀请。
*
* @return attendees */
public List getAttendees() {
return attendees;
}
public void setAttendees(List attendees) {
this.attendees = attendees;
}
public RestScheduleConfDTO withIsAutoRecord(Integer isAutoRecord) {
this.isAutoRecord = isAutoRecord;
return this;
}
/** 会议是否自动启动录制,在录播类型为:录播、直播+录播时有效。默认为不自动启动。 - 0: 不自动启动录制 - 1: 自动启动录制 minimum: 0 maximum: 1
*
* @return isAutoRecord */
public Integer getIsAutoRecord() {
return isAutoRecord;
}
public void setIsAutoRecord(Integer isAutoRecord) {
this.isAutoRecord = isAutoRecord;
}
public RestScheduleConfDTO withEncryptMode(Integer encryptMode) {
this.encryptMode = encryptMode;
return this;
}
/** 会议媒体加密模式。默认值由企业级的配置填充。 - 0: 自适应加密 - 1: 强制加密 - 2: 不加密 minimum: 0 maximum: 2
*
* @return encryptMode */
public Integer getEncryptMode() {
return encryptMode;
}
public void setEncryptMode(Integer encryptMode) {
this.encryptMode = encryptMode;
}
public RestScheduleConfDTO withLanguage(String language) {
this.language = language;
return this;
}
/** 会议的默认语言,默认值由会议云服务定义。 对于系统支持的语言,按照RFC3066规范传递。 - zh-CN: 简体中文。 - en-US: 美国英文。
*
* @return language */
public String getLanguage() {
return language;
}
public void setLanguage(String language) {
this.language = language;
}
public RestScheduleConfDTO withTimeZoneID(String timeZoneID) {
this.timeZoneID = timeZoneID;
return this;
}
/** 开始时间的时区信息。时区信息,参考时区映射关系。
*
* @return timeZoneID */
public String getTimeZoneID() {
return timeZoneID;
}
public void setTimeZoneID(String timeZoneID) {
this.timeZoneID = timeZoneID;
}
public RestScheduleConfDTO withRecordType(Integer recordType) {
this.recordType = recordType;
return this;
}
/** 录播类型。默认为禁用。 - 0: 禁用 - 1: 直播 - 2: 录播 - 3: 直播+录播 minimum: 0 maximum: 3
*
* @return recordType */
public Integer getRecordType() {
return recordType;
}
public void setRecordType(Integer recordType) {
this.recordType = recordType;
}
public RestScheduleConfDTO withLiveAddress(String liveAddress) {
this.liveAddress = liveAddress;
return this;
}
/** 主流直播地址,最大不超过255个字符。在录播类型为 :直播、直播+录播时有效。
*
* @return liveAddress */
public String getLiveAddress() {
return liveAddress;
}
public void setLiveAddress(String liveAddress) {
this.liveAddress = liveAddress;
}
public RestScheduleConfDTO withAuxAddress(String auxAddress) {
this.auxAddress = auxAddress;
return this;
}
/** 辅流直播地址,最大不超过255个字符。在录播类型为: 直播、直播+录播时有效。
*
* @return auxAddress */
public String getAuxAddress() {
return auxAddress;
}
public void setAuxAddress(String auxAddress) {
this.auxAddress = auxAddress;
}
public RestScheduleConfDTO withRecordAuxStream(Integer recordAuxStream) {
this.recordAuxStream = recordAuxStream;
return this;
}
/** 是否录制辅流,在录播类型为:录播、录播+直播时有效。 - 0: 不录制。 - 1: 录制。 minimum: 0 maximum: 1
*
* @return recordAuxStream */
public Integer getRecordAuxStream() {
return recordAuxStream;
}
public void setRecordAuxStream(Integer recordAuxStream) {
this.recordAuxStream = recordAuxStream;
}
public RestScheduleConfDTO withConfConfigInfo(RestConfConfigDTO confConfigInfo) {
this.confConfigInfo = confConfigInfo;
return this;
}
public RestScheduleConfDTO withConfConfigInfo(Consumer confConfigInfoSetter) {
if (this.confConfigInfo == null) {
this.confConfigInfo = new RestConfConfigDTO();
confConfigInfoSetter.accept(this.confConfigInfo);
}
return this;
}
/** Get confConfigInfo
*
* @return confConfigInfo */
public RestConfConfigDTO getConfConfigInfo() {
return confConfigInfo;
}
public void setConfConfigInfo(RestConfConfigDTO confConfigInfo) {
this.confConfigInfo = confConfigInfo;
}
public RestScheduleConfDTO withRecordAuthType(Integer recordAuthType) {
this.recordAuthType = recordAuthType;
return this;
}
/** 录播鉴权方式,在录播类型为:录播、直播+录播时有效。 - 0: 可通过链接观看/下载。 - 1: 企业用户可观看/下载。 - 2: 与会者可观看/下载。 minimum: 0 maximum: 2
*
* @return recordAuthType */
public Integer getRecordAuthType() {
return recordAuthType;
}
public void setRecordAuthType(Integer recordAuthType) {
this.recordAuthType = recordAuthType;
}
public RestScheduleConfDTO withVmrFlag(Integer vmrFlag) {
this.vmrFlag = vmrFlag;
return this;
}
/** 是否使用云会议室召开预约会议。默认不使用云会议室。 - 0: 不使用云会议室。 - 1: 使用云会议室。 minimum: 0 maximum: 1
*
* @return vmrFlag */
public Integer getVmrFlag() {
return vmrFlag;
}
public void setVmrFlag(Integer vmrFlag) {
this.vmrFlag = vmrFlag;
}
public RestScheduleConfDTO withCycleParams(CycleParams cycleParams) {
this.cycleParams = cycleParams;
return this;
}
public RestScheduleConfDTO withCycleParams(Consumer cycleParamsSetter) {
if (this.cycleParams == null) {
this.cycleParams = new CycleParams();
cycleParamsSetter.accept(this.cycleParams);
}
return this;
}
/** Get cycleParams
*
* @return cycleParams */
public CycleParams getCycleParams() {
return cycleParams;
}
public void setCycleParams(CycleParams cycleParams) {
this.cycleParams = cycleParams;
}
public RestScheduleConfDTO withVmrID(String vmrID) {
this.vmrID = vmrID;
return this;
}
/** 用于识别用户开会时绑定的云会议室。最大长度不超过512个字符。 ID可以从云会议室管理->分页查询用户云会议室中获取id字段。 - 不为空,则用ID查询云会议室信息。 -
* 为空,则查用户所有云会议室,如果有个人云会议室,用个人云会议室ID;没有个人云会议室,取最小云会议室ID。
*
* @return vmrID */
public String getVmrID() {
return vmrID;
}
public void setVmrID(String vmrID) {
this.vmrID = vmrID;
}
public RestScheduleConfDTO withConcurrentParticipants(Integer concurrentParticipants) {
this.concurrentParticipants = concurrentParticipants;
return this;
}
/** 会议方数,会议最大与会人数限制
*
* @return concurrentParticipants */
public Integer getConcurrentParticipants() {
return concurrentParticipants;
}
public void setConcurrentParticipants(Integer concurrentParticipants) {
this.concurrentParticipants = concurrentParticipants;
}
@Override
public boolean equals(java.lang.Object o) {
if (this == o) {
return true;
}
if (o == null || getClass() != o.getClass()) {
return false;
}
RestScheduleConfDTO restScheduleConfDTO = (RestScheduleConfDTO) o;
return Objects.equals(this.startTime, restScheduleConfDTO.startTime)
&& Objects.equals(this.length, restScheduleConfDTO.length)
&& Objects.equals(this.subject, restScheduleConfDTO.subject)
&& Objects.equals(this.mediaTypes, restScheduleConfDTO.mediaTypes)
&& Objects.equals(this.groupuri, restScheduleConfDTO.groupuri)
&& Objects.equals(this.attendees, restScheduleConfDTO.attendees)
&& Objects.equals(this.isAutoRecord, restScheduleConfDTO.isAutoRecord)
&& Objects.equals(this.encryptMode, restScheduleConfDTO.encryptMode)
&& Objects.equals(this.language, restScheduleConfDTO.language)
&& Objects.equals(this.timeZoneID, restScheduleConfDTO.timeZoneID)
&& Objects.equals(this.recordType, restScheduleConfDTO.recordType)
&& Objects.equals(this.liveAddress, restScheduleConfDTO.liveAddress)
&& Objects.equals(this.auxAddress, restScheduleConfDTO.auxAddress)
&& Objects.equals(this.recordAuxStream, restScheduleConfDTO.recordAuxStream)
&& Objects.equals(this.confConfigInfo, restScheduleConfDTO.confConfigInfo)
&& Objects.equals(this.recordAuthType, restScheduleConfDTO.recordAuthType)
&& Objects.equals(this.vmrFlag, restScheduleConfDTO.vmrFlag)
&& Objects.equals(this.cycleParams, restScheduleConfDTO.cycleParams)
&& Objects.equals(this.vmrID, restScheduleConfDTO.vmrID)
&& Objects.equals(this.concurrentParticipants, restScheduleConfDTO.concurrentParticipants);
}
@Override
public int hashCode() {
return Objects.hash(startTime,
length,
subject,
mediaTypes,
groupuri,
attendees,
isAutoRecord,
encryptMode,
language,
timeZoneID,
recordType,
liveAddress,
auxAddress,
recordAuxStream,
confConfigInfo,
recordAuthType,
vmrFlag,
cycleParams,
vmrID,
concurrentParticipants);
}
@Override
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append("class RestScheduleConfDTO {\n");
sb.append(" startTime: ").append(toIndentedString(startTime)).append("\n");
sb.append(" length: ").append(toIndentedString(length)).append("\n");
sb.append(" subject: ").append(toIndentedString(subject)).append("\n");
sb.append(" mediaTypes: ").append(toIndentedString(mediaTypes)).append("\n");
sb.append(" groupuri: ").append(toIndentedString(groupuri)).append("\n");
sb.append(" attendees: ").append(toIndentedString(attendees)).append("\n");
sb.append(" isAutoRecord: ").append(toIndentedString(isAutoRecord)).append("\n");
sb.append(" encryptMode: ").append(toIndentedString(encryptMode)).append("\n");
sb.append(" language: ").append(toIndentedString(language)).append("\n");
sb.append(" timeZoneID: ").append(toIndentedString(timeZoneID)).append("\n");
sb.append(" recordType: ").append(toIndentedString(recordType)).append("\n");
sb.append(" liveAddress: ").append(toIndentedString(liveAddress)).append("\n");
sb.append(" auxAddress: ").append(toIndentedString(auxAddress)).append("\n");
sb.append(" recordAuxStream: ").append(toIndentedString(recordAuxStream)).append("\n");
sb.append(" confConfigInfo: ").append(toIndentedString(confConfigInfo)).append("\n");
sb.append(" recordAuthType: ").append(toIndentedString(recordAuthType)).append("\n");
sb.append(" vmrFlag: ").append(toIndentedString(vmrFlag)).append("\n");
sb.append(" cycleParams: ").append(toIndentedString(cycleParams)).append("\n");
sb.append(" vmrID: ").append(toIndentedString(vmrID)).append("\n");
sb.append(" concurrentParticipants: ").append(toIndentedString(concurrentParticipants)).append("\n");
sb.append("}");
return sb.toString();
}
/** Convert the given object to string with each line indented by 4 spaces (except the first line). */
private String toIndentedString(java.lang.Object o) {
if (o == null) {
return "null";
}
return o.toString().replace("\n", "\n ");
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy