#Allgemeine Hilfe

1 messages · Page 49 of 1

tawdry leaf
#

junge nix da

fierce dove
#

Doch

#

Müsste das auch machen

tawdry leaf
fierce dove
tawdry leaf
fierce dove
#

Bei meinen bot

#

Hatte auch das Problem

tawdry leaf
#

du benutzt ja nd des von ezcord meines Wissens HAHAHAHA

fierce dove
#

Ich benutze ezcord

tawdry leaf
fierce dove
#

Weil ich keine eingestellt habe

tawdry leaf
fierce dove
#

Hmmm

tawdry leaf
fierce dove
#

Was ist damit

tawdry leaf
fierce dove
#

Deine bot id

tawdry leaf
#

967527498285989928

fierce dove
#

Danke

tawdry leaf
fierce dove
#

Ich habe dieses 🪄 Emoji kopiert und dann in den Code eingefügt

tawdry leaf
fierce dove
tawdry leaf
fierce dove
tawdry leaf
urban glen
#

yoyoyooyyoyoyo

wie zählt man alle command zsm die man aktuell hat und lässt diese im terminal printen? gibt es da einen simplen weg?

solid ingot
#

bot.walk_application_commands()

urban glen
#
t = bot.walk_application_commands()

print(t)
#

also so?

tawdry leaf
#

ja?

urban glen
#

