# 事件广播
我们会对某些事件进行广播,你可以通过订阅相关的事件来进行相应的逻辑处理。
注意
所有的事件回调都在后台线程中执行,请谨慎操作 UI 元素。
# API
# RegisterAsyncEventListner()
调用此方法注册某个事件的回调。
AIHelpSupport.RegisterAsyncEventListener(
YOUR_EVENT,
(jsonEventData, ack) => {
// You can get callback here if the target event is fired
// checkout at the definition and code examples for more information
}
);
# UnregisterAsyncEventListner()
调用此方法解除对某个事件的监听。
AIHelpSupport.UnregisterAsyncEventListner(YOUR_EVENT);
# 参数释义
# eventType
- 类型:
EventType
- 详情:必传参数。 所有 AIHelp 可能会触发的事件。不同的事件可能会携带不同的参数,有些事件可能还会要求回执。
# asyncEventListener
- 类型:
AsyncEventListener
- 详情:必传参数。 针对事件的注册回调接口。
- 接口签名说明:
jsonEventData
: 事件数据,格式为 json 字符串acknowledge
: 调用此回调方法发送事件的回执结果,回执数据格式为 json 字符串
# 事件枚举
# 初始化
- 枚举值:EventType.Initialization
- 数据:
{ "isSuccess": true, "message": "Success" }
- ACK:
-
# 用户登录
- 枚举值:EventType.UserLogin
- 数据:
{ "code": 1, "message": "Success" }
- ACK:
-
# 企业授权
- 枚举值:EventType.EnterpriseAuth
- 数据:
-
- ACK:
{ "token": "this_is_your_authenticated_token" }
# 未读消息
- 枚举值:EventType.MessageArrival
- 数据:
{ "msgCount": 1 }
- ACK:
-
# 未读工单
- 枚举值:EventType.UnreadTaskCount
- 数据:
{ "taskCount": 1 }
- ACK:
-
# 日志上传
- 枚举值:EventType.LogUpload
- 数据:
-
- ACK:
{ "content": "this_is_your_authenticated_token" }
# 链接点击
- 枚举值:
EventType.UrlClick
- 数据:
{ "url": "https://your.target.url?js-bridge=enable" }
- ACK:
-
- 说明:参数包含
js-bridge=enable
的链接被点击的时候,该事件就会被触发
# 对话开始
- 枚举值:
EventType.ConversationStart
- 数据:
{ "message": "this is the first message user sent" }
- ACK:
-
# 窗口打开
- 枚举值:
EventType.SessionOpen
- 数据:
-
- ACK:
-
# 窗口关闭
- 枚举值:
EventType.SessionClose
- 数据:
-
- ACK:
-