Released: 2026-02-16 Updated: 2026-02-17
Summary: Add more support for meeting bot behavior and support restricting cross-account anonymous joining from the Meeting SDK; add support for custom 3D avatar and human avatar features.
Added
-
Added
publicAppKeyparameter inAuthContextstruct to support public app type authentication.``` typedef struct tagAuthContext { ... const zchar_t* publicAppKey; ... }; ``` -
Added
MEETING_FAIL_USER_LEVEL_TOKEN_NOT_HAVE_HOST_ZAK_OBF andMEETING_FAIL_APP_CAN_NOT_ANONYMOUS_JOIN_MEETINGvalues toMeetingFailCodeenum to support restricting cross-account anonymous joining from the Meeting SDK.enum MeetingFailCode { ... /** User level privilege token not have host zak/obf */ MEETING_FAIL_USER_LEVEL_TOKEN_NOT_HAVE_HOST_ZAK_OBF = 503, /** App can not anonymous join meeting */ MEETING_FAIL_APP_CAN_NOT_ANONYMOUS_JOIN_MEETING = 504, } -
Added
MEETING_FAIL_ON_BEHALF_TOKEN_INVALIDandMEETING_FAIL_ON_BEHALF_TOKEN_NOT_MATCH_MEETINGvalues toMeetingFailCodeenum to support handling invalid or incorrect OBF tokens.enum MeetingFailCode { ... /** On-behalf token invalid. / MEETING_FAIL_ON_BEHALF_TOKEN_INVALID = 505, /* On-behalf token meeting number not match. */ MEETING_FAIL_ON_BEHALF_TOKEN_NOT_MATCH_MEETING = 506, } -
Added
ZoomSDKCustom3DAvatarElementImageTypeenum insetting_service_interface.hto support custom 3D avatar and human avatar features.typedef enum { ZoomSDKCustom3DAvatarElementImageType_None, ZoomSDKCustom3DAvatarElementImageType_Skin, ZoomSDKCustom3DAvatarElementImageType_Face, ZoomSDKCustom3DAvatarElementImageType_Hair, ZoomSDKCustom3DAvatarElementImageType_Eyes, ZoomSDKCustom3DAvatarElementImageType_EyeColor, ZoomSDKCustom3DAvatarElementImageType_Eyelashes, ZoomSDKCustom3DAvatarElementImageType_Eyebrows, ZoomSDKCustom3DAvatarElementImageType_Nose, ZoomSDKCustom3DAvatarElementImageType_Mouth, ZoomSDKCustom3DAvatarElementImageType_LipColor, ZoomSDKCustom3DAvatarElementImageType_Age, ZoomSDKCustom3DAvatarElementImageType_FacialHair, ZoomSDKCustom3DAvatarElementImageType_Body, ZoomSDKCustom3DAvatarElementImageType_Clothing, ZoomSDKCustom3DAvatarElementImageType_HeadCovering, ZoomSDKCustom3DAvatarElementImageType_Glasses, }ZoomSDKCustom3DAvatarElementImageType; typedef enum { ZoomSDKCustom3DAvatarElementColorType_None, ZoomSDKCustom3DAvatarElementColorType_Eyebrow, ZoomSDKCustom3DAvatarElementColorType_Mustache, ZoomSDKCustom3DAvatarElementColorType_Hair, ZoomSDKCustom3DAvatarElementColorType_Eyelash, }ZoomSDKCustom3DAvatarElementColorType; -
Added support in the SDK client for custom 3D avatar and human avatar features.
- Added new class `ICustom3DAvatarElementImageInfo` in `setting_service_interface.h`. ``` class ICustom3DAvatarElementImageInfo { public: virtual ZoomSDKCustom3DAvatarElementImageType GetCustom3DAvatarElementImageType() = 0; virtual bool IsSelected() = 0; virtual const zchar_t* GetImageFilePath() = 0; virtual const zchar_t* GetImageName() = 0; virtual ~ICustom3DAvatarElementImageInfo() {}; }; ``` - Added new class `ICustom3DAvatarElementColorInfo` in `setting_service_interface.h`. ``` class ICustom3DAvatarElementColorInfo { public: virtual ZoomSDKCustom3DAvatarElementColorType GetCustom3DAvatarElementColorType() = 0; virtual unsigned long GetColor() = 0; virtual bool IsSelected() = 0; virtual const zchar_t* GetImageName() = 0; virtual ~ICustom3DAvatarElementColorInfo() {}; }; ``` - Added new class `ICustom3DAvatarElementSettingContextEvent` in `setting_service_interface.h`. ``` class ICustom3DAvatarElementSettingContextEvent { public: virtual ~ICustom3DAvatarElementSettingContextEvent() {} virtual void onCustom3DAvatarElementImageModelDataDownloaded(bool bSuccess, ICustom3DAvatarElementImageInfo* pImageInfo) = 0; }; ``` - Added new class `ICustom3DAvatarElementSettingContext` in `setting_service_interface.h`. ``` class ICustom3DAvatarElementSettingContext { public: virtual ~ICustom3DAvatarElementSettingContext() {} virtual SDKError SetEvent(ICustom3DAvatarElementSettingContextEvent* pEvent) = 0; virtual IList<ICustom3DAvatarElementImageInfo* >* GetCustom3DAvatarElementImageList() = 0; virtual bool IsCustom3DAvatarElementImageModelDataReady(ICustom3DAvatarElementImageInfo* pImageInfo) = 0; virtual SDKError DownloadCustom3dAvatarElementImageModelData(ICustom3DAvatarElementImageInfo* pImageInfo) = 0; virtual SDKError SetCustom3DAvatarElementImage(ICustom3DAvatarElementImageInfo* pImageInfo) = 0; virtual IList<ICustom3DAvatarElementColorInfo* >* GetCustom3DAvatarElementColorList() = 0; virtual SDKError SetCustom3DAvatarElementColor(ICustom3DAvatarElementColorInfo* pColorInfo) = 0; }; ``` - Added new interfaces in class `I3DAvatarSettingContextEvent`. ``` virtual void onCustom3DAvatarImageModelDataDownloaded(bool bSuccess, I3DAvatarImageInfo* pImageInfo) = 0; virtual void onCustom3DAvatarDefaultImageModelDataDownloaded(bool bSuccess) = 0; ``` - Added new interfaces in class `I3DAvatarSettingContext`. ``` virtual IList<I3DAvatarImageInfo* >* GetCustom3DAvatarImageList() = 0; virtual bool IsCustom3DAvatarImageModelDataReady(I3DAvatarImageInfo* pImageInfo) = 0; virtual SDKError DownloadCustom3DAvatarImageModelData(I3DAvatarImageInfo* pImageInfo) = 0; virtual SDKError SetCustom3DAvatarImage(I3DAvatarImageInfo* pImageInfo) = 0; virtual bool IsCustom3DAvatarDefaultImageModelDataReady() = 0; virtual SDKError DownloadCustom3DAvatarDefaultImageModelData() = 0; virtual ICustom3DAvatarElementSettingContext* StartCreateCustom3DAvatar(HWND hPreviewWnd, RECT rc) = 0; virtual SDKError FinishCreateCustom3DAvatar(bool bSave) = 0; virtual ICustom3DAvatarElementSettingContext* StartEditCustom3DAvatar(HWND hPreviewWnd, RECT rc, I3DAvatarImageInfo* pImage) = 0; virtual SDKError FinishEditCustom3DAvatar(bool bSave) = 0; virtual SDKError DuplicateCustom3DAvatarImage(I3DAvatarImageInfo* pImage) = 0; virtual SDKError DeleteCustom3DAvatarImage(I3DAvatarImageInfo* pImage) = 0; ```