App hosting

Bot de Discord cu Python

Creează un bot cu discord.py și ține-l pornit non-stop la RHQ App Hosting.

Ghidul pornește de la zero: creezi botul în Discord, scrii un bot mic cu comanda !ping și îl pornești pe serverul tău Python de la RHQ.

  1. Creează aplicația în Discord

    Intră pe Discord Developer Portal, apasă New Application, dă-i un nume și confirmă.

  2. Ia tokenul botului

    Deschide tabul Bot și apasă Reset Token. Copiază tokenul și păstrează-l doar pentru tine.

    Pe aceeași pagină, la Privileged Gateway Intents, activează Message Content Intent. Comenzile cu prefix au nevoie de el.

  3. Invită botul pe serverul tău de Discord

    Deschide OAuth2 → URL Generator, bifează scope-ul bot și permisiunile Send Messages și Read Message History. Deschide linkul generat și alege serverul.

  4. Pregătește proiectul

    Pe calculatorul tău creează un folder cu trei fișiere.

    requirements.txt
    text
    discord.py>=2.4
    python-dotenv>=1.0
    main.py
    python
    import os
    import discord
    from discord.ext import commands
    from dotenv import load_dotenv
     
    load_dotenv()
     
    intents = discord.Intents.default()
    intents.message_content = True
    bot = commands.Bot(command_prefix="!", intents=intents)
     
    @bot.event
    async def on_ready():
        print(f"Conectat ca {bot.user}")
     
    @bot.command()
    async def ping(ctx):
        await ctx.reply("Pong!")
     
    bot.run(os.environ["DISCORD_TOKEN"])
    .env
    ini
    DISCORD_TOKEN=lipeste_aici_tokenul
  5. Încarcă fișierele în panou

    În panoul RHQ deschide tabul Files și încarcă requirements.txt, main.py și .env.

  6. Setează fișierul principal și pornește

    În tabul Startup setează fișierul principal la main.py, apoi apasă Start. Bibliotecile se instalează la prima pornire. Când în Console apare Conectat ca ..., scrie !ping pe Discord.

Depanare

Botul e online, dar nu răspunde la !ping

Verifică dacă Message Content Intent e activat în Developer Portal și dacă în cod există intents.message_content = True.

În consolă apare „ModuleNotFoundError: No module named 'discord'”

requirements.txt lipsește sau are alt nume. Încarcă-l în folderul principal și repornește serverul ca bibliotecile să se instaleze.