2012-02-27 61 views
7

我有興趣使用XMPP開發聊天引擎,並且我想爲我的web開發使用Python。雖然,XMPP將獨立於此Python工作,但如果我想編寫包裝,那麼我將不得不使用該語言。用於Python的XMPP服務器

所以,我想知道哪個XMPP服務器(最好是開放源代碼)我應該去?

哪個python庫適合使用XMPP服務?

回答

13

XMPP服務器的唯一(維護)工作是wokkel,其構建基於Twisted。也就是說,wokkel缺乏其他非python服務器提供的大量功能。此外,wokkel的目標是提供構建服務器的庫,並且需要付出不小的努力來實際構建一個功能完備的XMPP服務器,以支持常見的XEP。

好的一面:你並不需要一個python服務器。你可以使用ejabberd,tigase,openfire(在這裏命名你的偏好)。你可以用python編寫你所有的自定義邏輯/協議和組件,並將它們無縫地連接到那個服務器上。對於特殊用途,wokkel和Twisted是一個很好的選擇。另一個偉大的圖書館是SleekXMPP

+1

採取點,並感謝您的答覆。其實我想大規模部署它,所以決定和ejabberd一起去。我已經安裝並配置了它。但是因爲我對它很陌生,所以我不能很容易地開始處理事情。 下一步可能是安裝一個客戶端。但我無法像HelloWorld程序那樣從哪裏開始。那麼,你能指導我去做這件事嗎?提前致謝。 – Him 2012-03-14 07:20:47

+2

以下是wokkel組件的示例:http://metajack.im/2008/09/25/an-xmpp-echo-bot-with-twisted-and-wokkel/以下是如何使用它構建簡單的客戶端:http://wokkel.ik.nu/wiki/XMPPClients。祝你好運,一開始看起來會很複雜,但事情在後面會變得清晰;) – ggozad 2012-03-14 16:45:24

+0

ejabberd我相信需要erlang進行擴展,而erlang是一種語言中的一種奇怪的鴨子(雖然天生非常適合大規模部署),並且似乎成爲prolog和haskell的突變孩子。有一個comp-sci學位?如果沒有,它可能是一些migrane誘導語言學習..但它有一個xml-rpc接口,它可以完成腳本編寫所需的大部分任務(使用python包裝器),但我不相信它可以執行路由,這是一個問題。 – Shayne 2016-10-06 12:24:02