2
這是我用例:如何處理與SleekXMPP XMPP訂閱或Python我一般
- 用戶點擊網頁鏈接說:「按照這個人的XMPP」
- 腳本啓動,並得到(基於註冊數據)請求者的用戶名和密碼並啓動。
- 發送訂閱請求。如果訂閱已經發送,腳本不應該發送另一個訂閱。如果訂閱被拒絕,腳本應通知用戶。
- 腳本應該然後退出
這裏是我到目前爲止的代碼,使用SleekXMPP:
import sys, sleekxmpp, logging
if sys.version_info < (3, 0):
reload(sys)
sys.setdefaultencoding('utf8')
#This is hardcoded here, for illustration.
jid = '[email protected]******.com/Work'
password = '********'
targetjid = '[email protected]*******.com/Work'
class SubscribeWorker(sleekxmpp.ClientXMPP):
def __init__(self, jid, password):
sleekxmpp.ClientXMPP.__init__(self, jid, password)
self.add_event_handler("session_start", self.start)
def start(self, event):
self.send_presence(pto=targetjid, ptype='subscribe')
self.get_roster()
if __name__ == '__main__':
logging.basicConfig(level=5,format='%(levelname)-8s %(message)s')
xmpp = SubscribeWorker(jid, password)
if xmpp.connect():
xmpp.process(threaded=False)
print("Done")
else:
print("Unable to connect.")
這成功地發送一個請求,但它並不需要高度的任何現有的請求或訂閱狀態。有沒有人有使用XMPP進行訂閱/取消訂閱處理的示例代碼? 我試圖理解wiki和代碼示例 - 我真的有,我只是暫時用這段代碼卡住了。
在此先感謝您的任何意見。