Discord botovi
Discord botovi u Pythonu (discord.py) ili Node.js-u (discord.js): što napisati u zahtjevu, probno pokretanje u Codexeu, vrijeme rada po planu i čuvanje tokena.
Ažurirano
Na ovoj stranici
Codexe generira potpune projekte Discord botova u Pythonu (discord.py) ili Node.js-u (discord.js), sa slash naredbama.
#Što napisati u zahtjevu
- Biblioteku (Python ili Node.js).
- Svaku slash naredbu s njezinim opcijama i tko je smije koristiti.
- Događaje na koje bot reagira (ulazak člana, poruke, reakcije).
- Pohranu (JSON, SQLite…) i eventualne vanjske API-je.
- Koje intente si spreman uključiti. Message Content i Server Members su privilegirani i moraju se uključiti u Discordovom portalu za developere.
#Token
Generirani botovi čitaju token iz varijable okruženja DISCORD_TOKEN (rade i BOT_TOKEN ili TOKEN). Nikad se ne upisuje u izvorni kod i ne generira se datoteka .env. Prema tokenu se odnosi kao prema lozinki: ako procuri, resetiraj ga u Discordovom portalu za developere.
#Probno pokretanje bota u Codexeu
Projekti botova imaju ploču Hostaj za isprobavanje bota bez postavljanja poslužitelja. Zalijepi token svog bota (sprema se šifrirano i možeš ga izbrisati), zatim koristi Pokreni, Zaustavi, Ponovno pokreni i prati Konzolu.
Ovo je testno okruženje, a ne trajni hosting:
| Plan | Vrijeme rada u kliznih 24 sata |
|---|---|
| Free | 15 minuta |
| Pro | 4 sata |
| Business | 12 sati |
| Enterprise | 24 sata |
Na svakom planu: sesija se zaustavlja nakon 30 minuta, na jednom računu istodobno radi jedan bot, a broj pokretanja je ograničen. Botovi rade izolirano, s pristupom internetu, ali bez pristupa Codexeovim vlastitim sustavima.
#Provjera
Discord botovi ne provjeravaju se buildom. Spremno znači da je generiranje završeno (pogledaj životni ciklus projekta). Za provjeru koristi probno pokretanje.
#Pokretanje na vlastitom računalu
Preuzmi ZIP, instaliraj ovisnosti (pip install -r requirements.txt ili npm install), postavi DISCORD_TOKEN u svom okruženju i pokreni bota. Pozovi bota na svoj poslužitelj s opsezima bot i applications.commands.
#Česti problemi
| Simptom | Vjerojatni uzrok |
|---|---|
| Slash naredbe se ne pojavljuju | Naredbe još nisu sinkronizirane. Globalna sinkronizacija može trajati do sat vremena; sinkronizacija na razini poslužitelja je trenutačna. |
| Bot je online, ali ignorira poruke | Privilegirani intent nije uključen u portalu za developere. |
| „The application did not respond“ | Naredba je trajala dulje od 3 sekunde bez odgađanja odgovora. Zamoli chat da odgodi odgovor (defer). |