问题标签 [tigase]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
5 回答
5508 浏览

java - XMPP 服务器,smack API 连接

我正在尝试连接到 Tigase 服务器,使用 smack API 在 Java 中实现客户端。

当代码到达连接时。我得到以下堆栈跟踪。

谁能帮我看看,我哪里出错了。谢谢!

0 投票
1 回答
2694 浏览

xmpp - XMPP 服务器 Vysper 与 OpenFire/Tigase(如何创建简单的 XMPP 服务器)

实际上,我正在尝试找到编写简单 XMPP 服务器的最佳方法,或者找到一个占用空间非常小的服务器。我只关心 XMPP 的核心功能(状态、消息、群消息)。目前也在学习 XMPP 协议,所以如果我说的是幼稚的话,请多多包涵。

所以目前,我们的应用程序中正在使用明火。它真的很重,并且有很多我们不需要的功能。

我查看了 tigase,它是另一个占用空间更小的 XMPP 服务器。

我还查看了包含或具有扩展模块(vysper - XMPP 服务器)的 apachi mia 框架。与其他服务器相比,我曾尝试在此方面进行谷歌评论,但找不到那么多信息。

一般来说,我正在寻找从头开始实现简单 XMPP 服务器的最佳方法,或者从 Java 中已经构建的库/框架中实现一个简单的 XMPP 服务器,这样会留下更小的足迹然后开火。有兴趣在 vysper 中获得更多的优点/缺点也可以与 openfire 和 tigase 进行比较。

任何建议表示赞赏,谢谢,D

0 投票
2 回答
2135 浏览

xmpp - tigase XMPP 服务器的域连接问题

我刚刚开始研究 tigase XMPP 服务器,并且在配置服务器以连接 spark 客户端时遇到问题。

服务器打印:

我在 Windows 上运行此版本并尝试连接 XMPP 客户端。我已经尝试过 spark 和建议的 PSI。

我刚刚创建了一个域“BIB”并尝试通过 admin@BIB 用户帐户连接到 tigase 服务器。但是,我根本看不到它连接或来自服务器的任何反应。我可能错过了一些非常小的东西。我查看了 tigase 网站上的文档。这是基于从网站下载的 .exe。我已经验证了用户也已在 postgres 库中创建。所以从这个角度来看,它是有效的。

更新了--------所以问题必须处理像Artur提到的域名。但是,我只能让 localhost 工作,不知道为什么。是否有一些外部窗口设置我必须做才能使域可被 psi 识别

初始化文件:

使用此当前配置,本地主机可以连接但是当我尝试添加新帐户时 - Psi:添加帐户(名称:bib) - 单击注册新帐户(服务器名称:围兜,单击手动指定服务器主机/端口 - 主机:围兜端口: 52222) 它会抱怨

“与 XMPP 服务器通信时出错。详细信息:连接错误:无法连接到服务器”

不知道为什么只有 localhost 有效,而不是 bib 作为 tigase 服务器的域名。

平台:Windows 8 版本:tigase-server-5.1.5-b3164

任何建议表示赞赏,谢谢 D

0 投票
1 回答
378 浏览

xmpp - 在 Tigase (XMPP) 中运行时拦截和过滤传入的数据包

我正在使用Tigase (XMPP) 服务器。我想阻止来自特定 JID 的每条传入消息。目前我通过在Message.java里面丢弃它的数据包来阻止一个特定的 JID

包裹。这是正确的方法吗,如果不是,请指导我。
谢谢

0 投票
1 回答
304 浏览

xmpp - 在 Tigase 中实现 QoS

QoS是在 Tigase/XMPP 中保证消息传递的一种方式。任何人都可以让我知道是否有任何可用的XEP或任何可以帮助我保证消息传递的标准。

如果我在 XMPP 中维护每个传出数据包的队列,然后当我从客户端接收到传递报告时会怎样。那时我可以交叉检查未传递的消息。

我正在使用 Tigase 请指导我哪个是排队交叉检查消息传递报告的最佳位置

谢谢

0 投票
1 回答
499 浏览

java - 覆盖 Tigase OfflineMessages 类

我正在后台使用 Tigase 服务器开发一个聊天应用程序,以提供 XMPP 通信。除此之外,我在我的应用程序中使用 smack/asmack 作为库。

在用户之间发送每条消息时,为了实现我想要实现的功能,我通过 smack 的 Presence.setProperty() 方法包括了包扩展,如果两个用户都在线,这些扩展是正确的。当其中一个用户离线时,Tigase 服务器会保存该消息,然后在该用户再次在线时传递该消息。问题是 Tigase 不保存包含数据包扩展名的消息,因此当用户再次在线时,它只会接收到消息发送的“部分”。

我找到了 Tigase 源代码,并在 xmpp.impl 包的 OfflineMessages 类部分中找到了位置,我需要在其中插入一行代码,以便 msgoffline 插件使用扩展保存离线消息。

在不构建项目的整个源代码的情况下,覆盖 Tigase jar 文件中的 OfflineMessages 类的最简单方法是什么?

我在 ubuntu 服务器和 Eclipse 上使用 Tigase-5.1.5-b3164 版本作为 IDE。

0 投票
1 回答
368 浏览

xmpp - Tigase 中最后一次看到的信息

Tigase 显示上次看到的信息,表明此人上次被服务器看到的时间。如果未设置,则服务器将其设置为

谁能告诉我 tigase 服务器如何跟踪最后看到的信息。
谢谢

0 投票
1 回答
258 浏览

xmpp - Tigase 组件中的统计列表

在我的 Tigase 组件中,我重写了 getStatistics 方法以在列表中添加统计信息(即没有垃圾邮件、所有进程数据包等)。我如何在该方法或组件之外访问该列表。在此组件实现 - 第 5 课 - 统计数据中写道: “所有服务器统计信息均已公开,并可通过 XMPP 使用临时命令、HTTP、JMX 和一些选定的统计信息进行访问也可以通过 SNMP 获得” ,所以有没有任何命令可以让我获取所有统计信息。

谢谢

0 投票
1 回答
1889 浏览

load - tsung 输出的含义(graphs-user-simultaneous)

我正在尝试使用 tsung(负载测试)测试我的 Tigase XMPP 服务器。tsung 从 .csv 文件中读取了“用户名;密码”列表。对于基本测试,.csv 文件仅包含 3 个用户:user1、user2 和 user3。

在 tsung.xml 配置文件中,我配置了每秒 12.5 个连接,每个连接保持 2000 秒。

我有几个问题:

  1. 如果我只有 3 个用户,那么 tsung 应该在 3 个都连接后做什么?

  2. 在输出图(graphs-user-simultaneous)中,我在一段时间后看到了 2000 个连接用户。怎么会这样?

  3. 红线和绿线有什么区别?我在某处读到“已连接”是当前已连接,如果是真的,那么绿线是什么意思?

宗状态:

宗图: graphes-用户-同时

谢谢!

0 投票
1 回答
268 浏览

xmpp - Tigase 组件中的 addOutPacket

我正在 tigase 中实现 QOS 以确保消息的传递。下面列出了我的 QOS 步骤

  • 以时间戳的排序顺序缓存每个消息包(除了编写、键入、停止等)
  • 在收到数据包的传递通知时,我将其从缓存中删除
  • 在定期间隔后,启动一个线程以检查仍然存在于缓存中的数据包,并带有时间窗口
  • 如果线程在该时间窗口内发现任何数据包(这意味着消息未传递),则线程需要再次发送它

我的问题是如何在该线程内再次发送数据包。

  • 我可以从线程中尝试addOutPacket 吗(它现在不工作
  • 我应该在组件中实现我的 QOS 以便它可以轻松地执行addOutPacket
  • 或者有没有更好的方法来实现这一点

非常感谢您的建议

编辑:

一些澄清:

  • 我们不会无限期地将消息保存在缓存中
  • 我们将重试每条消息最多 3 次,之后我们会将未确认的数据包保存在离线存储中
  • 如果我认为默认情况下在 Tigase 中启用了 XEP-0198,当服务器和客户端之间的连接丢失(不可恢复的故障)时,我们仍然会遇到消息丢失。如果网络层需要时间来检测不可恢复的故障,则发送到该连接的消息将永久丢失。在 EDGE 或不稳定的互联网连接的情况下,我们将一直面临严重损害用户体验的问题。