当我向ejabberd中的用户发送公告(例如使用“向所有主机上的所有用户发送公告”)时,收件人将其视为来自虚拟主机的消息,昵称为“ ejabberd”,对用户而言尚不清楚。>
我想知道如何将“ ejabberd”这个昵称更改为更方便的名称吗?
很奇怪,文档中绝对没有关于此的信息,甚至没有其他人对此的疑问。没有人在乎这怎么可能?也许我的ejabberd配置有问题,默认情况下虚拟主机不应该有“ ejabberd”昵称吗?
答案 0 :(得分:1)
在我的测试中,用户收到带有虚拟主机作为发件人地址的邮件:
<message to='user1@localhost/tka1'
from='localhost'
type='headline'>
<body xml:lang='en'>Hi
This is the content.
The localhost admins.</body>
<subject xml:lang='en'>This is the subject</subject>
</message>
我在协议中没有看到有关其外观的示例:https://xmpp.org/extensions/xep-0133.html#announce
答案 1 :(得分:1)
尝试添加此选项:
mod_disco:
name: "ejabberd server"
关于服务器vcard,请尝试以下补丁:
--- a/src/mod_vcard.erl
+++ b/src/mod_vcard.erl
@@ -197,7 +197,7 @@ process_local_iq(#iq{type = set, lang = Lang} = IQ) ->
xmpp:make_error(IQ, xmpp:err_not_allowed(Txt, Lang));
process_local_iq(#iq{type = get, lang = Lang} = IQ) ->
xmpp:make_iq_result(
- IQ, #vcard_temp{fn = <<"ejabberd">>,
+ IQ, #vcard_temp{fn = <<"ejabberd server nickname">>,
url = ejabberd_config:get_uri(),
desc = misc:get_descr(Lang, ?T("Erlang Jabber Server")),
bday = <<"2002-11-16">>}).