summaryrefslogtreecommitdiffstats
blob: cc9ea9d43b83fa8c781146efb9660f6a91978cda (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#!/usr/bin/env python

import sys
sys.path.append("../3rdParty")
import logging
import sleekxmpp

# Uncomment the following line to turn on debugging
#logging.basicConfig(level=logging.DEBUG, format="%(levelname)-8s %(message)s")

def main() : 
  bot = EchoBot("echobot@wonderland.lit/HelloWorld", "mypass")
  bot.run() 

class EchoBot : 
  def __init__(self, jid, password) : 
    self.xmpp = sleekxmpp.ClientXMPP(jid, password) 
    self.xmpp.add_event_handler("session_start", self.handleXMPPConnected) 
    self.xmpp.add_event_handler("message", self.handleIncomingMessage) 

  def run(self) : 
    self.xmpp.connect() 
    self.xmpp.process(threaded=False) 

  def handleXMPPConnected(self, event): 
    self.xmpp.sendPresence(pstatus = "Send me a message")

  def handleIncomingMessage(self, message) : 
    self.xmpp.sendMessage(message["jid"], message["message"]) 

if __name__ == "__main__" :
  main()