1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253 |
- import hashlib
- from datetime import datetime
- import config
- import logging
- from utils.JabberBot import JabberBot
- from slixmpp.stanza import Message
- botname = "open_basic_bot"
- operating_status = 0
- JID = botname + "@" + config.JSERVER
- PORT = config.PORT
- PASSWORD = hashlib.md5((botname + config.PASSWORD).encode('utf-8')).hexdigest()
- bot = JabberBot(JID, PASSWORD)
- # таким образом хранится список jid, от которых можно получать сообщения этому боту
- listen_to = [
- "open_basic_bot@ej.sharix-app.org",
- "test_user@ej.sharix-app.org"
- ]
- # тут хранится список jid, кому бот может отправлять сообщения в результате обработки заявки
- proceed_to = [
- "another_bot@ej.sharix-app.org"
- ]
- def message_handler(msg: Message):
- """Обработчик входящих сообщений"""
- if msg['type'] in ('chat', 'normal'):
- text = msg['body'] # текст сообщения боту
- sender = msg['from'] # отправитель сообщения
- if (str(sender).split("/")[0]) in listen_to:
- if text is not None:
- logging.info(f"Сообщение получено")
- def start_handler():
- """Событие запуска обработчика."""
- logging.info(">>>>> %s |---| %s <<<<<", JID, PASSWORD)
- logging.info("Сообщение отправлено")
- bot.send_message(JID, f"Сообщение отправлено {JID}: {datetime.now()}")
- # START CUSTOM FUNCTIONS
- # END CUSTOM FUNCTIONS
|