2010-01-04 23 views
2

刪除一個用戶我想刪除一個聊天賬號,並在同一時間:如何從所有名冊中Ejabberd

  1. 刪除他的花名冊
  2. 所有他的朋友刪除了他的名冊

我該怎麼做?

我試過了ejabberdctl的各種選項。我可以註銷一個用戶,甚至清除他的名單,但我無法找到一種方法將他從其他名單中刪除。

PS:我的所有用戶目前都在一臺服務器/主機

回答

0

。如果保存名冊數據在Mnesia中(mod_roster),而不是在外部數據庫(mod_roster_odbc),然後mod_admin_extra:delete_rosteritem/4可以幫助您刪除用戶名冊。否則,你將不得不使用odbc_queries功能。

如果用戶的聯繫人也是您的用戶(不允許s2s連接),那麼您可以使用delete_rosteritem與交換的參數,或者使用mnesia/odbc hackery。在聯盟設置中,您無法訪問聯繫人的名單,但您可能同時發送他的服務器,存在取消訂閱和存在取消訂閱節。請參閱RFC 3921或詢問詳細信息。

不幸的是,我不知道現成的解決方案,但可能會在接下來的幾周內提出一個解決方案。

0

通常,刪除用戶將從所有本地用戶的名單中取消訂閱,也可以通過服務器到服務器組件向遠程用戶發送取消訂閱請求。你可能想看看ad-hoc commands,其中ejabberd supports。通過這種方式,您可以編寫一個工具來從命令行執行此操作,這就是您希望從問題標籤中看到的內容。

網絡管理界面可能是一個很受歡迎的地方。我知道這是我用openfire做的地方。