ich frage ja nur : (

#

danke sehr : D

tawdry leaf
#

teste es doch 😄

solid ingot
#

du könntest die variable auch timo nennen duckdrink

urban glen
#

ja oder nein ist doch nicht zu viel : (

urban glen
#

okay. Noch eins;

ich bin entweder lost oder lost

wie editiere ich ein Option Value?

Sprich;

@slash_command
async def test(
  self,
  interaction,
  test: Option(str, "...")
  )
  
  if "..." in test:
    var = test.replace('..', '')

funktioniert nicht. Was ist daran falsch und könnte mir das jemand ggf. erklären?

solid ingot
#

was genau passiert denn aktuell?

urban glen
#

1 sek

#

das erste ist der error

das 2. der aktuelle code

solid ingot
#

also der erste code den du geschickt hast hatte gar nichts mit dem error zu tun, da hast du einfach alles was mit dem error zu tun hat weggelassen xD

urban glen
#

😂

#

möchtest du evtl. in einen call gehen anstatt jetzt ein gebet zu schreiben?

solid ingot
#

beim zweiten hast du die zeile wo der error passiert auch nicht mitgeschickt

urban glen
solid ingot
#

aber du versuchst in user.timeout_for() ein integer rein zu tun das geht nicht

urban glen
#

str genau so wenig

solid ingot
#

du sollst ja auch nicht raten was da rein kommst haha

urban glen
#

es gibt doch nur str und int

odd kiteBOT
solid ingot
#

digga du codest immer wenn du stoned bist

tawdry leaf
solid ingot
#

da kommt nen timedelta rein

solid ingot
novel ore
#

Why das jetzt

tawdry leaf
novel ore
#

Ne

#

#💬・chat

tawdry leaf
#

dann komm general talk

novel ore
urban glen
tawdry leaf
solid ingot
#

find ich gut

tawdry leaf
#

genemigt also xD

solid ingot
#

also das coden

urban glen
#

funktioniert jetzt. Sorry und danke : D

solid ingot
tawdry leaf
#

bekomme dauernd den error

class Warn(ezcord.Cog,emoji="![warnung](https://cdn.discordapp.com/emojis/1147664486099066940.webp?size=128 "warnung")"):
    def __init__(self, bot):
        self.bot = bot
    @commands.Cog.listener()
    async def on_ready(self):
        async with aiosqlite.connect("warns.db") as db:
            await db.execute(
                "CREATE TABLE IF NOT EXISTS warns(user INTEGER, reason TEXT, time INTEGER, guild INTEGER, warner INTEGER)")


    @slash_command(description="Verwarne einen Benutzer auf deinen Server")
    @discord.default_permissions(manage_guild=True)
    async def warn(self,ctx:discord.Interaction, member:discord.Member,reason:str="nicht gegeben"):
        if member.bot:
            await ctx.response.send_message("Du kannst keine Bots verwarnen", ephemeral=True)
            return
        if member == ctx.user:
            await ctx.response.send_message("Du kannst dich nicht selber warnen", ephemeral=True)
            return
        else:
            async with aiosqlite.connect("warns.db") as db:
                await db.execute("INSERT INTO warns (user, reason, time, guild, warner) VALUES (?, ?, ?, ?, ?)",
                                     (member.id, reason, int(datetime.now().timestamp()), ctx.guild.id, ctx.user.id))
                await db.commit()
            embed = discord.Embed(
                description=f'{member.mention} wurde von {ctx.user.mention} gewarnt\n**Grund**: {reason}')
            await ctx.respond(embed=embed)
def setup(bot: discord.Bot):
    bot.add_cog(Warn(bot))```
solid ingot
#

im else teil respondest du nicht

tawdry leaf
solid ingot
#

so wie dbx

tawdry leaf
#

ne

#

er responded es auch

#

aber der error kommt trz 😂

#

Ich würde sagen liegt an ezcord 😐

solid ingot
#

in dem command ist doch gar nichts von ezcord

tawdry leaf
solid ingot
#

hm ein versuch ist es wert

wind finch
tawdry leaf
urban glen
#
  • Error:
Ignoring exception in modal <src.modules.woerterErraten.Modal object at 0x0000020232857DF0>:
Traceback (most recent call last):
  File "C:\Users\gehtd\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\site-packages\discord\ui\modal.py", line 341, in dispatch
    await value.callback(interaction)
  File "c:\Users\gehtd\Desktop\❗WICHTIG❗\MainTestBot\src\modules\woerterErraten.py", line 384, in callback
    await msg.edit(
  File "C:\Users\gehtd\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\site-packages\discord\message.py", line 1448, in edit
    payload["components"] = view.to_components() if view else []
TypeError: View.to_components() missing 1 required positional argument: 'self'
  • Code:
msg = await msg.edit(
    embed=embedAfter,
    view=None
)
await asyncio.sleep(3)
await msg.edit(
    embed=embedAfter,
    view=buttonMitModal
)
novel ore
#

@urban glen kannst du es bitte normal machen

urban glen
#

._.

#

jetzt xd

novel ore
#

muss du vielleicht bei der view= ... was übergeben ?

urban glen
#

stimmt

novel ore
#

xD

urban glen
#

my bad

#

bin krank und kopfschmerzen und alles und ja xd

novel ore
urban glen
#

Wenn ich eine Datenbank habe wo 3 Einträge sind die alle die ID 1 haben, und ich dann "DELETE FROM table WHERE id = ?", (1,) mache, deleted er dann alle einträge oder nur einen?

solid ingot
#

alle

#

weil die where bedingung bei allen zutrifft

novel ore
#

kann ich machen wenn ich in einer db nur user_ids hab also eine Spallte das der Bot einen random User einfach nimmt und nicht immer denn ersten oder so halt einfach random einen

urban glen
#

Andere möglichkeit wäre, dass du einfach alles aus der Datenbank holst und dann mit der random lib einfach einen random wählst
also so:

async with aiosqlite.connect(db_path) as db:
    async with db.cursor() as cursor:
        await cursor.execute("SELECT user_id FROM users")
        rows = await cursor.fetchall()
        if rows:
            user = random.choice(rows)[0]
            print(random_user_id)
        else:
            print("keine user in der db")
urban glen
wicked echo
#

wenn ich pip install py-cord-dev==2.5.0rc5 in den terminal reinmache kommt das

pip : Die Benennung "pip" wurde nicht als Name eines Cmdlet, einer Funktion, einer Skriptdatei oder eines ausführbaren Programms erkannt. Überprüfen Sie die Schreibweise des Namens, oder ob der Pfad korrekt ist (sofern
enthalten), und wiederholen Sie den Vorgang.
In Zeile:1 Zeichen:1

  • pip install py-cord-dev==2.5.0rc5
  •   + CategoryInfo          : ObjectNotFound: (pip:String) [], CommandNotFoundException
      + FullyQualifiedErrorId : CommandNotFoundException
urban glen
#

Dann hast du wohl Pip nicht installiert

wicked echo
#

wie kann ich es installieren

urban glen
#

Hier findest du zwei Methoden dafür

wicked echo
#

danke habe jetzt aber python neu installiert jetzt müsste es gehen

tawdry leaf
#

👍

fierce dove
#

😮

tawdry leaf
#

Kann man mit ezcord ein AutoComplete aus einer db machen?

last depot
vivid sky
#

Help me

Ignoring exception in view <View timeout=None children=2> for item <Claim style=<ButtonStyle.success: 3> url=None disabled=True label='Claim' emoji=<PartialEmoji animated=False name='✋' id=None> row=None>:
Traceback (most recent call last):
  File "C:\view.py", line 414, in _scheduled_task
    await item.callback(interaction)
  File "C:\system.py", line 153, in callback
    await interaction.message.edit(view=self)
  File "C:\Ussage.py", line 1434, in edit
    payload["components"] = view.to_components() if view else []
                            ^^^^^^^^^^^^^^^^^^
AttributeError: 'Claim' object has no attribute 'to_components'
            await interaction.message.edit(view=self)

so ist es doch eigentlich richtig oder?

urban glen
#

Schick mal Code

vivid sky
# urban glen Schick mal Code
class Claim(discord.ui.Button):
    def __init__(self):
        super().__init__(label="Claim", style=discord.ButtonStyle.green, emoji="✋", custom_id="claim")

    async def callback(self, interaction: discord.Interaction):
        teamrole = interaction.guild.get_role(1148786344680751154)
        if teamrole in interaction.user.roles:
            self.disabled = True
            embed = discord.Embed(title="Ticket Claimed", description=f"Das Ticket wurde von {interaction.user.mention} Geclaimed.", color=discord.Color.yellow())
            await interaction.message.edit(view=self)
            await interaction.response.send_message(embed=embed)
        else:
            await interaction.response.send_message("Du hast keine Rechte, um das Ticket zu claimen")
urban glen
vivid sky
#

achso

#

uhm

urban glen
#
class ClaimView(discord.ui.View):
    def __init__(self):
        super().__init__()

    @discord.ui.button(label="Claim", style=discord.ButtonStyle.green, emoji="✋", custom_id="claim")
    async def callback(self, button: discord.ui.Button, interaction: discord.Interaction):
        teamrole = interaction.guild.get_role(1148786344680751154)
        if teamrole in interaction.user.roles:
            self.disabled = True
            embed = discord.Embed(title="Ticket Claimed", description=f"Das Ticket wurde von {interaction.user.mention} Geclaimed.", color=discord.Color.yellow())
            await interaction.message.edit(view=self)
            await interaction.response.send_message(embed=embed)
        else:
            await interaction.response.send_message("Du hast keine Rechte, um das Ticket zu claimen")
#

@vivid sky

vivid sky
#

👍🏽 Gerade gemacht dankeschön ^^

vivid sky
# urban glen <@852888051432685608>

Aber dann bekomme ich in meinen anderen Code Abschnitt ein Fehler.

Ignoring exception in view <Select timeout=None children=1> for item <Select type=<ComponentType.string_select: 3> placeholder='Wähle deine Ticket-Option aus.' min_values=1 max_values=1 options=[<SelectOption label='Bewerbung' value='Bewerbung' description='' emoji=None default=False>,emoji=None default=False>] channel_types=[] disabled=False>:
Traceback (most recent call last):
  File "C:\ts\\venv\Lib\site-packages\discord\ui\view.py", line 414, in _scheduled_task
    await item.callback(interaction)
  File "C:\commands\Ticketsystem.py", line 100, in select_callback
    Button.add_item(Claim())
  File "C:\ib\site-packages\discord\ui\view.py", line 287, in add_item
    raise TypeError(f"expected Item not {item.__class__!r}")
TypeError: expected Item not <class 'commands.Ticketsystem.Claim'>
                    Button = discord.ui.View(timeout=None)
                    Button.add_item(Claim())
                    Button.add_item(Close())
                    await ticketchannel.send(content=f"{teamrole.mention} | {interaction.user.mention}", embed=embed, view=Button)
urban glen
odd kiteBOT
urban glen
#

Schau dir das am besten an

vivid sky
tawdry leaf
fierce dove
#

Wie kann man im Code die EzCord Version eintragen

tawdry leaf
#

das wurde gestern beantwortet

fierce dove
#

tawdry leaf
#

‘ezcord.version

fierce dove
#
{ezcord.__version__}

So

tawdry leaf
#

Ja

fierce dove
#

Hmmmm

#

Thx

tawdry leaf
#

Kd

#

.

#

Da hat er es beantwortet drunter

fierce dove
#

😅

fierce dove
burnt prairieBOT
#
Level Up!

Herzlichen Glückwunsch @fierce dove, du bist jetzt Level 19 🎉

Du hast insgesamt 1,893 Nachrichten geschrieben.

tawdry leaf
fierce dove
#

Ok

#

@tawdry leaf geht net

#
Traceback (most recent call last):
  File "/data/data/com.termux/files/usr/lib/python3.11/site-packages/discord/commands/core.py", line 131, in wrapped
    ret = await coro(arg)
          ^^^^^^^^^^^^^^^
  File "/data/data/com.termux/files/usr/lib/python3.11/site-packages/discord/commands/core.py", line 1000, in _invoke
    await self.callback(self.cog, ctx, **kwargs)
  File "/storage/emulated/0/Timo/Dev/Discord/Bot/Falci/cogs/Infomationen & Afk System/botinfo.py", line 29, in about
    embed = discord.Embed(title=f"{Pin} | BOT INFOS", description=f">>> {Rakete}** × SERVER:** {len(self.bot.guilds)}\n\n{Dev}** × DEVELOPER:** {self.dev}\n\n{Sterne}** × Commands:** {len(self.bot.commands)}\n\n{Werkzeug}** × ERSTELLT:** <t:1689766800:R>\n\n{Dev}** × CREDITS AN :** {self.credit}\n\n{FalciPartner}** × PARTNER / HOSTER:** [SignMc Hoster]()\n\n{online} ** × ONLINE SEIT:** {uptime}\n\n{python} ** × VERSION:** {python.__version__}\n\n{pycord} ** × VERSION:** {pycord.__version__}\n\n{ezcord} ** × VERSION:** {ezcord.__version__}", color=COLOR)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                      ^^^^^^^^^^^^^^^^^^
AttributeError: 'str' object has no attribute '__version__'
urban glen
#
import platform
print(platform.python_version())
fierce dove
#

Ok

urban glen
fierce dove
#

Ok

urban glen
#

Geht schneller als hier auf nh antwort zu warten

fierce dove
#

Ok

#

Geht das auch mit pycord

fierce dove
#
Traceback (most recent call last):
  File "/data/data/com.termux/files/usr/lib/python3.11/site-packages/discord/commands/core.py", line 131, in wrapped
    ret = await coro(arg)
          ^^^^^^^^^^^^^^^
  File "/data/data/com.termux/files/usr/lib/python3.11/site-packages/discord/commands/core.py", line 1000, in _invoke
    await self.callback(self.cog, ctx, **kwargs)
  File "/storage/emulated/0/Timo/Dev/Discord/Bot/Falci/cogs/Infomationen & Afk System/botinfo.py", line 30, in about
    embed = discord.Embed(title=f"{Pin} | BOT INFOS", description=f">>> {Rakete}** × SERVER:** {len(self.bot.guilds)}\n\n{Dev}** × DEVELOPER:** {self.dev}\n\n{Sterne}** × Commands:** {len(self.bot.commands)}\n\n{Werkzeug}** × ERSTELLT:** <t:1689766800:R>\n\n{Dev}** × CREDITS AN :** {self.credit}\n\n{FalciPartner}** × PARTNER / HOSTER:** [SignMc Hoster]()\n\n{online} ** × ONLINE SEIT:** {uptime}\n\n{python} ** × VERSION:** {platform.python_version()}\n\n{pycord} ** × VERSION:** {platform.pycord_version()}\n\n{ezcord} ** × VERSION:** {platform.ezcord_version()}", color=COLOR)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              ^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: module 'platform' has no attribute 'pycord_version'
urban glen
#

Junge logischerweise ist es nicht für pycord

#

Und google einfach

urban glen
fierce dove
#

@solid ingot

novel ore
#

Steht doch da Version: 0.3.5

fierce dove
#

Aber der fehler

novel ore
#

Code?

urban glen
# fierce dove <@203208036053942272>

Hör doch mal auf ständig irgendwen zu Pingen, wenn dir jemand helfen will / helfen kann, dann wird er/sie es wahrscheinlich tun
Und mit Pings sorgst du meist nur dafür, dass es noch länger dauert

fierce dove
# novel ore Code?
import discord, datetime, time
from discord.ext import commands
import datetime, time
from discord.commands import slash_command
import platform
from utils import *
import time
import datetime
import os
import ezcord

class Info(commands.Cog):
    def __init__(self, bot):
        self.bot = bot
        self.dev = "@fierce dove"
        self.credit = "@novel ore"
        
    @commands.Cog.listener()
    async def on_ready(self):
        global start_time
        start_time = time.time()
        
       
    @slash_command()
    async def about(self, ctx):
        print(f"{ezcord.__version__}")
        button = discord.ui.Button(label=f"Link", url="https://google.com", emoji=f"{Flugzeug}")
        view = discord.ui.View()
        view.add_item(button)
        uptime = str(datetime.timedelta(seconds=int(round(time.time()-start_time))))
        embed = discord.Embed(title=f"{Pin} | BOT INFOS", description=f">>> {Rakete}** × SERVER:** {len(self.bot.guilds)}\n\n{Dev}** × DEVELOPER:** {self.dev}\n\n{Sterne}** × Commands:** {len(self.bot.commands)}\n\n{Werkzeug}** × ERSTELLT:** <t:1689766800:R>\n\n{Dev}** × CREDITS AN :** {self.credit}\n\n{FalciPartner}** × PARTNER / HOSTER:** [SignMc Hoster]()\n\n{online} ** × ONLINE SEIT:** {uptime}\n\n{python} ** × VERSION:** {platform.python_version()}\n\n{ezcordLogo} ** × VERSION:** {ezcord.__version__}", color=COLOR)
        embed.timestamp = datetime.datetime.now()
        await ctx.respond(embed=embed, view=view)


def setup(bot):
    bot.add_cog(Info(bot))
novel ore
#

Mach das {ezcordLogo} weg

fierce dove
#

Ok

#

Aber das ezcord Logo soll angezeigt werden

novel ore
#

Aber mal zum testen ob der error weg ist

fierce dove
#

Geht

novel ore
#

Dann ist was beim Laden des Logos falsch

fierce dove
#

Habs

urban glen
fierce dove
#

In einer extra datei

urban glen
novel ore
#

Dann haben wir das Problem

fierce dove
#

utils/config/emoji.py

urban glen
novel ore
#

Und dann

fierce dove
#

🫤

#

Meinst du in der botinfo.py wie ich es da definiert habe

urban glen
fierce dove
#

ezcordLogo = ": ezcord:emojiid"

urban glen
#

zeig mal den code

fierce dove
#
Booster = ":Booster:"
Bug = ":Bug:"
Dev = ":Dev:"
Diamant = ":Diamant:" 
FalciPartner = ":FalciPartner:" 
Fire = ":Fire:" 
Giveaway = ":Giveaway:"
Kompass = ":Kompass:"
Krone = ":Krone:"
Lightning = ":Lightning:"
Love = ":Love:"
Ordner = ":Ordner:"
Pin = ":Pin:"
Plus = ":Plus:"
Punkt = ":Punkt:"
Rakete = ":Rakete:"
Voice = ":Voice:"
Werkzeug = ":Werkzeug:"
afk = ":afk:"
bluearrow = ":bluearrow:"
mail = ":mail:"
lachen = ":lachen:"
no = ":no:"
topgg = ":topgg:"
user = ":user:"
yes =":yes:"
online = ":online:"
dnd = ":dnd:"
idle = ":idle:"
offline = ":offline:"
Flugzeug = ":Flugzeug:"
BotLogo = ":BotLogo:"
Sterne = ":Sterne:"
Tickets = ":Ticket:"
ezcordLogo = ":ezcord:"
pycord = ":pycord:"
python = ":python:"
#

Hier sind alle enojis

urban glen
#

Und wo ist da die Id?

fierce dove
#

Hinter den :

#

Wird aber nicht angezeigt

#
Booster = ":Booster:"
Bug = ":Bug:"
Dev = ":Dev:"
Diamant = ":Diamant:" 
FalciPartner = ":FalciPartner:" 
Fire = ":Fire:" 
Giveaway = ":Giveaway:"
Kompass = ":Kompass:"
Krone = ":Krone:"
Lightning = ":Lightning:"
Love = ":Love:"
Ordner = ":Ordner:"
Pin = ":Pin:"
Plus = ":Plus:"
Punkt = ":Punkt:"
Rakete = ":Rakete:"
Voice = ":Voice:"
Werkzeug = ":Werkzeug:"
afk = ":afk:"
bluearrow = ":bluearrow:"
mail = ":mail:"
lachen = ":lachen:"
no = ":no:"
topgg = ":topgg:"
user = ":user:"
yes =":yes:"
online = ":online:"
dnd = ":dnd:"
idle = ":idle:"
offline = ":offline:"
Flugzeug = ":Flugzeug:"
BotLogo = ":BotLogo:"
Sterne = ":Sterne:"
Tickets = ":Ticket:"
ezcordLogo = ":ezcord:"
pycord = ":pycord:"
python = ":python:"
vivid sky
#

bruh

urban glen
#

Wenn du EMojis mit dem Namen und Id angibst, brauchst du am Anfang < und am Ende > soweit ich weiß

fierce dove
#

Ok

novel ore
#

Genau

#

Jetzt importiert du die in die Datei und schreibst dann im f steing ezcordLogo

fierce dove
#

Hab ich

novel ore
#

Gehts?

fierce dove
#

Schau in Test server

novel ore
#

Nice!

fierce dove
#

Ja

#

Danke für eure hilfe

novel ore
#

Kein Ding

sacred lotus
#
py
primestogetfound = int(input("Primzahlen werden berechnet, nach wie vielen Primzahlen soll das Programm aufhören: "))
stop = 0
numbertry = 1
primesfound = 0
while primestogetfound != primesfound:
    noprime = 0
    numbertry += 1
    possibles = range(1, numbertry)
    possiblesindex = 0
    while noprime == 0:
        rest = numbertry % possibles[possiblesindex]
        possiblesindex += 1
        if numbertry == possiblesindex - 2:
            stop
        if rest == 0:
            noprime = 1
            stop
    if noprime == 0:
        primesfound += 1
        print(numbertry)
burnt prairieBOT
#
Level Up!

Herzlichen Glückwunsch @sacred lotus, du bist jetzt Level 2 🎉

Du hast insgesamt 6 Nachrichten geschrieben.

Du hast <@&1042123300970696705> erhalten!

sacred lotus
#

Der code laggt iwie, jemand ne idee warum

urban glen
#

Mehr details?

Wie meinst du der code laggt?

sacred lotus
#

man soll eine bestimmte Anzahl an Primzahlen herausfinden können

#

man kann endlos enter drücken und nichts passiert

tawdry leaf
#

Meine Frage ist weiß jemand wie ich die Tables von einen user zählen kann auf einen bestimmten Server

Ich möchte wenn ich einen User Warns entziehe noch ausgeben wie viele warns der Benutzer noch hat, ich habe sonst immer dafür den code benutzt aber seit neusten gibt er immer nur 1 aus..

warnnum = 0
for table in data:
    warnnum += 1```
tawdry leaf
novel ore
tawdry leaf
#

lesen dann schreiben danke

novel ore
burnt prairieBOT
#
Level Up!

Herzlichen Glückwunsch @novel ore, du bist jetzt Level 24 🎉

Du hast insgesamt 2,764 Nachrichten geschrieben.

tawdry leaf
#

habe ich doch grad im talk gesagt help

tawdry leaf
#

habs schon selber

novel ore
urban glen
#

wie editiert man eine nachricht mit einer nachrichten ID?
[ mit interaction ]

#

möchte einen edit command erstellen aber kein plan wie bzw wo ich eine ID hinzufügen muss

novel ore
#

denke

msg = interation.get_message(id)
await msg.edit

urban glen
#

ne, gibt es nicht...

tawdry leaf
solid ingot
urban glen
#

alles gut hab : D

urban glen
#

wie?

#

also

#

was muss man in der klammer angeben?

#

wird nicht vorgeschlagen

urban glen
# urban glen ne, gibt es nicht...
message_ = await interaction.channel.get_partial_message(message_id).fetch()
await message_.edit(content="...")

So müsste es auch gehen

solid ingot
urban glen
#

alles gut hab schon

#

aber

#

andere frage

#

angenommen:

Ich habe ein Embed
möchte den editieren, aber nur den title

wie kriege ich die bereits vorhandene Description? oder muss ich die in einer datenbank speichern? 💀

solid ingot
#

kannst das embed wahrscheinlich aus der nachricht laden und dann title ändern

urban glen
#

uh

#

okay

#

ig

#

gibt es docs dafuer?

odd kiteBOT
urban glen
#
embed = die_message.embeds[0].copy()
embed.title = "Neuer Titel"

await interaction.followup.edit_message(message_id=die_message.id, embed=embed)
#

vielen lieben dank : D

tawdry leaf
#

Was muss man in die requirements schreiben das man die master branch von py-cord auf den pterodactyl server installiert

urban glen
ruby sparrow
#
Traceback (most recent call last):
  File "c:\Users\nicor\OneDrive\Desktop\lua bot\main.py", line 104, in <module>
    bot.load_cogs("cogs", log=ezcord.CogLog.default, log_color="green")
  File "C:\Users\nicor\AppData\Local\Programs\Python\Python310\lib\site-packages\ezcord\bot.py", line 214, in load_cogs
    self.load_extension(f"{'.'.join(path.parts)}.{name}")
  File "C:\Users\nicor\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\cog.py", line 913, in load_extension
    self._load_from_module_spec(spec, name)
  File "C:\Users\nicor\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\cog.py", line 794, in _load_from_module_spec
    raise errors.ExtensionFailed(key, e) from e
discord.errors.ExtensionFailed: Extension 'cogs.youtube' raised an error: TypeError: cogs must derive from Cog```
solid ingot
#

code vom youtube cog?

ruby sparrow
# solid ingot code vom youtube cog?
import json
import discord
from colorama import *
from discord.commands import slash_command, Option
from discord.ext import commands, tasks
from pytube import Channel
import ezcord

class Youtube(commands.Cog):
    def __init__(self, bot):
        self.bot = bot

    @commands.Cog.listener()
    async def on_ready(self):
        self.checkforvideos.start()

    # Prüft alle 60 Sekunden die Videos
    @tasks.loop(seconds=60)
    async def checkforvideos(self):
        with open("youtubedata.json", "r") as f:
            data = json.load(f)

        print(Fore.RED + "---------------Prüfe YouTube-Daten!---------------")

        # Prüft die Daten in "youtubedata.json" und holt sich die Kanal-URL sowie die html der /videos Seite
        for youtube_channel in data:
            print(Fore.BLUE + f"----------Prüfe YouTube-Daten von {data[youtube_channel]['channel_name']}----------")
            channel = f"https://www.youtube.com/channel/{youtube_channel}"

            c = Channel(channel)
            try:
                latest_video_url = c.video_urls[0]
            except:
                continue

            # Prüft ob die url in "youtubedata.json" nicht die selbe ist wie die letzte Video url und ersetzt diese ggf.
            if not str(data[youtube_channel]["latest_video_url"]) == latest_video_url:
                data[str(youtube_channel)]['latest_video_url'] = latest_video_url

                # dumping der Daten
                with open("youtubedata.json", "w") as f:
                    json.dump(data, f)

                # Nimmt die Channel ID und sendet die Daten
                discord_channel_id = data[str(youtube_channel)]['notifying_discord_channel']
                discord_channel = self.bot.get_channel(int(discord_channel_id))
                msg = f"{data[str(youtube_channel)]['channel_name']} hat gerade ein Video hochgeladen: " \
                      f"{latest_video_url} "
                await discord_channel.send(msg)

    # SlashCommand erstellen um mehr YouTube Accounts hinzuzufügen
    @slash_command(description="Füge einen YouTuber zu den Benachrichtigungen hinzu!")
    @discord.default_permissions(administrator=True)
    @discord.guild_only()
    async def add_yt_notify(self, ctx, channel_id: str, *, channel_name: str, discord_channel_id: str):
        with open("youtubedata.json", "r") as f:
            data = json.load(f)

        data[str(channel_id)] = {}
        data[str(channel_id)]["channel_name"] = channel_name
        data[str(channel_id)]["latest_video_url"] = "none"
        data[str(channel_id)]["notifying_discord_channel"] = discord_channel_id

        with open("youtubedata.json", "w") as f:
            json.dump(data, f)

        await ctx.respond("Daten hinzugefügt!", ephemeral=True)

    # SlashCommand um Benachrichtigungen umzustellen
    @slash_command(description="Aktiviere oder Deaktiviere Benachrichtigungen")
    @discord.default_permissions(administrator=True)
    @discord.guild_only()
    async def yt_notify(
            self, ctx,
            status: Option(str, choices=["aktivieren", "deaktivieren"])
    ):
        if status == "aktivieren":
            self.checkforvideos.start()
        else:
            self.checkforvideos.stop()

        await ctx.respond("Status wurde geändert!", ephemeral=True)


def setup(bot):
    bot.add_cog(Youtube)(bot)```
fierce dove
#

14 Wochen haben wie viele Sekunden

restive herald
fierce dove
#

Danke

restive herald
#

Hab ausversehen 25 statt 24 eingegeben, es sind so viele:

#

@fierce dove

fierce dove
#

Ok

#

Geht net

#
async def timeout_duration(ctx: discord.AutocompleteContext):
    options = []
    if ctx.value == "":
        options.append(discord.OptionChoice(name="5 Minuten", value="300"))
        options.append(discord.OptionChoice(name="10 Minuten", value="600"))
        options.append(discord.OptionChoice(name="1 Stunde", value="3600"))
        options.append(discord.OptionChoice(name="1 Tag", value="86400"))
        options.append(discord.OptionChoice(name="1 Woche", value="604800"))
        options.append(discord.OptionChoice(name="14 Wochen", value="8467200"))
        options.append(discord.OptionChoice(name="1 Monat", value="262800288"))
        options.append(discord.OptionChoice(name="1 Jahr", value="31557600"))
#
Traceback (most recent call last):
  File "/data/data/com.termux/files/usr/lib/python3.11/site-packages/discord/commands/core.py", line 131, in wrapped
    ret = await coro(arg)
          ^^^^^^^^^^^^^^^
  File "/data/data/com.termux/files/usr/lib/python3.11/site-packages/discord/commands/core.py", line 1000, in _invoke
    await self.callback(self.cog, ctx, **kwargs)
  File "/storage/emulated/0/Timo/Dev/Discord/Bot/Falci/cogs/Administrator/Moderator.py", line 63, in timeout
    await member.timeout_for(timedelta(seconds=int(dauer)), reason=grund)
  File "/data/data/com.termux/files/usr/lib/python3.11/site-packages/discord/member.py", line 900, in timeout_for
    await self.timeout(
  File "/data/data/com.termux/files/usr/lib/python3.11/site-packages/discord/member.py", line 873, in timeout
    await self.edit(communication_disabled_until=until, reason=reason)
  File "/data/data/com.termux/files/usr/lib/python3.11/site-packages/discord/member.py", line 847, in edit
    data = await http.edit_member(guild_id, self.id, reason=reason, **payload)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/data/data/com.termux/files/usr/lib/python3.11/site-packages/discord/http.py", line 371, in request
    raise HTTPException(response, data)
discord.errors.HTTPException: 400 Bad Request (error code: 50035): Invalid Form Body
In communication_disabled_until: Invalid communication disabled timestamp
tawdry leaf
#

gehts genauer

fierce dove
tawdry leaf
fierce dove
#

Was

tawdry leaf
#

anstatt communication_disabled_until schreibe timed_out

fierce dove
#

Ok

last depot
#
[ERROR] Error in event on_interaction 
Traceback (most recent call last):
  File "C:\Users\felix\AppData\Local\Programs\Python\Python311\Lib\site-packages\discord\commands\core.py", line 124, in wrapped
    ret = await coro(arg)
          ^^^^^^^^^^^^^^^
  File "C:\Users\felix\AppData\Local\Programs\Python\Python311\Lib\site-packages\discord\commands\core.py", line 978, in _invoke
    await self.callback(self.cog, ctx, **kwargs)
  File "c:\Users\felix\Desktop\kawi01\cogs\ticket.py", line 47, in ticketsend
    await channel.send(embed=embed, view=TicketOptions())
                                         ^^^^^^^^^^^^^^^
TypeError: TicketOptions.__init__() missing 1 required positional argument: 'bot'

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "C:\Users\felix\AppData\Local\Programs\Python\Python311\Lib\site-packages\discord\bot.py", line 1114, in invoke_application_command
    await ctx.command.invoke(ctx)
  File "C:\Users\felix\AppData\Local\Programs\Python\Python311\Lib\site-packages\discord\commands\core.py", line 375, in invoke
    await injected(ctx)
  File "C:\Users\felix\AppData\Local\Programs\Python\Python311\Lib\site-packages\discord\commands\core.py", line 132, in wrapped
    raise ApplicationCommandInvokeError(exc) from exc
discord.errors.ApplicationCommandInvokeError: Application Command raised an exception: TypeError: TicketOptions.__init__() missing 1 required positional argument: 'bot'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "C:\Users\felix\AppData\Local\Programs\Python\Python311\Lib\site-packages\discord\commands\core.py", line 104, in wrapped
    ret = await coro(*args, **kwargs)
                ^^^^^^^^^^^^^^^^^^^^^
TypeError: TicketSystem.error() takes 2 positional arguments but 3 were given

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "C:\Users\felix\AppData\Local\Programs\Python\Python311\Lib\site-packages\discord\client.py", line 378, in _run_event
    await coro(*args, **kwargs)
  File "C:\Users\felix\AppData\Local\Programs\Python\Python311\Lib\site-packages\discord\bot.py", line 1167, in on_interaction
    await self.process_application_commands(interaction)
  File "C:\Users\felix\AppData\Local\Programs\Python\Python311\Lib\site-packages\discord\bot.py", line 848, in process_application_commands
    await self.invoke_application_command(ctx)
  File "C:\Users\felix\AppData\Local\Programs\Python\Python311\Lib\site-packages\discord\bot.py", line 1118, in invoke_application_command
    await ctx.command.dispatch_error(ctx, exc)
  File "C:\Users\felix\AppData\Local\Programs\Python\Python311\Lib\site-packages\discord\commands\core.py", line 412, in dispatch_error
    await injected(cog, ctx, error)
  File "C:\Users\felix\AppData\Local\Programs\Python\Python311\Lib\site-packages\discord\commands\core.py", line 112, in wrapped
    raise ApplicationCommandInvokeError(exc) from exc
discord.errors.ApplicationCommandInvokeError: Application Command raised an exception: TypeError: TicketSystem.error() takes 2 positional arguments but 3 were given
#

was bedeutet das

restive herald
#

Zeig mal den Code von der TicketOptionView

last depot
#

ich hab halt ein ticket system von discord.py versucht in pycord umzuschreiben

#

ist aber schwer

restive herald
#

du darfst bot nicht übergeben wollen, du kannst auf ihn eif mit interaction.client zugreifen

#

bzw du darfst schon is aber eigtl unnötig

fierce dove
#

Wie kommt meine library zu pypi

tawdry leaf
fierce dove
#

Aber wo auf der Website

tawdry leaf
fierce dove
#

Dann

tawdry leaf
fierce dove
#

Muss ich 2fa aktivieren

blissful vale
#

Ja. Schau dir einfach mal ein Tutorial auf YouTube an. Du musst auch noch eine pyLib installieren um das zu publishen 🙂

tawdry leaf
#

@daring birch hast du des importiert

daring birch
tawdry leaf
#

from discord import Option

daring birch
#

hat mir ein Kollege gegeben

urban glen
tawdry leaf
urban glen
#

doch eig schon

tawdry leaf
daring birch
burnt prairieBOT
#
Level Up!

Herzlichen Glückwunsch @daring birch, du bist jetzt Level 2 🎉

Du hast insgesamt 8 Nachrichten geschrieben.

Du hast <@&1042123300970696705> erhalten!

daring birch
tawdry leaf
#

musst des anmachen

solid ingot
#

im developer portal

tawdry leaf
#

steht da 😄

tawdry leaf
daring birch
#

ah okay, noch neuling xd

tawdry leaf
#

alles gut

daring birch
#

hat geklappt! ist wieder on! ich bedanke mich^^

daring birch
#

ist "slash_command" richtig?

#

oder fehlt da was

tawdry leaf
daring birch
#

@bot.slash_command hat geklappt

tawdry leaf
tawdry leaf
#

leak mal nicht dein token

daring birch
#

sry

#

ist aber ein fehler obwohl es stimmt

tawdry leaf
daring birch
tawdry leaf
# daring birch

da fehlt die klammer und des komma hinten bei user kannste weg lassen

limber crow
#

Wie kann ich das so in die Klasse reinscheiben, dass es funktioniert ?

#

Soll nen Discord Bot Status switch sein

novel ore
#

kannst du kru talk?

limber crow
novel ore
#

#1020759567421931620

urban glen
limber crow
burnt prairieBOT
#
Level Up!

Herzlichen Glückwunsch @limber crow, du bist jetzt Level 16 🎉

Du hast insgesamt 1,036 Nachrichten geschrieben.

urban glen
#
import asyncio
import discord
import ezcord
import os
import logging
from dotenv import load_dotenv
class Bot(ezcord.Bot):
     def _init_(self):
        intents = discord.Intents.default()
        intents.members True
        intents.message_content = True
        intents. messages = True
        intents.voice_states = True
        super()._init_(intents=intents, debug_guilds=os.getenv("SERVER_ID"), language="de")
        self.load_cogs("cogs", subdirectories-True)
    async def on_ready(self):
        self.loop.create_task(status_task())

bot = Bot()

@bot.event
async def status_task():
     await bot.change_presence(activity=discord.Game("Made by MecryTv"), status=discord.Status.online)
     await asyncio.sleep(30)
      ... # rest
#

Ah, du willst es in der Klasse

#

Das hab ich überlesen

limber crow
#

Genau

urban glen
#

Erstmal könntest du damit anfangen, @bot.event zu entfernen ._.
Weil status_task kein event ist

Und nutz am besten loops dafür

#
import asyncio
import discord
import ezcord
import os
import logging
from dotenv import load_dotenv
from itertools import cycle

class Bot(ezcord.Bot):
     def _init_(self):
        self.status = cycle(["erste Status", f"zweite Status", "dritter Status", f"vierter Status", f"fünfter Status"])
        intents = discord.Intents.default()
        intents.members True
        intents.message_content = True
        intents. messages = True
        intents.voice_states = True
        super()._init_(intents=intents, debug_guilds=os.getenv("SERVER_ID"), language="de")
        self.load_cogs("cogs", subdirectories-True)
    
    async def on_ready(self):
        print("Ready")
        
    @tasks.loop(minutes=1)
    async def change_status(self):
        await self.change_presence(activity=discord.Game(next(status)))

#

@limber crow

Probiers so

#

#1069916479312625684 message

#

Hier kannst du auch schauen, um da mit dem cycle zu verstehen

fierce dove
#
import discord
import ezcord
import datetime
import random
import asyncio
import json
import aiosqlite
import sqlite3
import os
import asyncpraw

from discord.ext import commands
from utils import *
from datetime import datetime
from discord.commands import slash_command, Option

class Spotify(commands.Cog):
    def __init__(self, bot):
        self.bot = bot
    
    async def get_spotify_infos(self, member: discord.Member):
        activity = member.activity
        if isinstance(activity, discord.Spotify):
            artist = activity.artist
            song = activity.title
            url = activity.track_url
            album = activity.album
            album_cover_url = activity.album_cover_url
            track_id = activity.track_id
            
            
            embed = discord.Embed(
                title=f"{member.name}'s Spotify",
                color=COLOR,
            )
            embed.add_field(name="Artist", value=artist)
            embed.add_field(name="Song", value=song)
            embed.add_field(name="Album", value=album)
            embed.add_field(name="Listen to this song", value=f"[{song}]({url})")
            embed.set_thumbnail(url=album_cover_url)
            embed.set_footer(text=f"Track ID: {track_id}")
            return embed
        else:
            return None
    
    @slash_command(name="spotify")
    async def spotify(self, ctx, member: Option(discord.Member)):
        await ctx.response.defer()
        spotify = await self.get_spotify_infos(member)
        if spotify is None:
            return await ctx.followup.send(
                 f"{member.name} is not listening to Spotify."
            )
        await ctx.followup.send(embed=spotify)
        
def setup(bot):
    bot.add_cog(Spotify(bot))
#

Warum wird immer .invalidtimo is not listening to Spotify. Angezeigt

urban glen
#

Weil du wohl kein Spotify hörst maybe

fierce dove
#

Doch

urban glen
#

Hast du Intents an?

fierce dove
#

Ich höre Spotify

#

Hmmm

urban glen
#

Printe doch mal die ganzen Werte

fierce dove
#

Ok

#

Wenn ich /spotify mache kommt in der console None

urban glen
#

Bei allen Werten?

#

Hast du presence Intents an?
Im Code und im Dev Portal

fierce dove
#

Geht thx

native plume
#

~~Hey, bei mir funktionieren manche Buttons nicht nach dem Restarten. (Eig alle Kriterien erfüllt, mit CustomID, timeout=None & im On_Ready Event self.bot.add_view)

Hier der Code~~

#

~~```py
class AdminPanel(commands.Cog):
def init(self, bot):
self.bot = bot
self.update_queue.start()

@commands.Cog.listener()
async def on_ready(self):
    with connection_pool.get_connection() as connection, connection.cursor(buffered=True) as mycursor:
        mycursor.execute(
        """
        CREATE TABLE IF NOT EXISTS warteschlange (
        discord_id TINYTEXT,
        id INTEGER(11)
        )""")

        mycursor.execute(
        """
        CREATE TABLE IF NOT EXISTS count (
        count_id INTEGER(11)
        )""")

        mycursor.execute(
        """
        CREATE TABLE IF NOT EXISTS tickets (
        discord_id TINYTEXT,
        ticket_name TINYTEXT
        )""")



        mycursor.execute("SELECT * FROM count")
        count_result = mycursor.fetchone()
        if count_result is None:
            
            sql_statement_check_result = ("INSERT INTO count (count_id) VALUES (%s)")
            values_check_result = (0,)
            mycursor.execute(sql_statement_check_result, values_check_result)
            connection.commit()
            print("Count hinzugefügt!")
        else:
            return

    self.update_queue.start()
    self.bot.add_view(AdminPanelButton())
    self.bot.add_view(CloseButton())
    self.bot.add_view(SureCloseButton())
    self.bot.add_view(TicketOptionsButtons())
    self.bot.add_view(SureClearButton())

class AdminPanelButton(discord.ui.View):
def init(self):
super().init(timeout=None)

    #NEXT-TICKET-BUTTON
    @discord.ui.button(label="Next ticket", style=discord.ButtonStyle.green, emoji="⏭", custom_id="nextticket")
    async def button_callback_1(self, button: discord.Button, interaction: discord.Interaction):
    #CODE ABER SEHR VIEL UND UNWICHTIG DESHALB GEKÜRZT"```~~
#

In einem anderen Cog funktioniert es

#

Nvm musste nur die add_view nach ganz oben im on_ready event packen xD

hard pivot
#
anime = discord.SlashCommandGroup("anime", "Group for anime content")

gif = anime.create_subgroup("gif", "Group for gifs")

class API(commands.Cog):
    def __init__(self, bot):
        self.bot = bot
        
    def search_gif(self, tags:str):
        
        key = os.getenv("API_KEY")

        params = {
            "q": tags,
            "key": key,
            "limit": "10",
            "client_key": "Discord_bot",
            "media_filter": "gif"
        }

        result = requests.get("https://tenor.googleapis.com/v2/search", params=params)
        data = result.json()

        number = random.randint(0, 9)
        url = data['results'][number]['media_formats']['gif']['url']
        return url
    
    @gif.command(description = "Send a anime hug gif you can also mention someone!")
    async def hug(self, ctx, user:discord.Member = None):
       
        url = self.search_gif(tags="Anime_hug")

        emb = discord.Embed(title="Hug", description=f"**There you go {ctx.author.mention} hugs**" if user == None else f"**{ctx.author.mention} has hug {user.mention}**", color=bot_colour)
        emb.set_image(url=url)
        emb.set_footer(text="Via Tenor")
        await ctx.send(embed=emb)

def setup(bot):
    bot.add_cog(API(bot))

Hallo weiß wer warum der command nicht verfüg bar ist es kommt kein error oder so er wird bei den slash commands einfach nicht angezeigt

fierce dove
#

@hard pivot welche library

jade sapphire
#

oh gott

fierce dove
jade sapphire
#

@hard pivot embed

#

nicht emb

fierce dove
#

Mann muss nicht embed nehmen Mann kann auch emb nehmen @jade sapphire

jade sapphire
#

hmm

fierce dove
#

@hard pivot lib

jade sapphire
limber crow
# jade sapphire hmm

Das emb steht einfach nur für ein Custom namen, dem du dem Embed gibst. Das embed wird halt mit discord.Embed() erstellt

jade sapphire
#

stimmt holy shit stimmt okay tut mir leid haha

fierce dove
#

Wenn du pycord benutzt dann muss das

ctx.send zu ctx.respond
limber crow
fierce dove
jade sapphire
fierce dove
hard pivot
burnt prairieBOT
#
Level Up!

Herzlichen Glückwunsch @hard pivot, du bist jetzt Level 5 🎉

Du hast insgesamt 89 Nachrichten geschrieben.

Du hast <@&1024276691205496872> erhalten!

fierce dove
hard pivot
#

aber er ist wenn ich /name dann ist er nicht da

fierce dove
#

Imports

hard pivot
# fierce dove Imports
from Import_file import requests, discord, os, random, bot_colour
from discord.ext import commands
from discord.commands import Option
import aiohttp
import json
fierce dove
#
from Import_file import requests, discord, os, random, bot_colour
from discord.ext import commands
from discord.commands import slash_command Option, SlashCommandGroup
import aiohttp
import json

@hard pivot

hard pivot
#

AttributeError: 'SlashCommandGroup' object has no attribute 'slash_command

fierce dove
#

@hard pivot

#

Slash command weg nur SlashCommandGroup

hard pivot
fierce dove
#

@solid ingot

#

Komme nicht mehr weiter

limber crow
novel ore
novel ore
#

Ah aber ist doch jetzt geklärt oder

hard pivot
#

Nein er wir immer noch nicht aufgelistet

limber crow
hard pivot
urban glen
#

sicher

#

wo wird dir das angezeigt

hard pivot
urban glen
#

das es geladen wird

hard pivot
#

andere commands aus dem cog funktionieren

urban glen
#
@commands.Cog.listener()
async def on_ready(self):
  print("YIPI")
```sonst mach das mal dazu :=)
urban glen
hard pivot
#

Und werden auch schon aufgelistet nur nicht die die mit einer group versehen sind

hard pivot
urban glen
#

dann mach mal die group weg und teste es mal als @slash_command grrrr

hard pivot
#

Will die group nur nurtzen da ich schon hard am limit mit den 100 commands bin

urban glen
#

1 sec

novel ore
#

Hast du SlashCommandGroup importiert

hard pivot
novel ore
#

Einrichtung passt auch?

urban glen
#
import discord
from discord.ext import commands
from discord.commands import SlashCommandGroup

anime = SlashCommandGroup("anime", "Anime commands")

gif = anime.create_subgroup("gif", "Gif commands")
```so geht es bei mir
novel ore
#

Und was brauchst du noch

tawdry leaf
limber crow
#

@hard pivot das ist das einfachste waste machen kannst und es funktioniert

ruby sparrow
limber crow
ruby sparrow
limber crow
urban glen
#
    async def get_afk_user(self, guild_id, user_id):
        async with aiosqlite.connect(self.DB) as db:
            async with db.execute("SELECT * FROM afkuser WHERE guild_id = ? AND user_id = ?", (guild_id, user_id)) as cursor:
                result = await cursor.fetchone()
                if result is None:
                    return None

        return result


    async def _get_afk_user_reason(self, guild_id, user_id):
        async with aiosqlite.connect(self.DB) as db:
            async with db.execute("SELECT reason FROM afkuser WHERE guild_id = ? AND user_id = ? ", (guild_id, user_id)) as cursor:
                result = await cursor.fetchone()
                if result is None:
                    return None

        return result[0]


    @commands.Cog.listener(
        "on_message"
    )
    async def listener(
        self,
        message: discord.Message
    ):
        afk_user = await self.get_afk_user(message.guild.id, message.author.id)
        user_id = afk_user[1]
        afk_reason = await self._get_afk_user_reason(message.guild.id, user_id)

        if afk_user is not None:
            if message.author.id == user_id:
                embed = discord.Embed(
                    title='Out of AFK Mode!',
                    description=f"Your no longer AFK!\nReason for being AFK: {afk_reason}\n\nI will no longer take any actions for people that are @ing you.",
                    color=0x00aff1
                )

                await message.channel.send(embed=embed)
                async with aiosqlite.connect(self.DB) as db:
                    async with db.execute(
                        "DELETE FROM afkuser WHERE guild_id = ? AND user_id = ?", (message.guild.id, user_id)
                        ):
                        await db.commit()


            if str(user_id) in message.content:
                em = discord.Embed(
                    title=f'This user is AFK!',
                    description=f'┌› ![George_mod](https://cdn.discordapp.com/emojis/1147526974491865209.webp?size=128 "George_mod")〢AFK User: <@&{user_id}>\n'
                                f'├› ![George_pin](https://cdn.discordapp.com/emojis/1147526977306239097.webp?size=128 "George_pin")〢AFK Reason: {afk_reason}\n'
                                f"├› ![George_user](https://cdn.discordapp.com/emojis/1148238451305611304.webp?size=128 "George_user")〢User that @'d: {message.author.mention}\n"
                                f'└› ![George_a](https://cdn.discordapp.com/emojis/1147526967684513872.webp?size=128 "George_a")〢 Action: **...**', # user kann in DB aktion speichern. Mit simplen check dann methode ausführen
                    color=0x00aff1
                )
                await message.delete()
                await message.channel.send(embed=em)

Kann mir wer sagen wieso dieses system nicht klappt?
die erste if abfrage funktioniert einwandfrei. Sollte aber jmd einen AFK User markieren; passiert nichts auser das ein error aufploppt mit

[ERROR] Error in event on_message 
Traceback (most recent call last):
  File "C:\Users\DBXFl\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\client.py", line 378, in _run_event
    await coro(*args, **kwargs)
  File "c:\Users\DBXFl\Desktop\Coding Locations\! Global Bots\George Bot\Commands\AfkSystem.py", line 38, in listener
    user_id = afk_user[1]
TypeError: 'NoneType' object is not subscriptable
#

ABER: der user ist in der DB und wie gesagt, wenn der AFK user was schreibt, klappt das auch

#

printe dir mal bitte afk_user aus

#

okay, 1 sekunde

#

ist drinne
Guild ID, User ID, grund

ruby sparrow
urban glen
ruby sparrow
#

weiss einer was muss ich machen ?

solid ingot
#

das kannst du lassen

ruby sparrow
#

einfach enter ?

tawdry leaf
last depot
#

wie sende ich jemand eine dm mit member.create.dm() ??

solid ingot
#

member.send()

last depot
#

danke

last depot
novel ore
solid ingot
#

dein member objekt ist kein richtiges Member objekt, sonst würde da ein großes M stehen

odd kiteBOT
ruby sparrow
#

@solid ingot es geht einfach nicht

solid ingot
#

die info bringt mir nichts, was geht denn nicht und welcher fehler kommt?

ruby sparrow
last depot
#
[ERROR] Error while executing /umfrage 
Traceback (most recent call last):
  File "C:\Users\felix\AppData\Local\Programs\Python\Python311\Lib\site-packages\discord\commands\core.py", line 124, in wrapped
    ret = await coro(arg)
          ^^^^^^^^^^^^^^^
  File "C:\Users\felix\AppData\Local\Programs\Python\Python311\Lib\site-packages\discord\commands\core.py", line 978, in _invoke
    await self.callback(self.cog, ctx, **kwargs)
  File "c:\Users\felix\Desktop\Neuer Test Bot\cogs\pol.py", line 23, in umfrage
    await message.add_reaction(f"{reaction1}")
          ^^^^^^^^^^^^^^^^^^^^
AttributeError: 'str' object has no attribute 'add_reaction'
#

was könnte man nehmen füremojis im slash_command?

last depot
#

also die option

last depot
# urban glen Code?
from enum import member
import discord
from discord.ext import commands
from discord.commands import slash_command, Option


class Umfrage(commands.Cog):
    def __init__(self, bot: discord.Bot):
        self.bot = bot
     

    @slash_command(description="mache eine umfrage")
    async def umfrage(self, ctx: discord.ApplicationContext, title: Option(str, "den Title von der Umfrage"),
                       message: Option(str, "Die nachricht von der umfrage"), 
                       reaction1: Option(str), 
                       reaction2: Option(str)):
        embed = discord.Embed(
            title=f"{title}",
            description=f"{message}"
        )

        await ctx.respond(embed=embed)
        await message.add_reaction(f"{reaction1}")
        await message.add_reaction(f"{reaction2}")
    
     




def setup(bot: discord.Bot):
    bot.add_cog(Umfrage(bot))
solid ingot
#

deine message ist einfach nur ein string aktuell und keine Nachricht, deswegen geht add_reaction nicht

last depot
vivid sky
last depot
#

danke

ruby sparrow
last depot
# vivid sky discord.PartialEmoji
[ERROR] Error while executing /umfrage 
Traceback (most recent call last):
  File "C:\Users\felix\AppData\Local\Programs\Python\Python311\Lib\site-packages\discord\bot.py", line 1114, in invoke_application_command
    await ctx.command.invoke(ctx)
  File "C:\Users\felix\AppData\Local\Programs\Python\Python311\Lib\site-packages\discord\commands\core.py", line 375, in invoke
    await injected(ctx)
  File "C:\Users\felix\AppData\Local\Programs\Python\Python311\Lib\site-packages\discord\commands\core.py", line 124, in wrapped
    ret = await coro(arg)
          ^^^^^^^^^^^^^^^
  File "C:\Users\felix\AppData\Local\Programs\Python\Python311\Lib\site-packages\discord\commands\core.py", line 950, in _invoke
    arg = await converter().convert(ctx, arg)
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\felix\AppData\Local\Programs\Python\Python311\Lib\site-packages\discord\ext\commands\converter.py", line 875, in convert
    raise PartialEmojiConversionFailure(argument)
discord.ext.commands.errors.PartialEmojiConversionFailure: Couldn't convert "👍" to PartialEmoji.

#

kommt das

vivid sky
last depot
vivid sky
#

server

#

thumbs_up thumbs_down das zbs

last depot
#
[ERROR] Error while executing /umfrage 
Traceback (most recent call last):
  File "C:\Users\felix\AppData\Local\Programs\Python\Python311\Lib\site-packages\discord\commands\core.py", line 124, in wrapped
    ret = await coro(arg)
          ^^^^^^^^^^^^^^^
  File "C:\Users\felix\AppData\Local\Programs\Python\Python311\Lib\site-packages\discord\commands\core.py", line 978, in _invoke
    await self.callback(self.cog, ctx, **kwargs)
  File "c:\Users\felix\Desktop\Neuer Test Bot\cogs\pol.py", line 23, in umfrage
    await message.add_reaction(f"{reaction1}")
          ^^^^^^^^^^^^^^^^^^^^
AttributeError: 'str' object has no attribute 'add_reaction'
#
from enum import member
import discord
from discord.ext import commands
from discord.commands import slash_command, Option


class Umfrage(commands.Cog):
    def __init__(self, bot: discord.Bot):
        self.bot = bot
     

    @slash_command(description="mache eine umfrage")
    async def umfrage(self, ctx: discord.ApplicationContext, title: Option(str, "den Title von der Umfrage"),
                       message: Option(str, "Die nachricht von der umfrage"), 
                       reaction1: Option(discord.PartialEmoji), 
                       reaction2: Option(discord.PartialEmoji)):
        embed = discord.Embed(
            title=f"{title}",
            description=f"{message}"
        )

        await ctx.respond(embed=embed)
        await message.add_reaction(f"{reaction1}")
        await message.add_reaction(f"{reaction2}")
    
     




def setup(bot: discord.Bot):
    bot.add_cog(Umfrage(bot))
vivid sky
#
from enum import member
import discord
from discord.ext import commands
from discord.commands import slash_command, Option


class Umfrage(commands.Cog):
    def __init__(self, bot: discord.Bot):
        self.bot = bot
     

    @slash_command(description="mache eine umfrage")
    async def umfrage(self, ctx: discord.ApplicationContext, title: Option(str, "den Title von der Umfrage"),
                       message: Option(str, "Die nachricht von der umfrage"), 
                       reaction1: Option(discord.PartialEmoji), 
                       reaction2: Option(discord.PartialEmoji)):
        embed = discord.Embed(
            title=f"{title}",
            description=f"{message}"
        )

        msg = await ctx.respond(embed=embed)
        await msg.add_reaction(f"{reaction1}")
        await msg.add_reaction(f"{reaction2}")
    
     




def setup(bot: discord.Bot):
    bot.add_cog(Umfrage(bot))
last depot
#
AttributeError: 'Interaction' object has no attribute 'add_reaction'
limber crow
vivid sky
# last depot ``` AttributeError: 'Interaction' object has no attribute 'add_reaction' ```
    @slash_command(description="Mache eine Umfrage")
    async def umfrage(self, ctx: commands.Context, title: Option(str, "Der Titel der Umfrage"),
                      message: Option(str, "Die Nachricht der Umfrage"),
                      reaction1: Option(str, "Erste Reaktion (Emoji)"),
                      reaction2: Option(str, "Zweite Reaktion (Emoji)")):
        embed = discord.Embed(
            title=f"{title}",
            description=f"{message}"
        )

        message = await ctx.send(embed=embed)
        await message.add_reaction(reaction1)
        await message.add_reaction(reaction2)
last depot
vivid sky
urban glen
#

wird ja aber geprinted

#

aber der tuple hat 2 (3) werte richtig?

#

mhm

#

hm

#

Wie holst du dir das aus der db?

#

aber die erste if abfrage funktioniert 1a mit *

#

der teil funktioniert 1 a mit sternchen

#

1 sec

#

der teil nicht, der ist none angeblich

#

1 sec

#

main.py

import ORDNER.FILENAME as config

print(config.COLOR)

???.py (anderer ordner)

COLOR = 0x000001
limber crow
#

Kann ich hier auch ein Emoji verwenden, wass ich erstellt habe und die Datei auf meinem Pc ist ?

blissful vale
#

Nein. Du musst das emoji erst auf deinen server hochladen und dann kannst du drauf zugreifen über die discord.utils. (bin mir nicht mehr sicher wie genau es hieß)

blissful vale
# tawdry leaf Ja

Sicher sicher? Ich meine, dass das emoji erst bei discord registriert sein muss.

limber crow
tawdry leaf
#

Ist es im selben Ordner ?

blissful vale
#

Okay, meines Wissensstandes geht das nicht, aber man lernt ja immer dazu 🙂

limber crow
fierce dove
#
Traceback (most recent call last):
  File "/data/data/com.termux/files/usr/lib/python3.11/site-packages/discord/commands/core.py", line 131, in wrapped
    ret = await coro(arg)
          ^^^^^^^^^^^^^^^
  File "/data/data/com.termux/files/usr/lib/python3.11/site-packages/discord/commands/core.py", line 1000, in _invoke
    await self.callback(self.cog, ctx, **kwargs)
  File "/storage/emulated/0/Timo/Dev/Discord/Bot/Falci/cogs/General/minecraft.py", line 26, in skin
    if not ctx.guild.channel_permissions_for(ctx.guild.me).send_messages:
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'Guild' object has no attribute 'channel_permissions_for'
limber crow
#

@blissful vale Muss auf Server hochladen ja

tawdry leaf
fierce dove
blissful vale
burnt prairieBOT
#
Level Up!

Herzlichen Glückwunsch @blissful vale, du bist jetzt Level 5 🎉

Du hast insgesamt 84 Nachrichten geschrieben.

Du hast <@&1024276691205496872> erhalten!

blissful vale
#

Welche lib?

fierce dove
#

pycord

blissful vale
#

Uno momento

fierce dove
#

Ok

tawdry leaf
#

🤨

blissful vale
#

Willst du die channel permissions ändern? Oder was ist dein Ziel?

tawdry leaf
#

😂

#

Gute Frage

#

Schande

tawdry leaf
limber crow
#

Kann ich hier im Placeholder auch ein eigenes Emoji reinpacken ?

tawdry leaf
#

Mach einf default permissions fertig

tawdry leaf
fierce dove
limber crow
blissful vale
tawdry leaf
limber crow
#

So geht das ned

limber crow
tawdry leaf
#

Musst es so machen wie es im placeholder steht

limber crow
fierce dove
fierce dove
burnt prairieBOT
#
Level Up!

Herzlichen Glückwunsch @fierce dove, du bist jetzt Level 20 🎉

Du hast insgesamt 2,106 Nachrichten geschrieben.

Du hast <@&1032922136068763718> erhalten!

blissful vale
tawdry leaf
fierce dove
#

Warum

blissful vale
#

Wenn der bot nicht schreiben kann, kann er auch nicht schreiben, dass er nicht schreiben kann.

blissful vale
#

Ich verstehe den Kontext jetzt nicht 🤔

limber crow
#

Wie kann ich das Emoji durch ein Custom Emoji ersetzen, sodass es funktioniert ?

fierce dove
#

Wo hast du CreateEmoji definiert

blissful vale
#

Machs mal mit discord.utils

fierce dove
#

emoji=f"{CreateEmoji}"

blissful vale
#

Ist schon ein string, wird genau so wenig funktionieren soweit ich weiß 🙂

fierce dove
#

Ok

limber crow
limber crow
urban glen
#

bzw wie importierst du das?

limber crow
#

so

urban glen
#

dann einfach emoji = CreateEmoji

#

und kein str, und stell sicher das der bot den emoji schicken kann

limber crow
urban glen
#

also auf dem server ist

limber crow
limber crow
# urban glen Der ist?

Traceback (most recent call last):
  File "C:\Users\YT197\AppData\Local\Programs\Python\Python311\Lib\site-packages\discord\cog.py", line 777, in _load_from_module_spec
    spec.loader.exec_module(lib)  # type: ignore
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "<frozen importlib._bootstrap_external>", line 940, in exec_module
  File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
  File "c:\Users\YT197\Desktop\Allgemein\Dev\Discord\Pycord\TestBot\cogs\Setups\setup-tempvoice.py", line 40, in <module>
    class SetupSelectMenu(discord.ui.View):
  File "c:\Users\YT197\Desktop\Allgemein\Dev\Discord\Pycord\TestBot\cogs\Setups\setup-tempvoice.py", line 52, in SetupSelectMenu
    @discord.ui.select(
     ^^^^^^^^^^^^^^^^^^
TypeError: select() got an unexpected keyword argument 'emoji'
urban glen
#

achso

#

Du kannst soweit ich weiß kein Custom Emoji in einem SelectMenu benutzen

limber crow
urban glen
#

wie meinst du für die optionen?

limber crow
urban glen
#

sonst probier mal

name = CreateEmoji + " text"

und dann bei dem name halt name=name oder so

urban glen
limber crow
# urban glen schick mal kurz den code

import discord
from discord.ext import commands
from discord.commands import SlashCommandGroup
from Utils.config import *
from datetime import datetime

class TempVoiceWithInterface(commands.Cog):
    def __init__(self, bot):
        self.bot = bot

    temp_voice = SlashCommandGroup(
        name="setup",
        description="Setup your TempVoice System",
    )

    @temp_voice.command(
        name="tempvoice",
        description="Setup your TempVoice System",
    )
    async def setup_tempvoice(self, ctx):
        
        em = discord.Embed(
            title="Get Started With TempVoice", 
            color=discord.Color.embed_background,
            timestamp=datetime.now(),
        )
        em.add_field(name="# What is a Creator Channel ?", value="A **Creator Channel** is a voice channel that allows you to create a temporary voice channel when you join it.")
        em.add_field(name="# What is an Interface Channel ?", value="An Interface Channel is a text channel with an embed and buttons. The Interface is an alternative to /voice commands, allowing users to customise their temporary channels.")
        
        
        
        
        await ctx.respond(embed=em, view=SetupSelectMenu())


def setup(bot):
    bot.add_cog(TempVoiceWithInterface(bot))
    

class SetupSelectMenu(discord.ui.View):
    def __init__(self):
        super().__init__(timeout=None)
        
    options = [
        discord.SelectOption(
            label="Create TempVoice",
            description="Here you can Create the TempVoice System",
            emoji=CreateEmoji,
        )
    ]
    
    @discord.ui.select(
        placeholder=HomeEmoji + "Select a Setup Option",
        min_values=1,
        max_values=1,
        options=options,
        custom_id="menu_select:select",
    )
    async def callback(
            self, select: discord.ui.Select, interaction: discord.Interaction
    ):
        selected_option = select.values[0]
        if selected_option == "Create TempVoice":
            await interaction.response.send_message("Test")
urban glen
#

Ja probier es so mal

#

Dann müsste es gehen hoffentlich

limber crow
blissful vale
#

Ich schicke dir gleich mal den Code. Warte bitte kurz 5 min.

limber crow
urban glen
#

"HomeEmoji is not defined"

#

?

limber crow
urban glen
#

Weil dein Emoji Create heißt ._.

#

ich mein Home

limber crow
urban glen
#

makes sense

limber crow
#

Geht aber so auch leider ned

limber crow
#

Was ist hier der Fehler ?

#

class TempVoiceWithInterface(commands.Cog):
    def __init__(self, bot):
        self.bot = bot

    temp_voice = SlashCommandGroup(
        name="setup",
        description="Setup your TempVoice System",
    )

    @temp_voice.command(
        name="tempvoice",
        description="Setup your TempVoice System",
    )
    async def setup_tempvoice(self, ctx):
        
        em = discord.Embed(
            title="Get Started With TempVoice", 
            color=discord.Color.embed_background(),
            timestamp=datetime.now(),
        )
        em.add_field(name="# What is a Creator Channel ?", value="A **Creator Channel** is a voice channel that allows you to create a temporary voice channel when you join it.", inline=False)
        em.add_field(name="# What is an Interface Channel ?", value="An Interface Channel is a text channel with an embed and buttons. The Interface is an alternative to /voice commands, allowing users to customise their temporary channels.", inline=False)
        
        file1 = discord.File(f"img/TempVoice.png", filename="Thumbnail.png")
        file2 = discord.File(f"img/TempVoice2.png", filename="Image.png")
        
        em.set_thumbnail(url="attachment://Thumbnail.png")
        em.set_image(url="attachment://Image.png")
        
        await ctx.respond(embed=em, view=SetupSelectMenu(), files=[file1, file2], emphemeral=True)
urban glen
#

ephemeral

#

Nicht emphemeral

limber crow
blissful vale
blissful vale
#

Und wenn du es mit emoji Name machen möchtest: ```py
discord.utils.get(guild.emojis, name="EmojiName")

limber crow
#

Was muss ich machen, damit das ctx geht ?

blissful vale
#

ctx kann raus

#

mach folgendes:

guild = await bot.get_guild(id)
emoji = discord.utils.get(guild.emojis, name ="Home")
#

Ist nicht grade Sauber

#

aber funktioniert für eine Guild

tawdry leaf
limber crow
tawdry leaf
#

Und os Importieren

limber crow
tawdry leaf
limber crow
# tawdry leaf Über super

Ist immer noch unterstrichen, aber liegt auch daran, dass es außerhalb von def ist, aber wenn ich es reinmache geht guild.emojis nihct mehr

blissful vale
#

ach man

#

ich hab übersehen dass du das in einer Klasse gemacht hast 🤦

limber crow
tawdry leaf
blissful vale
limber crow
blissful vale
#

Pass auf:
Wie wäre es, wenn du die ganzen gets einfach auserhalb der Class definierst?
Sprich```py
emojiOne = discord.utils.get(guild.emojis, name="EmojiName")

class SowieSo(blablabla):
do 123

#

Ich habe keinen Blassen schimmer ob ich gerade misst Rede, aber einen Versuch ist es wert 😄

limber crow
#

Wie kann man denn in einem Embed die Überschriften so fett machen, dass sie sich abheben ? (Titel halt auch)

#

em = discord.Embed(
            title="Get Started With TempVoice", 
            color=discord.Color.embed_background(),
            timestamp=datetime.now(),
        )
        em.add_field(name="Test", value="Test", inline=False)
        em.add_field(name="Test 2", value="Test2", inline=False)
        
        file1 = discord.File(f"img/TempVoice.png", filename="Thumbnail.png")
        file2 = discord.File(f"img/TempVoice2.png", filename="Image.png")
        
        em.set_thumbnail(url="attachment://Thumbnail.png")
        em.set_image(url="attachment://Image.png")
urban glen
#

Test

Test 2

Test 3

#

Oder meinst du diesen strich da?

#

Test

limber crow
urban glen
limber crow
urban glen
#

Dann google

limber crow
# urban glen Mit Markdown

Geht ned oder mache ich was falsch ?


em = discord.Embed(
            title="# Get Started With TempVoice", 
            color=discord.Color.embed_background(),
            timestamp=datetime.now(),
        )
        em.add_field(name="Test", value="Test", inline=False)
        em.add_field(name="Test 2", value="Test2", inline=False)
urban glen
#

idk ob das in embed titles geht

#

<- oder willst du diesen strich haben?

limber crow
urban glen
#

description="# TITLE\n\nblahblah"

limber crow
urban glen
limber crow
#

Warum reagiert das Markdown nicht bei der Letzten frage ?


 em = discord.Embed(
            description="## Get Started With TempVoice"
                        "\n"
                        "\n ### What is a Creator Channel ?"
                        "\n"
                        "\n A **Creator Channel** is a voice channel that allows you to create a temporary voice channel when you join it."
                        "\n"
                        "\n ### What is an Interface Channel ?"
                        "\n"
                        "\n An **Interface Channel** is a text channel with an embed and buttons. The Interface is an alternative to **/voice** commands, allowing users to customise their temporary channels.",
            color=discord.Color.embed_background(),
            timestamp=datetime.now(),
        )
urban glen
#

#CancelCodingKeksOwner

vivid sky
vivid sky
#

screen?

#

bekommst du ein fehler

#

oder so

limber crow
vivid sky
#

schick mal den code

limber crow
# vivid sky schick mal den code

 em = discord.Embed(
            description=f"## Get Started With TempVoice"
                        ""
                        " ### What is a Creator Channel ?"
                        ""
                        " A **Creator Channel** is a voice channel that allows you to create a temporary voice channel when you join it."
                        ""
                        "### What is an Interface Channel ?"
                        ""
                        " An **Interface Channel** is a text channel with an embed and buttons. The Interface is an alternative to **/voice** commands, allowing users to customise their temporary channels.",
            color=discord.Color.embed_background(),
            timestamp=datetime.now(),
        )
        
        file1 = discord.File(f"img/TempVoice.png", filename="Thumbnail.png")
        file2 = discord.File(f"img/TempVoice2.png", filename="Image.png")
        
        em.set_thumbnail(url="attachment://Thumbnail.png")
        em.set_image(url="attachment://Image.png")
        
        await ctx.respond(embed=em, view=SetupSelectMenu(), files=[file1, file2], ephemeral=True)
urban glen
vivid sky
# limber crow ```PY em = discord.Embed( description=f"## Get Started With TempVo...
 em = discord.Embed(
            description=f"""
            ## Get Started With TempVoice

                        ### What is a Creator Channel ?
                        
                        A **Creator Channel** is a voice channel that allows you to create a temporary voice channel when you join it.
                        
                        ### What is an Interface Channel ?
                        An **Interface Channel** is a text channel with an embed and buttons. The Interface is an alternative to **/voice** commands, allowing users to customise their temporary channels.""",
            color=discord.Color.embed_background(),
            timestamp=datetime.now(),
        )
        
        file1 = discord.File(f"img/TempVoice.png", filename="Thumbnail.png")
        file2 = discord.File(f"img/TempVoice2.png", filename="Image.png")
        
        em.set_thumbnail(url="attachment://Thumbnail.png")
        em.set_image(url="attachment://Image.png")
        
        await ctx.respond(embed=em, view=SetupSelectMenu(), files=[file1, file2], ephemeral=True)
vivid sky
#

👍🏽

limber crow
#

Kann mir jemand Helfen hier in der Klasse eine Categorie, Textchannel und Voicechannel erstellen zulassen =

urban glen
#

Was ist denn der fehler?

limber crow
# urban glen Was ist denn der fehler?

Ignoring exception in view <SetupSelectMenu timeout=900.0 children=1> for item <Select type=<ComponentType.string_select: 3> placeholder='Select a Setup Option' min_values=1 max_values=1 options=[<SelectOption label='Create TempVoice' value='Create TempVoice' description='Here you can Create the TempVoice System' emoji=<PartialEmoji animated=False name='Create' id=1150032426656079922> default=False>] channel_types=[] disabled=False>:
Traceback (most recent call last):
  File "C:\Users\YT197\AppData\Local\Programs\Python\Python311\Lib\site-packages\discord\ui\view.py", line 421, in _scheduled_task
    await item.callback(interaction)
  File "c:\Users\YT197\Desktop\Allgemein\Dev\Discord\Pycord\TestBot\cogs\Setups\setup-tempvoice.py", line 76, in callback
    await interaction.response.send_message(view=CreateTempVoice())
  File "C:\Users\YT197\AppData\Local\Programs\Python\Python311\Lib\site-packages\discord\interactions.py", line 904, in send_message
    await self._locked_response(
  File "C:\Users\YT197\AppData\Local\Programs\Python\Python311\Lib\site-packages\discord\interactions.py", line 1198, in _locked_response
    await coro
  File "C:\Users\YT197\AppData\Local\Programs\Python\Python311\Lib\site-packages\discord\webhook\async_.py", line 222, in request
    raise HTTPException(response, data)
discord.errors.HTTPException: 400 Bad Request (error code: 50006): Cannot send an empty message
urban glen
#

Dein Code davon hat nix mit dem error zutun

limber crow
# urban glen Dein Code davon hat nix mit dem error zutun

Okay, aber was muss ich in der Klasse so ändern, dass eine Categorie erstellet wird, wenn ich auf die Select Option drücke ?


import discord
import os
from discord.ext import commands
from discord.commands import SlashCommandGroup
from Utils.config import *
from datetime import datetime


class TempVoiceWithInterface(commands.Cog):
    def __init__(self, bot):
        self.bot = bot

    temp_voice = SlashCommandGroup(
        name="setup",
        description="Setup your TempVoice System",
    )

    @temp_voice.command(
        name="tempvoice",
        description="Setup your TempVoice System",
    )
    async def setup_tempvoice(self, ctx):
        
        em = discord.Embed(
            description=f"""
            ## Get Started With TempVoice

                        ### What is a Creator Channel ?
                        
                        A **Creator Channel** is a voice channel that allows you to create a temporary voice channel when you join it.
                        
                        ### What is an Interface Channel ?
                        
                        An **Interface Channel** is a text channel with an embed and buttons. The Interface is an alternative to **/voice** commands, allowing users to customise their temporary channels.""",
            color=discord.Color.embed_background(),
            timestamp=datetime.now(),
        )
        
        file1 = discord.File(f"img/TempVoice.png", filename="Thumbnail.png")
        file2 = discord.File(f"img/TempVoice2.png", filename="Image.png")
        
        em.set_thumbnail(url="attachment://Thumbnail.png")
        em.set_image(url="attachment://Image.png")
        
        await ctx.respond(embed=em, view=SetupSelectMenu(), files=[file1, file2], ephemeral=True)


def setup(bot):
    bot.add_cog(TempVoiceWithInterface(bot))
    

class SetupSelectMenu(discord.ui.View):
    def __init__(self):
        super().__init__(timeout=None)
        
    options = [
        discord.SelectOption(
            label="Create TempVoice",
            description="Here you can Create the TempVoice System",
            emoji=CreateEmoji,
        )
    ]
    
    @discord.ui.select(
        placeholder="Select a Setup Option",
        min_values=1,
        max_values=1,
        options=options,
        custom_id="menu_select:select",
    )
    async def callback(
            self, select: discord.ui.Select, interaction: discord.Interaction
    ):
        selected_option = select.values[0]
        if selected_option == "Create TempVoice":
            await interaction.response.send_message(view=CreateTempVoice())

class CreateTempVoice(discord.ui.View):
    def __init__(self):
        super().__init__(timeout=None)

    async def creating(self, ctx):
        guild = ctx.guild
        
        category = discord.utils.get(guild.categories, name="Temporäre Kanäle")
        if category is None:
            category = await guild.create_category("Temporäre Kanäle")
        
        voicechannel = discord.utils.get(guild.voicechannels, name="Create Channel")
        if voicechannel is None:
            voicechannel = await guild.create_voice_channel("Create Channel")
            

urban glen
#

du musst in der view ein button machen?

#

in deiner CreateTempVoice class

limber crow
urban glen
#

aber was soll in der class passieren

#

in der CreateTempVoice class, da machst du eine view

#

und da muss ein BUtton oder ein Selectmenu rein

limber crow
# urban glen und da muss ein BUtton oder ein Selectmenu rein

Das war nur Temporär da. Ich habe schon ein Select Menu erstellt und in der Klasse soll einfach nur eine Categorie, ein Textchannel in der Kategorie, sowie ein Voicechannel in der Kategorie erstellt werden (Mache gerade ein TempVoice system)

#

WIe kann ich hier im Code eine extra Klasse erstellen, wo eine Kategorie erstellt wird mit einem bestimmten Namen, sowie ein Textchannel mit einem bestimmten Namen und ein Voice Channel mit einem bestimmten Namen (Text & Voice Channel in der Kategorie). Wenn man auf die Option "Create TempVoice" drauf klickt, soll sich alles erstellen (Kategorie, Text & Voice Channel)

Code


import discord
import os
from discord.ext import commands
from discord.commands import SlashCommandGroup
from Utils.config import *
from datetime import datetime


class TempVoiceWithInterface(commands.Cog):
    def __init__(self, bot):
        self.bot = bot

    temp_voice = SlashCommandGroup(
        name="setup",
        description="Setup your TempVoice System",
    )

    @temp_voice.command(
        name="tempvoice",
        description="Setup your TempVoice System",
    )
    async def setup_tempvoice(self, ctx):
        
        em = discord.Embed(
            description=f"""
            ## Get Started With TempVoice

                        ### What is a Creator Channel ?
                        
                        A **Creator Channel** is a voice channel that allows you to create a temporary voice channel when you join it.
                        
                        ### What is an Interface Channel ?
                        
                        An **Interface Channel** is a text channel with an embed and buttons. The Interface is an alternative to **/voice** commands, allowing users to customise their temporary channels.""",
            color=discord.Color.embed_background(),
            timestamp=datetime.now(),
        )
        
        file1 = discord.File(f"img/TempVoice.png", filename="Thumbnail.png")
        file2 = discord.File(f"img/TempVoice2.png", filename="Image.png")
        
        em.set_thumbnail(url="attachment://Thumbnail.png")
        em.set_image(url="attachment://Image.png")
        
        await ctx.respond(embed=em, view=SetupSelectMenu(), files=[file1, file2], ephemeral=True)


def setup(bot):
    bot.add_cog(TempVoiceWithInterface(bot))
    

class SetupSelectMenu(discord.ui.View):
    def __init__(self):
        super().__init__(timeout=None)
        
    options = [
        discord.SelectOption(
            label="Create TempVoice",
            description="Here you can Create the TempVoice System",
            emoji=CreateEmoji,
        )
    ]
    
    @discord.ui.select(
        placeholder="Select a Setup Option",
        min_values=1,
        max_values=1,
        options=options,
        custom_id="menu_select:select",
    )
    async def callback(
            self, select: discord.ui.Select, interaction: discord.Interaction
    ):
        selected_option = select.values[0]
        if selected_option == "Create TempVoice":
            await interaction.response.send_message("Test")

    
            

tawdry leaf
#

Gibt es eine default permission das nur der bot owner den cmd sieht?

urban glen
tawdry leaf
tawdry leaf
tawdry leaf
burnt prairieBOT
#
Level Up!

Herzlichen Glückwunsch @tawdry leaf, du bist jetzt Level 47 🎉

Du hast insgesamt 13,797 Nachrichten geschrieben.

fierce dove
tawdry leaf
fierce dove
#

Meinst du den Geld Schein

tawdry leaf
#

ne des 🤔

fierce dove
#

?

#

Was ist damit das habe ich nicht in Economy

tawdry leaf
#

egal :

fierce dove
#

Sag

tawdry leaf
#

🙂

fierce dove
tawdry leaf
limber crow
#

Gibt es ein Event, wo man abfragen kann, ob ein user eine neue Rolle bekommen hat oder enfernt bekommen hat ?

odd kiteBOT
limber crow
#

Fehlercode

Ignoring exception in on_ready
Traceback (most recent call last):
  File "C:\Users\YT197\AppData\Local\Programs\Python\Python311\Lib\site-packages\discord\client.py", line 399, in _run_event
    await coro(*args, **kwargs)
  File "c:\Users\YT197\Desktop\Allgemein\Dev\Discord\Pycord\TestBot\cogs\Setups\setup-tempvoice.py", line 30, in on_ready
    await self.create_table()
  File "c:\Users\YT197\Desktop\Allgemein\Dev\Discord\Pycord\TestBot\cogs\Setups\setup-tempvoice.py", line 16, in create_table
    await cursor.execute(
  File "C:\Users\YT197\AppData\Local\Programs\Python\Python311\Lib\site-packages\aiosqlite\cursor.py", line 48, in execute
    await self._execute(self._cursor.execute, sql, parameters)
  File "C:\Users\YT197\AppData\Local\Programs\Python\Python311\Lib\site-packages\aiosqlite\cursor.py", line 40, in _execute
    return await self._conn._execute(fn, *args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\YT197\AppData\Local\Programs\Python\Python311\Lib\site-packages\aiosqlite\core.py", line 133, in _execute
    return await future
           ^^^^^^^^^^^^
  File "C:\Users\YT197\AppData\Local\Programs\Python\Python311\Lib\site-packages\aiosqlite\core.py", line 106, in run
    result = function()
             ^^^^^^^^^^
sqlite3.OperationalError: near ")": syntax error
#

Was ist falsch ?

urban glen
#

Mach das letzte Komma weg

fierce dove
#

Mach mal bei creator_channel_name TEXT, das Komma weg

urban glen
#
    async def create_table(self):
        async with aiosqlite.connect("database/tempvoice.db") as db:
            async with db.cursor() as cursor:
                await cursor.execute(
                    """CREATE TABLE IF NOT EXISTS tempvoice (
                        category_id INTEGER,
                        category_name TEXT,
                        interface_id INTEGER,
                        interface_name TEXT,
                        creator_channel_id INTEGER,
                        creator_channel_name TEXT
                    )"""
                )
                await db.commit()
fierce dove
#

😀

#

In welcher Kategorie ist tempchannel Administrator, fun, General

fierce dove
#

Administrator Kategorie

limber crow
fierce dove
#
Traceback (most recent call last):
  File "/data/data/com.termux/files/usr/lib/python3.11/site-packages/discord/commands/core.py", line 131, in wrapped
    ret = await coro(arg)
          ^^^^^^^^^^^^^^^
  File "/data/data/com.termux/files/usr/lib/python3.11/site-packages/discord/commands/core.py", line 1358, in _invoke
    option = ctx.interaction.data["options"][0]
             ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^
KeyError: 'options'
fierce dove
#

Nein

limber crow
fierce dove
vivid sky
#

ohne zu fragen nehme ich mal an

limber crow
limber crow
fierce dove
#

Credits

#

Möchtet du Credits

#

Haben

limber crow
urban glen
# fierce dove

Bei dir sieht das alles irgendwie komisch eingerückt aus

fierce dove
fierce dove
#

@limber crow es geht kommt noch was in den Code rein

fierce dove
#

Der Interface Kanal ist bischen zu leer

limber crow
fierce dove
#

Das Design Sieht cool aus

limber crow
novel ore
#

Kann ich einen Button mithilfe der custom_id disabled = False?

modest onyx
#

Hello, wahrscheinlich wurde die Frage schon beantwortet, nur finde ich nichts dazu 😄 - Wie viele Elemente, oder Auswahlmöglichkeiten, kann ich einem Dropdown Menu angeben? Wenn ich die Dokumentation richtig lese, sind das maximal 25? Danke 🙂

modest onyx
#

Super, Danke 🙂

urban glen
vernal rampart
#

@wind finch

#

es wird nicht geschickt

urban glen
vernal rampart
wind finch
urban glen
vernal rampart
fierce dove
#
[ERROR] Error while executing /radio leave
Traceback (most recent call last):
  File "/data/data/com.termux/files/usr/lib/python3.11/site-packages/discord/commands/core.py", line 131, in wrapped
    ret = await coro(arg)
          ^^^^^^^^^^^^^^^
  File "/data/data/com.termux/files/usr/lib/python3.11/site-packages/discord/commands/core.py", line 1000, in _invoke
    await self.callback(self.cog, ctx, **kwargs)
  File "/storage/emulated/0/Timo/Dev/Discord/Bot/Falci/cogs/Music/music.py", line 122, in _leave
    self.v_clients.pop(ctx.guild.id)
KeyError: 1147975550024032327
old ore
#

weiß jmd wie ich die balken wegbekomme?

urban glen
#

Balken?

#

Die weißen?

fierce dove
#

Probiere Mal das

<body leftmargin="0" topmargin="0" marginwidth="0" marginheight="0" margin="0"> 
border="0" cellspacing="0" cellpadding="0"
#

Keine Ahnung ob es geht

tawdry leaf
blissful vale
blissful vale
old ore
#

OK werde ich nacher mal ausprobieren und dann bescheid geben

blissful vale
#

👍

tawdry leaf
#

File "D:\test\pycord\cogs\economy.py", line 125, in leaderboard
for index,user_id, bank in enumerate(user_data):
ValueError: not enough values to unpack (expected 3, got 2)

Ich habe in der db nur 2 user liegt es daran 😦

und was kann ich dagegen machen

fierce dove
#

Code

tawdry leaf
fierce dove
#

Und

tawdry leaf
fierce dove
#
for index, user_id in enumerate(user_data):
    # Füge hier deinen Code hinzu, der mit index und user_id arbeitet
fierce dove
#

😔

#

Code

tawdry leaf
fierce dove
novel ore
#

#💻・cookie-hosting

#

hast du dir das schonmal angeschaut?

fierce dove
#

@tawdry leaf was ist

novel ore
#

ok hast du schon einen Server dir erstellt?

#

ok willst du kurz Talk?

#

#1150443774758092841

tawdry leaf
fierce dove
tawdry leaf
urban glen
#

kann mir jemand helfen

        view = Buttons(answer_1=self.children[1].value)


        await interaction.response.send_message(embed=embed, view=view)


class Buttons(discord.ui.View):
    def __init__(self, answer_1, *args, **kwargs):
        super().__init__(*args, **kwargs)
        self.answer_1 = answer_1


    @discord.ui.button(
        label=f"{self.answer_1}"
    )

ich versuche vom modal die self.children[1].value auf ein button label zu beckommen aber es geht nicht weil self. rot ist

tawdry leaf
urban glen
tawdry leaf
#

Dann hast es falsch eingerückt 🤨

urban glen
#

nein

tawdry leaf
#

Immer noch drüber

#
class Buttons(discord.ui.View):
    def __init__(self, answer_1, *args, **kwargs):

self.answer_1 = answer_1
super().__init__(self, *args, **kwargs)
        ```
urban glen
#

achso

#
class Buttons(discord.ui.View):
    def __init__(self, answer_1, *args, **kwargs):
        self.answer_1 = answer_1
        super().__init__(self, *args, **kwargs)


    @discord.ui.button(
        label=f"{self.answer_1}"
    )```
#

aber es geht nicht

#

self ist immernoch rot

fierce dove
#

Kommt aber kein error

novel ore
#

Weil du immer auf einen Button antworten musst

#

Was du wahrscheinlich nichts machst

fierce dove
fierce dove
fierce dove
urban glen
#

Ich habe nur from colorama import Fore und kriege den error BRuh

Ja colorama ist heruntergeladen

solid ingot
#

ja weil es nicht installiert ist

urban glen
urban glen
solid ingot
#

typisch vsc user hat falsche python version ausgewählt

urban glen
#
  1. Das ist mein Root server
  2. Ich habe es nicht in meine requirements getan (wird bei docker installiert)
solid ingot
#

wieso nicht in requirements

urban glen
#

Bin ein noob deswegen weißt du ? uwu

#

Das ist allen bewusst (^v^), aber wieso nicht in requirements?

fierce dove
#

Keine Ahnung was der Fehler ist

blissful vale
#

@fierce dove mach timeout=None

fierce dove
#

Ok

blissful vale
#

Dann sollte es nicht mehr Timeouten.

fierce dove
#

Habs

blissful vale
#

Top.

#

Aber übergeb bitte jedes mal, wenn du view=view machst gleich den Parameter timeout=None mit

fierce dove
#

Ok

blissful vale
#

Sprich jedes mal statt py view=view

view=view(timeout=None)
fierce dove
#

Ok

ruby sparrow
#
import discord
from discord.ext import commands

class Welcome(commands.Cog):
    def __init__(self, bot):
        self.bot = bot

    @commands.Cog.listener()
    async def on_member_join(self, member):
        embed = discord.Embed(
            title="Willkommen",
            description=f"Willkommen {member.mention}, auf German | ZeroLife\n",
        )

        embed.set_image(
            url="https://media.discordapp.net/attachments/1138987323653099573/1143229980231348324/BANNER-ESX.gif"
        )
        embed.add_field(name="hier findest du unser",
                        value="")
        embed.add_field(name="hier findest du das IC",
                        value="")

        channel = self.bot.get_channel(11138987322013134912)
        if channel:
            await channel.send(embed=embed)
            print(f"{member} joined the Server")

def setup(bot):
    bot.add_cog(Welcome(bot))``` weiss einer warum send er nix rein
blissful vale
#

Warum ```py
if channel:

?
#

Die abfrage brauchst du nicht.

blissful vale
blissful vale
#

dann lösch das ```py
if channel:

novel ore
novel ore
#

ich denke aber das du eine flasche channel id eingegeben hast

ruby sparrow
#

hab schon nach geguckt @novel ore

#

das ist nicht flasche

novel ore
#

mach mal bei dem if channel: ein else hin und print 1

#

dann siehst du ob die if abfrage True wird

ruby sparrow
#

Ich habe gerade schon versucht den Channels zu Print aber er wird auch nicht angezeigt

novel ore
#

was wird denn geprintet

blissful vale
ruby sparrow
#

Nein

blissful vale
#

Doch ich denke schon. Im code ist nichts zu finden. 🤔

#

ah du arbeitest mit cogs

ruby sparrow
ruby sparrow
blissful vale
#

Auch im developer Portal aktiviert?

ruby sparrow
#

ja

novel ore
#

oder es wird nicht aufgerufen / der code wird nicht geladen

blissful vale
#

Wollte ich auch gerade sagen.

ruby sparrow
# novel ore aber wenn du print machst muss was kommen?
import discord
from discord.ext import commands

class Welcome(commands.Cog):
    def __init__(self, bot):
        self.bot = bot

    @commands.Cog.listener()
    async def on_member_join(self, member):
        embed = discord.Embed(
            title="Willkommen",
            description=f"Willkommen {member.mention}, auf German | ZeroLife\n",
        )

        embed.set_image(
            url="https://media.discordapp.net/attachments/1138987323653099573/1143229980231348324/BANNER-ESX.gif"
        )
        embed.add_field(name="hier findest du unser",
                        value="")
        embed.add_field(name="hier findest du das IC",
                        value="")

        channel = self.bot.get_channel(1138987322013134912) 
        if channel:
            await channel.send(embed=embed)
            print(f"{member} ist dem Server beigetreten")
        else:
            print("Der Kanal wurde nicht gefunden.")  

def setup(bot):
    bot.add_cog(Welcome(bot))```
novel ore
ruby sparrow
novel ore
#

ok

ruby sparrow
#
import datetime
import json
import discord
import asyncio
import ezcord
from dotenv import load_dotenv
import os
from ezcord import log
import logging
import asyncio
from colorama import Fore
from discord.ext import commands
from discord.ext import tasks
from itertools import cycle
intents = discord.Intents.all()
intents.voice_states = True

colors = {
    logging.DEBUG: "blue",
    logging.INFO: Fore.MAGENTA,
}





intents = discord.Intents.default()
activity = discord.Activity(type=discord.ActivityType.watching, name="ZeroLife RP")
status = discord.Status.idle

bot = ezcord.Bot(
     intents=intents,
     activity=activity,
     status=status)


@bot.event
async def on_ready():
    channel_id = 1135585816215830568  # dein id
    channel = bot.get_channel(channel_id)





def get_config(name):
    with open("config.json", "r") as f:
        json_file = json.load(f)
        return json_file[name]





@bot.slash_command(description="Zeigt dir alle Commands an")
async def help(ctx):
    emb = discord.Embed(
        title="Help",
        description="**Commands**",
        color=discord.Color.blue()
    )
    for cog in bot.cogs:
        emb.add_field(name=cog, value="• " + "\n• ".join([command.name for command in bot.get_cog(cog).get_commands()]),
                      inline=False)
    await ctx.respond(embed=emb)


@bot.slash_command()
@commands.has_permissions(manage_roles=True)
async def addrole(ctx, member: discord.Member, role: discord.Role):
    await member.add_roles(role)
    await ctx.respond(f"Sie haben dem Benutzer {member.mention} erfolgreich die Rolle {role.mention} hinzugefügt.")


log.debug("This is a debug message")
log.info("This is an info message")

ezcord.custom_log("CUSTOM", "This is a message with a custom log level")

@bot.event
async def on_raw_reaction_add(payload):
    if payload.message_id == 1149117239405056102:  # Ersetze MESSAGE_ID_HERE mit der ID der Nachricht
        if str(payload.emoji) == "✅":  # Ersetze "✅" mit dem Emoji, das du verwendest
            guild = bot.get_guild(payload.guild_id)
            role = guild.get_role(1138987321337847878)  # Ersetze ROLE_ID_HERE mit der ID der Rolle
            member = guild.get_member(payload.user_id)
            await member.add_roles(role)
            print(f"Gibt die Rolle {role.name} an {member.display_name}")

if __name__ == "__main__":
    bot.load_cogs("cogs", log=ezcord.CogLog.default, log_color="green")

    load_dotenv()
    bot.run(get_config("token"))``` @novel ore
novel ore
#

lädst du auch immer einen user ein der joint damit der bot das event auch auslöst

novel ore
#

kannst du mal talk

blissful vale
#
intents=discord.Intents.default()
novel ore
blissful vale
#

Also geht es jetzt? @ruby sparrow

ruby sparrow
ruby sparrow
#

@novel ore weiss du wie mach ein Feedback dropdown und so?

novel ore
#

Wie meinst du

ruby sparrow
novel ore
#

Gerade schwer

ruby sparrow
vivid sky
#

also master branch

solid ingot
#

das kommt auf deinen hoster an

vivid sky
#

endelon?

solid ingot
#

wenn du es über eine requirements.txt datei installieren musst kannst du das reintun

py-cord @ git+https://github.com/Pycord-Development/pycord
burnt prairieBOT
#
Ghost Ping

@fierce dove hat @vivid sky gepingt.

fierce dove
#

Ausversehen

raven lotus
#

bei mir will Pycharm nicht py-cord installieren obwohl ich pip install py-cord gemacht habe

restive herald
#

Was für ein Error kommt?

ruby sparrow
raven lotus
#

pip : Die Benennung "pip" wurde nicht als Name eines Cmdlet, einer Funktion, einer Skriptdatei oder eines ausführbaren Programms erkannt. Überprüfen Sie die Schreibweise des Namens,
oder ob der Pfad korrekt ist (sofern enthalten), und wiederholen Sie den Vorgang.
In Zeile:1 Zeichen:1

  • pip install py-cord
  •   + CategoryInfo          : ObjectNotFound: (pip:String) [], CommandNotFoundException
      + FullyQualifiedErrorId : CommandNotFoundException
#

das ist der error

#

das ist irgendwie nagelneu

raven lotus
#

eig kann ich nicht

#

was ist denn das Problem da

ruby sparrow
#

Schicken Sie mir Ihr gesamtes Bild von Ihrem Pycharm

restive herald
#

Bzw falsch installiert

raven lotus
ruby sparrow
raven lotus
#

wait

#

geht doch wieder

restive herald
raven lotus
#

komisch, der Bot ist on, aber er kann keine Commands

restive herald
#

Hast du die Commands im Cog? Wenn ja, schau ob der Cog geladen wird. Wenn nein, warte einfach nen Moment maybe kommen die dann

raven lotus
#

so, es musste nur die neuste Version geupdatet werden

raven lotus
#

kann mir jemand im code helfen?
Ich will das die Reaction beim User hinzugefügt wird und nicht beim Bot

#
@bot.event
async def on_message(message):
    if message.author == bot.user:
        return
    
    if bot.user.mentioned_in(message) and message.author != bot.user:
        if ping_reaction:
            await message.add_reaction(ping_reaction)
    
    await bot.process_commands(message)
#

kann mir jemand helfen?

burnt prairieBOT
#
Level Up!

Herzlichen Glückwunsch @raven lotus, du bist jetzt Level 4 🎉

Du hast insgesamt 60 Nachrichten geschrieben.

raven lotus
#

hallo? ist jemand da?

raven lotus
#

ist jemand da?

#

ich will nur wissen, wie man einstellen kann im code, dass der Bot dem User die Reaktion hinzufügt (wenn er gepingt wird) und nicht wenn man den Bot pingt

#

ja, wenn man die Reaktion eingestellt hat

#

also ich mache jetzt z.B. /pingreaction 💎 mache soll es halt beim User hinzugefügt werden

#

also bei dem, der Command benutzt hat

#

also an sich geht das mit dem System, aber ich will dass der Bot das beim User dann macht und nicht bei dem Ping vom Bot

#

einfach nur user?

#

ich weiß nämlich nicht wie der heißt, also der User selbst im Code

wind finch
#

Die willst also einen Code haben wo jeder User seine eigene Ping Reaktion festlegen kann oder wie?

raven lotus
#

ja

#

wie kann man das machen Timo?

#

also mit dem Speichern

#

wait ich habe eine Blacklist mal gecodet

wind finch
raven lotus
#
@bot.command()
async def blacklist(ctx):
    if str(ctx.author.id) in allowed_users4:
        if len(blacklisted_users) > 0:
            blacklist = "\n".join(blacklisted_users)
            await ctx.send(f"Blacklist:\n{blacklist}")
        else:
            await ctx.send("Die Blacklist ist leer.")
    else:
        await ctx.send("Du hast keine Berechtigung, diesen Befehl zu verwenden.")
``` sowas in der art @solid ingot ?
raven lotus
#

ohne allowed_users4

#

einfach nur generell

#

muss ich dann user = "\n".join(users) machen?

#

oder wie genau?

#

wie mache ich nochmal eine Datenbank?

raven lotus
#

ich check es gerade nicht ganz mit der Datenbank

vivid sky
urban glen
#

Moin,
ich hatte mal eine frageeeeeeeeeeee
und zwar;
wie kann man eine 'custom' color bei embeds benutzen?
beispiel:

farbe = '0xffffff'

embed = discord.Embed(
  description='test',
  color=farbe
  )
await interaction.response.send_message(embed=embed)
solid ingot
#

du musst die anführungszeichen weglassen

urban glen
#

starkkkk

#

danke

#

😂

#

ach und;
bei ephemeral messages kriege ich bei meinem Message Logger nen Error
und zwar:

[ERROR] Error in event on_message_delete 
Traceback (most recent call last):
  File "C:\Users\DBXFl\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\client.py", line 378, in _run_event
    await coro(*args, **kwargs)
  File "c:\Users\DBXFl\Desktop\George Bot\Events\MessageLogger.py", line 25, in on_message_delete
    log_channel = await self._get_message_log_channel(message.guild.id)
AttributeError: 'NoneType' object has no attribute 'id'

weiß jmd wie man das behebt?

#

da es ja eine Guild ist und keine dm 💀

solid ingot
#
if not message.guild:
    return
urban glen
#

jo funktioniert thx :D

solid ingot
#

gerne 😄

fierce dove
#

Was ist der unterschied zwischen

Inline=True
Und
inline=False

urban glen
#

try it and see

limber crow
fierce dove
#

OK danke

last depot
#
import discord
from discord.ext import commands
from discord.commands import slash_command, Option



class Ticketsystem(commands.Cog):
    def __init__(self, bot):
        self.bot = bot

    @slash_command(description="ticket menü")
    @discord.default_permissions(administrator=True)
    @discord.guild_only()
    async def ticket_menu(self, ctx, channel: Option(discord.TextChannel, description="In which channel should the embed be send?", required=False)):
        if channel is None:
            channel = ctx.channel

            embed = discord.Embed(
                title="**Ticket System**",
                description="Wähle deine Ticket Kategorie und trete mit unserem Team in Kontakt!",
                color=0x1067a3
            )
           
            embed.set_footer(name=self.bot.user, icon_url=self.bot.user.display_avatar.url)
            embed.set_author(name="Tickets", icon_url=self.bot.user.display_avatar.url)

            erfolg = discord.Embed(
                title="Ticket System erfolgreich erstellt!"
            )

            await ctx.channel.send(embed=embed)
            await ctx.respond(embed=erfolg, ephemeral=True)

       


def setup(bot):
    bot.add_cog(Ticketsystem(bot))
#

weiß jemand warum das nicht geht

#

kommt kein error

vivid sky
last depot
paper crane
#

Also ich möchte bei Server Count anzeigen lassen auf wie vielen Servern der Bot ist aber irgendwie geht es nicht.

Hier der Code:

embed=discord.Embed(
    title="Infos About the Bot",
    color=discord.Color.blue())
embed.add_field(name="👑 Developer", value="alpha.wolf1, _kein_mensch_", inline=True)
embed.add_field(name="🐍 Bot Language", value="Python and Ezcord", inline=True)
embed.add_field(name="🌏 Server Count", value={len(bot.guilds)}, inline=True)
embed.add_field(name="💻 Bot Hosting", value="[Keks Hosting]()", inline=True)
embed.add_field(name="🤖 My Invite Link", value="[Klick Here!]()", inline=True)
embed.add_field(name="🆘 Support Server", value="[Support]()", inline=True)

bot.add_help_command(style=ezcord.HelpStyle.codeblocks, embed=embed, ephemeral=False, guild_only=True, author_only=True, show_categories=False)```

### Zusatz Info der Code ist in der Main.py
fierce dove
#

Hier der Code:

embed=discord.Embed(
    title="Infos About the Bot",
    color=discord.Color.blue())
embed.add_field(name="👑 Developer", value="alpha.wolf1, _kein_mensch_", inline=True)
embed.add_field(name="🐍 Bot Language", value="Python and Ezcord", inline=True)
embed.add_field(name="🌏 Server Count", value=f"{len(bot.guilds)}", inline=True)
embed.add_field(name="💻 Bot Hosting", value="[Keks Hosting]()", inline=True)
embed.add_field(name="🤖 My Invite Link", value="[Klick Here!]()", inline=True)
embed.add_field(name="🆘 Support Server", value="[Support]()", inline=True)

bot.add_help_command(style=ezcord.HelpStyle.codeblocks, embed=embed, ephemeral=False, guild_only=True, author_only=True, show_categories=False)```

### Zusatz Info der Code ist in der Main.py
#

@paper crane

paper crane
fierce dove
#

Hier code

#

Du hast die strings vergessen

paper crane
fierce dove
#

f"{len(bot.guilds)}"das muss gehen

paper crane
#

Hatte schon alles mögliche probiert aber nix geht

paper crane
paper crane
#

Habs genau so gemacht

fierce dove
#

@solid ingot

solid ingot
#

@fierce dove

fierce dove
#

Kannst du mal helfen

paper crane
#

Ich bin echt am verzweifeln

wind finch
paper crane
fierce dove
#

Ich benutze ezcord

paper crane
fierce dove
#

Joa

urban glen
#

Ich nutze gar nix davon (°v°)

paper crane
paper crane
solid ingot
#

was geht denn nicht?

paper crane
novel ore
#

Kann das was mit denn intents zu tun haben?

paper crane
novel ore
#

Muss eh off sorry war nur eine kurze idee Timo wird dir bestimmt helfen

solid ingot
#

schick doch mal deine main datei

paper crane
paper crane
solid ingot
#

die guilds werdene erst geladen nachdem das on_ready event ausgeführt wurde. du müsstest den code also ins on_ready event verschieben

solid ingot
#

hm, jetzt ist der help command nicht mehr über dem on_ready event, sondern darunter. er müsste aber ins on_ready event

paper crane
solid ingot
#

aktuell stehen nur die beiden prints im on_ready event. wenn das embed auch im on_ready event sein soll, muss es genauso eingerückt werden wie die prints

ruby sparrow
#

wie kann man ab fragen ob es war nur ein bug fix ?

ruby sparrow
#

Ich habe eine Frage: Wie kann ich das mit einer If-Abfrage machen, wo wurde das Update durchgeführt?

#

@solid ingot ?

solid ingot
#

welches update

ruby sparrow
solid ingot
#

später

ruby sparrow
#
import discord
from discord.ext import commands, tasks

class Update(commands.Cog):
    def __init__(self, bot):
        self.bot = bot
        self.current_bot_version = "1.0.0"
        self.is_bug_fix = False  

    @tasks.loop(minutes=30) 
    async def check_for_updates(self):
        latest_version = "1.1.0"
        is_bug_fix = False  

        if latest_version != self.current_bot_version:
            announcement_channel = self.bot.get_channel(1150937254072684615)
            if announcement_channel:
                update_type = "Bug-Fix" if is_bug_fix else "Neues Feature"  
                embed = discord.Embed(title=f"**Neues Bot-Update: v{latest_version}**", color=0x00ff00)
                embed.add_field(name="Update-Typ", value=update_type, inline=False)
                embed.add_field(name="Was ist neu?", value="Es gibt ein neues Update mit großartigen Funktionen!", inline=False)
                await announcement_channel.send(embed=embed)
                self.current_bot_version = latest_version
                self.is_bug_fix = is_bug_fix

    @check_for_updates.before_loop
    async def before_check_for_updates(self):
        self.check_for_updates.cancel()
        await self.bot.wait_until_ready()

def setup(bot):
    bot.add_cog(Update(bot))
``` ich möche das abfragen wo Update durchgeführt @solid ingot
strange juniper
#

kennt jemand ein gutes tutorial zu packaging in python?

solid ingot
#

pass auf jeden fall auf, viele tutorials sind veraltet, da es in letzter zeit im packaging bereich einige änderungen gab

onyx wave
#

Hi, brauchte eine kleine Hilfe! Wenn ich in eine Ankündigungs channel für dem Bot festlegen will müsste dann hier : @slash_command(description="Setzt den Channel für Clanstadt Nachrichten")
@commands.has_permissions(administrator=True)
async def clanstadt_on_ready(self, ctx, channel: discord.TextChannel, intervals: str): Nicht discord.TextChannel sein sondern? Danke schon mal

limber crow
onyx wave
#

discord.Channel das geht leider nicht nur discord.ChannelType. und hier dann noch

solid ingot
onyx wave
#

Danke Timo

onyx wave
#

Timo Perfekt. Danke nochmal. Ich hab mich schon fast Tod gesucht unter Py-Cord Doku.

solid ingot
#

gerne ducklove

onyx wave
#

Ja genau

solid ingot
onyx wave
#

Irgendwann wird es mit dem andere Bot klappen von coc die Daten in dem andere Bot. Ich mach ja VBA Excel Tabellen nebenbei

digital crypt
#
Traceback (most recent call last):
  File "/home/container/.local/lib/python3.11/site-packages/discord/cog.py", line 774, in _load_from_module_spec
    spec.loader.exec_module(lib)  # type: ignore
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "<frozen importlib._bootstrap_external>", line 936, in exec_module
  File "<frozen importlib._bootstrap_external>", line 1074, in get_code
  File "<frozen importlib._bootstrap_external>", line 1004, in source_to_code
  File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
  File "/home/container/cogs/RpRules.py", line 121
    bot.add_cog(RpRules(bot)
               ^
SyntaxError: '(' was never closed
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
  File "/home/container/main.py", line 49, in <module>
    bot.load_extension(f"cogs.{filename[:-3]}")
  File "/home/container/.local/lib/python3.11/site-packages/discord/cog.py", line 910, in load_extension
    self._load_from_module_spec(spec, name)
  File "/home/container/.local/lib/python3.11/site-packages/discord/cog.py", line 777, in _load_from_module_spec
    raise errors.ExtensionFailed(key, e) from e
discord.errors.ExtensionFailed: Extension 'cogs.RpRules' raised an error: SyntaxError: '(' was never closed (RpRules.py, line 121)
container@pterodactyl~ Server marked as offline...
[Pterodactyl Daemon]: ---------- Detected server process in a crashed state! ----------
[Pterodactyl Daemon]: Exit code: 1
[Pterodactyl Daemon]: Out of memory: false
[Pterodactyl Daemon]: Aborting automatic restart, last crash occurred less than 60 seconds ago.```
urban glen
#

Da steht alles

digital crypt
#

ja habe das aber jetzt das

#
  File "/home/container/cogs/RpRules.py", line 116, in callback
    await channel.send(embed=embed)
          ^^^^^^^^^^^^
AttributeError: 'NoneType' object has no attribute 'send'
Ignoring exception in modal <cogs.RpRules.Modals object at 0x7f4add3c1890>:
Traceback (most recent call last):
  File "/home/container/.local/lib/python3.11/site-packages/discord/ui/modal.py", line 341, in dispatch
    await value.callback(interaction)
  File "/home/container/cogs/RpRules.py", line 116, in callback
    await channel.send(embed=embed)
          ^^^^^^^^^^^^
AttributeError: 'NoneType' object has no attribute 'send'