gpt4 book ai didi

java - 一对一的聊天记录,包括开火和打拳

转载 作者:行者123 更新时间:2023-11-30 06:06:38 27 4
gpt4 key购买 nike

我已经在我的系统中安装了 open fire,通过使用 postman 工具我可以创建用户,通过使用 smack 我也可以将消息发送给其他用户..但问题是我不知道如何要获取两个用户之间的聊天历史记录。这意味着如果我发送发件人和收件人用户名,我需要获取以前的聊天历史记录。我可以在开火服务器-->存档文件夹中查看聊天记录。但我不知道如何获取聊天记录。是否有任何Rest API 可用于获取两个用户之间的聊天历史记录..

请提供任何可能的解决方案

谢谢

这是我能看到的聊天记录

enter image description here

最佳答案

如果您想使用 smack 从 Openfire 获取聊天记录:

  1. 正如您已经完成的那样,通过安装 MonitoringService 来启用 MAM (XEP-0313) Openfire 中的插件。

  2. 现在从 Openfire 服务器转到:服务器>存档>存档设置并选中“存档一对一聊天”和“存档群聊”,然后保存并单击“更新设置”。

  3. 从现在开始,所有聊天记录都将保存在 Openfire 上。与某人开始新的聊天并重新安装您的 Android 应用程序。

  4. MAM 是“smack-experimental ”的一部分。因此,您必须将此行添加到 Gradle 中:

    implementation 'org.igniterealtime.smack:smack-extensions:4.2.2'
  5. 成功连接并授权其中一个后,您可以使用以下代码逐页或根据需要获取聊天记录:

    MamManager manager = MamManager.getInstanceFor(connection);
    MamManager.MamQueryResult r = manager.mostRecentPage([userBareJID], [numberOfMessages]);
    if (r.forwardedMessages.size() >= 1) //printing first of them
    {
    Message message = (Message) r.forwardedMessages.get(0).getForwardedStanza();
    Log.i("mam", "message received" + message.getBody());
    }

关于java - 一对一的聊天记录,包括开火和打拳,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51170390/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com