擅长:python、mysql、java
<p>为此编写一个自定义的ejabberd模块并不困难。它将需要注册到ejabberd中的状态更改钩子,并在每个存在包上向您的外部组件路由一个通知。在</p>
<p>有一对钩子“set_presence_hook”和“unset_presence_hook”,您的模块可以注册到它们,当用户开始/结束会话时,它们会得到通知。在</p>
<p>如果您需要跟踪其他状态,还有一个钩子“c2s_update_presence”,它会在用户发送的任何状态包上触发。在</p>
<p>另一种不使用自定义模块的可能性是使用共享名册。添加admin@presence.domain.com所有用户的共享名册,但在这种情况下,他们将看到此项目反映在他们的名册上。在</p>