ejabberd jabber中的奇怪用户识别

时间:2013-02-27 08:45:59

标签: xmpp ejabberd uid

我确实试图谷歌这个,但显然我不知道正确的问题......

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

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

  

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

虽然当有人回复时,他的名字会显示为全名(如他的电子名片中所设定)。

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

  

martin.lukes / 36694788191361948416825289

这让我觉得它会在ejabberd设置中出现,但我无法找到它。

2 个答案:

答案 0 :(得分:1)

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

RFC 6121 1.4:

  

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

     

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

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

答案 1 :(得分:0)

好的,Flow的回答让我朝着正确的方向前进。

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

  

martin.lukes@myserver.cz /

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