2012-07-20 46 views
3

我試圖從我們的jabber服務器上獲取在線用戶列表及其IP地址。 XEP-133提供了2種方法可供我使用:get-online-users-listget-user-stats支持XEP-133的XMPP庫(管理命令)

現在我的問題是找到一個庫(PHP,Python,Ruby,Java)來實現這個功能,但是找不到一個。

我嘗試了JAXL v2,它提供了基本的XEP-133支持,但對於這種方法還不夠。

任何想法?

+0

這是不是隻需要[XEP-50](http://xmpp.org/extensions/xep-0050.html)中的ad-hoc協議支持? – 2012-07-20 12:50:44

+0

也許,但我的服務器發送一個表單,我需要填寫一些表單值。只要擁有XEP-50支持,就會錯過IMO。 – cweiske 2012-07-20 12:59:17

+0

表格在[XEP-4](http://xmpp.org/extensions/xep-0004.html)中定義。 – 2012-07-20 13:12:29

回答

4

明確XEP-0133支持應該是不必要的。 XEP-133僅定義了一組命令以及它們在服務器端執行的操作。要使用這些,您需要符合XEP-0050XEP-0004以及其他可能的庫。

其中之一是SleekXMPP,它是一個用於python的異步XMPP客戶端和組件庫。這是可以接受的有據可查的。只要確保使用github存儲庫中的延遲版本,對於其他在線教程可能會失敗的許多版本(許多使用最近才引入SleekXMPP的功能)。

你可能想看看documentation of the xep_0050the source of the xep_0004插件

+0

@cweiske:hi來自[email protected] :) – 2012-07-20 13:18:13

+1

此外,還有[email protected]的任何SleekXMPP幫助的空間。 – 2012-07-20 18:14:44

+3

@cweiske:對於它的價值,我已經在主人的Sleek中添加了一個XEP-0133插件,並開發了支持初始XEP-0050呼叫的分支。示例中還有一個演示:https://github.com/fritzy/SleekXMPP/blob/master/examples/admin_commands.py – 2012-07-22 21:07:48

2

Smack有兩個Data FormsAdhoc支持,以及如果你有興趣在一個Java解決方案。如前所述,您不需要明確的支持,因此任何支持這兩種擴展名的庫都應該滿足您的需求。

當然,如果你這樣做,那麼像這樣的答案支持(像我自己的)實際上都是正確的,但是你的問題類型屬於所有「我也一樣」持續辯論和討論的領域,答案。