Ajout de l'application discord_integration avec modèles, migrations, logique d'annonces et gestion des rôles dans Discord.
This commit is contained in:
parent
1354568495
commit
2ec4a5c065
18 changed files with 239 additions and 6 deletions
49
discord_integration/core/main_bot.py
Normal file
49
discord_integration/core/main_bot.py
Normal file
|
|
@ -0,0 +1,49 @@
|
|||
import discord
|
||||
import django
|
||||
import os, sys
|
||||
from discord.ext import commands
|
||||
|
||||
# On import django pour communiquer avec
|
||||
BASE_DIR = os.path.dirname(os.path.dirname(os.path.dirname(os.path.abspath(__file__))))
|
||||
if BASE_DIR not in sys.path:
|
||||
sys.path.insert(0, BASE_DIR)
|
||||
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'devart.settings')
|
||||
django.setup()
|
||||
|
||||
# Import des fonctions
|
||||
from role_logic import check_role_reaction
|
||||
from announces_logic import check_announcements
|
||||
|
||||
# CONFIGURATION
|
||||
TOKEN = 'MTQ1MDkyNzQ5NzQ3Nzc1MDg1NA.GmkYxN.YHWXYUIav51yriV_9EotmtUO-cQqdVFLkkb6Do'
|
||||
MESSAGE_ID = 1450928822156263505 # L'ID du message des règles (clic droit > Copier l'identifiant)
|
||||
ROLE_ID = 1450920002868875435 # L'ID du rôle "Membres"
|
||||
ANNOUNCEMENT_CHANNEL_ID = 1450912559774306346
|
||||
EMOJI_VALIDATION = "✅"
|
||||
|
||||
# LES INTENTS (PERMISSIONS DU BOT)
|
||||
intents = discord.Intents.default()
|
||||
intents.members = True # Important pour pouvoir donner des rôles
|
||||
intents.message_content = True
|
||||
|
||||
client = discord.Client(intents=intents)
|
||||
|
||||
@client.event
|
||||
async def on_ready():
|
||||
print(f'✅ Bot connecté : {client.user}')
|
||||
|
||||
if not check_announcements.is_running():
|
||||
check_announcements.start(client, ANNOUNCEMENT_CHANNEL_ID)
|
||||
|
||||
@client.event
|
||||
async def on_raw_reaction_add(payload):
|
||||
# On envoie tout le nécessaire à notre fonction dans role_logic.py
|
||||
await check_role_reaction(
|
||||
payload,
|
||||
client,
|
||||
MESSAGE_ID,
|
||||
ROLE_ID,
|
||||
EMOJI_VALIDATION
|
||||
)
|
||||
|
||||
client.run(TOKEN)
|
||||
Loading…
Add table
Add a link
Reference in a new issue