RTM 频道对象,通过 RtmClient 对象实例上的 createChannel 方法创建。

Hierarchy

Index

Properties

channelId

channelId: string
readonly

获取该频道实例的 ID。

Methods

getMembers

  • getMembers(): Promise<string[]>
  • 获取频道用户列表

    Returns Promise<string[]>

    该 Promise 会在成功获取频道用户列表后 resolve。Promise 返回的值为该频道所有用户 ID 的数组。

join

  • join(): Promise<void>
  • 调用该方法加入该频道,加入频道成功后可收到该频道消息和频道用户进退通知。

    你最多可以加入 20 个频道。

    Returns Promise<void>

    该 Promise 会在加入频道成功后 resolve。

leave

  • leave(): Promise<void>
  • 调用该方法离开该频道,不再接收频道消息和频道用户进退通知。

    Returns Promise<void>

    该 Promise 会在离开频道成功后 resolve。

on

  • on<EventName>(eventName: EventName, listener: function): this
  • 在该频道实例上添加 listener 函数到名为 eventName 的事件。其他 RtmChannel 实例上的事件方法请参考 EventEmitter API 文档

    Type parameters

    • EventName: keyof RtmChannelEvents

    Parameters

    • eventName: EventName

      频道事件的名称。事件列表请参考 RtmChannelEvents 中的属性名。

    • listener: function

      事件的回调函数。

        • (...args: ListenerType<RtmChannelEvents[EventName]>): any
        • Parameters

          • Rest ...args: ListenerType<RtmChannelEvents[EventName]>

          Returns any

    Returns this

sendMessage

  • 发送频道消息,所有加入频道的用户都会收到该频道消息。

    发送消息(包括点对点消息和频道消息)的频率上限为 60 qps。

    example

    发送频道消息。

    channel.sendMessage({ text: 'test channel message' }).then(() => {
    // 你的代码:频道消息发送成功处理逻辑。
    }).catch(error) => {
    // 你的代码:频道消息发送失败处理逻辑。
    })

    Parameters

    Returns Promise<void>

    该 Promise 会在发送频道消息成功后 resolve。