All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.tencentcloudapi.tiw.v20190919.models.StartWhiteboardPushRequest Maven / Gradle / Ivy

There is a newer version: 3.1.938
Show newest version
/*
 * Copyright (c) 2017-2018 THL A29 Limited, a Tencent company. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *    http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
package com.tencentcloudapi.tiw.v20190919.models;

import com.tencentcloudapi.common.AbstractModel;
import com.google.gson.annotations.SerializedName;
import com.google.gson.annotations.Expose;
import java.util.HashMap;

public class StartWhiteboardPushRequest extends AbstractModel{

    /**
    * 客户的SdkAppId
    */
    @SerializedName("SdkAppId")
    @Expose
    private Long SdkAppId;

    /**
    * 需要推流的白板房间号,取值范围: (1, 4294967295)。

1. 白板推流默认以RoomId的字符串表达形式作为IM群组的GroupID(比如RoomId为1234,则IM群组的GroupID为"1234")加群进行信令同步,请在开始推流前确保相应IM群组已创建完成,否则会导致推流失败。
2. 在没有指定TRTCRoomId和TRTCRoomIdStr的情况下,默认会以RoomId作为白板流进行推流的TRTC房间号。
    */
    @SerializedName("RoomId")
    @Expose
    private Long RoomId;

    /**
    * 用于白板推流服务进入白板房间的用户ID。在没有额外指定`IMAuthParam`和`TRTCAuthParam`的情况下,这个用户ID同时会用于IM登录、IM加群、TRTC进房推流等操作。
用户ID最大长度不能大于60个字节,该用户ID必须是一个单独的未同时在其他地方使用的用户ID,白板推流服务使用这个用户ID进入房间进行白板音视频推流,若该用户ID和其他地方同时在使用的用户ID重复,会导致白板推流服务与其他使用场景帐号互踢,影响正常推流。
    */
    @SerializedName("PushUserId")
    @Expose
    private String PushUserId;

    /**
    * 与PushUserId对应的IM签名(usersig)。
    */
    @SerializedName("PushUserSig")
    @Expose
    private String PushUserSig;

    /**
    * 白板参数,例如白板宽高、背景颜色等
    */
    @SerializedName("Whiteboard")
    @Expose
    private Whiteboard Whiteboard;

    /**
    * 自动停止推流超时时间,单位秒,取值范围[300, 259200], 默认值为1800秒。

当白板超过设定时间没有操作的时候,白板推流服务会自动停止白板推流。
    */
    @SerializedName("AutoStopTimeout")
    @Expose
    private Long AutoStopTimeout;

    /**
    * 对主白板推流任务进行操作时,是否同时同步操作备份任务
    */
    @SerializedName("AutoManageBackup")
    @Expose
    private Boolean AutoManageBackup;

    /**
    * 备份白板推流相关参数。

指定了备份参数的情况下,白板推流服务会在房间内新增一路白板画面视频流,即同一个房间内会有两路白板画面推流。
    */
    @SerializedName("Backup")
    @Expose
    private WhiteboardPushBackupParam Backup;

    /**
    * TRTC高级权限控制参数,如果在实时音视频开启了高级权限控制功能,必须提供PrivateMapKey才能保证正常推流。
    */
    @SerializedName("PrivateMapKey")
    @Expose
    private String PrivateMapKey;

    /**
    * 白板推流视频帧率,取值范围[0, 30],默认20fps
    */
    @SerializedName("VideoFPS")
    @Expose
    private Long VideoFPS;

    /**
    * 白板推流码率, 取值范围[0, 2000],默认1200kbps。

这里的码率设置是一个参考值,实际推流的时候使用的是动态码率,所以真实码率不会固定为指定值,会在指定值附近波动。
    */
    @SerializedName("VideoBitrate")
    @Expose
    private Long VideoBitrate;

    /**
    * 在实时音视频云端录制模式选择为 `指定用户录制` 模式的时候是否自动录制白板推流。

默认在实时音视频的云端录制模式选择为 `指定用户录制` 模式的情况下,不会自动进行白板推流录制,如果希望进行白板推流录制,请将此参数设置为true。

如果实时音视频的云端录制模式选择为 `全局自动录制` 模式,可忽略此参数。
    */
    @SerializedName("AutoRecord")
    @Expose
    private Boolean AutoRecord;

    /**
    * 指定白板推流录制的RecordID,指定的RecordID会用于填充实时音视频云端录制完成后的回调消息中的 "userdefinerecordid" 字段内容,便于您更方便的识别录制回调,以及在点播媒体资源管理中查找相应的录制视频文件。

限制长度为64字节,只允许包含大小写英文字母(a-zA-Z)、数字(0-9)及下划线和连词符。

此字段设置后,不管`AutoRecord`字段取值如何,都将自动进行白板推流录制。

默认RecordId生成规则如下:
urlencode(SdkAppID_RoomID_PushUserID)

例如:
SdkAppID = 12345678,RoomID = 12345,PushUserID = push_user_1
那么:RecordId = 12345678_12345_push_user_1
    */
    @SerializedName("UserDefinedRecordId")
    @Expose
    private String UserDefinedRecordId;

    /**
    * 在实时音视频旁路推流模式选择为`指定用户旁路`模式的时候,是否自动旁路白板推流。

默认在实时音视频的旁路推流模式选择为 `指定用户旁路` 模式的情况下,不会自动旁路白板推流,如果希望旁路白板推流,请将此参数设置为true。

如果实时音视频的旁路推流模式选择为 `全局自动旁路` 模式,可忽略此参数。
    */
    @SerializedName("AutoPublish")
    @Expose
    private Boolean AutoPublish;

    /**
    * 指定实时音视频在旁路白板推流时的StreamID,设置之后,您就可以在腾讯云直播 CDN 上通过标准直播方案(FLV或HLS)播放该用户的音视频流。

限制长度为64字节,只允许包含大小写英文字母(a-zA-Z)、数字(0-9)及下划线和连词符。

此字段设置后,不管`AutoPublish`字段取值如何,都将自动旁路白板推流。

默认StreamID生成规则如下:
urlencode(SdkAppID_RoomID_PushUserID_main)

例如:
SdkAppID = 12345678,RoomID = 12345,PushUserID = push_user_1
那么:StreamID = 12345678_12345_push_user_1_main
    */
    @SerializedName("UserDefinedStreamId")
    @Expose
    private String UserDefinedStreamId;

    /**
    * 内部参数,不需要关注此参数
    */
    @SerializedName("ExtraData")
    @Expose
    private String ExtraData;

    /**
    * TRTC数字类型房间号,取值范围: (1, 4294967295)。

在同时指定了RoomId与TRTCRoomId的情况下,优先使用TRTCRoomId作为白板流进行推流的TRTC房间号。

当指定了TRTCRoomIdStr的情况下,此字段将被忽略。
    */
    @SerializedName("TRTCRoomId")
    @Expose
    private Long TRTCRoomId;

    /**
    * TRTC字符串类型房间号。

在指定了TRTCRoomIdStr的情况下,会优先使用TRTCRoomIdStr作为白板流进行推流的TRTC房间号。
    */
    @SerializedName("TRTCRoomIdStr")
    @Expose
    private String TRTCRoomIdStr;

    /**
    * IM鉴权信息参数,用于IM鉴权。
当白板信令所使用的IM应用与白板应用的SdkAppId不一致时,可以通过此参数提供对应IM应用鉴权信息。

如果提供了此参数,白板推流服务会优先使用此参数指定的SdkAppId作为白板信令的传输通道,否则使用公共参数中的SdkAppId作为白板信令的传输通道。
    */
    @SerializedName("IMAuthParam")
    @Expose
    private AuthParam IMAuthParam;

    /**
    * TRTC鉴权信息参数,用于TRTC进房推流鉴权。
当需要推流到的TRTC房间所对应的TRTC应用与白板应用的SdkAppId不一致时,可以通过此参数提供对应的TRTC应用鉴权信息。

如果提供了此参数,白板推流服务会优先使用此参数指定的SdkAppId作为白板推流的目标TRTC应用,否则使用公共参数中的SdkAppId作为白板推流的目标TRTC应用。
    */
    @SerializedName("TRTCAuthParam")
    @Expose
    private AuthParam TRTCAuthParam;

    /**
    * 内测参数,需要提前申请白名单进行体验。

指定白板推流时推流用户进TRTC房间的进房模式。默认为 TRTCAppSceneVideoCall

TRTCAppSceneVideoCall - 视频通话场景,即绝大多数时间都是两人或两人以上视频通话的场景,内部编码器和网络协议优化侧重流畅性,降低通话延迟和卡顿率。
TRTCAppSceneLIVE - 直播场景,即绝大多数时间都是一人直播,偶尔有多人视频互动的场景,内部编码器和网络协议优化侧重性能和兼容性,性能和清晰度表现更佳。
    */
    @SerializedName("TRTCEnterRoomMode")
    @Expose
    private String TRTCEnterRoomMode;

    /**
     * Get 客户的SdkAppId 
     * @return SdkAppId 客户的SdkAppId
     */
    public Long getSdkAppId() {
        return this.SdkAppId;
    }

    /**
     * Set 客户的SdkAppId
     * @param SdkAppId 客户的SdkAppId
     */
    public void setSdkAppId(Long SdkAppId) {
        this.SdkAppId = SdkAppId;
    }

    /**
     * Get 需要推流的白板房间号,取值范围: (1, 4294967295)。

1. 白板推流默认以RoomId的字符串表达形式作为IM群组的GroupID(比如RoomId为1234,则IM群组的GroupID为"1234")加群进行信令同步,请在开始推流前确保相应IM群组已创建完成,否则会导致推流失败。
2. 在没有指定TRTCRoomId和TRTCRoomIdStr的情况下,默认会以RoomId作为白板流进行推流的TRTC房间号。 
     * @return RoomId 需要推流的白板房间号,取值范围: (1, 4294967295)。

1. 白板推流默认以RoomId的字符串表达形式作为IM群组的GroupID(比如RoomId为1234,则IM群组的GroupID为"1234")加群进行信令同步,请在开始推流前确保相应IM群组已创建完成,否则会导致推流失败。
2. 在没有指定TRTCRoomId和TRTCRoomIdStr的情况下,默认会以RoomId作为白板流进行推流的TRTC房间号。
     */
    public Long getRoomId() {
        return this.RoomId;
    }

    /**
     * Set 需要推流的白板房间号,取值范围: (1, 4294967295)。

1. 白板推流默认以RoomId的字符串表达形式作为IM群组的GroupID(比如RoomId为1234,则IM群组的GroupID为"1234")加群进行信令同步,请在开始推流前确保相应IM群组已创建完成,否则会导致推流失败。
2. 在没有指定TRTCRoomId和TRTCRoomIdStr的情况下,默认会以RoomId作为白板流进行推流的TRTC房间号。
     * @param RoomId 需要推流的白板房间号,取值范围: (1, 4294967295)。

1. 白板推流默认以RoomId的字符串表达形式作为IM群组的GroupID(比如RoomId为1234,则IM群组的GroupID为"1234")加群进行信令同步,请在开始推流前确保相应IM群组已创建完成,否则会导致推流失败。
2. 在没有指定TRTCRoomId和TRTCRoomIdStr的情况下,默认会以RoomId作为白板流进行推流的TRTC房间号。
     */
    public void setRoomId(Long RoomId) {
        this.RoomId = RoomId;
    }

    /**
     * Get 用于白板推流服务进入白板房间的用户ID。在没有额外指定`IMAuthParam`和`TRTCAuthParam`的情况下,这个用户ID同时会用于IM登录、IM加群、TRTC进房推流等操作。
用户ID最大长度不能大于60个字节,该用户ID必须是一个单独的未同时在其他地方使用的用户ID,白板推流服务使用这个用户ID进入房间进行白板音视频推流,若该用户ID和其他地方同时在使用的用户ID重复,会导致白板推流服务与其他使用场景帐号互踢,影响正常推流。 
     * @return PushUserId 用于白板推流服务进入白板房间的用户ID。在没有额外指定`IMAuthParam`和`TRTCAuthParam`的情况下,这个用户ID同时会用于IM登录、IM加群、TRTC进房推流等操作。
用户ID最大长度不能大于60个字节,该用户ID必须是一个单独的未同时在其他地方使用的用户ID,白板推流服务使用这个用户ID进入房间进行白板音视频推流,若该用户ID和其他地方同时在使用的用户ID重复,会导致白板推流服务与其他使用场景帐号互踢,影响正常推流。
     */
    public String getPushUserId() {
        return this.PushUserId;
    }

    /**
     * Set 用于白板推流服务进入白板房间的用户ID。在没有额外指定`IMAuthParam`和`TRTCAuthParam`的情况下,这个用户ID同时会用于IM登录、IM加群、TRTC进房推流等操作。
用户ID最大长度不能大于60个字节,该用户ID必须是一个单独的未同时在其他地方使用的用户ID,白板推流服务使用这个用户ID进入房间进行白板音视频推流,若该用户ID和其他地方同时在使用的用户ID重复,会导致白板推流服务与其他使用场景帐号互踢,影响正常推流。
     * @param PushUserId 用于白板推流服务进入白板房间的用户ID。在没有额外指定`IMAuthParam`和`TRTCAuthParam`的情况下,这个用户ID同时会用于IM登录、IM加群、TRTC进房推流等操作。
用户ID最大长度不能大于60个字节,该用户ID必须是一个单独的未同时在其他地方使用的用户ID,白板推流服务使用这个用户ID进入房间进行白板音视频推流,若该用户ID和其他地方同时在使用的用户ID重复,会导致白板推流服务与其他使用场景帐号互踢,影响正常推流。
     */
    public void setPushUserId(String PushUserId) {
        this.PushUserId = PushUserId;
    }

    /**
     * Get 与PushUserId对应的IM签名(usersig)。 
     * @return PushUserSig 与PushUserId对应的IM签名(usersig)。
     */
    public String getPushUserSig() {
        return this.PushUserSig;
    }

    /**
     * Set 与PushUserId对应的IM签名(usersig)。
     * @param PushUserSig 与PushUserId对应的IM签名(usersig)。
     */
    public void setPushUserSig(String PushUserSig) {
        this.PushUserSig = PushUserSig;
    }

    /**
     * Get 白板参数,例如白板宽高、背景颜色等 
     * @return Whiteboard 白板参数,例如白板宽高、背景颜色等
     */
    public Whiteboard getWhiteboard() {
        return this.Whiteboard;
    }

    /**
     * Set 白板参数,例如白板宽高、背景颜色等
     * @param Whiteboard 白板参数,例如白板宽高、背景颜色等
     */
    public void setWhiteboard(Whiteboard Whiteboard) {
        this.Whiteboard = Whiteboard;
    }

    /**
     * Get 自动停止推流超时时间,单位秒,取值范围[300, 259200], 默认值为1800秒。

当白板超过设定时间没有操作的时候,白板推流服务会自动停止白板推流。 
     * @return AutoStopTimeout 自动停止推流超时时间,单位秒,取值范围[300, 259200], 默认值为1800秒。

当白板超过设定时间没有操作的时候,白板推流服务会自动停止白板推流。
     */
    public Long getAutoStopTimeout() {
        return this.AutoStopTimeout;
    }

    /**
     * Set 自动停止推流超时时间,单位秒,取值范围[300, 259200], 默认值为1800秒。

当白板超过设定时间没有操作的时候,白板推流服务会自动停止白板推流。
     * @param AutoStopTimeout 自动停止推流超时时间,单位秒,取值范围[300, 259200], 默认值为1800秒。

当白板超过设定时间没有操作的时候,白板推流服务会自动停止白板推流。
     */
    public void setAutoStopTimeout(Long AutoStopTimeout) {
        this.AutoStopTimeout = AutoStopTimeout;
    }

    /**
     * Get 对主白板推流任务进行操作时,是否同时同步操作备份任务 
     * @return AutoManageBackup 对主白板推流任务进行操作时,是否同时同步操作备份任务
     */
    public Boolean getAutoManageBackup() {
        return this.AutoManageBackup;
    }

    /**
     * Set 对主白板推流任务进行操作时,是否同时同步操作备份任务
     * @param AutoManageBackup 对主白板推流任务进行操作时,是否同时同步操作备份任务
     */
    public void setAutoManageBackup(Boolean AutoManageBackup) {
        this.AutoManageBackup = AutoManageBackup;
    }

    /**
     * Get 备份白板推流相关参数。

指定了备份参数的情况下,白板推流服务会在房间内新增一路白板画面视频流,即同一个房间内会有两路白板画面推流。 
     * @return Backup 备份白板推流相关参数。

指定了备份参数的情况下,白板推流服务会在房间内新增一路白板画面视频流,即同一个房间内会有两路白板画面推流。
     */
    public WhiteboardPushBackupParam getBackup() {
        return this.Backup;
    }

    /**
     * Set 备份白板推流相关参数。

指定了备份参数的情况下,白板推流服务会在房间内新增一路白板画面视频流,即同一个房间内会有两路白板画面推流。
     * @param Backup 备份白板推流相关参数。

指定了备份参数的情况下,白板推流服务会在房间内新增一路白板画面视频流,即同一个房间内会有两路白板画面推流。
     */
    public void setBackup(WhiteboardPushBackupParam Backup) {
        this.Backup = Backup;
    }

    /**
     * Get TRTC高级权限控制参数,如果在实时音视频开启了高级权限控制功能,必须提供PrivateMapKey才能保证正常推流。 
     * @return PrivateMapKey TRTC高级权限控制参数,如果在实时音视频开启了高级权限控制功能,必须提供PrivateMapKey才能保证正常推流。
     */
    public String getPrivateMapKey() {
        return this.PrivateMapKey;
    }

    /**
     * Set TRTC高级权限控制参数,如果在实时音视频开启了高级权限控制功能,必须提供PrivateMapKey才能保证正常推流。
     * @param PrivateMapKey TRTC高级权限控制参数,如果在实时音视频开启了高级权限控制功能,必须提供PrivateMapKey才能保证正常推流。
     */
    public void setPrivateMapKey(String PrivateMapKey) {
        this.PrivateMapKey = PrivateMapKey;
    }

    /**
     * Get 白板推流视频帧率,取值范围[0, 30],默认20fps 
     * @return VideoFPS 白板推流视频帧率,取值范围[0, 30],默认20fps
     */
    public Long getVideoFPS() {
        return this.VideoFPS;
    }

    /**
     * Set 白板推流视频帧率,取值范围[0, 30],默认20fps
     * @param VideoFPS 白板推流视频帧率,取值范围[0, 30],默认20fps
     */
    public void setVideoFPS(Long VideoFPS) {
        this.VideoFPS = VideoFPS;
    }

    /**
     * Get 白板推流码率, 取值范围[0, 2000],默认1200kbps。

这里的码率设置是一个参考值,实际推流的时候使用的是动态码率,所以真实码率不会固定为指定值,会在指定值附近波动。 
     * @return VideoBitrate 白板推流码率, 取值范围[0, 2000],默认1200kbps。

这里的码率设置是一个参考值,实际推流的时候使用的是动态码率,所以真实码率不会固定为指定值,会在指定值附近波动。
     */
    public Long getVideoBitrate() {
        return this.VideoBitrate;
    }

    /**
     * Set 白板推流码率, 取值范围[0, 2000],默认1200kbps。

这里的码率设置是一个参考值,实际推流的时候使用的是动态码率,所以真实码率不会固定为指定值,会在指定值附近波动。
     * @param VideoBitrate 白板推流码率, 取值范围[0, 2000],默认1200kbps。

这里的码率设置是一个参考值,实际推流的时候使用的是动态码率,所以真实码率不会固定为指定值,会在指定值附近波动。
     */
    public void setVideoBitrate(Long VideoBitrate) {
        this.VideoBitrate = VideoBitrate;
    }

    /**
     * Get 在实时音视频云端录制模式选择为 `指定用户录制` 模式的时候是否自动录制白板推流。

默认在实时音视频的云端录制模式选择为 `指定用户录制` 模式的情况下,不会自动进行白板推流录制,如果希望进行白板推流录制,请将此参数设置为true。

如果实时音视频的云端录制模式选择为 `全局自动录制` 模式,可忽略此参数。 
     * @return AutoRecord 在实时音视频云端录制模式选择为 `指定用户录制` 模式的时候是否自动录制白板推流。

默认在实时音视频的云端录制模式选择为 `指定用户录制` 模式的情况下,不会自动进行白板推流录制,如果希望进行白板推流录制,请将此参数设置为true。

如果实时音视频的云端录制模式选择为 `全局自动录制` 模式,可忽略此参数。
     */
    public Boolean getAutoRecord() {
        return this.AutoRecord;
    }

    /**
     * Set 在实时音视频云端录制模式选择为 `指定用户录制` 模式的时候是否自动录制白板推流。

默认在实时音视频的云端录制模式选择为 `指定用户录制` 模式的情况下,不会自动进行白板推流录制,如果希望进行白板推流录制,请将此参数设置为true。

如果实时音视频的云端录制模式选择为 `全局自动录制` 模式,可忽略此参数。
     * @param AutoRecord 在实时音视频云端录制模式选择为 `指定用户录制` 模式的时候是否自动录制白板推流。

默认在实时音视频的云端录制模式选择为 `指定用户录制` 模式的情况下,不会自动进行白板推流录制,如果希望进行白板推流录制,请将此参数设置为true。

如果实时音视频的云端录制模式选择为 `全局自动录制` 模式,可忽略此参数。
     */
    public void setAutoRecord(Boolean AutoRecord) {
        this.AutoRecord = AutoRecord;
    }

    /**
     * Get 指定白板推流录制的RecordID,指定的RecordID会用于填充实时音视频云端录制完成后的回调消息中的 "userdefinerecordid" 字段内容,便于您更方便的识别录制回调,以及在点播媒体资源管理中查找相应的录制视频文件。

限制长度为64字节,只允许包含大小写英文字母(a-zA-Z)、数字(0-9)及下划线和连词符。

此字段设置后,不管`AutoRecord`字段取值如何,都将自动进行白板推流录制。

默认RecordId生成规则如下:
urlencode(SdkAppID_RoomID_PushUserID)

例如:
SdkAppID = 12345678,RoomID = 12345,PushUserID = push_user_1
那么:RecordId = 12345678_12345_push_user_1 
     * @return UserDefinedRecordId 指定白板推流录制的RecordID,指定的RecordID会用于填充实时音视频云端录制完成后的回调消息中的 "userdefinerecordid" 字段内容,便于您更方便的识别录制回调,以及在点播媒体资源管理中查找相应的录制视频文件。

限制长度为64字节,只允许包含大小写英文字母(a-zA-Z)、数字(0-9)及下划线和连词符。

此字段设置后,不管`AutoRecord`字段取值如何,都将自动进行白板推流录制。

默认RecordId生成规则如下:
urlencode(SdkAppID_RoomID_PushUserID)

例如:
SdkAppID = 12345678,RoomID = 12345,PushUserID = push_user_1
那么:RecordId = 12345678_12345_push_user_1
     */
    public String getUserDefinedRecordId() {
        return this.UserDefinedRecordId;
    }

    /**
     * Set 指定白板推流录制的RecordID,指定的RecordID会用于填充实时音视频云端录制完成后的回调消息中的 "userdefinerecordid" 字段内容,便于您更方便的识别录制回调,以及在点播媒体资源管理中查找相应的录制视频文件。

限制长度为64字节,只允许包含大小写英文字母(a-zA-Z)、数字(0-9)及下划线和连词符。

此字段设置后,不管`AutoRecord`字段取值如何,都将自动进行白板推流录制。

默认RecordId生成规则如下:
urlencode(SdkAppID_RoomID_PushUserID)

例如:
SdkAppID = 12345678,RoomID = 12345,PushUserID = push_user_1
那么:RecordId = 12345678_12345_push_user_1
     * @param UserDefinedRecordId 指定白板推流录制的RecordID,指定的RecordID会用于填充实时音视频云端录制完成后的回调消息中的 "userdefinerecordid" 字段内容,便于您更方便的识别录制回调,以及在点播媒体资源管理中查找相应的录制视频文件。

限制长度为64字节,只允许包含大小写英文字母(a-zA-Z)、数字(0-9)及下划线和连词符。

此字段设置后,不管`AutoRecord`字段取值如何,都将自动进行白板推流录制。

默认RecordId生成规则如下:
urlencode(SdkAppID_RoomID_PushUserID)

例如:
SdkAppID = 12345678,RoomID = 12345,PushUserID = push_user_1
那么:RecordId = 12345678_12345_push_user_1
     */
    public void setUserDefinedRecordId(String UserDefinedRecordId) {
        this.UserDefinedRecordId = UserDefinedRecordId;
    }

    /**
     * Get 在实时音视频旁路推流模式选择为`指定用户旁路`模式的时候,是否自动旁路白板推流。

默认在实时音视频的旁路推流模式选择为 `指定用户旁路` 模式的情况下,不会自动旁路白板推流,如果希望旁路白板推流,请将此参数设置为true。

如果实时音视频的旁路推流模式选择为 `全局自动旁路` 模式,可忽略此参数。 
     * @return AutoPublish 在实时音视频旁路推流模式选择为`指定用户旁路`模式的时候,是否自动旁路白板推流。

默认在实时音视频的旁路推流模式选择为 `指定用户旁路` 模式的情况下,不会自动旁路白板推流,如果希望旁路白板推流,请将此参数设置为true。

如果实时音视频的旁路推流模式选择为 `全局自动旁路` 模式,可忽略此参数。
     */
    public Boolean getAutoPublish() {
        return this.AutoPublish;
    }

    /**
     * Set 在实时音视频旁路推流模式选择为`指定用户旁路`模式的时候,是否自动旁路白板推流。

默认在实时音视频的旁路推流模式选择为 `指定用户旁路` 模式的情况下,不会自动旁路白板推流,如果希望旁路白板推流,请将此参数设置为true。

如果实时音视频的旁路推流模式选择为 `全局自动旁路` 模式,可忽略此参数。
     * @param AutoPublish 在实时音视频旁路推流模式选择为`指定用户旁路`模式的时候,是否自动旁路白板推流。

默认在实时音视频的旁路推流模式选择为 `指定用户旁路` 模式的情况下,不会自动旁路白板推流,如果希望旁路白板推流,请将此参数设置为true。

如果实时音视频的旁路推流模式选择为 `全局自动旁路` 模式,可忽略此参数。
     */
    public void setAutoPublish(Boolean AutoPublish) {
        this.AutoPublish = AutoPublish;
    }

    /**
     * Get 指定实时音视频在旁路白板推流时的StreamID,设置之后,您就可以在腾讯云直播 CDN 上通过标准直播方案(FLV或HLS)播放该用户的音视频流。

限制长度为64字节,只允许包含大小写英文字母(a-zA-Z)、数字(0-9)及下划线和连词符。

此字段设置后,不管`AutoPublish`字段取值如何,都将自动旁路白板推流。

默认StreamID生成规则如下:
urlencode(SdkAppID_RoomID_PushUserID_main)

例如:
SdkAppID = 12345678,RoomID = 12345,PushUserID = push_user_1
那么:StreamID = 12345678_12345_push_user_1_main 
     * @return UserDefinedStreamId 指定实时音视频在旁路白板推流时的StreamID,设置之后,您就可以在腾讯云直播 CDN 上通过标准直播方案(FLV或HLS)播放该用户的音视频流。

限制长度为64字节,只允许包含大小写英文字母(a-zA-Z)、数字(0-9)及下划线和连词符。

此字段设置后,不管`AutoPublish`字段取值如何,都将自动旁路白板推流。

默认StreamID生成规则如下:
urlencode(SdkAppID_RoomID_PushUserID_main)

例如:
SdkAppID = 12345678,RoomID = 12345,PushUserID = push_user_1
那么:StreamID = 12345678_12345_push_user_1_main
     */
    public String getUserDefinedStreamId() {
        return this.UserDefinedStreamId;
    }

    /**
     * Set 指定实时音视频在旁路白板推流时的StreamID,设置之后,您就可以在腾讯云直播 CDN 上通过标准直播方案(FLV或HLS)播放该用户的音视频流。

限制长度为64字节,只允许包含大小写英文字母(a-zA-Z)、数字(0-9)及下划线和连词符。

此字段设置后,不管`AutoPublish`字段取值如何,都将自动旁路白板推流。

默认StreamID生成规则如下:
urlencode(SdkAppID_RoomID_PushUserID_main)

例如:
SdkAppID = 12345678,RoomID = 12345,PushUserID = push_user_1
那么:StreamID = 12345678_12345_push_user_1_main
     * @param UserDefinedStreamId 指定实时音视频在旁路白板推流时的StreamID,设置之后,您就可以在腾讯云直播 CDN 上通过标准直播方案(FLV或HLS)播放该用户的音视频流。

限制长度为64字节,只允许包含大小写英文字母(a-zA-Z)、数字(0-9)及下划线和连词符。

此字段设置后,不管`AutoPublish`字段取值如何,都将自动旁路白板推流。

默认StreamID生成规则如下:
urlencode(SdkAppID_RoomID_PushUserID_main)

例如:
SdkAppID = 12345678,RoomID = 12345,PushUserID = push_user_1
那么:StreamID = 12345678_12345_push_user_1_main
     */
    public void setUserDefinedStreamId(String UserDefinedStreamId) {
        this.UserDefinedStreamId = UserDefinedStreamId;
    }

    /**
     * Get 内部参数,不需要关注此参数 
     * @return ExtraData 内部参数,不需要关注此参数
     */
    public String getExtraData() {
        return this.ExtraData;
    }

    /**
     * Set 内部参数,不需要关注此参数
     * @param ExtraData 内部参数,不需要关注此参数
     */
    public void setExtraData(String ExtraData) {
        this.ExtraData = ExtraData;
    }

    /**
     * Get TRTC数字类型房间号,取值范围: (1, 4294967295)。

在同时指定了RoomId与TRTCRoomId的情况下,优先使用TRTCRoomId作为白板流进行推流的TRTC房间号。

当指定了TRTCRoomIdStr的情况下,此字段将被忽略。 
     * @return TRTCRoomId TRTC数字类型房间号,取值范围: (1, 4294967295)。

在同时指定了RoomId与TRTCRoomId的情况下,优先使用TRTCRoomId作为白板流进行推流的TRTC房间号。

当指定了TRTCRoomIdStr的情况下,此字段将被忽略。
     */
    public Long getTRTCRoomId() {
        return this.TRTCRoomId;
    }

    /**
     * Set TRTC数字类型房间号,取值范围: (1, 4294967295)。

在同时指定了RoomId与TRTCRoomId的情况下,优先使用TRTCRoomId作为白板流进行推流的TRTC房间号。

当指定了TRTCRoomIdStr的情况下,此字段将被忽略。
     * @param TRTCRoomId TRTC数字类型房间号,取值范围: (1, 4294967295)。

在同时指定了RoomId与TRTCRoomId的情况下,优先使用TRTCRoomId作为白板流进行推流的TRTC房间号。

当指定了TRTCRoomIdStr的情况下,此字段将被忽略。
     */
    public void setTRTCRoomId(Long TRTCRoomId) {
        this.TRTCRoomId = TRTCRoomId;
    }

    /**
     * Get TRTC字符串类型房间号。

在指定了TRTCRoomIdStr的情况下,会优先使用TRTCRoomIdStr作为白板流进行推流的TRTC房间号。 
     * @return TRTCRoomIdStr TRTC字符串类型房间号。

在指定了TRTCRoomIdStr的情况下,会优先使用TRTCRoomIdStr作为白板流进行推流的TRTC房间号。
     */
    public String getTRTCRoomIdStr() {
        return this.TRTCRoomIdStr;
    }

    /**
     * Set TRTC字符串类型房间号。

在指定了TRTCRoomIdStr的情况下,会优先使用TRTCRoomIdStr作为白板流进行推流的TRTC房间号。
     * @param TRTCRoomIdStr TRTC字符串类型房间号。

在指定了TRTCRoomIdStr的情况下,会优先使用TRTCRoomIdStr作为白板流进行推流的TRTC房间号。
     */
    public void setTRTCRoomIdStr(String TRTCRoomIdStr) {
        this.TRTCRoomIdStr = TRTCRoomIdStr;
    }

    /**
     * Get IM鉴权信息参数,用于IM鉴权。
当白板信令所使用的IM应用与白板应用的SdkAppId不一致时,可以通过此参数提供对应IM应用鉴权信息。

如果提供了此参数,白板推流服务会优先使用此参数指定的SdkAppId作为白板信令的传输通道,否则使用公共参数中的SdkAppId作为白板信令的传输通道。 
     * @return IMAuthParam IM鉴权信息参数,用于IM鉴权。
当白板信令所使用的IM应用与白板应用的SdkAppId不一致时,可以通过此参数提供对应IM应用鉴权信息。

如果提供了此参数,白板推流服务会优先使用此参数指定的SdkAppId作为白板信令的传输通道,否则使用公共参数中的SdkAppId作为白板信令的传输通道。
     */
    public AuthParam getIMAuthParam() {
        return this.IMAuthParam;
    }

    /**
     * Set IM鉴权信息参数,用于IM鉴权。
当白板信令所使用的IM应用与白板应用的SdkAppId不一致时,可以通过此参数提供对应IM应用鉴权信息。

如果提供了此参数,白板推流服务会优先使用此参数指定的SdkAppId作为白板信令的传输通道,否则使用公共参数中的SdkAppId作为白板信令的传输通道。
     * @param IMAuthParam IM鉴权信息参数,用于IM鉴权。
当白板信令所使用的IM应用与白板应用的SdkAppId不一致时,可以通过此参数提供对应IM应用鉴权信息。

如果提供了此参数,白板推流服务会优先使用此参数指定的SdkAppId作为白板信令的传输通道,否则使用公共参数中的SdkAppId作为白板信令的传输通道。
     */
    public void setIMAuthParam(AuthParam IMAuthParam) {
        this.IMAuthParam = IMAuthParam;
    }

    /**
     * Get TRTC鉴权信息参数,用于TRTC进房推流鉴权。
当需要推流到的TRTC房间所对应的TRTC应用与白板应用的SdkAppId不一致时,可以通过此参数提供对应的TRTC应用鉴权信息。

如果提供了此参数,白板推流服务会优先使用此参数指定的SdkAppId作为白板推流的目标TRTC应用,否则使用公共参数中的SdkAppId作为白板推流的目标TRTC应用。 
     * @return TRTCAuthParam TRTC鉴权信息参数,用于TRTC进房推流鉴权。
当需要推流到的TRTC房间所对应的TRTC应用与白板应用的SdkAppId不一致时,可以通过此参数提供对应的TRTC应用鉴权信息。

如果提供了此参数,白板推流服务会优先使用此参数指定的SdkAppId作为白板推流的目标TRTC应用,否则使用公共参数中的SdkAppId作为白板推流的目标TRTC应用。
     */
    public AuthParam getTRTCAuthParam() {
        return this.TRTCAuthParam;
    }

    /**
     * Set TRTC鉴权信息参数,用于TRTC进房推流鉴权。
当需要推流到的TRTC房间所对应的TRTC应用与白板应用的SdkAppId不一致时,可以通过此参数提供对应的TRTC应用鉴权信息。

如果提供了此参数,白板推流服务会优先使用此参数指定的SdkAppId作为白板推流的目标TRTC应用,否则使用公共参数中的SdkAppId作为白板推流的目标TRTC应用。
     * @param TRTCAuthParam TRTC鉴权信息参数,用于TRTC进房推流鉴权。
当需要推流到的TRTC房间所对应的TRTC应用与白板应用的SdkAppId不一致时,可以通过此参数提供对应的TRTC应用鉴权信息。

如果提供了此参数,白板推流服务会优先使用此参数指定的SdkAppId作为白板推流的目标TRTC应用,否则使用公共参数中的SdkAppId作为白板推流的目标TRTC应用。
     */
    public void setTRTCAuthParam(AuthParam TRTCAuthParam) {
        this.TRTCAuthParam = TRTCAuthParam;
    }

    /**
     * Get 内测参数,需要提前申请白名单进行体验。

指定白板推流时推流用户进TRTC房间的进房模式。默认为 TRTCAppSceneVideoCall

TRTCAppSceneVideoCall - 视频通话场景,即绝大多数时间都是两人或两人以上视频通话的场景,内部编码器和网络协议优化侧重流畅性,降低通话延迟和卡顿率。
TRTCAppSceneLIVE - 直播场景,即绝大多数时间都是一人直播,偶尔有多人视频互动的场景,内部编码器和网络协议优化侧重性能和兼容性,性能和清晰度表现更佳。 
     * @return TRTCEnterRoomMode 内测参数,需要提前申请白名单进行体验。

指定白板推流时推流用户进TRTC房间的进房模式。默认为 TRTCAppSceneVideoCall

TRTCAppSceneVideoCall - 视频通话场景,即绝大多数时间都是两人或两人以上视频通话的场景,内部编码器和网络协议优化侧重流畅性,降低通话延迟和卡顿率。
TRTCAppSceneLIVE - 直播场景,即绝大多数时间都是一人直播,偶尔有多人视频互动的场景,内部编码器和网络协议优化侧重性能和兼容性,性能和清晰度表现更佳。
     */
    public String getTRTCEnterRoomMode() {
        return this.TRTCEnterRoomMode;
    }

    /**
     * Set 内测参数,需要提前申请白名单进行体验。

指定白板推流时推流用户进TRTC房间的进房模式。默认为 TRTCAppSceneVideoCall

TRTCAppSceneVideoCall - 视频通话场景,即绝大多数时间都是两人或两人以上视频通话的场景,内部编码器和网络协议优化侧重流畅性,降低通话延迟和卡顿率。
TRTCAppSceneLIVE - 直播场景,即绝大多数时间都是一人直播,偶尔有多人视频互动的场景,内部编码器和网络协议优化侧重性能和兼容性,性能和清晰度表现更佳。
     * @param TRTCEnterRoomMode 内测参数,需要提前申请白名单进行体验。

指定白板推流时推流用户进TRTC房间的进房模式。默认为 TRTCAppSceneVideoCall

TRTCAppSceneVideoCall - 视频通话场景,即绝大多数时间都是两人或两人以上视频通话的场景,内部编码器和网络协议优化侧重流畅性,降低通话延迟和卡顿率。
TRTCAppSceneLIVE - 直播场景,即绝大多数时间都是一人直播,偶尔有多人视频互动的场景,内部编码器和网络协议优化侧重性能和兼容性,性能和清晰度表现更佳。
     */
    public void setTRTCEnterRoomMode(String TRTCEnterRoomMode) {
        this.TRTCEnterRoomMode = TRTCEnterRoomMode;
    }

    public StartWhiteboardPushRequest() {
    }

    /**
     * NOTE: Any ambiguous key set via .set("AnyKey", "value") will be a shallow copy,
     *       and any explicit key, i.e Foo, set via .setFoo("value") will be a deep copy.
     */
    public StartWhiteboardPushRequest(StartWhiteboardPushRequest source) {
        if (source.SdkAppId != null) {
            this.SdkAppId = new Long(source.SdkAppId);
        }
        if (source.RoomId != null) {
            this.RoomId = new Long(source.RoomId);
        }
        if (source.PushUserId != null) {
            this.PushUserId = new String(source.PushUserId);
        }
        if (source.PushUserSig != null) {
            this.PushUserSig = new String(source.PushUserSig);
        }
        if (source.Whiteboard != null) {
            this.Whiteboard = new Whiteboard(source.Whiteboard);
        }
        if (source.AutoStopTimeout != null) {
            this.AutoStopTimeout = new Long(source.AutoStopTimeout);
        }
        if (source.AutoManageBackup != null) {
            this.AutoManageBackup = new Boolean(source.AutoManageBackup);
        }
        if (source.Backup != null) {
            this.Backup = new WhiteboardPushBackupParam(source.Backup);
        }
        if (source.PrivateMapKey != null) {
            this.PrivateMapKey = new String(source.PrivateMapKey);
        }
        if (source.VideoFPS != null) {
            this.VideoFPS = new Long(source.VideoFPS);
        }
        if (source.VideoBitrate != null) {
            this.VideoBitrate = new Long(source.VideoBitrate);
        }
        if (source.AutoRecord != null) {
            this.AutoRecord = new Boolean(source.AutoRecord);
        }
        if (source.UserDefinedRecordId != null) {
            this.UserDefinedRecordId = new String(source.UserDefinedRecordId);
        }
        if (source.AutoPublish != null) {
            this.AutoPublish = new Boolean(source.AutoPublish);
        }
        if (source.UserDefinedStreamId != null) {
            this.UserDefinedStreamId = new String(source.UserDefinedStreamId);
        }
        if (source.ExtraData != null) {
            this.ExtraData = new String(source.ExtraData);
        }
        if (source.TRTCRoomId != null) {
            this.TRTCRoomId = new Long(source.TRTCRoomId);
        }
        if (source.TRTCRoomIdStr != null) {
            this.TRTCRoomIdStr = new String(source.TRTCRoomIdStr);
        }
        if (source.IMAuthParam != null) {
            this.IMAuthParam = new AuthParam(source.IMAuthParam);
        }
        if (source.TRTCAuthParam != null) {
            this.TRTCAuthParam = new AuthParam(source.TRTCAuthParam);
        }
        if (source.TRTCEnterRoomMode != null) {
            this.TRTCEnterRoomMode = new String(source.TRTCEnterRoomMode);
        }
    }


    /**
     * Internal implementation, normal users should not use it.
     */
    public void toMap(HashMap map, String prefix) {
        this.setParamSimple(map, prefix + "SdkAppId", this.SdkAppId);
        this.setParamSimple(map, prefix + "RoomId", this.RoomId);
        this.setParamSimple(map, prefix + "PushUserId", this.PushUserId);
        this.setParamSimple(map, prefix + "PushUserSig", this.PushUserSig);
        this.setParamObj(map, prefix + "Whiteboard.", this.Whiteboard);
        this.setParamSimple(map, prefix + "AutoStopTimeout", this.AutoStopTimeout);
        this.setParamSimple(map, prefix + "AutoManageBackup", this.AutoManageBackup);
        this.setParamObj(map, prefix + "Backup.", this.Backup);
        this.setParamSimple(map, prefix + "PrivateMapKey", this.PrivateMapKey);
        this.setParamSimple(map, prefix + "VideoFPS", this.VideoFPS);
        this.setParamSimple(map, prefix + "VideoBitrate", this.VideoBitrate);
        this.setParamSimple(map, prefix + "AutoRecord", this.AutoRecord);
        this.setParamSimple(map, prefix + "UserDefinedRecordId", this.UserDefinedRecordId);
        this.setParamSimple(map, prefix + "AutoPublish", this.AutoPublish);
        this.setParamSimple(map, prefix + "UserDefinedStreamId", this.UserDefinedStreamId);
        this.setParamSimple(map, prefix + "ExtraData", this.ExtraData);
        this.setParamSimple(map, prefix + "TRTCRoomId", this.TRTCRoomId);
        this.setParamSimple(map, prefix + "TRTCRoomIdStr", this.TRTCRoomIdStr);
        this.setParamObj(map, prefix + "IMAuthParam.", this.IMAuthParam);
        this.setParamObj(map, prefix + "TRTCAuthParam.", this.TRTCAuthParam);
        this.setParamSimple(map, prefix + "TRTCEnterRoomMode", this.TRTCEnterRoomMode);

    }
}





© 2015 - 2024 Weber Informatics LLC | Privacy Policy