جديد 📢 عرض الإطلاق لفترة محدودة: خصم حتى 70% على شهرك الأول في كل لعبة.عرض الباقات

كيف تصنع بوت Discord بلغة Python (discord.py)

استضافة بوتات DiscordUpdated Oct 22, 20263 min read

الملفات

requirements.txt

discord.py>=2.4

bot.py

import os
import discord
from discord import app_commands

intents = discord.Intents.default()
client = discord.Client(intents=intents)
tree = app_commands.CommandTree(client)

@tree.command(name="ping", description="Replies with pong")
async def ping(interaction: discord.Interaction):
    await interaction.response.send_message("pong")

@client.event
async def on_ready():
    await tree.sync()
    print(f"Logged in as {client.user}")

client.run(os.environ["DISCORD_TOKEN"])

يستخدم البوت الـ intents الافتراضية، فلا يلزم تفعيل أي intent مميز.

شغّله في PlayNHost

  1. افتح سيرفرك في لوحة التحكم. اضغط تعديل نوع الخادم في نظرة عامة واختر Python Bot. افعل ذلك على سيرفر جديد: فتغيير النوع يعيد تثبيته. راجع كيف تغيّر نوع السيرفر.
  2. في Files ارفع bot.py وrequirements.txt.
  3. في الإعدادات، إعدادات اللعبة، اضبط الملف الرئيسي على bot.py والصق رمزك في رمز بوت Discord.
  4. افتح Console وشغّل السيرفر. يثبّت السيرفر الحزم الموجودة في requirements.txt عند كل تشغيل.
  5. عندما تعرض Console السطر Logged in as ...، اكتب /ping في Discord.

من المفيد أن تعرف

  • يعمل السيرفر بـ Python 3.12 افتراضيًا. إذا كانت حزمة تحتاج إلى إصدار آخر، فاختر 3.10 أو 3.11 أو 3.13 أو 3.14 ضمن الإعدادات، صورة Docker.
  • الأوامر المسجّلة بـ tree.sync() عامة وقد يستغرق ظهورها وقتًا. أثناء الاختبار زامِن مع سيرفر واحد بدلًا من ذلك: tree.copy_global_to(guild=discord.Object(id=YOUR_SERVER_ID)) ثم await tree.sync(guild=...).
  • اقرأ الأخطاء في Console. الحزمة المفقودة تعني أن سطرًا ناقص في requirements.txt.

المزيد: كيف تستضيف بوت Discord بلغة Python، كيف تستخدم قاعدة بيانات مع بوت Discord.

تستضيفه في مكان آخر بالفعل؟ انقل سيرفرك إلينا

أنشئ سيرفر ألعابك
جاهز للبدء؟

وفّر حتى 30% على سيرفر ألعابك الجديد.
أداء ممتاز وتفعيل فوري واعتمادية عالية، كل ذلك بسعر أفضل.

أحدث مقالات المدونة