בוטים ל-Discord
בוטים ל-Discord ב-Python (discord.py) או ב-Node.js (discord.js), מה לכתוב בבקשה, איך מריצים בוט לבדיקה בתוך Codexe, מגבלות זמן ריצה לפי תוכנית ושמירה על הטוקן.
עודכן
Codexe יוצר פרויקטים שלמים של בוטים ל-Discord ב-Python (discord.py) או ב-Node.js (discord.js), עם פקודות סלאש.
#מה לכתוב בבקשה
- ספרייה (Python או Node.js).
- כל פקודת סלאש עם האפשרויות שלה ומי רשאי להשתמש בה.
- אירועים שצריך להגיב אליהם (הצטרפות חברים, הודעות, תגובות).
- אחסון (JSON, SQLite…) וכל API חיצוני.
- אילו intents אתם מוכנים להפעיל. Message Content ו-Server Members הם intents מורשים, וצריך להפעיל אותם בפורטל המפתחים של Discord.
#הטוקן
בוטים שנוצרים קוראים את הטוקן ממשתנה הסביבה DISCORD_TOKEN (גם BOT_TOKEN או TOKEN עובדים). הוא אף פעם לא נכתב לתוך קוד המקור, ולא נוצר קובץ .env. התייחסו לטוקן כמו לסיסמה: אם הוא דלף, אפסו אותו בפורטל המפתחים של Discord.
#הרצת בוט לבדיקה ב-Codexe
לפרויקטים של בוטים יש לוח אירוח שמאפשר לנסות את הבוט בלי להקים שרת. הדביקו את הטוקן של הבוט (הוא נשמר מוצפן, ואפשר למחוק אותו), ואז הפעלה, עצירה, הפעלה מחדש ועקבו אחרי הקונסולה.
זו סביבת בדיקה, לא אירוח קבוע:
| תוכנית | זמן ריצה לכל 24 שעות מתגלגלות |
|---|---|
| Free | 15 דקות |
| Pro | 4 שעות |
| Business | 12 שעות |
| Enterprise | 24 שעות |
בכל התוכניות: סשן נעצר אחרי 30 דקות, רק בוט אחד רץ בכל פעם לכל חשבון, ומספר ההפעלות מוגבל בקצב. הבוטים רצים בבידוד, עם גישה לאינטרנט אבל בלי גישה למערכות של Codexe עצמו.
#אימות
בוטים ל-Discord לא עוברים אימות בנייה. מוכן אומר שהיצירה הסתיימה (ראו מחזור החיים של פרויקט). השתמשו בהרצת הבדיקה כדי לבדוק אותם.
#הרצה אצלכם
הורידו את ה-ZIP, התקינו את התלויות (pip install -r requirements.txt או npm install), הגדירו את DISCORD_TOKEN בסביבה שלכם והפעילו אותו. הזמינו את הבוט לשרת שלכם עם ההרשאות bot ו-applications.commands.
#בעיות נפוצות
| תסמין | סיבה סבירה |
|---|---|
| פקודות הסלאש לא מופיעות | הפקודות עוד לא סונכרנו. סנכרון גלובלי יכול לקחת עד שעה; סנכרון לשרת מסוים הוא מיידי. |
| הבוט מחובר אבל מתעלם מהודעות | intent מורשה לא הופעל בפורטל המפתחים. |
| "The application did not respond" | הפקודה לקחה יותר מ-3 שניות בלי לדחות את התשובה. בקשו מהצ'אט לדחות את התגובה (defer). |