Published June 28, 2023
Note
- Versions 5.15.0 and 5.15.1 were removed. Use v5.15.2 instead.
Breaking Changes
-
Changed typos in interfaces and callbacks.
- Interface in
ICustomizedAnnotationObj
. Changedvirtual bool IsAnnoataionDisable() = 0;
to
virtual bool IsAnnotationDisable() = 0;
- Interfaces in
IAnnotationController
. Changedvirtual bool IsAnnoataionDisable() = 0;
to
virtual bool IsAnnotationDisable() = 0;
- enum
SDKChatPriviledge
. Changedtypedef enum { SDK_CHAT_PRIVILEDGE_ALL = 1,
SDK_CHAT_PRIVILEDGE_ALL_PANELIST = 2,
SDK_CHAT_PRIVILEDGE_HOST = 3,
SDK_CHAT_PRIVILEDGE_DISABLE_ATTENDEE_CHAT = 4,
SDK_CHAT_PRIVILEDGE_HOST_PUBLIC = 5,
SDK_CHAT_PRIVILEDGE_END
} SDKChatPriviledge;to
typedef enum {
SDK_CHAT_PRIVILEGE_ALL = 1,
SDK_CHAT_PRIVILEGE_ALL_PANELIST = 2,
SDK_CHAT_PRIVILEGE_HOST = 3,
SDK_CHAT_PRIVILEGE_DISABLE_ATTENDEE_CHAT = 4,
SDK_CHAT_PRIVILEGE_HOST_PUBLIC = 5,
SDK_CHAT_PRIVILEGE_END } SDKChatPrivilege; - Callback in
IMeetingChatCtrlEvent
. Changedvirtual void onChatStautsChangedNotification(ChatStatus* status_) = 0;
to
virtual void onChatStatusChangedNotification(ChatStatus* status_) = 0;
- Interface in
IMeetingChatController
. Changedvirtual SDKError SetParticipantsChatPriviledge(SDKChatPriviledge priviledge) = 0;
to
virtual SDKError SetParticipantsChatPrivilege(SDKChatPrivilege privilege) = 0;
- Callback in
IMeetingParticipantsCtrlEvent
. Changedvirtual void onRequestLocalRecordingPriviligeChanged(LocalRecordingRequestPrivilegeStatus status) = 0;
to
virtual void onRequestLocalRecordingPrivilegeChanged(LocalRecordingRequestPrivilegeStatus status) = 0;
- Callback in
IMeetingRecordingCtrlEvent
. Changedvirtual void onRecordPriviligeChanged(bool bCanRec) = 0;
to
virtual void onRecordPrivilegeChanged(bool bCanRec) = 0;
- Interface in
IMeetingShareController
. Changedvirtual SDKError GetViewabltShareSourceByUserID(unsigned int userid, ViewableShareSource& shareSource) = 0;
to
virtual SDKError GetViewableShareSourceByUserID(unsigned int userid, ViewableShareSource& shareSource) = 0;
- Callbacks in
IMeetingWaitingRoomEvent
. Changedvirtual void onWatingRoomUserJoin(unsigned int userID) = 0;
to
virtual void onWaitingRoomUserJoin(unsigned int userID) = 0;
Changed
virtual void onWatingRoomUserLeft(unsigned int userID) = 0;
to
virtual void onWaitingRoomUserLeft(unsigned int userID) = 0;
- Interface in
- Moves interface
IsBroadcastingVoiceToBO
from classIBOData
into classIMeetingBOController
.
Added
- New interface to support broadcasting host audio from main session to all breakout rooms.
- New interface in
meeting_breakout_session_controller.h
./// \brief Query if current meeting support broadcasting host's voice to BO. /// \return true means supported, otherwise it's not. virtual bool IsBroadcastVoiceToBOSupport() = 0; /// \brief Query if host now has the ability to broadcast voice to BO. /// \return true means has the ability, otherwise it's not. virtual bool CanBroadcastVoiceToBO() = 0; /// \brief Host enable/disable broadcasting voice to BO. /// \param bEnable True for start and false for stop. /// \return true means has the invocation succeed, otherwise failed. virtual bool EnableBroadcastVoiceToBO(bool bEnable) = 0; /// \brief Query if host is broadcasting voice to BO. /// \return true means broadcasting, otherwise it's not. virtual bool IsBroadcastingVoiceToBO() = 0;
- New interface in
-
New interface to support the full emoji set.
- New enum
SDKEmojiFeedbackType
.typedef enum tagSDKEmojiFeedbackType { SDKEmojiFeedbackType_None,
SDKEmojiFeedbackType_Yes,
SDKEmojiFeedbackType_No,
SDKEmojiFeedbackType_Fast,
SDKEmojiFeedbackType_Slow,
SDKEmojiFeedbackType_Coffee }SDKEmojiFeedbackType; - New interfaces in
IEmojiReactionController
.virtual SDKError SendEmojiFeedback(SDKEmojiFeedbackType type) = 0;
virtual SDKError CancelEmojiFeedback() = 0; - New callbacks in
IEmojiReactionControllerEvent
.virtual void OnEmojiFeedbackReceived(unsigned int sender_id, SDKEmojiFeedbackType type) = 0;
virtual void OnEmojiFeedbackCanceled(unsigned int sender_id) = 0; - New interfaces in
IUserInfo
.virtual SDKEmojiFeedbackType GetEmojiFeedbackType() = 0;
- New enum
- New interfaces to support receiving with super resolution video in
Setting
service.- New interfaces in
IVideoSettingContext
virtual SDKError EnableOptimizeVideoQuality(bool bEnable) = 0;
virtual bool IsOptimizeVideoQualityEnabled() = 0;
virtual bool IsOptimizeVideoQualitySupported() = 0; - New value
SDKERR_HARDWARE_DONT_SUPPORT
in enumSDKError
.
- New interfaces in
- New interface to support sharing video in customized user interface.
- New enum
ZoomSDKVideoFileSharePlayError
.enum ZoomSDKVideoFileSharePlayError { ZoomSDKVideoFileSharePlayError_None,
ZoomSDKVideoFileSharePlayError_Not_Supported, ///<Not support.
ZoomSDKVideoFileSharePlayError_Resolution_Too_High, ///<The resolution is too high to play.
ZoomSDKVideoFileSharePlayError_Open_Fail, ///<Failed to open.
ZoomSDKVideoFileSharePlayError_Play_Fail, ///<Failed to play.
ZoomSDKVideoFileSharePlayError_Seek_Fail ///<Failed to seek. }; - New interfaces in
IMeetingShareController
.virtual SDKError StartVideoFileShare(const wchar_t* filePath) = 0;
virtual bool CanShareVideoFile() = 0; - New callback in
IMeetingShareCtrlEvent
.virtual void onSharedVideoEnded() = 0;
virtual void onVideoFileSharePlayError(ZoomSDKVideoFileSharePlayError error) = 0; - New value
SHARE_TYPE_VIDEO_FILE
in enumShareType
.
- New enum
Deprecated
- Removed the value
SDK_Customized_LiveStream_MenuString_CopyURL_String
in enumSDKCustomizedStringType
.
Changed
- Added support to capture video raw data streams at 180p.
Fixed
- Fixed an issue where
onWaitingRoomUserJoin
was not triggered when the host was in a breakout room. - Fixed an issue where the function
StartAppShare(HWND hwndSharedApp)
didn't filter app windows. - Fixed an issue where the camera was opened when switching to share.
- Fixed an issue where the app would crash when switching from the customized user interface to the default user interface.
- Fixed an issue where the callback
onRequestLocalRecordingPrivilegeChanged
would not be triggered. - Fixed an issue where, if the app left the meeting without nullifying external event handlers, the app would crash when joining the next meeting.
- Fixed an issue where, when the host was in the breakout room, the host would not receive notifications if there were users in waiting room who needed to be admitted.
- Security enhancements.
- Fixed an issue where frequently calling the
RemoveBO
resulted in an error. - Fixed an issue where user info was incorrectly available for the host when in the breakout room.