本页主要介绍频道相关的回调事件。所有回调都是在 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;
频道属性改变之后会触发该回调。
回调参数
参数 | 类型 | 描述 |
---|---|---|
attributes | ChannelAttributes | 频道的属性 |
示例
// 监听频道属性变化
rtmChannel.on("AttributesUpdated", (attributes) => {
console.log("AttributesUpdated", attributes);
});
ChannelMessage
ChannelMessage: (message: RtmMessage, memberId: string, messagePros: ReceiveMessageProperties) => void;
收到频道消息的事件通知。
回调参数
参数 | 类型 | 描述 |
---|---|---|
message | RtmMessage | 接收到的频道消息 |
memberId | string | 频道的属性 |
messageProps | ReceivedMessageProperties | 频道的属性 |
示例
// 监听频道消息
rtmChannel.on("ChannelMessage", (message, memberId, messageProps) => {
console.log("ChannelMessage", message, memberId, messageProps);
});
MemberCountUpdated
MemberCountUpdated: (memberCount: number) => void;
频道成员人数更新回调。返回最新频道成员人数。
回调参数
参数 | 类型 | 描述 |
---|---|---|
memberCount | number | 最新频道成员人数。 |
示例
// 监听频道人员数量更新
rtmChannel.on("MemberCountUpdated", (memberCount) => {
console.log("MemberCountUpdated", memberCount);
});
MemberJoined
MemberJoined: (memberId: string) => void;
收到用户加入频道的通知。
回调参数
参数 | 类型 | 描述 |
---|---|---|
memberId | string | 加入频道的用户 ID |
示例
// 监听用户加入频道
rtmChannel.on("MemberJoined", (memberId) => {
console.log("MemberJoined", memberId);
});
MemberLeft
MemberLeft: (memberId: string) => void;
收到用户加入频道的通知。
回调参数
参数 | 类型 | 描述 |
---|---|---|
memberId | string | 退出频道的用户 ID |
示例
// 监听用户离开频道
rtmChannel.on("MemberLeft", (memberId) => {
console.log("MemberLeft", memberId);
});