Compare commits
1 commit
Author | SHA1 | Date | |
---|---|---|---|
aafe4889f5 |
1 changed files with 10 additions and 3 deletions
|
@ -4,6 +4,9 @@
|
||||||
from os import environ, remove
|
from os import environ, remove
|
||||||
# Получение переменных среды и удаление файлов —
|
# Получение переменных среды и удаление файлов —
|
||||||
# https://docs.python.org/3.12/library/os.html
|
# https://docs.python.org/3.12/library/os.html
|
||||||
|
import logging
|
||||||
|
# Логирование логики бота —
|
||||||
|
# https://docs.python.org/3/library/logging.html
|
||||||
import msgpack
|
import msgpack
|
||||||
# Бинарная сериализация, создание машинной базы данных —
|
# Бинарная сериализация, создание машинной базы данных —
|
||||||
# https://github.com/msgpack/msgpack-python/blob/main/README.md
|
# https://github.com/msgpack/msgpack-python/blob/main/README.md
|
||||||
|
@ -12,13 +15,17 @@ import gitlab, discord
|
||||||
# АПИ Дискорда — https://discordpy.readthedocs.io/en/latest
|
# АПИ Дискорда — https://discordpy.readthedocs.io/en/latest
|
||||||
|
|
||||||
|
|
||||||
|
logging.error("Открытие базы данных…")
|
||||||
database = open("database.msgpack", "a+") # создать базу данных если её нет
|
database = open("database.msgpack", "a+") # создать базу данных если её нет
|
||||||
'''database.close()'''
|
'''database.close()'''
|
||||||
|
|
||||||
|
logging.error("Получение информации из базы данных…")
|
||||||
try: # декодирует базу данных если она есть
|
try: # декодирует базу данных если она есть
|
||||||
database_spisok = msgpack.unpackb(database.read())
|
database_spisok = msgpack.unpackb(database.read())
|
||||||
|
logging.error("Декодирован MessagePack из базы данных…")
|
||||||
except:
|
except:
|
||||||
database_spisok = dict()
|
database_spisok = dict()
|
||||||
|
logging.error("Декодирование не удалось, создан словарь…")
|
||||||
|
|
||||||
|
|
||||||
gitlab_instance = gitlab.Gitlab(url = 'https://gitlab.megu.one', private_token = environ.get("TOKEN_GITLAB")) # определение адреса и токена экземляра ГитЛаба
|
gitlab_instance = gitlab.Gitlab(url = 'https://gitlab.megu.one', private_token = environ.get("TOKEN_GITLAB")) # определение адреса и токена экземляра ГитЛаба
|
||||||
|
@ -76,9 +83,9 @@ async def on_message(message): # обработка каждого сообще
|
||||||
await reply("список комманд которые я выполняю:\n/issue - создание задачи на gitlab\n/project - подключение id канала discord с id канала gitlab\n/remove - удаление id\n/show - показ id (к каждому каналу discord подключён отдельный id gitlab)\n/speak - я расскажу немного о себе (что сейчас и делаю)")
|
await reply("список комманд которые я выполняю:\n/issue - создание задачи на gitlab\n/project - подключение id канала discord с id канала gitlab\n/remove - удаление id\n/show - показ id (к каждому каналу discord подключён отдельный id gitlab)\n/speak - я расскажу немного о себе (что сейчас и делаю)")
|
||||||
|
|
||||||
if command('/save'):
|
if command('/save'):
|
||||||
database.write(msgpack.packb(database_spisok, use_bin_type = True))
|
database.write(str(msgpack.packb(database_spisok, use_bin_type = False)))
|
||||||
|
|
||||||
discord_bot.run(environ.get("TOKEN_DISCORD")) # авторизация бота по токену из среды и запуск
|
discord_bot.run(environ.get("TOKEN_DISCORD"), log_handler=None) # авторизация бота по токену из среды и запуск
|
||||||
|
|
||||||
|
|
||||||
# TODO: Регистрировать команды бота в Команды Приложения —
|
# TODO: Регистрировать команды бота в Команды Приложения —
|
||||||
|
|
Loading…
Add table
Reference in a new issue