JabberBot.py 870 B

123456789101112131415161718192021222324252627282930
  1. import logging
  2. import slixmpp
  3. import config
  4. from datetime import datetime
  5. class JabberBot(slixmpp.ClientXMPP):
  6. """
  7. Класс для работы с Jabber
  8. """
  9. def __init__(self, jid, password):
  10. slixmpp.ClientXMPP.__init__(self, jid, password)
  11. # Register plugins
  12. self.register_plugin('xep_0030') # Service Discovery
  13. self.register_plugin('xep_0004') # Data Forms
  14. self.register_plugin('xep_0060') # PubSub
  15. self.register_plugin('xep_0199') # XMPP Ping
  16. def log(self, message):
  17. # надо строчку лога сделать более информативной
  18. logfile = open("logs/" + datetime.now().strftime('%Y-%m-%d') + "-" + self.user + ".log", "a")
  19. logfile.write(message)
  20. logfile.close()
  21. print(message)
  22. def stop(self):
  23. self.disconnect()