【问题标题】:Chat Application with XMPP使用 XMPP 聊天应用程序
【发布时间】:2023-01-28 05:42:06
【问题描述】:

我想使用 XMPP 将聊天服务添加到我的 Web 应用程序。我不明白的是如何获取每个用户的 JabberID。那么我应该如何生成用户的JabberID信息呢。我查看了文档,但没有看到太多。这是我使用的包:github.com/mattn/go-xmpp

在应用程序中,我希望用户能够相互发送私人消息。所以没有群消息,只有2个人之间。如何识别消息的发送者和接收者?

    msg := xmpp.Chat{
        Remote: toJID,
        Type:   "chat",
        Text:   message.Body,
    }
    _, err = client.Send(msg)
    if err != nil {
        return err
    }

我试过这样的东西,但我无法指定发件人

【问题讨论】:

  • client 在创建时已经通过用户身份验证。它作为经过身份验证的用户发送(client.JID() 将返回此)。
  • 没关系,但是如何为注册到我的应用程序的每个用户创建 jabber 客户端?我怎样才能以最佳方式为应用程序中的每个注册用户编写此代码?
  • 实际上,我不太明白如何将其实现到应用程序中。我是否需要为系统中的每个注册用户创建一个 Jabber 帐户?如果是这样我应该怎么做
  • 您的目标是在外部 XMPP 服务上为用户帐户创建客户端还是您正在尝试做其他事情?您正在使用为前者设计的库,但您的 cmets 表明您可能在应用程序中实现一对一聊天。
  • 目前尚不清楚您要做什么。客户端和服务器在哪里,您正在实施哪一个?

标签: go xmpp


【解决方案1】:

我发现如何在 XMPP 中使用 JWT 令牌来指定每个用户使用 ejabberd XMPP。 XMPP JWT授权here

【讨论】:

    猜你喜欢
    • 2011-01-28
    • 1970-01-01
    • 2012-02-12
    • 2015-06-14
    • 1970-01-01
    • 2015-05-04
    • 2012-10-11
    • 1970-01-01
    • 2018-02-17
    相关资源
    最近更新 更多