Receive a Message
Feature Description
To receive messages, you need to listen for the
MESSAGE_RECEIVED
event.Listening for an Event
Note:
Call this API to listen for events before calling the
login
API in order to avoid missing the events delivered by the SDK.API
chat.on(eventName, handler, context);
Parameter
Name | Type | Description |
eventName | String | Event name. All event names are stored in the TencentCloudChat.EVENT variable. To view all the events, use console.log(TencentCloudChat.EVENT) . |
handler | Function | Event handling method. When an event is triggered, this handler will be called to handle it. |
context | * | undefined | The context expected for handler execution |
Sample
let onMessageReceived = function(event) {// event.data - An array that stores `Message` objects - [Message]// For details of Message, please refer to https://www.tencentcloud.com/document/product/1047/47990const messageList = event.data;messageList.forEach((message) => {if (message.type === TencentCloudChat.TYPES.MSG_TEXT) {// Text message} else if (message.type === TencentCloudChat.TYPES.MSG_IMAGE) {// Image message} else if (message.type === TencentCloudChat.TYPES.MSG_AUDIO) {// Audio message} else if (message.type === TencentCloudChat.TYPES.MSG_VIDEO) {// Video message} else if (message.type === TencentCloudChat.TYPES.MSG_FILE) {// File message} else if (message.type === TencentCloudChat.TYPES.MSG_CUSTOM) {// Custom message} else if (message.type === TencentCloudChat.TYPES.MSG_MERGER) {// Merged message} else if (message.type === TencentCloudChat.TYPES.MSG_LOCATION) {// Geographical location message} else if (message.type === TencentCloudChat.TYPES.MSG_GRP_TIP) {// Group tip message} else if (message.type === TencentCloudChat.TYPES.MSG_GRP_SYS_NOTICE) {// Group system notification}});};chat.on(TencentCloudChat.EVENT.MESSAGE_RECEIVED, onMessageReceived);
Canceling Event Listening
API
chat.off(eventName, handler, context);
Parameter
Name | Type | Description |
eventName | String | Event name. All event names are stored in the TencentCloudChat.EVENT variable. To view all the events, use console.log(TencentCloudChat.EVENT) . |
handler | Function | Event handling method. When an event is triggered, this handler will be called to handle it. |
context | * | undefined | The context expected for handler execution |
Sample
let onMessageReceived = function(event) {// event.name -TencentCloudChat
.EVENT.MESSAGE_RECEIVED// event.data - An array that stores `Message` objects - [Message]};chat.off(TencentCloudChat
.EVENT.MESSAGE_RECEIVED, onMessageReceived);