6#ifndef _MEETING_CHAT_INTERFACE_H_
7#define _MEETING_CHAT_INTERFACE_H_
102#define RichTextStyle_FontSize_Small _T("FontSize_Small")
103#define RichTextStyle_FontSize_Medium _T("FontSize_Medium")
104#define RichTextStyle_FontSize_Large _T("FontSize_Large")
109#define FontSize_Small 8
110#define FontSize_Medium 10
111#define FontSize_Large 12
172#define RichTextStyle_Paragraph_H1 _T("Paragraph_H1")
173#define RichTextStyle_Paragraph_H2 _T("Paragraph_H2")
174#define RichTextStyle_Paragraph_H3 _T("Paragraph_H3")
Chat message builder to create ChatMsgInfo objects.
virtual IChatMsgInfoBuilder * SetContent(const zchar_t *content)=0
Set chat message content.
virtual ~IChatMsgInfoBuilder()
virtual IChatMsgInfoBuilder * SetThreadId(const zchar_t *threadId)=0
Set the ID of the thread where the message will be posted.
virtual IChatMsgInfo * Build()=0
build chat message entity.
virtual IChatMsgInfoBuilder * UnsetBulletedList(unsigned int positionStart, unsigned int positionEnd)=0
Clear the chat message content bulleted list style.
virtual IChatMsgInfoBuilder * SetFontSize(FontSizeAttrs fontSize, unsigned int positionStart, unsigned int positionEnd)=0
Set the chat message content font size style.
virtual IChatMsgInfoBuilder * UnsetBackgroundColor(unsigned int positionStart, unsigned int positionEnd)=0
Clear the chat message content background color style.
virtual IChatMsgInfoBuilder * SetStrikethrough(unsigned int positionStart, unsigned int positionEnd)=0
Set the chat message content strikethrough style.
virtual IChatMsgInfoBuilder * Clear()=0
Clear all set properties.
virtual IChatMsgInfoBuilder * SetBulletedList(unsigned int positionStart, unsigned int positionEnd)=0
Set the chat message content bulleted list style.
virtual IChatMsgInfoBuilder * UnsetStrikethrough(unsigned int positionStart, unsigned int positionEnd)=0
Clear the chat message content strikethrough style.
virtual IChatMsgInfoBuilder * SetQuotePosition(unsigned int positionStart, unsigned int positionEnd)=0
Set the chat message content quote style and position.
virtual IChatMsgInfoBuilder * UnsetFontColor(unsigned int positionStart, unsigned int positionEnd)=0
Clear the chat message content font color style.
virtual IChatMsgInfoBuilder * SetNumberedList(unsigned int positionStart, unsigned int positionEnd)=0
Set the chat message content numbered list style.
virtual IChatMsgInfoBuilder * UnsetItalic(unsigned int positionStart, unsigned int positionEnd)=0
Clear the chat message content italic style.
virtual IChatMsgInfoBuilder * SetParagraph(ParagraphAttrs paragraph, unsigned int positionStart, unsigned int positionEnd)=0
Set the chat message content paragraph style.
virtual IChatMsgInfoBuilder * UnsetBold(unsigned int positionStart, unsigned int positionEnd)=0
Clear the chat message content italic style.
virtual IChatMsgInfoBuilder * SetItalic(unsigned int positionStart, unsigned int positionEnd)=0
Set the chat message content italic style.
virtual IChatMsgInfoBuilder * SetMessageType(SDKChatMessageType type)=0
Set the chat message type.
virtual IChatMsgInfoBuilder * SetInsertLink(InsertLinkAttrs insertLink, unsigned int positionStart, unsigned int positionEnd)=0
Set the chat message content insert link style.
virtual IChatMsgInfoBuilder * SetReceiver(unsigned int receiver)=0
Set who will receive the chat message.
virtual IChatMsgInfoBuilder * UnsetFontSize(unsigned int positionStart, unsigned int positionEnd)=0
Clear the chat message content font size style.
virtual IChatMsgInfoBuilder * UnsetNumberedList(unsigned int positionStart, unsigned int positionEnd)=0
Clear the chat message content numbered list style.
virtual IChatMsgInfoBuilder * ClearStyles()=0
Clear all set styles.
virtual IChatMsgInfoBuilder * UnsetInsertLink(unsigned int positionStart, unsigned int positionEnd)=0
Clear the chat message content insert link style.
virtual IChatMsgInfoBuilder * SetUnderline(unsigned int positionStart, unsigned int positionEnd)=0
Set the chat message content under line style.
virtual IChatMsgInfoBuilder * UnsetUnderline(unsigned int positionStart, unsigned int positionEnd)=0
Clear the chat message content under line style.
virtual IChatMsgInfoBuilder * UnsetParagraph(unsigned int positionStart, unsigned int positionEnd)=0
Clear the chat message content paragraph style. Tips: if paragraph.strParagraph is one of Paragraph_H...
virtual IChatMsgInfoBuilder * DecreaseIndent(IndentAttrs indent, unsigned int positionStart, unsigned int positionEnd)=0
Decrease the chat message content indent style.
virtual IChatMsgInfoBuilder * IncreaseIndent(IndentAttrs indent, unsigned int positionStart, unsigned int positionEnd)=0
Increase the chat message content indent style.
virtual IChatMsgInfoBuilder * SetFontColor(FontColorAttrs color, unsigned int positionStart, unsigned int positionEnd)=0
Set the chat message content font color style.
virtual IChatMsgInfoBuilder * SetBackgroundColor(BackgroundColorAttrs color, unsigned int positionStart, unsigned int positionEnd)=0
Set the chat message content background color style.
virtual IChatMsgInfoBuilder * SetBold(unsigned int positionStart, unsigned int positionEnd)=0
Set the chat message content bold style.
virtual IChatMsgInfoBuilder * UnsetQuotePosition(unsigned int positionStart, unsigned int positionEnd)=0
Clear the chat message content quote style.
virtual bool IsChatToAllPanelist()=0
Determine if the current message is sent to all the panelists.
virtual const zchar_t * GetSenderDisplayName()=0
Get the sender screen name of the current message.
virtual unsigned int GetReceiverUserId()=0
Get the receiver ID of the current message.
virtual time_t GetTimeStamp()=0
Get the timestamps of the current message.
virtual SDKChatMessageType GetChatMessageType()=0
Get the chat message type of the current message.
virtual bool IsChatToAll()=0
Determine if the current message is sent to all.
virtual bool IsComment()=0
Determine if the current message is a reply to another message.
virtual const zchar_t * GetThreadID()=0
Get the current message's thread ID.
virtual bool IsThread()=0
Determine if the current message is part of a message thread, and can be directly replied to.
virtual const zchar_t * GetMessageID()=0
Get the message ID of the current message.
virtual IList< SegmentDetails > * GetSegmentDetails()=0
Get the chat message segment content and style detail of the current message. When receiving rich-tex...
virtual bool IsChatToWaitingroom()=0
Determine if the current message is sent to waiting room.
virtual const zchar_t * GetReceiverDisplayName()=0
Get the receiver screen name of the current message.
virtual const zchar_t * GetContent()=0
Get the content of the current message.
virtual IList< IRichTextStyleItem * > * GetTextStyleItemList()=0
Get the current message's chat message font style list.
virtual unsigned int GetSenderUserId()=0
Get the sender ID of the current message.
Meeting chat controller interface.
virtual bool IsShareMeetingChatLegalNoticeAvailable()=0
Determine whether the legal notice for sharing in meeting chat is available.
virtual SDKError SetEvent(IMeetingChatCtrlEvent *pEvent)=0
Set meeting chat callback event.
virtual SDKError TransferFileToAll(const zchar_t *filePath)=0
Send file to all users in current session.
virtual IChatMsgInfo * GetChatMessageById(const zchar_t *msgID)=0
Get chat message by message ID.
virtual const ChatStatus * GetChatStatus()=0
Get the authority status to send current message.
virtual IList< const zchar_t * > * GetAllChatMessageID()=0
Get all chat message id.
virtual IChatMsgInfoBuilder * GetChatMessageBuilder()=0
Get the chat message builder which can help construct the message entity.
virtual SDKError TransferFile(const zchar_t *filePath, unsigned int userid)=0
Send file to specify user in current session.
virtual unsigned long long GetMaxTransferFileSizeBytes()=0
Get the maximum size for file transfer.
virtual const zchar_t * GetShareMeetingChatStartedLegalNoticeContent()=0
Get the sharing in meeting chat started legal notices content.
virtual SDKError SendChatMsgTo(IChatMsgInfo *msg)=0
Send a chat message.
virtual const zchar_t * GetShareMeetingChatStoppedLegalNoticeContent()=0
Get the sharing in meeting chat stopped legal notices content.
virtual SDKError SetParticipantsChatPrivilege(SDKChatPrivilege privilege)=0
Set the chat privilege of participants.
virtual const zchar_t * getChatLegalNoticesPrompt()=0
Get the chat legal notices prompt.
virtual SDKError DeleteChatMessage(const zchar_t *msgID)=0
Delete chat message by message id.
virtual bool IsMeetingChatLegalNoticeAvailable()=0
Determine whether the legal notice for chat is available.
virtual const zchar_t * GetTransferFileTypeAllowList()=0
Get the list of allowed file types in transfer.
virtual const zchar_t * getChatLegalNoticesExplained()=0
Get the chat legal notices explained.
virtual bool IsFileTransferEnabled()=0
Determine whether file transfer is enabled.
virtual bool IsChatMessageCanBeDeleted(const zchar_t *msgID)=0
Determine whether the message can be delete.
Meeting chat callback event.
virtual void onShareMeetingChatStatusChanged(bool isStart)=0
virtual void onChatMsgDeleteNotification(const zchar_t *msgID, SDKChatMessageDeleteType deleteBy)=0
Chat message be deleted callback. This function is used to inform the user host/myself the message be...
virtual void onChatMessageEditNotification(IChatMsgInfo *chatMsg)=0
Chat message be edited callback.
virtual void onFileTransferProgress(SDKFileTransferInfo *info)=0
Invoked when send or receive file status change.
virtual void onChatMsgNotification(IChatMsgInfo *chatMsg, const zchar_t *content=nullptr)=0
Chat message callback. This function is used to inform the user once received the message sent by oth...
virtual void onFileReceived(ISDKFileReceiver *receiver)=0
Invoked when receiving a file from another user.
virtual ~IMeetingChatCtrlEvent()
virtual void onFileSendStart(ISDKFileSender *sender)=0
Invoked when start send file.
virtual void onChatStatusChangedNotification(ChatStatus *status_)=0
The authority of chat changes callback. This function is used to inform the user when the authority o...
Chat message rich text item of a certain style.
virtual IList< IRichTextStyleOffset * > * GetTextStyleOffsetList()=0
Get the current message's rich text position info list of a certain style.
virtual RichTextStyle GetTextStyle()=0
Get the rich text type of a portion of the current message.
Chat message rich text style offset.
virtual unsigned int GetPositionEnd()=0
Get the end position of a certain style in rich text.
virtual unsigned int GetPositionStart()=0
Get a certain rich-text style's start position.
virtual const zchar_t * GetReserve()=0
Get a certain rich-text style's supplementary information.
virtual ~ISDKFileReceiver()
virtual SDKError CancelReceive()=0
Cancel the file receive.
virtual SDKFileTransferInfo * GetTransferInfo()=0
virtual unsigned int GetSender()=0
Get file sender's user id.
virtual SDKError StartReceive(const zchar_t *path)=0
Start receive the file.
virtual unsigned int GetReceiver()=0
Get file receiver's user id.
virtual ~ISDKFileSender()
virtual SDKError CancelSend()=0
Cancel the file send.
virtual SDKFileTransferInfo * GetTransferInfo()=0
RichTextStyle
Enumerations of the content rich text style type for chat message.
@ TextStyle_Strikethrough
@ TextStyle_BackgroundColor
SDKChatMessageType
Enumerations of the type for chat message.
@ SDKChatMessageType_To_None
@ SDKChatMessageType_To_WaitingRoomUsers
@ SDKChatMessageType_To_Individual
@ SDKChatMessageType_To_All
@ SDKChatMessageType_To_Individual_Panelist
@ SDKChatMessageType_To_All_Panelist
struct tagWebinarOtherUserRoleChatStatus WebinarOtherUserRoleChatStatus
The authority to chat for the host, co-host and panelist to chat in webinar. Here are more detailed s...
struct tagSDKFileTransferInfo SDKFileTransferInfo
The basic information of transfer file.
struct tagNormalMeetingChatStatus NormalMeetingChatStatus
The authority to chat in the normal meeting. Here are more detailed structural descriptions....
SDKChatPrivilege
Enumerations of the chat priviledge.
@ SDK_CHAT_PRIVILEGE_HOST
@ SDK_CHAT_PRIVILEGE_HOST_PUBLIC
@ SDK_CHAT_PRIVILEGE_ALL_PANELIST
@ SDK_CHAT_PRIVILEGE_DISABLE_ATTENDEE_CHAT
struct tagChatStatus ChatStatus
The authority to chat in the specified meeting. Here are more detailed structural descriptions....
struct tagWebinarAttendeeChatStatus WebinarAttendeeChatStatus
The authority to chat for the normal attendee in the webinar. Here are more detailed structural descr...
SDKChatMessageDeleteType
Enumerations of the chat message delete type.
@ SDK_CHAT_DELETE_BY_HOST
@ SDK_CHAT_DELETE_BY_NONE
@ SDK_CHAT_DELETE_BY_SELF
@ SDKFileTransferState_Transfering
@ SDKFileTransferState_None
@ SDKFileTransferState_ReadyToTransfer
@ SDKFileTransferState_TransferDone
@ SDKFileTransferState_TransferFailed
FontColor attributes. The standard RGB color model has a value range of 0-255.
FontColor attributes. The standard RGB color model has a value range of 0-255.
const zchar_t * insertLinkUrl
const zchar_t * strParagraph
information of rich text with style attributes in a chat message content. Here are more detailed stru...
BulletedListAttrs bulletedListAttrs
const zchar_t * strContent
FontColorAttrs fontColorAttrs
UnderlineAttrs underlineAttrs
ParagraphAttrs paragraphAttrs
BackgroundColorAttrs backgroundColorAttrs
FontSizeAttrs fontSizeAttrs
NumberedListAttrs numberedListAttrs
StrikethroughAttrs strikethroughAttrs
InsertLinkAttrs insertLinkAttrs
Strikethrough attributes.
The authority to chat in the specified meeting. Here are more detailed structural descriptions....
union tagChatStatus::@0 ut
WebinarAttendeeChatStatus webinar_attendee_status
NormalMeetingChatStatus normal_meeting_status
WebinarOtherUserRoleChatStatus webinar_other_status
The authority to chat in the normal meeting. Here are more detailed structural descriptions....
bool can_chat_to_individual
bool is_only_can_chat_to_host
The basic information of transfer file.
unsigned int complete_size
unsigned int bit_per_second
unsigned int complete_percentage
const zchar_t * file_name
SDKFileTransferStatus trans_status
const zchar_t * messageID
The authority to chat for the normal attendee in the webinar. Here are more detailed structural descr...
bool can_chat_to_all_panellist_and_attendee
bool can_chat_to_all_panellist
The authority to chat for the host, co-host and panelist to chat in webinar. Here are more detailed s...
bool can_chat_to_all_panellist_and_attendee
bool can_chat_to_all_panellist
bool can_chat_to_individual
ZOOM windows SDK Common Definition File.
#define END_ZOOM_SDK_NAMESPACE
#define BEGIN_ZOOM_SDK_NAMESPACE
SDKError
Enumeration of common errors of SDK.