# 未读消息数回调

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

你可以通过每五分钟一次的轮询作业或者第三方推送实现这个功能。

提示

此功能默认为关闭状态,如有需要,请联系 AIHelp 运营人员开启此功能。

# 轮询方案

注意

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

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

# API

# StartUnreadMessageCountPolling

调用此方法可以启动未读消息数量的轮询作业,请确保初始化成功之后再调用此方法







 


 










void onAIHelpInit() {
    // Sync userId info to AIHelp via updateUserInfo API
   FAIHelpForUEModule::Get().GetAIHelp()->UpdateUserInfo(
        UserId, 
        UserName, 
        ServerId, 
        UserTags, 
        CustomDataInJsonFormat,
        IsSyncCrmInfo
    ); 
    // Start polling
    FAIHelpForUEModule::Get().GetAIHelp()->StartUnreadMessageCountPolling(unreadMessageArrived);
}

void unreadMessageArrived(const int unreadCount) {
    // write your code here
}

FAIHelpForUEModule::Get().GetAIHelp()->SetOnAIHelpInitializedCallback(onAIHelpInit);

方法内部每 5 分钟主动拉取一次当前用户的未读消息数量,并在以下两种情况时将结果返回给调用者:

1、有进行中客诉的用户收到新消息时,返回该用户累计未读的消息数量;

2、用户打开客服会话窗口时,返回数字 0 以标记用户已读当前消息。

# 参数释义

# OnUnreadMessageCountCallback

  • 类型:void (*OnMessageCountArrivedCallback)(int unreadCount)
  • 详情:必传参数。 未读消息数量的回调。
上次更新: 12/19/2023, 3:49:07 AM