import hashlib
from datetime import datetime
import config
import jsonAndRequest as jsreq
from BotClass import JabberBot

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 = JabberBot(JID, PASSWORD, PORT)

# таким образом хранится список jid, от которых можно получать сообщения этому боту
listen_to = [
    "test_user@ej.sharix-app.org"
]

# тут хранится список jid, кому бот может отправлять сообщения в результате обработки заявки
proceed_to = [
    "another_bot@ej.sharix-app.org"
]


def message_handler(conn, mess):
    """обработчик входящих сообщений"""
    text = mess.getBody()  # текст сообщения боту
    user = mess.getFrom()  # отправитель сообщения
    if (str(user).split("/")[0]) in listen_to:
        if text is not None:
            msg = jsreq.msg_to_text(text)
            bot.bot_log(str(datetime.now()) + " Сообщение получено\n")


def start_handler(self):
    """Событие запуска обработчика."""

    bot.proceed_status(listen_to[0], {'msg': 'some_info'})
    bot.bot_log(botname + " " + str(datetime.now()) + " " + "Сообщение отправлено\n")

# START CUSTOM FUNCTIONS



# END CUSTOM FUNCTIONS

bot.register_handler('message', message_handler)
bot.start(start_handler)
