0

我确实尝试过用谷歌搜索这个,但显然我不知道正确的问题......

我有自己的 jabber 服务器在 ejabberd 上运行。这是我管理联系人的公司服务器,所以我确定每个人的 vCard 中都设置了全名,其他字段为空。

困扰我的是,当用户在他的名单中给某人发短信时,他的昵称会以这种可怕的方式显示:

martin.lukes@myserver.cz/36694788191361948416825289:测试消息

虽然当有人回短信时,他的名字会显示为全名(在他的 vCard 中设置)。

描述的行为是在 Pidgin 中,我也尝试了 Gajim,在那里我了解到这些数字可能意味着一些“位置”(捷克语中的“Zdroj”)。在对话历史记录中,Gajim 使用 vCard 中的全名,但对话窗口的标题仍然是:

martin.lukes/36694788191361948416825289

这使我认为这将是 ejabberd 设置中的某些内容,但我不知道是什么。

4

2 回答 2

1

“奇怪的数字”是用户 JID 的资源部分(也称为“资源”)。它们通常与用户的位置无关,或者由 XMPP 客户端在登录时设置,或者,如果客户端没有指定资源,XMPP 服务器将为资源部分生成一个随机值。

RFC 6121 1.4:

术语“裸 JID”指的是 XMPP 地址 localpart@domainpart(对于服务器上的帐户)或 domainpart 形式(对于服务器)。

术语“完整 JID”指的是表单的 XMPP 地址 localpart@domainpart/resourcepart(用于与帐户关联的特定授权客户端或设备)或表单 domainpart/resourcepart(用于与服务器关联的特定资源或脚本)。

它们用于区分同一用户的多个连接。与许多其他 IM 协议不同,XMPP 允许同一用户从多个设备“在线”。资源部分标识设备/连接。

于 2013-02-27T12:13:02.770 回答
0

好的,Flow 的回答将我推向了正确的方向。

如果您想摆脱服务器生成的随机数,请设置您的资源(在帐户设置中的域和密码之间)。但请注意,它仍然会给你留下

martin.lukes@myserver.cz/

更好的是,在帐户设置中设置您的本地别名,这将使用它而不是上面提到的任何内容。虽然我不明白为什么如果本地别名为空,Pidgin 不会自动使用 vCard(全名、姓名、姓氏)中的字段。我将尝试查找是否存在错误,如果没有则提交。

于 2013-02-28T09:20:38.013 回答