From 830f719d6eabe358951c8a9f52a2c2e9bb616a7e Mon Sep 17 00:00:00 2001 From: TheRandomFurryGuy Date: Wed, 5 Apr 2023 19:57:07 +0300 Subject: [PATCH] =?UTF-8?q?=D0=BF=D0=B5=D1=80=D0=B5=D0=B4=D0=B5=D0=BB?= =?UTF-8?q?=D0=B0=D0=BB=20=D0=BC=D0=BD=D0=BE=D0=B3-=D1=81=D1=82=D1=80=20?= =?UTF-8?q?=D0=BA=D0=BE=D0=BC=D0=BC=D0=B5=D0=BD=D1=82=D0=B0=D1=80=D0=B8?= =?UTF-8?q?=D0=B8=20=D0=BD=D0=B0=20=D0=BE=D0=B4=D0=BD=D0=BE-=D1=81=D1=82?= =?UTF-8?q?=D1=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../discord-gitlab_bot/discord-gitlab_bot.py | 53 +++++++++---------- 1 file changed, 26 insertions(+), 27 deletions(-) diff --git a/source/discord-gitlab_bot/discord-gitlab_bot.py b/source/discord-gitlab_bot/discord-gitlab_bot.py index d290770..2bda7f7 100644 --- a/source/discord-gitlab_bot/discord-gitlab_bot.py +++ b/source/discord-gitlab_bot/discord-gitlab_bot.py @@ -1,32 +1,32 @@ -''' Интеграция Дискорда и ГитЛаба -🄯 Стешенко Артём и Зажигин Богдан ''' +# Интеграция Дискорда и ГитЛаба +#🄯 Стешенко Артём и Зажигин Богдан from os import environ, remove - ''' Получение переменных среды и удаление файлов — - https://docs.python.org/3.12/library/os.html ''' + # Получение переменных среды и удаление файлов — + #https://docs.python.org/3.12/library/os.html import msgpack - ''' Бинарная сериализация, создание машинной базы данных — - https://github.com/msgpack/msgpack-python/blob/main/README.md ''' + # Бинарная сериализация, создание машинной базы данных — + #https://github.com/msgpack/msgpack-python/blob/main/README.md import gitlab, discord - ''' Обертка АПИ ГитЛаба — https://python-gitlab.readthedocs.io/en/latest и - АПИ Дискорда — https://discordpy.readthedocs.io/en/latest ''' + # Обертка АПИ ГитЛаба — https://python-gitlab.readthedocs.io/en/latest и + #АПИ Дискорда — https://discordpy.readthedocs.io/en/latest database = open("database.csv", "w") # создать базу данных если её нет database.close() # закрыть базу данных - ''' FIXME: Запись базы данных с помощью MessagePack, а не простого - манипулирования файлами, из них нельзя получить значения. ''' + # FIXME: Запись базы данных с помощью MessagePack, а не простого + #манипулирования файлами, из них нельзя получить значения. gitlab_instance = gitlab.Gitlab(url = 'https://gitlab.megu.one', private_token = environ.get("TOKEN_GITLAB")) # определение адреса и токена экземляра ГитЛаба project = gitlab_instance.projects.get(13) # определение проекта в котором нужно создавать задачи - ''' TODO: Привязка экзепмляра и проекта к Дискорд Каналу в БД, а не в коде ''' + # TODO: Привязка экзепмляра и проекта к Дискорд Каналу в БД, а не в коде intents = discord.Intents.default() # использовать требования по умолчанию intents.message_content = True # требовать содержимое сообщений - ''' Определение событий требуемых для функционирования бота, например, - «пользователь печатает» можно игнорировать, а отправленное сообщение нужно получить ''' + # Определение событий требуемых для функционирования бота, например, + #«пользователь печатает» можно игнорировать, а отправленное сообщение нужно получить discord_bot = discord.Client(intents=intents) # определение конфигурации бота @@ -54,18 +54,17 @@ async def on_message(message): # обработка каждого сообще discord_bot.run(environ.get("TOKEN_DISCORD")) # авторизация бота по токену из среды и запуск -''' TODO: Регистрировать команды бота в Команды Приложения — - https://discordpy.readthedocs.io/en/latest/interactions/api.html#application-commands: + #TODO: Регистрировать команды бота в Команды Приложения — + #https://discordpy.readthedocs.io/en/latest/interactions/api.html#application-commands: -tree_commands = discord.app_commands.CommandTree(discord_bot) # Объявление дерева команд бота - if message.content.startswith('/project'): - slovar.update({message.channel.id: message.content.replace("/project ","")}) - await message.channel.send(slovar) -slovar = dict() -command_issue_extras = dict() -@tree_commands.command(name="issue", description="создать задачу на GitLab", nsfw=False, auto_locale_strings=False) - async def issue(interaction): - await interaction.response.send_message(f"Pong", ephemeral=True) -add_command(*command_issue, guild=None, guilds=None, override=True) -asyncio.run(sync(*command_issue, guild=None)) -''' \ No newline at end of file +#tree_commands = discord.app_commands.CommandTree(discord_bot) # Объявление дерева команд бота +# if message.content.startswith('/project'): +# slovar.update({message.channel.id: message.content.replace("/project ","")}) +# await message.channel.send(slovar) +#slovar = dict() +#command_issue_extras = dict() +#@tree_commands.command(name="issue", description="создать задачу на GitLab", nsfw=False, auto_locale_strings=False) +#async def issue(interaction): +# await interaction.response.send_message(f"Pong", ephemeral=True) +#add_command(*command_issue, guild=None, guilds=None, override=True) +#asyncio.run(sync(*command_issue, guild=None)) \ No newline at end of file