# 事件广播

我们会对某些事件进行广播,你可以通过订阅相关的事件来进行相应的逻辑处理。

注意

所有的事件回调都在后台线程中执行,请谨慎操作 UI 元素。

# API

# registerAsyncEventListener()

调用此方法注册某个事件的回调。

AIHelpSupport::registerAsyncEventListener(
        YOUR_EVENT,
        [](const char *jsonData, Acknowledge ack) {
            // You can get callback here if the target event is fired
            // checkout at the definition and code examples for more information
        }
);

# unregisterAsyncEventListener()

调用此方法解除对某个事件的监听。

AIHelpSupport::unregisterAsyncEventListener(YOUR_EVENT);

# 参数释义

# eventType

# asyncEventListener

  • 类型:(const char *jsonEventData, void (*acknowledge)(EventType eventType, const char *jsonAckData))
  • 详情:必传参数。 针对事件的注册回调接口。
  • 接口签名说明:
    • jsonEventData: 事件数据,格式为 json 字符串
    • acknowledge: 调用此回调方法发送事件的回执结果
      • eventType: 当前事件
      • jsonAckData: 回执数据,格式为 json 字符串

# 事件枚举

# 初始化

# 用户登录

# 企业授权

# 未读消息

# 未读工单

# 日志上传

# 链接点击

  • 枚举值:EventType.URL_CLICK
  • 数据:{ "url": "https://your.target.url?js-bridge=enable" }
  • ACK:-
  • 说明:参数包含 js-bridge=enable 的链接被点击的时候,该事件就会被触发

# 对话开始

  • 枚举值:EventType.CONVERSATION_START
  • 数据:{ "message": "this is the first message user sent" }
  • ACK:-

# 窗口打开

  • 枚举值:EventType.SESSION_OPEN
  • 数据:-
  • ACK:-

# 窗口关闭

  • 枚举值:EventType.SESSION_CLOSE
  • 数据:-
  • ACK:-
上次更新: 8/16/2024, 10:59:25 AM