我有ejabberd 16.03,我想查询数据库以获取管理面板中显示的在线用户。
有人能帮助我吗?哪个表我要查询?
我想我可以这样做:
SELECT * FROM lasts WHERE
我需要这个与另一个外部数据库表连接。谢谢你的帮助!
答案 0 :(得分:1)
如果ejabberd配置auth方法是内部的,你可以从mnesia数据库或你配置的任何数据库中获得在线用户,例如redis等.-
auth_method: internal //you can find it in ejabberd.yml
如果ejabberd auth方法是 odbc,您可以从数据库(sm表中存储当前会话进程ID,如果用户ID存在于sm表中,表示用户在线)中查询已配置。有关详细信息,请访问ejabberd authentication config docs
答案 1 :(得分:0)
您可以使用
从sm
中选择*for odbc as backend