Question
People commonly ask on the Zoom Developer Forum:
How do I reliably send and receive chat messages with the Meeting SDK? My bot implements IMeetingChatCtrlEvent but onChatMsgNotification isn’t firing, and SendChatMsgTo returns “Incorrect usage of the feature” (SDKError 2). What’s the correct way to wire up chat callbacks and send messages (to all or privately)?
Answer
You can send and receive chat messages by:
-
Registering your chat event listener using the SDK’s chat controller so that incoming messages and chat status changes are delivered
-
Handling callbacks and sending on the main/UI thread — forward any received events to your main thread, and always invoke
SendChatMsgTo
from there. (Zoom has confirmed in forum discussions that background-thread sends/receives fail.) -
Building and sending the message once — set the recipient (e.g.,
0
for everyone or a specific user ID), set the message type and content, then callBuild()
a single time and pass the result to theSendChatMsgTo
method
Also these are some edge cases to be aware of:
- SDKError 2 (“Incorrect usage of the feature”) usually means wrong thread, invalid state, or calling
Build()
incorrectly. error code reference - Version quirks exist — chat send failures appeared in 6.1.0 but were resolved in 6.1.1.
- Host controls can disable or restrict chat for participants, so verify meeting chat settings if nothing is delivered. Zoom support article
Zoom Developer Forum Examples
Some examples of this question are: