我想尝试使用XEP-0114: Jabber Component Protocol开发 XMPP 服务器组件。
您推荐哪个服务器,为什么?我说的是易于开发、社区支持、文档、示例等。
这是一个很难回答的问题,因为我怀疑是否有很多开发人员参与了跨多个 XMPP 项目和语言的开发。
我可以抛出一些个人看法,但是......我可能会偏离基础!
您真正需要的是推荐哪些库用于组件开发。所有的服务器都支持组件协议,所以你真正需要的只是一个到服务器的套接字连接和一些帮助例程,以使像消息解析这样的重复性工作更容易。
如果您需要更紧密的集成,服务器可能很重要。
例如,如果您希望您的组件以与 Ejabberd 相同的方式扩展,那么您可能需要使用exmpp。
如果您需要将组件与 Openfire 一起部署到仅限 Java 的企业中,那么您可能需要使用smack。
如果您熟悉 Python 并想快速制作原型,请使用Wokkel。
我认为文档对于任何库都不会很好(虽然还没有看过它们!)但这不应该是一个巨大的负担。你真的需要一本关于 XMPP 协议如何工作的好书,然后是库中的一些示例代码,从那里继续前进相当容易。
对于 Openfire,有一个叫做Whack的东西,它是一个用于创建服务器组件的 Java 库 (XEP-0114)。
由于通信是通过套接字进行的,我认为相同的代码应该适用于任何设计良好的 XMPP 服务器(例如 ejabberd)。但是,我只用 Openfire 对其进行了测试,并且效果很好。