import asyncio
import json
import logging
from json.decoder import JSONDecodeError
from logging import handlers
import requests

MAIN_BOT_ADDRESS = "http://192.168.1.191:5000"
SEND_RESULTS = "/conjurer"

async def send_results():
    logger = logging.getLogger()
    logger.setLevel(logging.DEBUG)
    h1 = handlers.RotatingFileHandler(
        filename="D:\\logs\\librarian.log",
        encoding="utf-8",
        mode="a",
        maxBytes=6 * 1024 * 1024,
        backupCount=6,
    )

    logger.addHandler(h1)

    with open("s_results.json", "r+", encoding="utf-8") as s_file:
        try:
            database = json.load(s_file)
        except JSONDecodeError:
            pass
    result = database["4bacbca0-ce3b-45c6-90a1-05c70b46b740"]
    result = {"4bacbca0-ce3b-45c6-90a1-05c70b46b740":result}

    coroutine = asyncio.to_thread(
        requests.post,
        f"{MAIN_BOT_ADDRESS}{SEND_RESULTS}",
        json=result,
        timeout=360,
    )
    logger.info("SENT")
    result = await coroutine
    logger.info(result.status_code)
    logger.info("SEND CONFIRMED")
async def main():
    await send_results()
if __name__ == "__main__":
    asyncio.run(main())