答案1
关于用户注册,您有两个选择。您可以在服务器上手动创建用户帐户,也可以启用带内注册,这样任何可以连接到服务器的人都可以注册帐户。
如果您想手动创建帐户,请在服务器上为每个用户运行此命令:
sudo ejabberdctl register <username> <domain> <password>
如果要启用带内注册,请找到以下行/etc/ejabberd/ejabberd.cfg
并将其更改deny
为allow
如下所示。
{access, register, [{allow, all}]}.
答案2
与上面 mgorven 的回答相关,这里有一个小脚本,我用它来将有关注册用户的有用信息转储到 stdout。ejabberdctl dump 命令需要一个文件而不是 stdout,这就是我做下面所有其他无意义的事情的原因:
#!/bin/sh
sudo ejabberdctl dump /tmp/etmpdump.txt
sudo chown $LOGNAME /tmp/etmpdump.txt
grep "{passwd,{" </tmp/etmpdump.txt | sed -e 's/{passwd,{"//g;s/","/ /g;s/"},"/ /g;s/"}.//g' | sort
rm -f /tmp/etmpdump.txt