Xmpp Prosody或ejabberd中自定义XEP-0114组件的本地主机服务发现
我已经编写了一个愚蠢的hello world XEP-0114组件,并将其连接到Prosody和ejabberd。现在,我想使用服务发现来宣布服务的存在,并提供有关其使用的说明 因此,我寻求一种方法,让任何有JID的人都能发现它,无论是远程的还是本地的,来提供更多关于它的细节 对于韵律,我有:Xmpp Prosody或ejabberd中自定义XEP-0114组件的本地主机服务发现,xmpp,ejabberd,prosody-im,Xmpp,Ejabberd,Prosody Im,我已经编写了一个愚蠢的hello world XEP-0114组件,并将其连接到Prosody和ejabberd。现在,我想使用服务发现来宣布服务的存在,并提供有关其使用的说明 因此,我寻求一种方法,让任何有JID的人都能发现它,无论是远程的还是本地的,来提供更多关于它的细节 对于韵律,我有: Component "foo.localhost" component_secret = "secret" disco_items = { { "foo.localhost", "FOO BAR
Component "foo.localhost"
component_secret = "secret"
disco_items = {
{ "foo.localhost", "FOO BAR" };
}
对于ejabberd,我有:
modules:
mod_disco:
extra_domains:
- "foo.localhost"
- "localhost"
server_info:
-
modules: all
name: "abuse-addresses"
urls:
- "foo.com"
listen:
-
port: 8888
module: ejabberd_service
access: all
shaper_rule: fast
ip: "127.0.0.1"
hosts:
"foo.localhost":
password: "secret"
然后在Gajim中,我在本地主机上启动服务发现并获得错误:
您输入的地址没有服务,或者没有响应。请检查地址,然后重试
我错过了什么?遇到问题时首先要检查的是xmpp客户端(Gajim)的XML控制台,在那里我发现了以下内容:
对等方关闭的流:主机未知
它显示发现请求被发送到当前使用的帐户所在的服务器(
jabb.im
)。我不知道如何工作,但这会提示您断开与远程服务器的连接,在本地服务器上创建帐户并使用它登录,然后发现将按预期工作。否决票不能帮助我更好地回答问题,请留下关于我应该改进的评论。