Documentation ¶
Index ¶
- func Delete(c *golangsdk.ServiceClient, opts DeleteOpts) error
- func ExtendTime(c *golangsdk.ServiceClient, opts ExtendOpts) error
- type AuthOpts
- type AuthResp
- type Conference
- type Configuration
- type CreateOpts
- type CycleParams
- type DeleteOpts
- type ErrResponse
- type ExtendOpts
- type GetHistoryOpts
- type GetOpts
- type GetResp
- type ListHistoryOpts
- type MultipicDisplayDo
- type PageParticipant
- type Participant
- type ParticipantDetail
- type ParticipantResp
- type PasswordEntry
- type PicInfoNotify
- type PicLayout
- type ShowAudiencePolicy
- type SubConference
- type SubConfiguration
- type SubPicLayout
- type TokenDetail
- type UpdateOpts
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func Delete ¶
func Delete(c *golangsdk.ServiceClient, opts DeleteOpts) error
Delete is a method to cancel conference using given parameters.
func ExtendTime ¶
func ExtendTime(c *golangsdk.ServiceClient, opts ExtendOpts) error
ExtendTime is a method to extend conference time using given parameters.
Types ¶
type AuthResp ¶
type AuthResp struct { // Token information. TokenDetail TokenDetail `json:"data"` // Query the temporary token in the address book. AddressToken string `json:"addressToken"` // Global external network IP. GloablPublicIP string `json:"gloablPublicIP"` }
func GetControlToken ¶
func GetControlToken(c *golangsdk.ServiceClient, opts AuthOpts) (*AuthResp, error)
GetControlToken is a method to generate a control token according to the chair password and conference ID.
type Conference ¶
type Conference struct { // Meeting ID. The length is limited to 32 characters. ID string `json:"conferenceID"` // Conference theme. The length is limited to 128 characters. Subject string `json:"subject"` // The number of parties in the meeting. Size int `json:"size"` // The time zone information of the meeting time in the meeting notification. // For time zone information, refer to the time zone mapping relationship. // For example: "timeZoneID": "26", the time in the meeting notice sent through HUAWEI CLOUD meeting will be marked // as "2021/11/11 Thursday 00:00 - 02:00 (GMT) Greenwich Standard When: Dublin, Edinburgh, Lisbon, London". TimeZoneId string `json:"timeZoneID"` // The meeting start time (YYYY-MM-DD HH:MM). StartTime string `json:"startTime"` // The meeting end time (YYYY-MM-DD HH:MM). EndTime string `json:"endTime"` // The media type of the meeting. // It consists of one or more enumeration Strings. // When there are multiple enumerations, each enumeration value is separated by "," commas. // Voice: Voice. // Video: SD video. // HDVideo: high-definition video (mutually exclusive with "Video", if "Video" and "HDVideo" are selected at the // same time, the system selects "Video" by default). // Telepresence: Telepresence (mutually exclusive with "HDVideo" and "Video", if selected at the same time, the // system uses "Telepresence"). (reserved field) // Data: Multimedia. MediaTypes string `json:"mediaTypes"` // Currently, only the Created and Scheduled states will be returned. If the meeting has been held, the Created // state will be returned, otherwise, the Scheduled state will be returned. // Schedule: Schedule status. // Creating: The state is being created. // Created: The meeting has been created and is in progress. // Destroyed: The meeting has been closed. ConferenceState string `json:"conferenceState"` // Conference language. Language string `json:"language"` // Conference access code. AccessNumber string `json:"accessNumber"` // Meeting password entry. The subscriber returns the host password and guest password. // The host password is returned when the host queries. // The guest password is returned when the guest is queried. PasswordEntry []PasswordEntry `json:"passwordEntry"` // The UUID of the meeting booker. UserUUID string `json:"userUUID"` // Meeting booker account name. The maximum length is limited to 96 characters. ScheduserName string `json:"scheduserName"` // Conference type (Parameters used by the front-end). // 0 : Normal meeting. // 2 : Periodic meeting. ConferenceType int `json:"conferenceType"` // Conference type. // FUTURE // IMMEDIATELY // CYCLE ConfType string `json:"confType"` // Periodic meeting parameters. Carry this parameter when the conference is a periodic conference. // This parameter includes the start date, end date of the periodic meeting, the period of the meeting and the // meeting time point in the period. CycleParams CycleParams `json:"cycleParams"` // Whether to automatically mute the session. // 0 : Do not mute automatically. // 1 : Auto mute. IsAutoMute int `json:"isAutoMute"` // Whether to automatically start recording. // 0 : Do not start automatically. // 1 : start automatically. IsAutoRecord int `json:"isAutoRecord"` // Host meeting link address. ChairJoinUri string `json:"chairJoinUri"` // Common attendee meeting link address. The maximum length is 1024. GuestJoinUri string `json:"guestJoinUri"` // Audience meeting link address. The maximum length is 1024. (webinar scenario) AudienceJoinUri string `json:"audienceJoinUri"` // Recording type. // 0: Disabled. // 1: Live broadcast. // 2: Record and broadcast. // 3: Live + Recording. RecordType int `json:"recordType"` // Auxiliary stream live address. AuxAddress string `json:"auxAddress"` // Mainstream live broadcast address. LiveAddress string `json:"liveAddress"` // Whether to record auxiliary streams. // 0: No. // 1: Yes. RecordAuxStream int `json:"recordAuxStream"` // Recording and broadcasting authentication method. // The recording type is: recording, live+recording, and it is valid. // 0: Viewable/downloadable via link. // 1: Enterprise users can watch/download. // 2: Attendees can watch/download. RecordAuthType int `json:"recordAuthType"` // Live address. (It will be returned when the live room is configured) LiveUrl string `json:"liveUrl"` // Other configuration information for the conference. Configuration Configuration `json:"confConfigInfo"` // Whether to use the cloud conference room to hold a reservation meeting. // 0: Do not use cloud conference room. // 1: Use cloud conference room. // The interface shows that the conference ID needs to use "vmrConferenceID" as the conference ID; // the "conferenceID" field is still used for conference business operations such as querying conference details, // logging in to conference control, and typing in a conference. VmrFlag int `json:"vmrFlag"` // Only the historical conference return value is valid. There are no recording files by default. // true: There is a recording file. // false: No recording file. IsHasRecordFile bool `json:"isHasRecordFile"` // The conference ID of the cloud conference room. If "vmrFlag" is "1", this field is not empty. VmrConferenceId string `json:"vmrConferenceID"` // The UUID of the meeting. // The UUID is only returned when a meeting that starts immediately is created. // If it is a future meeting, the UUID will not be returned. // You can get the UUID of the historical conference through "Query Historical Conference List". ConfUUID string `json:"confUUID"` // Information about some of the invited participants. // Only the first 20 soft terminal participant information and the first 20 hard terminal participant information // are returned. Do not return the information of participants who actively joined in the conference. // The "Query Conference List" and "Query Conference Details" interfaces return the participants who were invited // when the conference was scheduled and the participants who were invited by the host in the conference. // The "Query Online Conference List", "Query Online Conference Details", "Query History Conference List" and "Query // History Conference Details" interfaces return the participants who were invited when the conference was // scheduled. Attendees invited by the host in the meeting are not returned. Participants []ParticipantResp `json:"partAttendeeInfo"` // Number of hard terminals, such as IdeaHub, TE30, etc. TerminlCount int `json:"terminlCount"` // The number of common terminals, such as PC terminal, mobile terminal app, etc. NormalCount int `json:"normalCount"` // The business name of the meeting booker. Maximum length 96. DeptName string `json:"deptName"` // Attendee role. // chair : Chair. // general : The guest. // audience : The audience. Role string `json:"role"` // Identifies whether it is a multi-stream video conference. // 1 : Multi-stream conference. MultiStreamFlag int `json:"multiStreamFlag"` // Webinar or not. Webinar bool `json:"webinar"` // Type of meeting. // COMMON : Normal conference. // RTC : RTC conference. ConfMode string `json:"confMode"` // VMR appointment record. // true : VMR conference. // false : Normal meeting. ScheduleVmr bool `json:"scheduleVmr"` // The UUID of the cloud meeting room. VmrId string `json:"vmrID"` // The number of parties in the conference, the maximum number of participants in the conference. ConcurrentParticipants int `json:"concurrentParticipants"` // Current multi-screen information. PicDisplay MultipicDisplayDo `json:"picDisplay"` // List of periodic sub-conferences. Subconferences []SubConference `json:"subConfs"` // The UUID of the first cycle subconference. CycleSubConfId string `json:"cycleSubConfID"` }
func Create ¶
func Create(c *golangsdk.ServiceClient, opts CreateOpts) ([]Conference, error)
Create is a method to initiate a conference using given parameters.
func ListHistory ¶
func ListHistory(c *golangsdk.ServiceClient, opts ListHistoryOpts) ([]Conference, error)
ListHistory is a method to obtain history conference list using given parameters.
func Update ¶
func Update(c *golangsdk.ServiceClient, opts UpdateOpts) ([]Conference, error)
Update is a method to udpate the conference configuration using given parameters.
type Configuration ¶
type Configuration struct { // Whether to send conference email notification. The default value is determined by the enterprise-level configuration. // true: required. // false: not required. IsSendNotify *bool `json:"isSendNotify,omitempty"` // Whether to send conference SMS notification. The default value is determined by the enterprise-level configuration. // true: required. // false: not required. // Only official commercial enterprises have the right to send conference SMS notifications. // Free enterprises will not send conference SMS notifications even if isSendSms is set to true. IsSendSms *bool `json:"isSendSms,omitempty"` // Whether to send conference calendar notifications. The default value is determined by the enterprise-level configuration. // true: required. // false: not required. IsSendCalendar *bool `json:"isSendCalendar,omitempty"` // Whether the soft terminal is automatically muted when the guest joins the conference. // The default value is determined by the enterprise-level configuration. // true: Automatic mute. // false: Do not mute automatically. IsAutoMute *bool `json:"isAutoMute,omitempty"` // Whether the guest joins the conference, whether the hard terminal is automatically muted. // The default value is determined by the enterprise-level configuration. // true: Automatic mute. // false: Do not mute automatically. IsHardTerminalAutoMute *bool `json:"isHardTerminalAutoMute,omitempty"` // Whether the guest is password-free (only valid for random conferences). // true: no password. // false: A password is required. IsGuestFreePwd *bool `json:"isGuestFreePwd,omitempty"` // The range to allow incoming calls. // 0: All users. // 2: Users within the enterprise. // 3: The invited user. CallInRestriction *int `json:"callInRestriction,omitempty"` // Whether to allow guests to start conferences (only valid for random ID conferences). // true: Allows guests to start conferences. // false: Disables guests from starting conferences. AllowGuestStartConf *bool `json:"allowGuestStartConf,omitempty"` // Guest password (pure number 4-16 digits long). GuestPwd string `json:"guestPwd,omitempty"` // Cloud conference room conference ID mode. // 0: Fixed ID. // 1: Random ID. VmrIDType *int `json:"vmrIDType,omitempty"` // Automatically extend the conference duration (recommended value range is 0-60). // 0: Indicates that the conference ends automatically at the end of the session, and does not extend the conference. // Others: Indicates the duration of the automatic extension. // Automatically ending the conference is calculated according to the duration of the conference. For example, a scheduled conference starts at 9:00 and ends at 11:00, and the conference lasts for 2 hours. If a participant joins the conference at 8:00, the conference will automatically end at 10:00. ProlongLength *int `json:"prolongLength,omitempty"` // Whether to open the waiting room (only valid for RTC enterprises). // true: On. // false: not enabled. EnableWaitingRoom *bool `json:"enableWaitingRoom,omitempty"` }
type CreateOpts ¶
type CreateOpts struct { // The conference start time (UTC time). // When creating a reservation conference, if the start time is not specified or the blank string is filled in, it // means that the conference will start immediately. // The time is in UTC, which is the time in time zone 0. // Format: yyyy-MM-dd HH:mm StartTime string `json:"startTime,omitempty"` // The duration of the conference, in minutes, with a maximum value of 1440 and a minimum value of 15. // The default is 30. Length int `json:"length,omitempty"` // Conference subject. The length is limited to 128 characters. Subject string `json:"subject,omitempty"` // The media type of the conference. // It consists of one or more enumeration Strings. When there are multiple enumerations, each enumeration value is // separated by "," commas. The enumeration values are as follows: // "Voice": Voice. // "Video": SD video. // "HDVideo": High-definition video (mutually exclusive with Video, if Video and HDVideo are selected at the same // time, the system will select Video by default). // "Telepresence": Telepresence (mutually exclusive with HDVideo and Video, if selected at the same time, the // system uses Telepresence). (reserved field) // "Data": Multimedia (system configuration determines whether to automatically add Data). MediaTypes string `json:"mediaTypes,omitempty"` // When the soft terminal creates an instant conference, it carries a temporary group ID in the current field, which // is carried by the server in the conference-info header field when inviting other participants. // The length is limited to 31 characters. Groupuri string `json:"groupuri,omitempty"` // Attendee list. This list can be used to send conference notifications, conference reminders, and automatic invitations // when the conference starts. Participants []Participant `json:"attendees,omitempty"` // The parameter of the cyclical conference. When the conference is a periodic conference, this parameter must be filled in, // otherwise the server ignores this parameter. // This parameter includes the start date, end date of the periodic conference, the period of the conference and the // conference time point in the period. CycleParams *CycleParams `json:"cycleParams,omitempty"` // Whether the conference automatically starts recording, it only takes effect when the recording type is: // 1: Automatically start recording. // 0: Do not start recording automatically. // The default is not to start automatically. IsAutoRecord *int `json:"isAutoRecord,omitempty"` // Conference media encryption mode. // 0: Adaptive encryption. // 1: Force encryption. // 2: Do not encrypt. // Default values are populated by enterprise-level configuration. EncryptMode *int `json:"encryptMode,omitempty"` // The default language of the conference, the default value is defined by the conference cloud service. // For languages supported by the system, it is passed according to the RFC3066 specification. // zh-CN: Simplified Chinese. // en-US: US English. Language string `json:"language,omitempty"` // The time zone information of the conference time in the conference notification. // For time zone information, refer to the time zone mapping relationship. // For example: "timeZoneID":"26", the time in the conference notification sent through HUAWEI CLOUD conference will be // marked as "2021/11/11 Thursday 00:00 - 02:00 (GMT) Greenwich Standard When: Dublin, Edinburgh, Lisbon, London". // For an aperiodic conference, if the conference notification is sent through a third-party system, this field does not // need to be filled in. TimeZoneID string `json:"timeZoneID,omitempty"` // Recording type. // 0: Disabled. // 1: Live broadcast. // 2: Record and broadcast. // 3: Live + Recording. // Default is disabled. RecordType *int `json:"recordType,omitempty"` // The mainstream live broadcast address, with a maximum of 255 characters. // It is valid when the recording type is 2 or 3. LiveAddress string `json:"liveAddress,omitempty"` // Auxiliary streaming address, the maximum length is 255 characters. // It is valid when the recording type is 2 or 3. AuxAddress string `json:"auxAddress,omitempty"` // Whether to record auxiliary stream. // 0: Do not record. // 1: Record. // It is valid when the recording type is 2 or 3. RecordAuxStream *int `json:"recordAuxStream,omitempty"` // Other configuration information for the conference. Configuration *Configuration `json:"confConfigInfo,omitempty"` // Recording authentication method. // 0: Viewable/downloadable via link. // 1: Enterprise users can watch/download. // 2: Attendees can watch/download. // It is valid when the recording type is 2 or 3. RecordAuthType *int `json:"recordAuthType,omitempty"` // Whether to use the cloud conference room or personal conference ID to hold a reservation conference. // 0: Do not use cloud conference room. // 1: Use cloud conference room or personal conference ID. // Cloud conference rooms are not used by default. VmrFlag *int `json:"vmrFlag,omitempty"` // VMR ID bound to the current founding account. // Obtained by querying the cloud conference room and personal conference ID interface. // Note: // vmrID takes the ID returned in the above query interface, not vmrId. // When creating a conference with a personal conference ID, use VMR with vmrMode=0; // When creating a conference in a cloud conference room, use VMR with vmrMode=1. VmrId string `json:"vmrID,omitempty"` // The number of parties in the conference, the maximum number of participants in the conference. // 0: Unlimited. // Greater than 0: the maximum number of participants in the conference. ConcurrentParticipants *int `json:"concurrentParticipants,omitempty"` // The authorization token. Token string `json:"-" required:"true"` }
type CycleParams ¶
type CycleParams struct { // The start date of the recurring conference, format: YYYY-MM-DD. // The start date cannot be earlier than the current date. // The date is the date in the time zone specified by timeZoneID, not the date in UTC time. StartDate string `json:"startDate,omitempty"` // End date of the recurring conference, format: YYYY-MM-DD. // The maximum time interval between start date and end date cannot exceed 1 year. // A maximum of 50 subconferences are allowed between the start date and the end date. // If there are more than 50 subconferences, the end date will be automatically adjusted. // The date is the date in the time zone specified by timeZoneID, not the date in UTC time. EndDate string `json:"endDate,omitempty"` // Period type. The valid values are: // Day // Week // Month Cycle string `json:"cycle,omitempty"` // If the cycle selects "Day", which means that it will be held every few days, and the value range is [1,15]. // If the cycle selects "Week", which means that it is held every few weeks, and the value range is [1,5]. // If the cycle selects "Month", Interval means every few months, the value range is [1,3]. Interval int `json:"interval,omitempty"` // The conference point in the cycle. Only valid by week and month. // "Week" is selected for "cycle", and two elements 1 and 3 are filled in point, which means that a conference is held // every Monday and Wednesday, and 0 means Sunday. // "Month" is selected for "cycle", and 12 and 20 are filled in point, which means that a conference will be held on // the 12th and 20th of each month. The value range is [1,31]. If there is no such value in the current month, then // for the end of the month. Points []int `json:"point,omitempty"` // Support the user to specify the number of days N for advance conference notice, the booker will receive the notice // of the whole cycle conference, and all the participants will receive the conference notice (including the calendar) // N days before each sub-conference time. // The input of the number of days N is automatically adjusted according to the interval. // If it is held every 2 days on a daily basis, N will automatically become 2, and if it is a Monday or Tuesday // every 2 weeks on a weekly basis, N will automatically become 14. Constraints: DST handling is not considered for // now. The valid value is range from 0 to 30. The default is 1. PreRemindDays *int `json:"preRemindDays,omitempty"` }
type DeleteOpts ¶
type ErrResponse ¶
type ExtendOpts ¶
type GetHistoryOpts ¶
type GetHistoryOpts struct { // Conference UUID. ConferenceUuid string `q:"confUUID"` // Offset from which the query starts. // If the offset is less than 0, the value is automatically converted to 0. Default to 0. Offset int `q:"offset"` // Number of items displayed on each page. The valid values are range form 1 to 500, default to 20. Limit int `q:"limit"` // User ID. UserId string `q:"userUUID"` // Authorization token. Token string `json:"-"` }
type GetOpts ¶
type GetOpts struct { // Conference ID. ConferenceId string `q:"conferenceID"` // Offset from which the query starts. // If the offset is less than 0, the value is automatically converted to 0. Default to 0. Offset int `q:"offset"` // Number of items displayed on each page. The valid values are range form 1 to 500, default to 20. Limit int `q:"limit"` // User ID. UserId string `q:"userUUID"` // Authorization. Token string `json:"-"` }
type GetResp ¶
type GetResp struct { Conference Conference `json:"conferenceData"` Data PageParticipant `json:"data"` }
func Get ¶
func Get(c *golangsdk.ServiceClient, opts GetOpts) (*GetResp, error)
Get is a method to obtain scheduled or online conference details using given parameters.
func GetHistory ¶
func GetHistory(c *golangsdk.ServiceClient, opts GetHistoryOpts) (*GetResp, error)
GetHistory is a method to obtain history conference using given parameters.
type ListHistoryOpts ¶
type ListHistoryOpts struct { // User UUID. UserUUID string `q:"userUUID"` // Offset from which the query starts. // If the offset is less than 0, the value is automatically converted to 0. Default to 0. Offset int `q:"offset"` // Number of items displayed on each page. The valid values are range form 1 to 500, default to 20. Limit int `q:"limit"` // Query historical conferences based on the conference subject, the reservation and the string of conference ID // keywords. SearchKey string `q:"searchKey"` // Whether to query the meeting records of all users under the enterprise. // If the login account is not an enterprise administrator, this field is invalid. // If this field is true, the userUUID field has no effect. // The default value is 'false'. QueryAll bool `q:"queryAll"` // The query's starting date in milliseconds. For example: 1583078400000 StartDate int `q:"startDate"` // The query deadline in milliseconds. For example: 1585756799000 EndDate int `q:"endDate"` //ASC_StartTIME: Sort by meeting start time in ascending order. // DSC_StartTIME: Sort in descending order according to the conference start time. // ASC_RecordTYPE: Sort according to whether there are recording files or not, and then sort according to the // conference start time in ascending order by default. // DSC_RecordTYPE: Sort according to whether there are recording files or not, and then sort by the conference // start time in descending order by default. SortType string `q:"sortType"` // Authorization token. Token string `json:"-"` }
type MultipicDisplayDo ¶
type MultipicDisplayDo struct { // Whether to set multi-screen manually. // 0: The system automatically multi-screen. // 1: Manually set multi-screen. ManualSet int `json:"manualSet"` // Screen Type, value range: // Single: single screen // Two: Two pictures // Three: Three pictures // Three-2: Three pictures-2 // Three-3: Three pictures-3 // Three-4: Three pictures-4 // Four: Quad Picture // Four-2: Quad Picture-2 // Four-3: Quad Picture-3 // Five: Five pictures // Five-2: Five pictures-2 // Six: Six pictures // Six-2: Six pictures-2 // Six-3: Six pictures-3 // Six-4: Six pictures-4 // Six-5: Six pictures-5 // Seven: Seven pictures // Seven-2: Seven pictures-2 // Seven-3: Seven pictures-3 // Seven-4: Seven pictures-4 // Eight: Eight-picture // Eight-2: Eight-picture-2 // Eight-3: Eight-picture-3 // Eight-4: Eight-picture-4 // Nine: Nine pictures // Ten: Ten pictures // Ten-2: Ten pictures-2 // Ten-3: Ten pictures-3 // Ten-4: Ten pictures-4 // Ten-5: Ten pictures-5 // Ten-6: Ten pictures-6 // Thirteen: Thirteen pictures // Thirteen-2: Thirteen pictures-2 // Thirteen-3: Thirteen pictures-3 // Thirteen-4: Thirteen pictures-4 // Thirteen-5: Thirteen pictures-5 // ThirteenR: Thirteen Frames R // ThirteenM: Thirteen Frames M // Sixteen: Sixteen screen // Seventeen: Seventeen pictures // Twenty-Five: Twenty-Five // Custom: custom multi-screen ImageType string `json:"imageType"` // Subscreen list. SubscriberInPics []PicInfoNotify `json:"subscriberInPics"` // Indicates the polling interval, in seconds. // This parameter is valid when there are multiple video sources in the same sub-picture. SwitchTime string `json:"switchTime"` // Customize multi-screen layout information. PicLayout PicLayout `json:"picLayoutInfo"` }
type PageParticipant ¶
type PageParticipant struct { // The number of records per page. Limit int `json:"limit"` // total number of the participants. Count int `json:"count"` // The offset of the number of records, how many records there are before this page. Offset int `json:"offset"` // Invited attendee information. It includes the attendees invited when the meeting was scheduled and the attendees // invited by the host during the meeting. // Do not return the information of participants who actively joined in the conference. Participants []ParticipantDetail `json:"data"` }
type Participant ¶
type Participant struct { // User UUID of the participant. UserUUID string `json:"userUUID,omitempty"` // The account ID of the participant. // If it is an account/password authentication scenario, optional, indicating the ID of the HUAWEI CLOUD conference // account. If it is an APP ID authentication scenario, it is required, indicating the user ID of the third party, // and the appid parameter needs to be carried. AccountId string `json:"accountId,omitempty"` // App ID, application identification, an application only needs to be created once, refer to "App ID application" // If it is an APP ID authentication scenario, this item is required. AppId string `json:"appId,omitempty"` // Attendee name or nickname. The length is limited to 96 characters. Name string `json:"name,omitempty"` // The role in the conference. The default is a regular participant. // 0: Normal attendees. // 1: The conference host. Role *int `json:"role,omitempty"` // If it is an account/password authentication scenario, it is required to fill in the number (SIP and TEL number // formats can be supported). Maximum of 127 characters. At least one of phone, email and sms must be filled in. // If it is an APP ID authentication scenario, optional. Phone string `json:"phone,omitempty"` // Email address. Maximum of 255 characters. In the case of account/password authentication, at least one of phone, // email, and sms must be filled in. (Information notification for reservation, modification and cancellation of // conference) Email string `json:"email,omitempty"` // Mobile number for SMS notification. Maximum of 32 characters. In the case of account/password authentication, at // least one of phone, email, and sms must be filled in. (Information notification for reservation, modification and // cancellation of conference) SMS string `json:"sms,omitempty"` // Whether the user needs to be automatically muted when joining the conference (only effective when invited in the // conference). Unmuted by default. // 0: No mute required. // 1: Mute is required. IsMute *int `json:"isMute,omitempty"` // Whether to automatically invite this participant when the conference starts. The default value is determined by the // enterprise-level configuration. // 0: Do not automatically invite. // 1: Automatic invitation. IsAutoInvite *int `json:"isAutoInvite,omitempty"` // The default value is defined by the conference AS. The number type enumeration is as follows: // normal: Soft terminal. // telepresence: Telepresence. Single-screen and triple-screen telepresence belong to this category. (reserved field) // terminal: conference room or hard terminal. // outside: The outside participant. // mobile: User's mobile phone number. // telephone: The user's landline phone. (reserved field) // ideahub: ideahub. Type string `json:"type,omitempty"` // Department ID. Maximum of 64 characters. DeptUUID string `json:"deptUUID,omitempty"` // Department name. Maximum of 128 characters. DeptName string `json:"deptName,omitempty"` }
type ParticipantDetail ¶
type ParticipantDetail struct { // The participant's number. ID string `json:"participantID"` // The name (nickname) of the attendee. Name string `json:"name"` // role in the meeting. // 1: The meeting host. // 0: Regular attendees.v Role int `json:"role"` // user status. Currently fixed return to MEETING. State string `json:"state"` // Information about the conference room where the terminal is located. (reserved field) Address string `json:"address"` // The default value is defined by the conference AS. // normal: soft terminal. // telepresence: telepresence. Single-screen and triple-screen telepresence belong to this category. (reserved field) // terminal: conference room or hard terminal. // outside: The outside participant. // mobile: User's mobile phone number. // telephone: The user's landline phone. (reserved field) Type string `json:"attendeeType"` // The account ID of the participant. // In the case of account/password authentication, it indicates the ID of the HUAWEI CLOUD conference account. // If it is an APP ID authentication scenario, it indicates the User ID of a third party. AccountId string `json:"accountId"` // email address. Maximum of 255 characters. Email string `json:"email"` // Mobile number for SMS notification. Maximum of 127 characters. SMS string `json:"sms"` // Department name. Maximum of 96 characters. DeptName string `json:"deptName"` // Subscriber's user UUID. UserUUID string `json:"userUUID"` // App ID, application identification, an application only needs to be created once, refer to "App ID application". AppId string `json:"appId"` // Whether to automatically invite this attendee when the meeting starts. // The default value is determined by the enterprise-level configuration. // 0: do not automatically invite // 1: auto-invite IsAutoInvite int `json:"isAutoInvite"` // Whether to not superimpose the venue name // true: no overlay // false: overlay IsNotOverlayPidName bool `json:"isNotOverlayPidName"` }
type ParticipantResp ¶
type ParticipantResp struct { // Attendee name or nickname. The length is limited to 96 characters. Name string `json:"name"` // Phone number (support SIP, TEL number format). Maximum of 127 characters. // At least one of phone, email and sms must be filled in. // When "type" is "telepresence" and the device is a three-screen telepresence, fill in the number of the middle // screen in this field. (Three-screen telepresence is a reserved field) Phone string `json:"phone"` // The default value is defined by the conference AS, and the number type is enumerated as follows: // "normal": soft terminal. // "telepresence": telepresence. Single-screen and triple-screen telepresence belong to this category. (reserved) // "terminal": conference room or hard terminal. // "outside": The outside participant. // "mobile": User's mobile phone number. // "telephone": The user's landline phone. (reserved field) Type string `json:"type"` }
type PasswordEntry ¶
type PicInfoNotify ¶
type PicLayout ¶
type PicLayout struct { // The number of horizontal small grids. X int `json:"x"` // The number of vertical small grids. Y int `json:"y"` // Multi-screen information. SubPicLayouts []SubPicLayout `json:"subPicLayoutInfoList"` }
type ShowAudiencePolicy ¶
type ShowAudiencePolicy struct { // Audience display strategy: The server is used to calculate the number of audiences and send it to the client to // control the audience display. // 0: do not display. // 1: Multiply display the number of participants, based on the real-time number of participants or the cumulative // number of participants (assuming N), the multiplication setting can be performed. // Notes: Supports setting the multiplier X and the base number Y. // After setting, the number of people displayed is: NX+Y. // X supports setting to 1 decimal place. When NX calculates a non-integer, it will be rounded down. // The range of X is 1~10, and the range of Y is 0~10000. ShowAudienceMode int `json:"showAudienceMode"` // The basic number of people, the range is 0~10000 BaseAudienceCount int `json:"baseAudienceCount"` // Multiplier, the range is 1~10, it can be set to 1 decimal place Multiple float64 `json:"multiple"` }
type SubConference ¶
type SubConference struct { // Subconference UUID UUID string `json:"cycleSubConfID"` // Conference ID, the length is limited to no more than 32 characters ID string `json:"conferenceID"` // The media type of the meeting. It consists of one or more enumeration Strings. // When there are multiple enumerations, each enumeration value is separated by "," commas. // The enumeration values are as follows: // Voice: Voice // Video: SD video // HDVideo: high-definition video (mutually exclusive with Video, if Video and HDVideo are selected at the same // time, the system defaults to Video) // Telepresence: Telepresence (mutually exclusive with HDVideo and Video, if selected at the same time, the system // uses Telepresence) - not supported yet // Data: Multimedia MediaType string `json:"mediaType"` // Conference start time (format: YYYY-MM-DD HH:MM) StartTime string `json:"startTime"` // Conference end time (format: YYYY-MM-DD HH:MM) EndTime string `json:"endTime"` // Whether to automatically start recording. IsAutoRecord int `json:"isAutoRecord"` // The recording and broadcasting authentication method is valid when the recording and broadcasting types are: // recording and broadcasting, live broadcast + recording and broadcasting. // 0 is the old authentication method, and the url carries token authentication. // 1 is user authentication for intra-enterprise conferences. // 2 is the user authentication for the conference within the conference. RecordAuthType int `json:"recordAuthType"` // Meeting description, the length is limited to 200 characters. Description string `json:"description"` // Other configuration information of periodic subconferences. SubConfiguration SubConfiguration `json:"confConfigInfo"` }
type SubConfiguration ¶
type SubConfiguration struct { // The range to allow incoming calls. // 0: All users. // 2: Users within the enterprise. // 3: The invited user. CallInRestriction int `json:"callInRestriction"` // The range that the webinar audience is allowed to call in. // 0 for all users. // 2 Enterprise users and invited users. AudienceCallInRestriction int `json:"audienceCallInRestriction"` // Whether to allow guests to start meetings (only random meeting IDs are valid). // true: Allows guests to start meetings. // false: Disables guests from starting meetings. AllowGuestStartConf bool `json:"allowGuestStartConf"` // Whether to enable waiting room. EnableWaitingRoom bool `json:"enableWaitingRoom"` // Webinar Audience Display Strategy. ShowAudiencePolicy ShowAudiencePolicy `json:"showAudienceCountInfo"` }
type SubPicLayout ¶
type SubPicLayout struct { // Subpicture index. Id int `json:"id"` // The index of the sprite from left to right. Left int `json:"left"` // The index of the sprite from top to bottom. Top int `json:"top"` // The horizontal size of the sprite. XSize int `json:"xSize"` // The vertical size of the sprite. YSize int `json:"ySize"` }
type TokenDetail ¶
type TokenDetail struct { // Conference control authentication token. Token string `json:"token"` //The websocket chain building authentication Token. TmpWsToken string `json:"tmpWsToken"` // The websocket linking URL. WsURL string `json:"wsURL"` // The roles in the conference, the enumeration values are as follows. // 0 : Conference chairperson. // 1 : Regular attendees. Role int `json:"role"` // Session expiration time. UTC time in milliseconds. ExpireTime int `json:"expireTime"` // The ID of the conference booker. UserID string `json:"userID"` // ID of the company to which the conference belongs. OrgID string `json:"orgID"` // When requested by the terminal, the site ID after the terminal joins the conference is returned. ParticipantID string `json:"participantID"` // It will control the time when the token expires. (in seconds) ConfTokenExpireTime int `json:"confTokenExpireTime"` // The current meeting ID of the cloud conference room meeting. VmrCurrentConfID string `json:"vmrCurrentConfID"` // Websocket message push support type. SupportNotifyType []string `json:"supportNotifyType"` }
type UpdateOpts ¶
type UpdateOpts struct { // Conference ID. ConferenceID string `q:"conferenceID"` // Conference UUID. UserUUID string `q:"userUUID"` // The conference start time (UTC time). // When creating a reservation conference, if the start time is not specified or the blank string is filled in, it // means that the conference will start immediately. // The time is in UTC, which is the time in time zone 0. // Format: yyyy-MM-dd HH:mm StartTime string `json:"startTime,omitempty"` // The duration of the conference, in minutes, with a maximum value of 1440 and a minimum value of 15. // The default is 30. Length int `json:"length,omitempty"` // Conference subject. The length is limited to 128 characters. Subject string `json:"subject,omitempty"` // The media type of the conference. // It consists of one or more enumeration Strings. When there are multiple enumerations, each enumeration value is // separated by "," commas. The enumeration values are as follows: // "Voice": Voice. // "Video": SD video. // "HDVideo": High-definition video (mutually exclusive with Video, if Video and HDVideo are selected at the same // time, the system will select Video by default). // "Telepresence": Telepresence (mutually exclusive with HDVideo and Video, if selected at the same time, the // system uses Telepresence). (reserved field) // "Data": Multimedia (system configuration determines whether to automatically add Data). MediaTypes string `json:"mediaTypes,omitempty"` // When the soft terminal creates an instant conference, it carries a temporary group ID in the current field, which // is carried by the server in the conference-info header field when inviting other participants. // The length is limited to 31 characters. GroupUri string `json:"groupuri,omitempty"` // Attendee list. This list can be used to send conference notifications, conference reminders, and automatic invitations // when the conference starts. Participants []Participant `json:"attendees,omitempty"` // The parameter of the periodic conference. When the conference is a periodic conference, this parameter must be filled in, // otherwise the server ignores this parameter. // This parameter includes the start date, end date of the periodic conference, the period of the conference and the // conference time point in the period. CycleParams *CycleParams `json:"cycleParams,omitempty"` // Whether the conference automatically starts recording, it only takes effect when the recording type is: // 1: Automatically start recording. // 0: Do not start recording automatically. // The default is not to start automatically. IsAutoRecord *int `json:"isAutoRecord,omitempty"` // Conference media encryption mode. // 0: Adaptive encryption. // 1 : Force encryption. // 2 : Do not encrypt. // Default values are populated by enterprise-level configuration. EncryptMode *int `json:"encryptMode,omitempty"` // The default language of the conference, the default value is defined by the conference cloud service. // For languages supported by the system, it is passed according to the RFC3066 specification. // zh-CN: Simplified Chinese. // en-US: US English. Language string `json:"language,omitempty"` // The time zone information of the conference time in the conference notification. // For time zone information, refer to the time zone mapping relationship. // For example: "timeZoneID":"26", the time in the conference notification sent through HUAWEI CLOUD conference will be // marked as "2021/11/11 Thursday 00:00 - 02:00 (GMT) Greenwich Standard When: Dublin, Edinburgh, Lisbon, London". // For an aperiodic conference, if the conference notification is sent through a third-party system, this field does not // need to be filled in. TimeZoneID string `json:"timeZoneID,omitempty"` // Recording type. // 0: Disabled. // 1: Live broadcast. // 2: Record and broadcast. // 3: Live + Recording. // Default is disabled. RecordType *int `json:"recordType,omitempty"` // The mainstream live broadcast address, with a maximum of 255 characters. // It is valid when the recording type is 2 or 3. LiveAddress string `json:"liveAddress,omitempty"` // Auxiliary streaming address, the maximum length is 255 characters. // It is valid when the recording type is 2 or 3. AuxAddress string `json:"auxAddress,omitempty"` // Whether to record auxiliary stream. // 0: Do not record. // 1: Record. // It is valid when the recording type is 2 or 3. RecordAuxStream *int `json:"recordAuxStream,omitempty"` // Other configuration information for the conference. Configuration *Configuration `json:"confConfigInfo,omitempty"` // Recording authentication method. // 0: Viewable/downloadable via link. // 1: Enterprise users can watch/download. // 2: Attendees can watch/download. // It is valid when the recording type is 2 or 3. RecordAuthType *int `json:"recordAuthType,omitempty"` // Whether to use the cloud conference room or personal conference ID to hold a reservation conference. // 0: Do not use cloud conference room. // 1: Use cloud conference room or personal conference ID. // Cloud conference rooms are not used by default. VmrFlag *int `json:"vmrFlag,omitempty"` // VMR ID bound to the current founding account. // Obtained by querying the cloud conference room and personal conference ID interface. // Note: // vmrID takes the ID returned in the above query interface, not vmrId. // When creating a conference with a personal conference ID, use VMR with vmrMode=0; // When creating a conference in a cloud conference room, use VMR with vmrMode=1. VmrId string `json:"vmrID,omitempty"` // The number of parties in the conference, the maximum number of participants in the conference. // 0: Unlimited. // Greater than 0: the maximum number of participants in the conference. ConcurrentParticipants *int `json:"concurrentParticipants,omitempty"` // The authorization token. Token string `json:"-" required:"true"` }
Click to show internal directories.
Click to hide internal directories.