# 未读消息

当客服人员回复了用户的消息后,用户可以收到未读消息的提醒,即使当前并没有展示 AIHelp 的页面。

你可以通过主动拉取或者第三方推送实现这个功能。

注意

AIHelp 默认使用随机生成的 deviceId 作为 userId 进行未读消息的查询。

所以,在你将正确的 userId 同步给 AIHelp 之前,未读消息数量可能会不准确。

# 主动拉取

# API

# fetchUnreadMessageCount

调用此方法可以主动拉取当前用户的未读消息数量。

AIHelpSupport.fetchUnreadMessageCount();

你可以在任意时间调用该 API 查询当前用户的未读消息数量,但请注意:

  1. 该方法内部有 5 分钟的频率限制:

在限制期内的重复调用,会返回上一次的查询结果;在开发阶段,可以通过日志查看距离下一次有效调用的时间。

  1. 该方法会在以下情况返回 0,以通知调用者当前用户没有未读消息:
  • 用户没有进行中客诉时;
  • 用户处于 AIHelp 页面内;
  • 用户打开客服会话窗口时;

# 事件

通过监听 messageArrival 事件,你可以收到当前用户的未读消息情况:

AIHelpSupport.registerAsyncEventListener("messageArrival", function(jsonData) {
  // `jsonData`: { "msgCount": 1 }
});

# URL

此功能不支持通过 URL 方案实现。

URL 方案通过拼接链接的方式打开页面,在打开具体的 URL 链接之前,AIHelp 的代码无法得到执行,也就无法开启轮询,所以此功能不支持通过 URL 方案实现。

上次更新: 7/25/2024, 3:01:50 AM