我正在尝试将Firebase Smart回复集成到android聊天应用程序中,但是在进行几次消息交互之后,Smart Reply不会再次生成响应。
这不会显式引发错误,只是在logcat中记录“ I / FirebaseSmartReply:未通过扩展过滤器”
mFirebaseTextMessages.add(FirebaseTextMessage.createForRemoteUser(messageToDisplay, System.currentTimeMillis(), "a"));
suggestReplies();
private void suggestReplies(){
mFirebaseSmartReply.suggestReplies(mFirebaseTextMessages)
.addOnSuccessListener(new OnSuccessListener<SmartReplySuggestionResult>() {
@Override
public void onSuccess(SmartReplySuggestionResult result) {
if (result.getStatus() == SmartReplySuggestionResult.STATUS_NOT_SUPPORTED_LANGUAGE) {
// The conversation's language isn't supported, so the
// the result doesn't contain any suggestions.
} else if (result.getStatus() == SmartReplySuggestionResult.STATUS_SUCCESS) {
// Task completed successfully
// ...
suggestionList.clear();
for (SmartReplySuggestion suggestion : result.getSuggestions()) {
String replyText = suggestion.getText();
Log.d(TAG, replyText);
suggestionList.add(replyText);
}
mSuggestionAdapter.notifyDataSetChanged();
mRecyclerView.setVisibility(View.VISIBLE);
}
}
})
.addOnFailureListener(new OnFailureListener() {
@Override
public void onFailure(@NonNull Exception e) {
// Task failed with an exception
// ...
}
});
}
2019-05-19 23:20:03.235 9441-9640 / ng.org.knowit.chatty I / FirebaseSmartReply:标识语言为:en 2019-05-19 23:20:03.246 9441-9705 / ng.org.knowit.chatty I / FirebaseSmartReply:未通过扩展器过滤器
答案 0 :(得分:0)
这意味着敏感主题过滤器已触发,这导致智能回复不产生任何响应。由于过滤器的输入是先前消息的集合,因此,直到导致它的消息被从最新消息历史记录中推出(或以其他方式从mFirebaseTextMessages
中删除),您都不会得到任何响应。