|
|
|
|
|
|
|
[Original]
[Print]
[Top]
|
转自肥肥世家论坛
Jabber服务器采用开发的XMPP协议,Google Talk也是采用XMPP协议的IM系统。在Python中有一个xmpppy模块支持该协议。也就是说,我们可以通过该模块与Jabber服务器通信,是不是很Cool。下面是一个简单的示例,可使大家对该模块有一个大概的了解。
#导入xmpppy模块
>>> import xmpp
#建立Client实例,debian是我的jabber服务器名,jabber服务器的安装可参考我的Debian学习笔记。
>>> c=xmpp.Client('debian',debug=[])
#连接
>>> c.connect()
'tcp'
#验证
>>> c.auth('yangjing','12345')
'old_auth'
#登入
>>> c.sendInitPresence()
#向ringkee@debian
>>> c.send(xmpp.protocol.Message('ringkee@debian ','test message from yangjing'))
'20'
#下面测试信息接收功能,如果没有信息,则pending_data()为空
>>>c.TCPsocket.pending_data()
[]
#如果有信息,则pending_data()不为空
>>> c.TCPsocket.pending_data()
[<socket._socketobject object at 0xb795beb4>]
#接收信息
>>> c.TCPsocket.receive()
"<message type='chat' to='yangjing@debian/xmpppy' from='ringkee@debian/Gaim'><x xmlns='jabber:x:event'><composing/></x><body>message from ringkee@debian</body><html xmlns='http://jabber.org/protocol/xhtml-im'><body xmlns='http://www.w3.org/1999/xhtml'>message from <a HREF='mailto:ringkee@debian'>ringkee@debian</a></body></html></message>"
#登出
>>> c.disconnect()
现在我正在学习XMPPPY模块和XMPP协议,看可不可以在Zope中集成IM功能。
|
|
|
[Original]
[Print]
[Top]
|
|
|