6#ifndef _MEETING_CHAT_INTERFACE_H_
7#define _MEETING_CHAT_INTERFACE_H_
72#define RichTextStyle_FontSize_Small _T("FontSize_Small")
73#define RichTextStyle_FontSize_Medium _T("FontSize_Medium")
74#define RichTextStyle_FontSize_Large _T("FontSize_Large")
79#define FontSize_Small 8
80#define FontSize_Medium 10
81#define FontSize_Large 12
129#define RichTextStyle_Paragraph_H1 _T("Paragraph_H1")
130#define RichTextStyle_Paragraph_H2 _T("Paragraph_H2")
131#define RichTextStyle_Paragraph_H3 _T("Paragraph_H3")
Chat message builder to create ChatMsgInfo objects. Tips: If there are duplicate styles,...
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.
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
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
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
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_Underline
Chat message rich text style underline.
@ TextStyle_Quote
Chat message rich text style quote.
@ TextStyle_Strikethrough
Chat message rich text style strike through.
@ TextStyle_None
Chat message rich text style normal.
@ TextStyle_Indent
Chat message rich text style indent.
@ TextStyle_BackgroundColor
Chat message rich text style background color.
@ TextStyle_BulletedList
Chat message rich text style bulleted list.
@ TextStyle_InsertLink
Chat message rich text style insert link.
@ TextStyle_Bold
Chat message rich text style bold.
@ TextStyle_FontColor
Chat message rich text style font color.
@ TextStyle_FontSize
Chat message rich text style font size.
@ TextStyle_Paragraph
Chat message rich text style paragraph.
@ TextStyle_NumberedList
Chat message rich text style numbered list.
@ TextStyle_Italic
Chat message rich text style italic.
SDKChatMessageType
Enumerations of the type for chat message.
@ SDKChatMessageType_To_None
For initialize
@ SDKChatMessageType_To_WaitingRoomUsers
Chat message is send to waiting room user.
@ SDKChatMessageType_To_Individual
Chat message is send to individual user.
@ SDKChatMessageType_To_All
Chat message is send to all.
@ SDKChatMessageType_To_Individual_Panelist
Chat message is send to individual attendee and cc panelists.
@ SDKChatMessageType_To_All_Panelist
Chat message is send to all panelists.
struct tagWebinarOtherUserRoleChatStatus WebinarOtherUserRoleChatStatus
struct tagSDKFileTransferInfo SDKFileTransferInfo
The basic information of transfer file.
struct tagNormalMeetingChatStatus NormalMeetingChatStatus
SDKChatPrivilege
Enumerations of the chat priviledge.
@ SDK_CHAT_PRIVILEGE_ALL
allow attendee to chat with everyone [meeting & webinar]
@ SDK_CHAT_PRIVILEGE_HOST
allow attendee to chat with host only [meeting]
@ SDK_CHAT_PRIVILEGE_HOST_PUBLIC
allow attendee to chat with host and public [meeting]
@ SDK_CHAT_PRIVILEGE_ALL_PANELIST
allow attendee to chat with all panelists only, but cannot to "all panelists and attendees" [webinar]
@ SDK_CHAT_PRIVILEGE_DISABLE_ATTENDEE_CHAT
allow attendee to chat with no one [meeting & webinar]
struct tagChatStatus ChatStatus
struct tagWebinarAttendeeChatStatus WebinarAttendeeChatStatus
SDKChatMessageDeleteType
Enumerations of the chat message delete type.
@ SDK_CHAT_DELETE_BY_HOST
delete by host
@ SDK_CHAT_DELETE_BY_NONE
none
@ SDK_CHAT_DELETE_BY_DLP
delete by dlp when the message goes against the host organization's compliance policies.
@ SDK_CHAT_DELETE_BY_SELF
delete by self
@ SDKFileTransferState_Transfering
The file transfer is in progress.
@ SDKFileTransferState_None
The file transfer has no state.
@ SDKFileTransferState_ReadyToTransfer
The file transfer is ready to start.
@ SDKFileTransferState_TransferDone
The file transfer completed successfully.
@ SDKFileTransferState_TransferFailed
The file transfer failed.
unsigned int green
Background color G value.
unsigned int blue
Background color B value.
unsigned int red
Background color R value.
bool bBold
If the value is true, the text style is Bold.
bool bBulletedList
If the value is true, the text style is BulletedList.
unsigned int green
Font color G value.
unsigned int blue
Font color B value.
unsigned int red
Font color R value.
unsigned int indent
The number of times the indentation style is applied.
const zchar_t * insertLinkUrl
If insertLinkUrl is not empty, the text style has insert link url.
bool bItalic
If the value is true, the text style is Italic.
bool bNumberedList
If the value is true, the text style is Numbered.
const zchar_t * strParagraph
If strParagraph is not empty, the text style has Paragraph style.
bool bQuote
If the value is true, the text style is Quote.
information of rich text with style attributes in a chat message content. Here are more detailed stru...
QuoteAttrs quoteAttrs
Segment QuoteAttrs value.
BulletedListAttrs bulletedListAttrs
Segment BulletedListAttrs value.
const zchar_t * strContent
Segment content value.
FontColorAttrs fontColorAttrs
Segment FontColorAttrs value.
UnderlineAttrs underlineAttrs
Segment UnderlineAttrs value.
IndentAttrs indentAttrs
Segment IndentAttrs value.
BoldAttrs boldAttrs
Segment BoldAttrs value.
ParagraphAttrs paragraphAttrs
Segment ParagraphAttrs value.
BackgroundColorAttrs backgroundColorAttrs
Segment BackgroundColorAttrs value.
FontSizeAttrs fontSizeAttrs
Segment FontSizeAttrs value.
ItalicAttrs italicAttrs
Segment ItalicAttrs value.
NumberedListAttrs numberedListAttrs
Segment NumberedListAttrs value.
StrikethroughAttrs strikethroughAttrs
StrikethroughAttrs content value.
InsertLinkAttrs insertLinkAttrs
Segment InsertLinkAttrs value.
bool bStrikethrough
If the value is true, the text style is Strikethrough.
bool bUnderline
If the value is true, the text style is Underline.
The authority to chat in the specified meeting. Here are more detailed structural descriptions....
union tagChatStatus::@0 ut
The ut value depends on the value of the other members in the structure. When the value of is_webinar...
bool is_chat_off
TRUE indicates that it is disabled to chat in the specified meeting.
WebinarAttendeeChatStatus webinar_attendee_status
bool is_webinar_meeting
TRUE indicates that the current meeting is webinar.
bool is_webinar_attendee
TRUE indicates that the owner of the current message is the attendee of the webinar.
NormalMeetingChatStatus normal_meeting_status
WebinarOtherUserRoleChatStatus webinar_other_status
bool can_chat_to_all
TRUE indicates that the user owns the authority to send message to all.
bool can_chat_to_individual
TRUE indicates that the user owns the authority to send message to an individual attendee in the meet...
bool is_only_can_chat_to_host
TRUE indicates that the user owns the authority to send message only to the host.
bool can_chat
TRUE indicates that the user owns the authority to send message to chat.
The basic information of transfer file.
unsigned int complete_size
The size of the file transferred so far in bytes.
unsigned int bit_per_second
The speed of the file transfer in bits per second.
unsigned int complete_percentage
The percentage of the file transfer completed.
bool is_send_to_all
Is the file send to all user in meeting?
const zchar_t * file_name
the file name of transfer file.
SDKFileTransferStatus trans_status
he status of the file transfer.
unsigned int file_size
The bytes of transfer file size.
time_t time_stamp
The time stamp of the file.
const zchar_t * messageID
The message identify of transfer file.
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
TRUE indicates that the user owns the authority to send message to all the panelists and attendees.
bool can_chat_to_all_panellist
TRUE indicates that the user owns the authority to send message to all the panelists.
bool can_chat
TRUE indicates that the attendee can send message to chat.
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
TRUE indicates that the user owns the authority to send message to all.
bool can_chat_to_all_panellist
TRUE indicates that the user owns the authority to send message to all the panelists.
bool can_chat_to_individual
TRUE indicates that the user owns the authority to send message to individual attendee.
ZOOM windows SDK Common Definition File.
#define END_ZOOM_SDK_NAMESPACE
#define BEGIN_ZOOM_SDK_NAMESPACE
SDKError
SDK error types. Here are more detailed structural descriptions.