Python Discord BOT - Wie Nachrichten senden?

1 Antwort

Ich würde zwei verschiedene Befehle vorschlagen, da es sich ja auch um 2 Arten von Aufgaben handelt. Zum einen send-message u. send-all

import discord
from discord.ext import commands

class MemberConverter(commands.MemberConverter):
    #Dieser Converter macht es möglich, jede Art von input zu einem Member Objekt zu machen, heißt @Name, @Name#1234, Name#1234, usw.
    async def convert(self, ctx, argument):
        member = await super().convert(ctx, argument)
        return member
        
class PM(commands.Cog):              
    
    def __init__(self, bot):
        self.bot = bot
        
    @commands.command(aliases=["send-pm"])
    async def send-message(self, ctx, member:MemberConverter=None, *, message:string=None):  
    
        if not member: return
        if not message: return
        await member.send(message)
        
    @commands.command(aliases=["send-server"])
    async def send-all(self, ctx, *, message:string=None):
        if not message: return
        
        for member in ctx.guild.members:
            await member.send(message)

    
def setup(bot):
    bot.add_cog(PM(bot))
    
"""
Diese Datei ist alleinstehend, kann also vom Bot dazugeladen werden.

Dazu muss man in der Startdatei des Bots diese Zeile Code einfügen
    bot.load_extension("Pfad.zur.Datei.NAME") # Der Pfad geht von der Startdatei aus
"""

Falls noch Fragen bestehen, einfach fragen.

Ich hoffe ich konnte dir weiterhelfen.

Woher ich das weiß:eigene Erfahrung