我想设置一个任务来销毁我的 eJabberd 服务器上所有不活动的持久聊天室。是否可以设置这样的任务?
问问题
179 次
2 回答
2
ejabberdctl
mod_muc_admin
当在 ejabberd 中启用模块时,命令行工具可以让您访问 MUC 管理命令。该模块自 ejabberd 15.04 起默认可用。
启用后,您应该可以访问多个命令来销毁 MUC 房间:
destroy_room
摧毁特定的 MUC 房间destroy_rooms_file
销毁 MUC 房间列表。rooms_unused_destroy
销毁所有 N 天内未使用的 MUC 房间。
命令列表可在 ejabberd 文档中找到:多用户聊天管理命令。
您可能会使用 command rooms_unused_destroy
,因为它似乎完全符合您的需要。
关于任务的调度,您应该依赖您的操作系统调度工具,例如cron。在自动化命令之前,您应该小心并在几天内手动测试您的命令,以避免任何错误。
于 2015-08-05T10:45:08.747 回答
0
如果服务器正在运行 linux 以杀死所有聊天室,您可以在服务器上创建一个 cron 作业。我不知道 ejabbered 的命令是什么,但类似下面的一行。如果您希望它每天运行一次。
1 1 * * * service ejabberd restart
分钟
小时
天
周
月
于 2015-08-05T01:23:39.800 回答