扩展模块协议,用于 SDK 内置模块的数据同步,例如将 IM 数据传给 RTC SDK

要实现扩展需要满足如下
1. 实现该抽象类
2. 实现 ExtensionModuleTag 注解
3. 对扩展类的构造要求如下,才能被正常创建
3.1. 如果是单例类,必须实现 getInstance() 方法:建议
3.2. 如果是普通类,必须实现无参的构造方法:不建议

TS 判断一个类是否实现了 interface 比较难,但是判断是否实现了抽象类比较简单

SDK 仅会加载内置的模块,如果三方需要想实现该功能,请联系融云

1.2.0

Constructors

Methods

  • IM SDK 已初始化完成

    Parameters

    • context: Context

      上下文

    • appKey: string

      AppKey

    • initOption: InitOption

      初始化配置

    Returns void

  • 连接开始。调用 connect 方法连接开始时触发

    Parameters

    • token: string

      使用的 IM token

    • deviceId: string

      设备 id,使用 aaid 当做 deviceID

    Returns void

  • 连接成功。调用 connect 方法连接成功时触发

    Parameters

    • userId: string

      当前用户 id

    Returns void

  • module 是否拦截该消息

    Parameters

    Returns boolean

    true: 由 module 处理该消息,IMLib 将不再处理该消息; false:module 不处理该消息,IMLib 将继续处理该消息

  • rtc 配置更新

    voipCallInfo 是导航下发的原始数据
    {
    "logServer" : "https://logServer",
    "dataCenter" : "BJ001",
    "jwtToken" : "jwtToken",
    "openGzip" : true|false,
    "voipCallInfo" : "{"strategy":1,"callEngine":[{"engineType":4,"mediaServer":"https://mediaServer","maxStreamCount":30,"wwise":1,"detectorManager":"https://detectorManager"}]}",
    }

    Parameters

    • rtcConf: Map<string, Object>

      rtc 配置

    Returns void

  • 连接状态发生变更,重连时的各种状态会触发该方法

    Parameters

    Returns void

  • 断开连接。用户主动调用 disconnect 方法时触发

    Parameters

    • isReceivePush: boolean

      是否接收推送

    Returns void

  • 将该模块的 SDK 信息返回 IMLib,可以同时返回多个 SDK 的版本号

    Returns Map<string, string>

    版本信息, key : SDK 名称; value : SDK 版本号

    SDK 名称必须和现有 iOS Android 的命名一致,不能随便写

    1.3.0

MMNEPVFCICPMFPCPTTAAATR