RtmChannelEvents

最近更新时间:2022-09-20 05:17:40

本页主要介绍频道相关的回调事件。所有回调都是在 RtmChannel 实例上进行监听。

示例

import ArRTM from "ar-rtm-sdk";

/**
 * 创建 RTM 客户端实例
 * @params appId: 项目的 App ID。必须是 ASCII 编码,长度为 32 个字符。(类型:string)
 */
const client = ArRTM.createInstance(appId, { enableLogUpload: false });

/**
 * 创建一个 RtmClient 实例
 * @params channelId: 频道名称。(类型:string)
 */
const rtmChannel = client.createChannel(channelId);

// 监听频道属性变化
rtmChannel.on("AttributesUpdated", (attributes) => {
    console.log("AttributesUpdated", attributes);
});
// 监听频道消息
rtmChannel.on("ChannelMessage", (message, peerId, messageProps) => {
    console.log("ChannelMessage", message, peerId, messageProps);
});

频道回调事件

AttributesUpdated

AttributesUpdated: (attributes: ChannelAttributes) => void;

频道属性改变之后会触发该回调。

回调参数

参数类型描述
attributesChannelAttributes频道的属性

示例

// 监听频道属性变化
rtmChannel.on("AttributesUpdated", (attributes) => {
    console.log("AttributesUpdated", attributes);
});

ChannelMessage

ChannelMessage: (message: RtmMessage, memberId: string, messagePros: ReceiveMessageProperties) => void;

收到频道消息的事件通知。

回调参数

参数类型描述
messageRtmMessage接收到的频道消息
memberIdstring频道的属性
messagePropsReceivedMessageProperties频道的属性

示例

// 监听频道消息
rtmChannel.on("ChannelMessage", (message, memberId, messageProps) => {
    console.log("ChannelMessage", message, memberId, messageProps);
});

MemberCountUpdated

MemberCountUpdated: (memberCount: number) => void;

频道成员人数更新回调。返回最新频道成员人数。

回调参数

参数类型描述
memberCountnumber最新频道成员人数。

示例

// 监听频道人员数量更新
rtmChannel.on("MemberCountUpdated", (memberCount) => {
    console.log("MemberCountUpdated", memberCount);
});

MemberJoined

MemberJoined: (memberId: string) => void;

收到用户加入频道的通知。

回调参数

参数类型描述
memberIdstring加入频道的用户 ID

示例

// 监听用户加入频道
rtmChannel.on("MemberJoined", (memberId) => {
    console.log("MemberJoined", memberId);
});

MemberLeft

MemberLeft: (memberId: string) => void;

收到用户加入频道的通知。

回调参数

参数类型描述
memberIdstring退出频道的用户 ID

示例

// 监听用户离开频道
rtmChannel.on("MemberLeft", (memberId) => {
    console.log("MemberLeft", memberId);
});