Dette repositoryet inneholder koden for den interaktive Discord-boten til Aracanix Analyseplattform. Boten fungerer som en dedikert mikrotjeneste som gir brukere en "on-demand" tilgang til data og analyser fra hovedplattformen, direkte via et chat-grensesnitt i Discord.
Boten er bygget i Python ved hjelp av discord.py-biblioteket. Den er designet for å være en klient av den sentrale Aracanix Java Backend. All logikk og databehandling skjer i backenden; denne boten er utelukkende ansvarlig for:
- Å lytte etter slash-kommandoer i en Discord-server.
- Parse brukerens input.
- Gjøre REST API-kall til den relevante endepunktet på Java-backenden.
- Motta JSON-data tilbake.
- Formatere dataen til pene, lesbare "embed"-meldinger og poste dem som svar i Discord.
- Tilkobling: Boten kan koble seg til Discord og vise en "online" status.
- /ping: En enkel kommando for å verifisere at boten er responsiv.
- /stats
[lagnavn]: Henter statistikk for et spesifikt lag (bruker foreløpig dummy-data).
- Integrere
/stats-kommandoen med det ekte backend-API-et. - Implementere
/bets [porteføljenavn]for å vise nylige spill fra en portefølje. - Implementere
/upcoming_games [liga]for å vise kommende kamper. - Sikre kommunikasjonen med backenden via en hemmelig API-nøkkel.
Følg disse stegene for å kjøre boten lokalt.
- Python 3.11 eller nyere.
- En kjørende instans av Aracanix Backend (link til ditt backend-repo).
- En Discord Bot Token.
git clone https://github.com/martingit2/DiscordBot.git
cd DiscordBotDet anbefales på det sterkeste å bruke et virtuelt miljø for å isolere prosjektets avhengigheter.
# Opprett miljøet
python -m venv .venv
# Aktiver miljøet
# På Windows (PowerShell):
.\.venv\Scripts\Activate.ps1
# På macOS/Linux:
# source .venv/bin/activateDu vil se (.venv) i starten av terminal-prompten din når miljøet er aktivt.
Opprett først en requirements.txt-fil hvis den ikke finnes:
pip freeze > requirements.txtInstaller deretter alle nødvendige pakker:
pip install -r requirements.txtHvis requirements.txt er tom, kjør:
pip install discord.py requests python-dotenvBoten trenger en hemmelig token for å logge inn.
- Opprett en fil som heter
.envi rotmappen av prosjektet. - Kopier innholdet fra malen under og lim det inn i din
.env-fil. - Erstatt
din_hemmelige_bot_token_hermed din faktiske token fra Discord Developer Portal.
.env.example (dette er en mal, ikke endre denne filen)
# Discord Bot Token fra https://discord.com/developers/applications
BOT_TOKEN="din_hemmelige_bot_token_her"
# URL til den lokale Aracanix backend-tjenesten
API_BASE_URL="http://localhost:8080/api/v1"
Viktig: .env-filen er ignorert av Git og skal aldri lastes opp.
Sørg for at ditt virtuelle miljø er aktivert, og kjør deretter:
python bot.pyDu skal se en melding i terminalen som bekrefter at boten er online.