#Allgemeine Hilfe

1 messages · Page 56 of 1

ruby sparrow
#

hab schon gefix

urban glen
#

was war der fehler?

ruby sparrow
#

hier war er if name == "main":

fierce dove
#

Ok

fierce dove
#

Wie geht so was

native plume
upper adder
#

Ja, Timo hat ein Video zu Checks gemacht, aber nicht dazu.

Meine Frage ist, wenn ich vor nem Command noch ein @commands.dm_only() einfüge, wie fange ich den Error dann ab?
In ner Function? Ein Listener? Hat jemand ein Beispielcodeschnipsel vielleicht?

limpid wolf
urban glen
#

wie kann ich ein timestmap machen
wo der anzeigt wann der user sein account erstellt hat

upper adder
#

user.created_at() müsste das sein

urban glen
upper adder
#

da bekommst du ein datetime.datetime Object.
Mit user.created_at().timestamp() bekommst du ein Timestamp, kannst den aber nicht als Footer-Timestamp nutzen. Wenn du den in ein Embed packen willst, musst du z.B.

f'<t:{int(user.created_at().timestamp())}:R>'
``` machen ;)
upper adder
urban glen
#

des embeds

upper adder
upper adder
upper adder
limpid wolf
#

Achso

urban glen
#
                                   f"Account erstellt: {ezcord.dc_timestamp(int(ezcord.convert_to_seconds(str(member.created_at()))), style='R')} \n\n"```

aber das ist ja in der description
aber wenn ich das mache wird der timestamp wo steht wann der user auf den server gekommen ist
limpid wolf
#

Mach einfach statt CommandOnCooldown das andere von eben

#

PrivateMessageOnly

upper adder
#

Ah okay 👍
Good to know

upper adder
#

Weil member.created_at() müsste das gleiche wie user.created_at() sein.

limpid wolf
upper adder
upper adder
limpid wolf
upper adder
restive herald
#

weiß jmd wie man ne gute formelberechnung bei timos lvling macht?

urban glen
#

mathe

restive herald
#

meine wie mans integriert bin gerade zu dumm für xd

solid ingot
restive herald
#

ähh meine formel fürs level berechnen

#

und halt ob ich das bei der get_level methode rienpacken muss oder beim onmessage

jaunty jasper
#

Code:

class hommodal2(discord.ui.Modal):

    def __init__(self, *args, **kwargs):
        super().__init__(*args, **kwargs)
        self.add_item(discord.ui.InputText(label="Aufgaben", placeholder="Deine Aufgaben als Head of Moderation", style=discord.InputTextStyle.long))
        self.add_item(discord.ui.InputText(label="Stärken", style=discord.InputTextStyle.long))
        self.add_item(discord.ui.InputText(label="Schwächen", style=discord.InputTextStyle.long))
        self.add_item(discord.ui.InputText(label="Warum du?", placeholder="Wie lange bist du schon hier", style=discord.InputTextStyle.short))

    async def callback(self, interaction: discord.Interaction):
        values = ""
        for i in self.children:
            values = values + i

        await interaction.response.send_message(f"{values}", ephemeral=True, delete_after=10)


class hommodal1(discord.ui.Modal):

    def __init__(self, *args, **kwargs):
        super().__init__(*args, **kwargs)
        self.add_item(discord.ui.InputText(label="Name", style=discord.InputTextStyle.short))
        self.add_item(discord.ui.InputText(label="Alter", style=discord.InputTextStyle.short))
        self.add_item(discord.ui.InputText(label="Erfahrung", placeholder="Erfahrung auf diesem Server", style=discord.InputTextStyle.long))
        self.add_item(discord.ui.InputText(label="Zeitraum", placeholder="Wie lange bist du schon hier", style=discord.InputTextStyle.short))
        self.add_item(discord.ui.InputText(label="Aktivität:", placeholder="Deine Aktivität von 1-10", style=discord.InputTextStyle.short))

    async def callback(self, interaction: discord.Interaction):
        modal = hommodal2(title="Head of Moderation")
        await interaction.response.send_modal(modal)
#

Error:

Ignoring exception in modal <__main__.hommodal1 object at 0x000001DE218E3210>:
Traceback (most recent call last):
  File "C:\Users\fabian2\venv\Lib\site-packages\discord\ui\modal.py", line 341, in dispatch
    await value.callback(interaction)
  File "C:\Users\fabian2\PycharmProjects\lateammanager\main.py", line 40, in callback
    await interaction.response.send_modal(modal)
  File "C:\Users\fabian2\venv\Lib\site-packages\discord\interactions.py", line 1056, in send_modal
    await self._locked_response(
  File "C:\Users\fabian2\venv\Lib\site-packages\discord\interactions.py", line 1090, in _locked_response
    await coro
  File "C:\Users\fabian2\venv\Lib\site-packages\discord\webhook\async_.py", line 221, in request
    raise HTTPException(response, data)
discord.errors.HTTPException: 400 Bad Request (error code: 50035): Invalid Form Body
In type: Value must be one of {4, 5, 6, 7, 10}.
#

Wie kann ich auf ein Modal ein weiteres senden ?

solid ingot
sullen fossil
#
class RPSButtons(discord.ui.View):
    def __init__(self, game_mode, second_user, first_user):
        self.game_mode = game_mode
        self.second_user = second_user
        self.first_user = first_user
        super().__init__(timeout=None)

        check_useres = {"first_user":self.first_user, "second_user":self.second_user}

so oder wie?

solid ingot
#

zum Beispiel, probier es Mal aus

odd kiteBOT
#

Hier findest du das Main-Datei Template 😩

raven lotus
#

bruh

urban glen
#

Man bekommt die Bug Hunter Rolle indem du einen Bug reportest @raven lotus

raven lotus
#

mmmmh

#

hab 3 mal hintereinander das gemacht XD

#

ist das jetzt ein Bug? heheboy

urban glen
#

Mach Ticket auf und Frag ob das nh Bug ist

#

Aber wie ich Timo kenne, ist das nur ein "Feature" xD

raven lotus
#

XD

urban glen
raven lotus
#

XD

#

aber ich habe das schonmal gemeldet

raven lotus
#

oder so

#

was ist eig der Unterschied zwischen discord.py und Py-cord?

urban glen
raven lotus
#

achso

#

also Py-cord besser ????? XD

urban glen
raven lotus
#

achso

#

ok

tawdry leaf
tawdry leaf
tawdry leaf
#

Cmd cooldown ist da aber eig unnötig

mystic flower
#

Hi, kennt jemand eine gute Disxord Trello Applikation die die Karten über Webhooks sendet ?

solid ingot
mystic flower
#

Das geht leider über einen Bit das habe ich schon ausprobiert

urban glen
#

wie kann ich 2 view classen in einer packen ?

solid ingot
#

eine Nachricht kann nur einen View haben

urban glen
solid ingot
#

dann brauchst du 2 dropdowns in einer View klasse

fierce dove
#

@viscid lake du kannst das auch mit /codingkeks machen

viscid lake
fierce dove
#

Ok

kind depot
#

Halloo... habe eine frage... Ich habe einen Timeout Command Gecodet aber der sagt dann immer das er Keine rechte hat obwohl er admin perms hat.. Könnte vl jmd mal drüber schauen ob das so passt?

@admin.command(description="⏱️ × Timeoute einen User")
    @discord.default_permissions(administrator=True, moderate_members=True)
    async def timeout(
        self, 
        ctx, 
        member: Option(discord.Member, description="👥 × Wähle einen User!"),
        time: Option(int, description="⏱️ × Länge des Timeouts aus! (In Minuten)"),
        reason: Option(str, default=None, description="📝 × Grund für den Timeout!")
    ): 
        try:      
            if reason is None:
                reason = "Kein Grund angegeben!"

            duration = timedelta(minutes=time)
            
            await member.timeout_for(reason=reason, duration=duration)

            embed = discord.Embed(
            title="⏱️ × ERFOLGREICH",
            description=f"Der user {member.mention} wurde erfolgreich getimeoutet!"
            )
            await ctx.respond(embed=embed) 
        except discord.Forbidden:
            embed = discord.Embed(
                title="📛 × Keine Rechte",
                description="Ich habe keine Berechtigung, um diesen Member zu timeouten!"
            )
            await ctx.respond(embed=embed, ephemeral=True)
fierce dove
#
@admin.command(description=":stopwatch: × Timeoute einen User")
    @discord.has_permissions(administrator=True, moderate_members=True)
    async def timeout(
        self, 
        ctx, 
        member: Option(discord.Member, description=":busts_in_silhouette: × Wähle einen User!"),
        time: Option(int, description=":stopwatch: × Länge des Timeouts aus! (In Minuten)"),
        reason: Option(str, default=None, description=":pencil: × Grund für den Timeout!")
    ): 
        try:      
            if reason is None:
                reason = "Kein Grund angegeben!"

            duration = timedelta(minutes=time)
            
            await member.timeout_for(reason=reason, duration=duration)

            embed = discord.Embed(
            title=":stopwatch: × ERFOLGREICH",
            description=f"Der user {member.mention} wurde erfolgreich getimeoutet!"
            )
            await ctx.respond(embed=embed) 
        except discord.Forbidden:
            embed = discord.Embed(
                title=":name_badge: × Keine Rechte",
                description="Ich habe keine Berechtigung, um diesen Member zu timeouten!"
            )
            await ctx.respond(embed=embed, ephemeral=True)
#

@kind depot

kind depot
#

oke danke

fierce dove
#

Bitte

urban glen
#

wie kann ich machen das es nur voice channel angezeigt werden


    @discord.ui.channel_select(
        min_values=1,
        max_values=1,
        placeholder="Wähle den Voice Channel aus",
        disabled=False,
    )
    async def channel_callback(self, select, interaction):
        selected_channel = select.values[0]
        if selected_channel.type == discord.ChannelType.voice:
            server_id = interaction.guild.id
            async with aiosqlite.connect(self.DB) as db:
                await db.execute(
                    "INSERT OR REPLACE INTO servers_channels (server_id, voice_channel_id) VALUES (?, ?)",
                    (server_id, selected_channel.id)
                )
                await db.commit()
            await interaction.response.send_message("Voice Channel ausgewählt!", ephemeral=True)
        else:
            await interaction.response.send_message("Bitte wähle einen Voice-Channel aus.", ephemeral=True)```
fierce dove
#
@discord.ui.channel_select(
    min_values=1,
    max_values=1,
    placeholder="Wähle den Voice Channel aus",
    disabled=False,
    check=lambda channel: channel.type == discord.ChannelType.voice
)
async def channel_callback(self, select, interaction):
    selected_channel = select.values[0]
    server_id = interaction.guild.id
    async with aiosqlite.connect(self.DB) as db:
        await db.execute(
            "INSERT OR REPLACE INTO servers_channels (server_id, voice_channel_id) VALUES (?, ?)",
            (server_id, selected_channel.id)
        )
        await db.commit()
    await interaction.response.send_message("Voice Channel ausgewählt!", ephemeral=True)
urban glen
#

@fierce dove es bringt nix, wenn du nur fertige codes schickst, du solltest lieber erklären wie er es machen könnte

fierce dove
#

Ok

urban glen
# fierce dove ```py @discord.ui.channel_select( min_values=1, max_values=1, placeh...

ja aber

dann kommt dieser fehlercode:


Traceback (most recent call last):
  File "C:\Users\melvi\AppData\Local\Programs\Python\Python311\Lib\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 940, in exec_module
  File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
  File "C:\Users\melvi\PycharmProjects\mellensaroleplay\cogs\Datenbank -- Voice Channel Log\voice-log.py", line 64, in <module>
    class Dropdown(discord.ui.View):
  File "C:\Users\melvi\PycharmProjects\mellensaroleplay\cogs\Datenbank -- Voice Channel Log\voice-log.py", line 69, in Dropdown
    @discord.ui.channel_select(
     ^^^^^^^^^^^^^^^^^^^^^^^^^^
TypeError: channel_select() got an unexpected keyword argument 'check'

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

Traceback (most recent call last):
  File "C:\Users\melvi\PycharmProjects\mellensaroleplay\main.py", line 28, in <module>
    bot.load_cogs("cogs", subdirectories=True)
  File "C:\Users\melvi\AppData\Local\Programs\Python\Python311\Lib\site-packages\ezcord\bot.py", line 231, in load_cogs
    self.load_extension(f"{'.'.join(path.parts)}.{dirname}.{name}")
  File "C:\Users\melvi\AppData\Local\Programs\Python\Python311\Lib\site-packages\discord\cog.py", line 910, in load_extension
    self._load_from_module_spec(spec, name)
  File "C:\Users\melvi\AppData\Local\Programs\Python\Python311\Lib\site-packages\discord\cog.py", line 777, in _load_from_module_spec
    raise errors.ExtensionFailed(key, e) from e
discord.errors.ExtensionFailed: Extension 'cogs.Datenbank -- Voice Channel Log.voice-log' raised an error: TypeError: channel_select() got an unexpected keyword argument 'check'

Process finished with exit code 1
fierce dove
#

Ok

urban glen
#

So hab ich es bei meinem alten bot

#

ok wait

odd kiteBOT
urban glen
urban glen
urban glen
#

Ich sag ja is von meinem alten bot, der war in nextcord, ist in py-cord eig genauso

urban glen
#

channel_types=[discord.ChannelType.voice]

urban glen
#

Wie meinst du das?

urban glen
#

Asso, ja halt von den Doc's + die verbesserte zeile

ruby sparrow
#

weiss einer wie kommt so bild auf google

urban glen
#

das hast du schonmal gefragt

#

und die antwort ist immernoch (Selbermachen oder Pinterest)

ruby sparrow
#

sry hab nicht mehr mit kommen

ruby sparrow
urban glen
#

was du halt willst (beschrieben)

ruby sparrow
urban glen
#

dann schau genauer oder so

viscid lake
urban glen
#

was willst du von mir das ist allgemeine hilfe

viscid lake
urban glen
ruby sparrow
#

ja

viscid lake
fierce dove
#

Welche intents brauche ich um Spotify status anzuzeigen

ruby sparrow
# fierce dove

du müssen Spotify eingeschaltet und auf Discord aktiviert haben, damit Sie mit Spotify verknüpft sind

fierce dove
#

Hab ich@ruby sparrow

ruby sparrow
urban glen
fierce dove
#

Habe

intents = discord.Intents.all()

urban glen
fierce dove
#

Hab ich alle aktiviert

urban glen
#

Hast du presence intents auch aktiviert im dev portal?

fierce dove
#

Js

#

Ja

urban glen
#

Code?

fierce dove
urban glen
#

Starker Code

fierce dove
#

Das ist dein code

#

Früher ging der

urban glen
#

Meiner war in nextcord.
Bin nicht sicher ob er auch so in py-cord funktioniert

fierce dove
#

Doch geht

#

Das war früher auch in pycord

urban glen
#

Bruder hab den code von dir grad gedownloadet, was hast du mit der einrückung gemacht??

#

Machst du immer Leerzeichen statt Tabs??

fierce dove
#

😅

urban glen
#

In jeder Zeile bekomme ich die Meldung von deinem code digga

fierce dove
#

Oh

#

Es muss in pycord gehen

viscid lake
fierce dove
#

Bei mir ist es richtig eingerückt

viscid lake
urban glen
#

Der fehler bei dir liegt daran:

#

Ich fixxe das im Code grad, wait

fierce dove
#

Aso

urban glen
#

Weil CustomActivity auch als activity gilt

fierce dove
#

Ok

urban glen
#

@fierce dove warum versuchst du es nd eig selber mal zu fixxen?

fierce dove
#

Hab nur das raus genommen

Liebe ist, was man mit dem Herzen fühlt und nicht das, was man mit den Augen sieht.

#

😅

urban glen
#

Ne kannst es drinne lassen

fierce dove
#

Ok

urban glen
#

Habs gefixxt

fierce dove
#

OK

urban glen
#

Aber wieso versuchst du deine Codes nicht mal selber irgendwie zu fixxen?

fierce dove
#

Hab schon alles probiert

urban glen
#

hm?

Was heißt für dich "hab schon alles probiert"

#

Ich mein, ich hatte erstmal selber keine Idee wie ich das fixxen soll, hab kurz die Doc's gelesen und rumprobiert und es geht :D

fierce dove
#

Oh

urban glen
tawdry leaf
urban glen
# tawdry leaf aua

Wenn ich eine Line verbessert hat, ging es bei der nächsten weiter..
Also jede line bis zum ende ...

#

Und am ende allein Enter zu drücken hat nicht geholfen, musste es anders machen

fierce dove
#

thx

twilit anvil
#

Hey! Ich habe einen Slash-Command welcher mit einem Text-Input ein Webhook senden soll. Soweit klappt alles, aber dieser Error tritt auf:```py
TypeError: Webhook.from_url() missing 1 required keyword-only argument: 'session'

#

Code: ```py
import discord
import ezcord

from discord.ext import commands
from discord.commands import slash_command, Option, SlashCommandGroup

class Webhook(ezcord.Cog, emoji="🌐"):

webhook = SlashCommandGroup("webhook")

@webhook.command(description="Lol")
async def send(self, ctx, url: Option(str), message: Option(str)):
    webhook = discord.Webhook.from_url(url)
    await webhook.send(content=message)
    await ctx.send(f"Nachricht an das Webhook gesendet: {message}")

def setup(bot: discord.Bot):
bot.add_cog(Webhook(bot))

#

Ich weiß aber nun nicht, was nun bei webhook = discord.Webhook.from_url(url) nach (url) als session= hin soll.

urban glen
#

session=aiohttp.ClientSession müsste glaube reichen

#

aber bin nicht sicher

odd kiteBOT
urban glen
twilit anvil
#

Jetzt tritt dieser Error auf: ```py
[ERROR] Error while executing /webhook send
Traceback (most recent call last):
File "C:\Users\Leander\VSC\arsonist\venv\Lib\site-packages\discord\commands\core.py", line 124, in wrapped
ret = await coro(arg)
^^^^^^^^^^^^^^^
File "C:\Users\Leander\VSC\arsonist\venv\Lib\site-packages\discord\commands\core.py", line 978, in invoke
await self.callback(self.cog, ctx, **kwargs)
File "C:\Users\Leander\VSC\arsonist\cogs\webhook.py", line 16, in send
await webhook.send(content=message)
File "C:\Users\Leander\VSC\arsonist\venv\Lib\site-packages\discord\webhook\async
.py", line 1745, in send
data = await adapter.execute_webhook(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Leander\VSC\arsonist\venv\Lib\site-packages\discord\webhook\async_.py", line 157, in request
async with session.request(
^^^^^^^^^^^^^^^^
TypeError: ClientSession.request() missing 1 required positional argument: 'url'

urban glen
#

Zeig mal deinen Code, wie er jetzt iost

twilit anvil
#
import discord
import ezcord
import aiohttp


from discord.ext import commands
from discord.commands import slash_command, Option, SlashCommandGroup

class Webhook(ezcord.Cog, emoji="🌐"):

    webhook = SlashCommandGroup("webhook")

    @webhook.command(description="Lol")
    async def send(self, ctx, url: Option(str), message: Option(str)):
        webhook = discord.Webhook.from_url(url, session=aiohttp.ClientSession)
        await webhook.send(url=url, content=message)
        await ctx.send(f"Nachricht an das Webhook gesendet: {message}")


def setup(bot: discord.Bot):
    bot.add_cog(Webhook(bot))
#

Hab gerade mal url=url ausprobiert.

#

Mal sehen obs klappt.

#

nö.

#
[ERROR] Error while executing /webhook send 
Traceback (most recent call last):
  File "C:\Users\Leander\VSC\arsonist\venv\Lib\site-packages\discord\commands\core.py", line 124, in wrapped
    ret = await coro(arg)
          ^^^^^^^^^^^^^^^
  File "C:\Users\Leander\VSC\arsonist\venv\Lib\site-packages\discord\commands\core.py", line 978, in _invoke
    await self.callback(self.cog, ctx, **kwargs)
  File "C:\Users\Leander\VSC\arsonist\cogs\webhook.py", line 16, in send
    await webhook.send(url=url, content=message)
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
TypeError: Webhook.send() got an unexpected keyword argument 'url'
urban glen
# twilit anvil ```py import discord import ezcord import aiohttp from discord.ext import comm...
import discord
import ezcord
import aiohttp
from discord.ext import commands
from discord.commands import slash_command, Option, SlashCommandGroup

class Webhook(ezcord.Cog, emoji="🌐"):

    webhook = SlashCommandGroup("webhook")

    @webhook.command(description="Lol")
    async def send(self, ctx, url: Option(str), message: Option(str)):
        session = aiohttp.ClientSession()
        webhook = discord.Webhook.from_url(url, session=session)
        await webhook.send(content=message)
        await ctx.send(f"Nachricht an das Webhook gesendet: {message}")

def setup(bot: discord.Bot):
    bot.add_cog(Webhook(bot))
#

Versuchs so

#

Ah ne

#

Wait, das is outdated

twilit anvil
#

AttributeError: module 'discord' has no attribute 'AsyncWebhookAdapter'

urban glen
#

Hab nachricht editiert

marsh harbor
#

Hallöchen, ich schau gerade das zweite Tutorial, wo ich anfange zu coden und dabei brauche ich Hilfe, da es bei mir einen Fehler gibt(anscheinend).

urban glen
#

Hast es wohl nicht installiert

marsh harbor
#

ich habe am anfang geschrieben
pip install py-cord

twilit anvil
# urban glen Hab nachricht editiert

Jo, so passts. Ich wollte jetzt so eine Choice machen um nicht immer die URL angeben zu müssen, aber dieser Error tritt auf:```py
Traceback (most recent call last):
File "C:\Users\Leander\VSC\arsonist\venv\Lib\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 "C:\Users\Leander\VSC\arsonist\cogs\webhook.py", line 17
session = aiohttp.ClientSession()
^
IndentationError: expected an indented block after 'if' statement on line 14

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

Traceback (most recent call last):
File "C:\Users\Leander\VSC\arsonist\main.py", line 25, in <module>
bot.load_cogs("cogs")
File "C:\Users\Leander\VSC\arsonist\venv\Lib\site-packages\ezcord\bot.py", line 222, in load_cogs
self.load_extension(f"{'.'.join(path.parts)}.{name}")
File "C:\Users\Leander\VSC\arsonist\venv\Lib\site-packages\discord\cog.py", line 910, in load_extension
self._load_from_module_spec(spec, name)
File "C:\Users\Leander\VSC\arsonist\venv\Lib\site-packages\discord\cog.py", line 777, in _load_from_module_spec
raise errors.ExtensionFailed(key, e) from e
discord.errors.ExtensionFailed: Extension 'cogs.webhook' raised an error: IndentationError: expected an indented block after 'if' statement on line 14 (webhook.py, line 17)

solid ingot
ruby sparrow
#
[ERROR] Error in event on_member_join 
Traceback (most recent call last):
  File "C:\Users\nicor\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\client.py", line 399, in _run_event
    await coro(*args, **kwargs)
  File "C:\Users\nicor\OneDrive\Desktop\dino bot\user\willkommen.py", line 35, in on_member_join
    await channel.send(embed=embed)
  File "C:\Users\nicor\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\abc.py", line 1628, in send
    data = await state.http.send_message(
  File "C:\Users\nicor\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\http.py", line 365, in request
    raise Forbidden(response, data)
discord.errors.Forbidden: 403 Forbidden (error code: 50013): Missing Permissions```
#
@commands.Cog.listener()
    async def on_member_join(self, member):
        server_id = str(member.guild.id)
        settings = self.get_welcome_settings(server_id)
        if settings:
            channel = member.guild.get_channel(settings["channel_id"])
            if channel:
                welcome_message = settings["message"]
                embed = discord.Embed(
                    title=f"Willkommen auf {member.guild.name}",
                    description=welcome_message,
                    color=discord.Color.green()
                )
                embed.set_thumbnail(url=member.avatar.url)
                await channel.send(embed=embed)```
urban glen
#

Er hat keine Permissions um nachrichten in diesem Channel zu senden

marsh harbor
urban glen
marsh harbor
#

Ich habe eigentlich alles getan aber es funktioniert einfach nicht

solid ingot
#

schick doch Mal einen Screenshot von deiner pycharm Interpreter seite

marsh harbor
solid ingot
#

du hast 2 verschiedene pycord Versionen installiert, deinstallier Mal beide, und dann installiere nur py-cord-dev

marsh harbor
#

welche soll ich deinstallieren?

twilit anvil
marsh harbor
#

Wie deinstalliere ich diese?

twilit anvil
marsh harbor
#

danke

twilit anvil
marsh harbor
#

Er sagt, dass beide nicht installiert sind

solid ingot
#

dann mach es über das interpreter menü

#

dort kannst du die packages mit dem minus-symbol deinstallieren

marsh harbor
#

ok habs

twilit anvil
#

Was hast du bei pip install eingegeben?

marsh harbor
#

pip install py-cord-dev==2.5.0rc5

twilit anvil
solid ingot
#

hast du Python 3.12?

#

wenn ja Versuch es Mal mit 3.11

urban glen
#
import json

with open("datei.json", "r") as file:
    data = json.load(file)

print(data)
#

@fierce dove

fierce dove
#

Danke

#

Geht das auch mit ./datei.json

urban glen
#

Ja halt einfach den Pfad zur Datei angeben

fierce dove
#

Ok

bold sentinel
#

was muss ich da alles auswählen

fierce dove
bold sentinel
#

3.12

fierce dove
#

Ok

bold sentinel
fierce dove
#

Keine Ahnung

bold sentinel
#

soll ich auf 3.11.6 vllt wechseln?

#

daran kanns doch liegn

fierce dove
#

Was wolltest du installieren

bold sentinel
#

veilcor

#

veilcord*

fierce dove
#

Ok

bold sentinel
#

wenn ich 3.11.6 benutze kann ich nix installieren

fierce dove
#

Mach mal python

bold sentinel
#

dann öffnet sich microsoft

fierce dove
#

Hmm

#

Zeig Bild

bold sentinel
fierce dove
#

Es installiert

bold sentinel
#

ich habs doch schon

fierce dove
#

Nein im Terminal python eingeben

bold sentinel
#

hab ich

fierce dove
#

Hmm

#

@tawdry leaf kannst du helfen

bold sentinel
fierce dove
#

Ok

bold sentinel
#

jetzt gehts hab von normale dings deinstalliert und von store installiert

#

aber ob pip klappt

fierce dove
#

Ok

#

🤔

bold sentinel
#

pip hat geklapptwill grad die main.py ausführen nicht in den code reingucken sondern es ausführen

#

welches aber auswählen?

fierce dove
#

Python 3.11

bold sentinel
#

hab einfach per cmd gemacht

fierce dove
#

Glaube ich

bold sentinel
#

digga warum sagt es jetzt das das kein hex code ist

fierce dove
#

Im code

#

Statt das # muss immer
0x hin

bold sentinel
#

wie

fierce dove
#

Das # kommt weg

bold sentinel
#

0xbabaf8

fierce dove
bold sentinel
#

okay

fierce dove
#

Ne
#BABAF8

#

Probiere das

bold sentinel
#

ok

#

bei den anderen auch?

fierce dove
#

Alles muss groß

bold sentinel
fierce dove
#

Vielleicht gibt es den color Code nicht

bold sentinel
#

doch

fierce dove
#

Wo

bold sentinel
fierce dove
#

Benutzte das

#0000FF

#

Das ist Blau

bold sentinel
#

es geht einfach nicht

fierce dove
#

Es fehlen 0000

bold sentinel
#

Ok jetzt gehts

fierce dove
#

Was sind die anderen Codes für farben

bold sentinel
#

egal egal hab einfach farben rausgenommen

fierce dove
#

Oo

last depot
#

Wie macht man das bei einem söash command das eine bestimmte Rolle ein command ausführen kann

odd kiteBOT
last depot
#

command_has.role()

#

discord.ext.commands.has_role()

#

So????

urban glen
#

Nein.

#

Du kannst solche Fragen auch googlen.

last depot
#

Gibt’s das auch mit einer rollen id

urban glen
#

Wofür schick ich dir die Doc's? Da steht es

native plume
native plume
jaunty jasper
#

Hat jemand eine Idee ?

Unhandled exception in internal background task 'user_status'.
Traceback (most recent call last):
  File "C:\Users\fabian2\venv\Lib\site-packages\discord\ext\tasks\__init__.py", line 169, in _loop
    await self.coro(*args, **kwargs)
  File "C:\Users\fabian2\PycharmProjects\Los Angeles Real Life\lamain.py", line 48, in user_status
    if member.status == discord.Status.online:
       ^^^^^^^^^^^^^
AttributeError: 'User' object has no attribute 'status'
@tasks.loop(seconds=10)
async def user_status():
    member = await bot.fetch_user(997497624460529777)
    if member.status == discord.Status.online:
        print(f'{member.name} ist online')
    elif member.status == discord.Status.offline:
        print(f'{member.name} ist offline')
raven lotus
#

Mmmh

#

Idk vielleicht await print

#

Aber weiß ich nicht ganz

#

Egal, weiß ich nicht

jaunty jasper
#

Habe es behoben

member = bot.get_guild(1080532772856279072).get_member(997497624460529777)
raven lotus
#

Ich habe nur Mist gelabert XD

urban glen
viscid lake
raven lotus
#

XD

fierce dove
#

Warum sendet der bot kein Image

import discord
import ezcord
import datetime
import random
import asyncio
import json
import aiosqlite
import sqlite3
import aiohttp
import os
import asyncpraw

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

class ImageAvatar(commands.Cog):
    def __init__(self, bot):
        self.bot = bot
        self.session = aiohttp.ClientSession()
        
    image = SlashCommandGroup("image")
        
    @image.command()
    async def gay(self, cosmic, user: Option(discord.Member)):
        user = user or cosmic.author
        try:
            avatar = user.avatar.with_format("png").url
        except AttributeError:
            return await cosmic.respond("der user hat kein avatar")
        except Exception as e:
            return await cosmic.respond(f"An error occured\n{str(e).capitalize()}")
        url = f"http://some-random-api.ml/canvas/gay?avatar={avatar}"
        async with self.session.get(url) as r:
            if r.status != 200:
                error = await r.json()
                error_msg = error["error"]
                return await cosmic.respond(f"An error occured\n`{error_msg}`")
            embed = discord.Embed(color=COLOR)
            embed.set_image(url=url)
            await cosmic.respond(embed=embed)
            
def setup(bot):
    bot.add_cog(ImageAvatar(bot))
urban glen
#

Error?

fierce dove
#

Kommt keiner

#

Kann das vielleicht wegen der url sein

fierce dove
#

So soll es aussehen

urban glen
#

Mach das doch mit easy-pill selber ._.

fierce dove
#

Ne dafür ist die url da

tawdry leaf
#

user.avatar 😐

fierce dove
#

Wo

odd kiteBOT
tawdry leaf
#

der code ist vermutlich veraltet 🤔

urban glen
tawdry leaf
urban glen
#

Damit sagst du mir jetzt nicht, wieso du denkst das er veraltet ist

vivid sky
#

3

#

2

#

1

fierce dove
#

?

vivid sky
#

59000 Nachrichten amk

#

wieviel

urban glen
vivid sky
#

egal

solid ingot
tawdry leaf
#

also wer des nd checkt xD

vivid sky
#
Traceback (most recent call last):
  File "c:\Uin.py", line 11, in <module>
    bot.add_help_command()
    ^^^^^^^^^^^^^^^^^^^^
AttributeError: 'Bot' object has no attribute 'add_help_command'
PS C:\Users\Wo> 

Bekomme diesen fehler habe ezcord und so.

tawdry leaf
#

bzw hast du überhaupt ezcord.Bot

vivid sky
tawdry leaf
#

kannst du code zeigen

vivid sky
#

oder willst du ganzen

tawdry leaf
#

hast du auch die aktuellste version?

vivid sky
#

uhm

#

Okay habs nicht mehr nötig

solid ingot
#

woran Lags? @vivid sky

vivid sky
#

ich hatte schon ein help command cog

tawdry leaf
#

xD

vivid sky
#

kann ich das nicht in ezcord machen?

#

xd

solid ingot
#

was möchtest du denn mit Infos und DB?

vivid sky
#

es geht

tawdry leaf
#

Bobby grad irgendwie brain afk xD

vivid sky
#

ka

ruby sparrow
#

Wie fügt man eine eigene Erweiterung in Python ein? wie ezcord

urban glen
#

Coden & Veröffentlichen

ruby sparrow
#

mit Veröffentlichen

urban glen
#

Ja halt auf pypi oder so und github

ruby sparrow
#

also ok kannst kurz call?

urban glen
#

Ne

tawdry leaf
#

Wie finde ich heraus welche Berechtigung mein bot braucht

wind finch
tawdry leaf
#

was ist das für eine unnötige view da unten

urban glen
wind finch
urban glen
# wind finch ?

Was verstehst du daran nicht?

Er fragt was das für eine unnötige view da unten ist

tawdry leaf
#

die view macht doch nix xD

urban glen
tawdry leaf
#

unübersichtlich?

urban glen
#

Jap, sehr unübersichtlich

urban glen
wind finch
#

hmm

raven lotus
#

Wie kann man den Bot Webhooks senden lassen?

ruby sparrow
#

weiss einer wie geht das ? mit 60%

limber crow
ruby sparrow
limber crow
#

Muss ich was beachten, wenn ich Links in eine .env datei speicher und abrufen möchte ?

ruby sparrow
limber crow
urban glen
#

|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||

ruby sparrow
#

ok danke

ruby sparrow
limber crow
urban glen
ruby sparrow
ruby sparrow
urban glen
#

Was erwartest du jetzt von mir?

Soll ich dir nh neue Tastatur kaufen oder was?

last depot
#

Ich habe bei diesem guils.html bei der klasse link wie in coding kek video den style gemacht wie er gezeigt hat das die nicht blau sind aber es geht nicht hat jemand eine ahnung wieso?

limber crow
#

wie kann ich in VS Code die datenbank einträge sehen ? (Timo hat das auch am ende vom Dashboard Tutorial 3)

tawdry leaf
#

musst dir entweder einen sql programm installieren oder in vsc eine Extension

last depot
# ruby sparrow code

das ist meine guilds.html

<!DOCTYPE html>
<html lang="de">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Dashboard</title>
    <link rel="stylesheet" type="text/css" href="{{ url_for('static', path='style.css') }}">
</head>
<body>
    <h1> Felix Dashboard </h1>
    <p> Hey <strong>{{global_name}}</strong>, bitte wähle einen Server aus. </p>

    <div class="container">
        {% for guild in guilds %}
            <a href={{guild.url}} class="link">
                <div class="item">
                    <img class="title" src="{{guild.icon}}">
                    <p class="title"> <b>{{ guild.name }}</b> </p>
                </div>
            </a>
        {% endfor %}
    </div>

</body>
</html>

und das meine style:

.link {
    text-decoration: none;
    color: inherit;
    display: inline-block;
}

solid ingot
last depot
limber crow
#

Wieso ist das immer noch so ?

Style.css ```CSS
body {
background-color: #222727;
color: #d8d8d8;
text-align: center;
font-family: Verdana, sans-serif;
}

strong {
color: #ea461e;
}

.container {
display: flex;
justify-content: center;
align-content: flex-start;
flex-wrap: wrap;
margin: 2rem 2% 3rem;
}

.item {
margin: .85rem;
width: 400px;
min-width: 300px;
height: 100px;
border-radius: .75rem;
font-size: 2rem;
overflow: hidden;
background-color: #3a4242;
display: flex;
align-items: center;
}

.item:hover {
transform: scale(1.05);
box-shadow: 0 .2rem .5rem rgba(0,0,0,0.3), 0 1rem .5rem rgba(0,0,0,0.22)
}

.title {
margin-right: .7rem;
height: 80%;
font-size: 70%;
display: flex;
align-items: center;
padding: 1rem;
text-align: left;
border-radius: 50%;
}

.button {
background: #ea461e;
border: 0;
color: white;
padding: 12px 48px;
font-size: 18px;
margin-top: 8px;
border-radius: 8px;
cursor: pointer;
}

.link {
text-decoration: none;
color: inherit;
display: inline-block;
}```

guilds.html: ```html
<!DOCTYPE html>
<html lang="de">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Dashboard</title>
<link rel="stylesheet" type="text/css" href="{{ url_for('static', path='style.css') }}">
</head>
<body>
<h1> CodingKeks Dashboard </h1>
<p> Hey <strong>{{global_name}}</strong>, bitte wähle einen Server aus. </p>

<div class="container">
    {% for guild in guilds %}
        <a href={{guild.url}} class="link">
            <div class="item">
                <img class="title" src="{{guild.icon}}">
                <p class="title"> <b>{{ guild.name }}</b> </p>
            </div>
        </a>
    {% endfor %}
</div>

</body>
</html>

solid ingot
limber crow
limber crow
#

Wenn ich die Login_url in der .env datei speicher, dann geht es ned mehr. WOran liegt das

tawdry leaf
tawdry leaf
solid ingot
limber crow
#

Wenn ich es mache, dann kommt der fehler

solid ingot
#

wenn der wert nicht geladen werden konnte, ist er None

limber crow
limber crow
#

Kurze frage. Kann man etwas coden, dass wenn der Bot von einem bestimmten Server gekickt wird, dass er wieder automatisch join. Geht das ?

urban glen
#

nein.

limber crow
#

Wie kann hier im Code sagen, dass wenn der Mod log Channel nicht gesetzt ist kein Fehler kommt ?

urban glen
#

im on_message_delete?

urban glen
limber crow
limber crow
# urban glen

Bekomme trotzdem diesen fehler

Ignoring exception in on_message_delete
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\Ninja Dojo (Public Bot)\cogs\Logging\ModLog.py", line 95, in on_message_delete
    if channel is None:
       ^^^^^^^
UnboundLocalError: cannot access local variable 'channel' where it is not associated with a val
urban glen
limber crow
urban glen
#

Nächstes mal auch mal selber bisschen überlegen

limber crow
#

Wie kann ich hier im code mehr level hinzufügen, sodass wenn man ein level aufsteigt, dass man immer mehr xp braucht.

Code

native plume
#

Dem Table

#

Und bei dem System wie ich es verstanden habe wird immer bei 100 XP ein Level hochgestellt. Du könntest diese statische Variable natürlich verändern, aber Ansich bleibt sie bei allen Leveln gleich

limber crow
limber crow
#

Bekomme die ganze Zeit jetzt diesen ezcord fehler

Code

Traceback (most recent call last):
  File "c:\Users\YT197\Desktop\Allgemein\Dev\Discord\Pycord\Ninja Dojo (Public Bot)\main.py", line 4, in <module>
    bot = Bot()
  File "c:\Users\YT197\Desktop\Allgemein\Dev\Discord\Pycord\Ninja Dojo (Public Bot)\bot.py", line 18, in __init__
    super().__init__(intents=intents, language="de")
  File "C:\Users\YT197\AppData\Local\Programs\Python\Python310\lib\site-packages\ezcord\bot.py", line 88, in __init__
    super().__init__(intents=intents, **kwargs)
TypeError: BotBase.__init__() missing 1 required positional argument: 'command_prefix'
PS C:\Users\YT197\Desktop\Allgemein\Dev\Discord\Pycord\Ninja Dojo (Public Bot)> 
solid ingot
#

benutzt du pycord? und schick mal den code

limber crow
limber crow
limber crow
#
import discord
import ezcord
import os
import random
from discord.ext import tasks
from dotenv import load_dotenv
from itertools import cycle

status = [
    discord.Activity(type=discord.ActivityType.playing, name="By MecryTv"),
    discord.Activity(type=discord.ActivityType.watching, name="Discord Bots"),
    discord.Activity(type=discord.ActivityType.streaming, name="Test", url="https://www.twitch.tv/officialmecrytv")
]

class Bot(ezcord.Bot):
    def __init__(self):
        intents = discord.Intents.all()
        super().__init__(intents=intents, language="de")
        
        self.load_cogs("cogs", subdirectories=True)
        self.status_cycle = cycle(status)
        
    @tasks.loop(seconds=10)
    async def change_activity(self):
        new_activity = next(self.status_cycle)
        await self.change_presence(activity=new_activity)
        
    async def on_ready(self):
        self.change_activity.start()


        
    def run(self):
        load_dotenv()
        super().run(os.getenv("TOKEN"))
    
solid ingot
#

wahrscheinlich hast du aus versehen discord.py installiert oder so

tawdry leaf
#

😐

limber crow
# solid ingot wahrscheinlich hast du aus versehen discord.py installiert oder so

Jetzt bekomme ich diesen Fehler


Traceback (most recent call last):
  File "c:\Users\YT197\Desktop\Allgemein\Dev\Discord\Pycord\Ninja Dojo (Public Bot)\main.py", line 1, in <module>
    from bot import Bot
  File "c:\Users\YT197\Desktop\Allgemein\Dev\Discord\Pycord\Ninja Dojo (Public Bot)\bot.py", line 2, in <module>
    import ezcord
  File "C:\Users\YT197\AppData\Local\Programs\Python\Python310\lib\site-packages\ezcord\__init__.py", line 6, in <module>
    from . import components, emb, logs, sql, times, utils
  File "C:\Users\YT197\AppData\Local\Programs\Python\Python310\lib\site-packages\ezcord\components.py", line 27, in <module>
    from .internal import get_error_text
  File "C:\Users\YT197\AppData\Local\Programs\Python\Python310\lib\site-packages\ezcord\internal\__init__.py", line 2, in <module>
    from .embed_templates import *
  File "C:\Users\YT197\AppData\Local\Programs\Python\Python310\lib\site-packages\ezcord\internal\embed_templates.py", line 10, in <module>
    from ..internal.dc import discord
  File "C:\Users\YT197\AppData\Local\Programs\Python\Python310\lib\site-packages\ezcord\internal\dc\__init__.py", line 10, in <module>
    commands = __import__(f"{discord.lib}.ext.commands", fromlist=[""])
ModuleNotFoundError: No module named 'discord.ext.commands'
solid ingot
#

schick mal dein pip freeze

tawdry leaf
limber crow
# solid ingot schick mal dein pip freeze
aiocache==0.12.1
aiofiles==0.8.0
aiohttp==3.8.1
aiosignal==1.3.1
aiosqlite==0.17.0
annotated-types==0.5.0
anyio==3.7.1
async-timeout==4.0.2
asyncio==3.4.3
asyncpraw==7.7.1
asyncprawcore==2.3.0
attrs==23.1.0
better-ipc==2.0.3
Brotli==1.1.0
certifi==2023.5.7
cffi==1.15.1
charset-normalizer==2.1.1
chat-exporter==2.4.1
click==8.1.7
colorama==0.4.4
commonmark==0.9.1
discord==2.3.2
dotenv==0.0.5
easy-pil==0.1.9
emoji==2.5.1
exceptiongroup==1.1.3
ezcord @ git+https://github.com/tibue99/ezcord@c924616085c9b0d68ef76e0336f0558e38f07888
fastapi==0.103.1
ffmpeg==1.4
frozenlist==1.3.3
grapheme==0.6.0
h11==0.14.0
idna==3.4
Jinja2==3.1.2
lavalink==4.0.6
MarkupSafe==2.1.3
multidict==6.0.4
mutagen==1.47.0
Pillow==8.4.0
praw==7.7.0
prawcore==2.3.0
psutil==5.9.4
py-cord-dev==2.5.0rc5
pycparser==2.21
pycryptodomex==3.19.0
pydantic==2.3.0
pydantic_core==2.6.3
Pygments==2.16.1
PyNaCl==1.5.0
python-dotenv==0.20.0
pytz==2023.3
redis==4.6.0
requests==2.28.1
rich==12.6.0
sentry-sdk==1.31.0
six==1.16.0
sniffio==1.3.0
spotify-dl==8.8.2
spotipy==2.23.0
starlette==0.27.0
typing_extensions==4.6.3
update-checker==0.18.0
urllib3==1.26.16
uvicorn==0.23.2
vacefron.py==2.0.3
wavelink==2.6.4
websocket-client==1.6.1
websockets==11.0.3
yarl==1.8.2
youtube-dl==2021.12.17
yt-dlp==2023.7.6
tawdry leaf
#

discord==2.3.2

#

py-cord-dev

#

deinstallier die 2mal

odd kiteBOT
#

@limber crow

Requirements-Check

⚠️ Entferne alle Module aus der Python Standardbibliothek

asyncio==3.4.3```
⚠️ Eventuell hast du falsche Packages installiert
```yml

dotenv==0.0.5 -> python-dotenv```
*Ich habe [diese Nachricht](#1019974414487535736 message) geprüft.*
limber crow
#

Immer noch

#
aiocache==0.12.1
aiofiles==0.8.0
aiohttp==3.8.1
aiosignal==1.3.1
aiosqlite==0.17.0
annotated-types==0.5.0
anyio==3.7.1
async-timeout==4.0.2
asyncpraw==7.7.1
asyncprawcore==2.3.0
attrs==23.1.0
better-ipc==2.0.3
Brotli==1.1.0
certifi==2023.5.7
cffi==1.15.1
charset-normalizer==2.1.1
chat-exporter==2.4.1
click==8.1.7
colorama==0.4.4
commonmark==0.9.1
easy-pil==0.1.9
emoji==2.5.1
exceptiongroup==1.1.3
ezcord @ git+https://github.com/tibue99/ezcord@c924616085c9b0d68ef76e0336f0558e38f07888
fastapi==0.103.1
ffmpeg==1.4
frozenlist==1.3.3
grapheme==0.6.0
h11==0.14.0
idna==3.4
Jinja2==3.1.2
lavalink==4.0.6
MarkupSafe==2.1.3
multidict==6.0.4
mutagen==1.47.0
Pillow==8.4.0
praw==7.7.0
prawcore==2.3.0
psutil==5.9.4
pycparser==2.21
pycryptodomex==3.19.0
pydantic==2.3.0
pydantic_core==2.6.3
Pygments==2.16.1
PyNaCl==1.5.0
python-dotenv==0.20.0
pytz==2023.3
redis==4.6.0
requests==2.28.1
rich==12.6.0
sentry-sdk==1.31.0
six==1.16.0
sniffio==1.3.0
spotify-dl==8.8.2
spotipy==2.23.0
starlette==0.27.0
typing_extensions==4.6.3
update-checker==0.18.0
urllib3==1.26.16
uvicorn==0.23.2
vacefron.py==2.0.3
wavelink==2.6.4
websocket-client==1.6.1
websockets==11.0.3
yarl==1.8.2
youtube-dl==2021.12.17
yt-dlp==2023.7.6
tawdry leaf
#

@limber crow installiere mal ezcord neu also pip uninstall und pip install ezcord

limber crow
#

ka wieso

#

Hä. Es ist so komisch. Kaum gehe ich wieder auf 11 hoch geht es

odd kiteBOT
raven lotus
#

kann mir jemand vielleicht helfen?

    @slash_command()
    @discord.default_permissions(moderate_members=True)
    @commands.has_permissions(moderate_members=True)
    async def timeout(self, ctx, user: discord.Member, days: discord.Intents, hours: discord.Intents,
                      minutes: discord.Intents, seconds: discord.Intents,
                      duration=None):
        if user.id == ctx.user:
            await ctx.respond('Du kannst dich nicht selbst timeouten!')
        if user.id == bot_owner_id:
            await ctx.respond('Sorry, aber ich kann den Bot-Owner nicht timeouten!')
        else:
            duration_list = duration.split()
            days, hours, minutes, seconds = days, hours, minutes, seconds
            member = user
            for item in duration_list:
                if item.endswith('d'):
                    days = int(item[:-1])
                elif item.endswith('h'):
                    hours = int(item[:-1])
                elif item.endswith('m'):
                    minutes = int(item[:-1])
                elif item.endswith('s'):
                    seconds = int(item[:-1])

            timeout_duration = datetime.timedelta(days=days, hours=hours, minutes=minutes, seconds=seconds)
            end_time = datetime.datetime.utcnow() + timeout_duration
            embed = discord.Embed(
                title=f"Timeout",
                description=f'{member.mention} wurde für {duration} getimeoutet. Timeout endet am {end_time}.'
            )
            await member.timeout(days, hours, minutes, seconds)
            await ctx.respond(embed=embed)
``` ._.
#

ich glaube ich mach das anderst

solid ingot
raven lotus
#

es soll ein Timeout Command sein ._.

#

idk was ich da gemacht habe

#
    @slash_command()
    @discord.default_permissions(moderate_members=True)
    @commands.has_permissions(moderate_members=True)
    async def timeout(self, ctx, user:discord.User,  zeit: str):
        if user.id == ctx.user:
            await ctx.respond('Du kannst dich nicht selbst timeouten!')
        if user.id == bot_owner_id:
            await ctx.respond('Sorry, aber ich kann den Bot-Owner nicht timeouten!')
        else:
            zeit = zeit.lower()
            einheit = zeit[-1]
            zeit = int(zeit[:-1])
    
            if einheit == 's':
                wartezeit = zeit
            elif einheit == 'm':
                wartezeit = zeit * 60
            elif einheit == 'h':
                wartezeit = zeit * 60 * 60
            else:
                await ctx.respond(
                    "Ungültige Zeitangabe. Bitte verwende 's' für Sekunden, 'm' für Minuten oder 'h' für Stunden.")
                return
                
            embed = discord.Embed(
                title=f"Timeout",
                description=f'{user.mention} wurde für {zeit}{einheit} getimeoutet..'
            )
            await user.timeout(wartezeit)
            await ctx.respond(embed=embed)
#

hab ich jetzt so verbessert

fierce dove
#

Benutzt du ezcord

raven lotus
#

yessir

fierce dove
#
    @slash_command()
    @discord.default_permissions(moderate_members=True)
    @commands.has_permissions(moderate_members=True)
    async def timeout(self, ctx, user: Option(discord.User),  zeit: Option(str)):
        if user.id == ctx.user:
            await ctx.respond('Du kannst dich nicht selbst timeouten!')
        if user.id == bot_owner_id:
            await ctx.respond('Sorry, aber ich kann den Bot-Owner nicht timeouten!')
        else:
            zeit = zeit.lower()
            einheit = zeit[-1]
            zeit = int(zeit[:-1])
    
            if einheit == 's':
                wartezeit = zeit
            elif einheit == 'm':
                wartezeit = zeit * 60
            elif einheit == 'h':
                wartezeit = zeit * 60 * 60
            else:
                await ctx.respond(
                    "Ungültige Zeitangabe. Bitte verwende 's' für Sekunden, 'm' für Minuten oder 'h' für Stunden.")
                return
                
            embed = discord.Embed(
                title=f"Timeout",
                description=f'{user.mention} wurde für {zeit}{einheit} getimeoutet..'
            )
            await user.timeout(wartezeit)
            await ctx.respond(embed=embed)

from discord.commands import slash_command, Option

raven lotus
#

hellnah, code geht net

#

also meiner

raven lotus
#

was muss importet werden?

fierce dove
#

Nix

#

zeig deine imports

raven lotus
#

wait

#

habs selbst herausgefunden

fierce dove
#

OK woran lags

fierce dove
raven lotus
#

AttributeError: 'int' object has no attribute 'isoformat'

#

._.

fierce dove
#

Ok

raven lotus
#

from discord.commands import slash_command, Option

raven lotus
#

mach ich aber doch

#

1m

fierce dove
#

Ok

raven lotus
#

hä wait

#
    @slash_command()
    @discord.default_permissions(moderate_members=True)
    @commands.has_permissions(moderate_members=True)
    async def timeout(self, ctx, user: Option(discord.User), zeit: Option(str)):
        if user.id == ctx.user:
            await ctx.respond('Du kannst dich nicht selbst timeouten!')
        if user.id == bot_owner_id:
            await ctx.respond('Sorry, aber ich kann den Bot-Owner nicht timeouten!')
        else:
            zeit = zeit.lower()
            einheit = zeit[-1]
            zeit = int(zeit[:-1])

            if einheit == 's':
                wartezeit = zeit
            elif einheit == 'm':
                wartezeit = zeit * 60
            elif einheit == 'h':
                wartezeit = zeit * 60 * 60
            else:
                await ctx.respond(
                    "Ungültige Zeitangabe. Bitte verwende 's' für Sekunden, 'm' für Minuten oder 'h' für Stunden.")
                return

            embed = discord.Embed(
                title=f"Timeout",
                description=f'{user.mention} wurde für {zeit}{einheit} getimeoutet..'
            )
            await user.timeout(wartezeit)
            await ctx.respond(embed=embed)
``` geht net
fierce dove
#

Warum ist die Zeit noch str

raven lotus
#

der antwortet die ganze Zeit:AttributeError: 'int' object has no attribute 'isoformat'

fierce dove
#

Hm

#
@slash_command()
@discord.default_permissions(moderate_members=True)
@commands.has_permissions(moderate_members=True)
async def timeout(self, ctx, user: Option(discord.User), zeit: Option(str)):
    if user.id == ctx.author.id:
        await ctx.respond('Du kannst dich nicht selbst timeouten!')
    elif user.id == bot_owner_id:
        await ctx.respond('Sorry, aber ich kann den Bot-Owner nicht timeouten!')
    else:
        zeit = zeit.lower()
        einheit = zeit[-1]
        zeit = int(zeit[:-1])

        if einheit == 's':
            wartezeit = zeit
        elif einheit == 'm':
            wartezeit = zeit * 60
        elif einheit == 'h':
            wartezeit = zeit * 60 * 60
        else:
            await ctx.respond(
                "Ungültige Zeitangabe. Bitte verwende 's' für Sekunden, 'm' für Minuten oder 'h' für Stunden.")
            return

        embed = discord.Embed(
            title=f"Timeout",
            description=f'{user.mention} wurde für {zeit}{einheit} getimeoutet.'
        )
        await user.timeout(wartezeit)
        await ctx.respond(embed=embed)

if user.id == ctx.user zu if user.id == ctx.author.id geaendert, um zu überpruefen ob der Benutzer sich selbst timeoutet.

raven lotus
#

bro

fierce dove
#

Ja

raven lotus
#

das geht nicht, weil ich will ja, dass hinter der Zahl s, m oder h steht

fierce dove
#

nok

#

#1147516345852899428 message

raven lotus
#

._.

fierce dove
#

•_•

urban glen
#

•_•

raven lotus
#

idk

#
    @slash_command()
    @discord.default_permissions(moderate_members=True)
    @commands.has_permissions(moderate_members=True)
    async def timeout(self, ctx, user: Option(discord.User), zeit: Option(str)):
        member = user
        if user.id == ctx.author.id:
            await ctx.respond('Du kannst dich nicht selbst timeouten!')
        elif user.id == bot_owner_id:
            await ctx.respond('Sorry, aber ich kann den Bot-Owner nicht timeouten!')
        else:
            zeit = zeit.lower()
            einheit = zeit[-1]
            zeit = int(zeit[:-1])

            if einheit == 's':
                wartezeit = zeit
            elif einheit == 'm':
                wartezeit = zeit * 60
            elif einheit == 'h':
                wartezeit = zeit * 60 * 60
            elif einheit == 'd':
                wartezeit = zeit * 60 * 60 * 7
            else:
                await ctx.respond(
                    "Ungültige Zeitangabe. Bitte verwende 's' für Sekunden, 'm' für Minuten,'h' für Stunden oder 'd' für Tage.")
                return

            embed = discord.Embed(
                title=f"Timeout",
                description=f'{user.mention} wurde für {zeit}{einheit} getimeoutet.'
            )
            await member.timeout_for(wartezeit)
            await ctx.respond(embed=embed)
#

wait

#

help pls

#

habs gelöst Dance

raven lotus
#

kann jemand helfen, dass der Bot nicht timeoutet, wenn der user schon timeout hat? :

    @slash_command()
    @discord.default_permissions(moderate_members=True)
    @commands.has_permissions(moderate_members=True)
    async def timeout(self, ctx, user: Option(discord.User), zeit: Option(str)):
        member = user
        if user.id == ctx.author.id:
            await ctx.respond('Du kannst dich nicht selbst timeouten!')
        elif user.top_role.position >= ctx.author.top_role.position:
            await ctx.respond('Sorry, aber du kannst keine Benutzer timeouten, die über dir stehen!')
        elif user.id == bot_owner_id:
            await ctx.respond('Sorry, aber ich kann den Bot-Owner nicht timeouten!')
        elif member in timeout_users:
            await ctx.respond('Dieser Benutzer ist bereits getimeoutet!')
        else:
            zeit = zeit.lower()
            einheit = zeit[-1]
            zeit = int(zeit[:-1])

            if einheit == 's':
                wartezeit = datetime.timedelta(seconds=zeit)
            elif einheit == 'm':
                wartezeit = datetime.timedelta(minutes=zeit)
            elif einheit == 'h':
                wartezeit = datetime.timedelta(hours=zeit)
            elif einheit == 'd':
                wartezeit = datetime.timedelta(days=zeit)
            else:
                await ctx.respond(
                    "Ungültige Zeitangabe. Bitte verwende 's' für Sekunden, 'm' für Minuten,'h' für Stunden oder 'd' für Tage.")
                return

            embed = discord.Embed(
                title=f"Timeout",
                description=f'{user.mention} wurde für {zeit}{einheit} getimeoutet.'
            )
            embed.color = discord.Color.purple()
            await member.timeout_for(wartezeit)
            await ctx.respond(embed=embed)
urban glen
#

Mach doch einfach if member.timeout:

native plume
#

guck was oben steht von FabiDev @raven lotus

#

Nvm hab’s überlesen sorry

restive herald
viscid lake
#

Hey kar

vernal rampart
#

wie kann man eine audio datei schicken so:

file = discord.File(fp=audio, filename="audio.png")

Ich habe aber diesen Fehler bekommen:

[ERROR] Error while executing /voicelab 
Traceback (most recent call last):
  File "C:\Users\tobia\PycharmProjects\tobfd_bot\DiscordBot\lib\site-packages\discord\commands\core.py", line 131, in wrapped
    ret = await coro(arg)
  File "C:\Users\tobia\PycharmProjects\tobfd_bot\DiscordBot\lib\site-packages\discord\commands\core.py", line 1000, in _invoke
    await self.callback(self.cog, ctx, **kwargs)
  File "C:\Users\tobia\PycharmProjects\tobfd_bot\cogs\voicelab.py", line 35, in voicelab
    file = discord.File(fp=audio, filename="audio.png")
  File "C:\Users\tobia\PycharmProjects\tobfd_bot\DiscordBot\lib\site-packages\discord\file.py", line 99, in __init__
    self.fp = open(fp, "rb")
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xff in position 0: invalid start byte
urban glen
vernal rampart
#

audio bekomme ich von einer api:

audio = generate(
            text=text,
            voice=voice,
            model="eleven_multilingual_v2"
        )
urban glen
#
file=discord.File(io.BytesIO(audio), filename="audio.mp3")
await ctx.respond(file=file)
#

Du willst ja nicht nh Audio Datei als Bild speichern hahaha

vernal rampart
#

ich bekomme immernoch diesen fehler:

[ERROR] Error while executing /voicelab 
Traceback (most recent call last):
  File "C:\Users\tobia\PycharmProjects\tobfd_bot\DiscordBot\lib\site-packages\discord\commands\core.py", line 131, in wrapped
    ret = await coro(arg)
  File "C:\Users\tobia\PycharmProjects\tobfd_bot\DiscordBot\lib\site-packages\discord\commands\core.py", line 1000, in _invoke
    await self.callback(self.cog, ctx, **kwargs)
  File "C:\Users\tobia\PycharmProjects\tobfd_bot\cogs\voicelab.py", line 35, in voicelab
    file = discord.File(fp=audio, filename="audio.mp3")
  File "C:\Users\tobia\PycharmProjects\tobfd_bot\DiscordBot\lib\site-packages\discord\file.py", line 99, in __init__
    self.fp = open(fp, "rb")
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xff in position 0: invalid start byte
urban glen
#

Dafür müsstest du import io bei den imports machen

vernal rampart
# urban glen Dafür müsstest du `import io` bei den imports machen

Jetzt diesen:

[ERROR] Error while executing /voicelab 
Traceback (most recent call last):
  File "C:\Users\tobia\PycharmProjects\tobfd_bot\DiscordBot\lib\site-packages\discord\commands\core.py", line 131, in wrapped
    ret = await coro(arg)
  File "C:\Users\tobia\PycharmProjects\tobfd_bot\DiscordBot\lib\site-packages\discord\commands\core.py", line 1000, in _invoke
    await self.callback(self.cog, ctx, **kwargs)
  File "C:\Users\tobia\PycharmProjects\tobfd_bot\cogs\voicelab.py", line 37, in voicelab
    await ctx.respond(embed=embed, file=file)
  File "C:\Users\tobia\PycharmProjects\tobfd_bot\DiscordBot\lib\site-packages\discord\interactions.py", line 571, in respond
    return await self.response.send_message(*args, **kwargs)
  File "C:\Users\tobia\PycharmProjects\tobfd_bot\DiscordBot\lib\site-packages\discord\interactions.py", line 904, in send_message
    await self._locked_response(
  File "C:\Users\tobia\PycharmProjects\tobfd_bot\DiscordBot\lib\site-packages\discord\interactions.py", line 1198, in _locked_response
    await coro
  File "C:\Users\tobia\PycharmProjects\tobfd_bot\DiscordBot\lib\site-packages\discord\webhook\async_.py", line 220, in request
    raise NotFound(response, data)
discord.errors.NotFound: 404 Not Found (error code: 10062): Unknown interaction
urban glen
#

Die interaction braucht zu lange, also müsstest du ein await ctx.defer() einbauen

vernal rampart
urban glen
vernal rampart
urban glen
#

Wie downlodest du es?

vernal rampart
#

oben rechts

vernal rampart
urban glen
#

hm

limber crow
#

Jemand ne Ahnung wie man am besten einen Invite Tracker macht ? Also dass eine Nachricht ausgegeben wird wer von wem eingeladen wurde und wie viele Invites dieser hat

hard pivot
#

Hallo weiß wer wie ich es mache das die Interaktion nicht scheitert wenn der bot nicht antwortet

solid ingot
#

du könntest die nachricht bearbeiten, dann kann der bot auch ohne antwort auf die interaktion reagieren

limber crow
urban glen
urban glen
#

Kein ding, ich weiß das es einigen schwer fällt mal selber danach zu suchen 😉

limber crow
vernal rampart
#

@solid ingot warum ist oben ein error und unten nicht?

solid ingot
#

was hat das obere denn mit dem unteren zu tun? das sind 2 verschiedene commands und 2 verschiedene codes

vernal rampart
solid ingot
#

dann vergleich die beiden codes doch mal

vernal rampart
limber crow
#

Kann man eine Methode schreiben, dass wenn der Bot einem neuen Server gejoint ist, dass dieser Bot eine bestimmte Nachricht sendet ?

wind finch
#

Ja

urban glen
#

Ja

odd kiteBOT
restive herald
#

das müsste es sein

limber crow
#

Wieso bekomme ich keine Nachricht ? Was habe ich falsch gemacht ?

Code

import discord
import os

from discord.ext import commands
from discord.commands import slash_command

class JoinNewGuild(commands.Cog):
    def __init__(self, bot, *args, **kwargs):
        super().__init__(*args, **kwargs)
        self.bot = bot

    @commands.Cog.listener()
    async def on_guild_join(self, guild):
        owner = guild.get_member(os.getenv('OWNER_ID'))

        if owner:
            await guild.send(f'Ich bin dem Server {guild.name} beigetreten!')


def setup(bot):
    bot.add_cog(JoinNewGuild(bot))
restive herald
#

du schreibst der guild.

#

was praktisch nd möglich is xd

limber crow
restive herald
#

glaube guild.owner.send

odd kiteBOT
restive herald
#

also owner = discord.Guild.owner

#

und dann owner.send

limber crow
restive herald
#

dir? also genau dir?

limber crow
restive herald
#

oder dem owner

limber crow
#

Nein mir und nur mir

odd kiteBOT
restive herald
#

discord.Bot.get_user müsste es sein

limber crow
# restive herald discord.Bot.get_user müsste es sein

Würde es so gehen ?

import discord
import os

from discord.ext import commands
from discord.commands import slash_command

class JoinNewGuild(commands.Cog):
    def __init__(self, bot, *args, **kwargs):
        super().__init__(*args, **kwargs)
        self.bot = bot

    @commands.Cog.listener()
    async def on_guild_join(self, ctx):
        owner = discord.Bot.get_user(os.getenv("OWNER_ID"))
        
        await owner.send(f"Der Bot ist einem neuen Server beigetreten: {ctx.name} ({ctx.id})")


def setup(bot):
    bot.add_cog(JoinNewGuild(bot))
restive herald
#

denke mal geht so aber allgemein nutzt man da eher guild damit die verwirrung nd verwirrt is

urban glen
#
import discord
import os

from discord.ext import commands
from discord.commands import slash_command

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

    @commands.Cog.listener()
    async def on_guild_join(self, guild):
        owner = self.bot.get_user(os.getenv("OWNER_ID"))
        
        await owner.send(f"Der Bot ist einem neuen Server beigetreten: {guild.name} ({guild.id})")


def setup(bot):
    bot.add_cog(JoinNewGuild(bot))
limber crow
#

Danke euch

limber crow
#

Was ist der Fehler ?

Fehlercode

Traceback (most recent call last):
  File "c:\Users\YT197\Desktop\Allgemein\Dev\Discord\Pycord\Ninja Dojo (Public Bot)\main.py", line 4, in <module>
    bot = Bot()
          ^^^^^
  File "c:\Users\YT197\Desktop\Allgemein\Dev\Discord\Pycord\Ninja Dojo (Public Bot)\bot.py", line 18, in __init__
    discord.Activity(type=discord.ActivityType.playing, name=f"auf {len(self.bot.guilds)} Servern")
                                                                        ^^^^^^^^
AttributeError: 'Bot' object has no attribute 'bot'. Did you mean: '_bot'?
PS C:\Users\YT197\Desktop\Allgemein\Dev\Discord\Pycord\Ninja Dojo (Public Bot)> 

code

import discord
import ezcord
import os
import random
from discord.ext import tasks
from dotenv import load_dotenv
from itertools import cycle


class Bot(ezcord.Bot):
    def __init__(self):
        intents = discord.Intents.all()
        super().__init__(intents=intents, language="de")
        
        status = [
        discord.Activity(type=discord.ActivityType.playing, name="By MecryTv"),
        discord.Activity(type=discord.ActivityType.watching, name="Discord Bots"),
        discord.Activity(type=discord.ActivityType.playing, name=f"auf {len(self.bot.guilds)} Servern")
    ]
        
        self.load_cogs("cogs", subdirectories=True)
        self.status_cycle = cycle(status)
        
    @tasks.loop(seconds=10)
    async def change_activity(self):
        new_activity = next(self.status_cycle)
        await self.change_presence(activity=new_activity)
        
    async def on_ready(self):
        self.change_activity.start()


        
    def run(self):
        load_dotenv()
        super().run(os.getenv("TOKEN"))
    ```
urban glen
limber crow
fierce dove
#

Wie geht das?

fierce dove
#

Danke

restive herald
#

Kann man bei easypil auch eigene fonts nehmen?

restive herald
urban glen
restive herald
#

danke xd

urban glen
restive herald
#

hab das sogar gesehen hab nur nd verstanden wie mans nutzt x

potent lance
#

Halllo ^^
Jedesmal sobald das Ticket wieder freigegeben wird, verliert der User der das ticket erstellt hat die rechte das ticket einzusehen.

async def claim_ticket(self, button: nextcord.ui.Button, interaction: nextcord.Interaction):
        claimed_by = self.claimed_by

        if claimed_by is None and self.ticket_creator != interaction.user:  # Check if the claimer is not the creator
            self.claimed_by = interaction.user
            overwrites = {
                interaction.user: nextcord.PermissionOverwrite(read_messages=True, send_messages=True),
                interaction.guild.default_role: nextcord.PermissionOverwrite(read_messages=False, send_messages=False),
            }
            await interaction.channel.edit(overwrites=overwrites)
            await interaction.channel.send(f"Das Ticket wurde von {interaction.user.mention} beansprucht!")
        elif claimed_by is None and self.ticket_creator == interaction.user:
            await interaction.response.send_message("Sie können Ihr eigenes Ticket nicht beanspruchen.", ephemeral=True)
        else:
            if self.claimed_by == interaction.user:
                # Ticket unclaimed
                overwrites = {
                    interaction.guild.get_role(1161941100680970340): nextcord.PermissionOverwrite(read_messages=True,
                                                                                                  send_messages=True),
                    interaction.guild.me: nextcord.PermissionOverwrite(read_messages=True, send_messages=True),
                    interaction.user: nextcord.PermissionOverwrite(read_messages=True, send_messages=True),
                    interaction.guild.default_role: nextcord.PermissionOverwrite(read_messages=False,
                                                                                 send_messages=False),
                }
                await interaction.response.send_message("Sie haben das Ticket nicht beansprucht.", ephemeral=True)
                self.claimed_by = None
                # Message about releasing the ticket
                await interaction.channel.send(f"Das Ticket wurde von {interaction.user.mention} freigegeben.")
            else:
                await interaction.response.send_message(
                    f"Dieses Ticket wurde bereits beansprucht von {self.claimed_by.mention}. {interaction.user.mention} kann es nicht beanspruchen.",
                    ephemeral=True)
solid ingot
#

wenn das ticket freigegeben wird, werden die permissions aktuell mit overwrites überschrieben. da bei den overwrites der user, der das ticket geöffnet hat, nicht vorkommt, hat dieser dann auch keine berechtigung mehr, um auf das ticket zuzugreifen.

#

eine mögliche lösung wäre die altern overwrites zu ergänzen statt zu überschreiben, also sozusagen das alte overwrite-dictionary mit dem neuen zu mergen

potent lance
#

ich bin mir unsicher wie ich das im code genau einbringen soll tbh

solid ingot
#

ich nehme mal an, dass der claim button im ticket channel ist. du könntest dann mit interaction.channel.overwrites auf die bisherigen overwrites zugreifen. um zu diesem dictionary dann neue overwrites hinzuzufügen, könntest du folgendes machen

if self.claimed_by == interaction.user:
                # Ticket unclaimed
                overwrites = {
                    **interaction.channel.overwrites,
                    interaction.guild.get_role(1161941100680970340): nextcord.PermissionOverwrite(read_messages=True,
                                                                                                  send_messages=True),
                    interaction.guild.me: nextcord.PermissionOverwrite(read_messages=True, send_messages=True),
                    interaction.user: nextcord.PermissionOverwrite(read_messages=True, send_messages=True),
                    interaction.guild.default_role: nextcord.PermissionOverwrite(read_messages=False,
                                                                                 send_messages=False),
                }

alternativ kannst du natürlich auch den user, der das ticket geöffnet hat, irgendwo speichern, und ihn dann zu den overwrites erneut hinzufügen, wenn das ticket unclaimed wird

potent lance
#

das was du geschickt hast funktioniert nicht. Sorry bin noch nicht so tief im python geschäfft xD

potent lance
solid ingot
potent lance
#

achso sorry

immer noch so das es für den user nicht einseh bar ist nachdem es frei gegeben wurde

lofty rock
#

Moin ich möchte mir ein Sound board machen das man übers Mic hört also jeder ingame hört mit buttons
Add Sound
Play sound
Stop sound
Und halt die auswahl von sounds in einer Tabelle ist sowas schwer und was braucht man dafür in Python

urban glen
#

Nutz doch einfach Soundpad von Steam

lofty rock
#

Aber Custom würde ich gerne machen

silk sedge
#

hey, ich bin grad dabei ein dashboard für meinen bot zu machen
das ist der code von der website main.py datei:

from fastapi import FastAPI, Request
from starlette.templating import Jinja2Templates
from fastapi.staticfiles import StaticFiles
import uvicorn

app = FastAPI()
app.mount("/static", StaticFiles(directory="frontend/static"), name="static")
templates = Jinja2Templates(directory="frontend")


@app.get("/")
async def home(request: Request):
    return templates.TemplateResponse(
        "index.html",
        {
            "request": request,
            "count": 1
        }
    )


if __name__ == "__main__":
    uvicorn.run("main:app", host="localhost", port=8000, reload=True)

ich bekomme aber diesen error:

 raise RuntimeError(f"Directory '{directory}' does not exist")
RuntimeError: Directory 'frontend/static' does not exist```

könnte mir da jemand weiterhelfen?
im bild seht ihr die wichtigen dateien
solid ingot
#

bei dir ist es aktuell im Website ordner

fierce dove
silk sedge
# fierce dove Warum 2 Mal main.py

Ka wieso 😅 ich wollte es genauso wie im tut machen, ich wusste nicht das es einen Unterschied macht
Hab den gleichen Code auch in der richtigen main Datei gehabt und es kam der gleiche error

tawdry leaf
silk sedge
fierce dove
#

Warum hast du main.py im Frontend Ordner?@silk sedge

#

So muss das aussehen

silk sedge
#

ah okay, hab es grad geändert
mein fehler
aber der error ist immernoch da

fierce dove
#

Hast du es so

fierce dove
#

Wie geht das das ich das in Discord anzeigen kann

twilit anvil
fierce dove
#

Ok

#

Wie heißt das plugin

urban glen
#

xD

fierce dove
fierce dove
urban glen
#

du fragst wie ich dies gemacht hab, wie ich das gemacht hab etc.. xD
Man kann auch googlen, kriegt man nh schnellere antwort

fierce dove
#

Ich hasse Google

urban glen
twilit anvil
urban glen
# lofty rock Ist gegen die TOS

Solange man keine unnötigen Regelmäßigen API Requests schickt, is es jetzt nicht der weltuntergang
Also wenn man sowas wie Automatischer Status Changer nutzt, dann is man gef*ckt

lofty rock
#

Moin Moin ich probiere mit chat GPT ein soundboard in Python zu machen weil auf Youtube finde ich nix aber ich bekomme die ganze zeit nen ätzenden error kann mir jemand dabei helfen

error:

Traceback (most recent call last):
  File "C:\Users\1444\Downloads\CloudPad\main.py", line 66, in play_sound
    self.play_audio(sound_file)
  File "C:\Users\1444\Downloads\CloudPad\main.py", line 81, in play_audio
    self.stream.write(audio.tobytes())
  File "C:\Users\1444\AppData\Roaming\Python\Python311\site-packages\sounddevice.py", line 1538, in write
    raise ValueError('number of channels must match')
ValueError: number of channels must match
Drücken Sie eine beliebige Taste . . .```
tawdry leaf
fierce dove
ruby sparrow
#

weiss einer warum ( das rot

solid ingot
#

weil die klammer nicht geschlossen wird

#

wenn du mit der maus drübergehst, wird dir auch immer angezeigt wieso etwas rot unterstrichen ist

ruby sparrow
#

hab schon he,acht

#

gemacht

ruby sparrow
# lofty rock Moin Moin ich probiere mit chat GPT ein soundboard in Python zu machen weil auf ...
import os
import pyaudio
import sounddevice as sd
from PyQt5.QtWidgets import QApplication, QMainWindow, QWidget, QVBoxLayout, QPushButton, QTableWidget, QTableWidgetItem, QFileDialog
from PyQt5.QtCore import Qt
import numpy as np
from pydub import AudioSegment

class CloudPadSoundboard(QWidget):
    def __init__(self):
        super().__init__()
        self.init_ui()

    def init_ui(self):
        self.setWindowTitle("CloudPad Soundboard")
        self.setGeometry(100, 100, 800, 400)

        self.audio_files = []
        self.sounds_folder = "sounds"

        layout = QVBoxLayout()
        self.setLayout(layout)

        self.table = QTableWidget(self)
        self.table.setColumnCount(1)
        self.table.setHorizontalHeaderLabels(["Sound"])
        self.table.horizontalHeader().setStretchLastSection(True)
        layout.addWidget(self.table)

        self.add_button = QPushButton("Add Sound", self)
        self.add_button.clicked.connect(self.add_sound)
        layout.addWidget(self.add_button)

        self.play_button = QPushButton("Play Sound", self)
        self.play_button.clicked.connect(self.play_sound)
        layout.addWidget(self.play_button)

        self.stop_button = QPushButton("Stop Sound", self)
        self.stop_button.clicked connect(self.stop_sound)
        layout.addWidget(self.stop_button)

        self.load_sounds()

        self.p = pyaudio.PyAudio()
        self.stream = None
        self.playing = False

    def add_sound(self):
        file_dialog = QFileDialog()
        file_path, _ = file_dialog.getOpenFileName(self, "Add Sound", "", "Audio Files (*.mp3)")

        if file_path:
            destination = os.path.join(self.sounds_folder, os.path.basename(file_path))

            if not os.path.exists(destination):
                sound = AudioSegment.from_mp3(file_path)
                sound.export(destination, format="wav")

            self.load_sounds()

    def play_sound(self):
        selected_row = self.table.currentRow()
        if selected_row >= 0 and selected_row < len(self.audio_files):
            sound_file = os.path.join(self.sounds_folder, self.audio_files[selected_row])
            self.play_audio(sound_file)

    def play_audio(self, file_path):
        if self.stream:
            self.stream.stop()
            self.stream.close()

        audio = AudioSegment.from_wav(file_path)
        audio = audio.set_channels(2)  # Ensure audio has 2 channels

        audio = audio.raw_data
        audio = np.frombuffer(audio, dtype=np.int16)

        self.stream = sd.OutputStream(device=None, channels=2, callback=self.callback, dtype='int16')
        self.stream.start()
        self.stream.write(audio.tobytes())

        self.playing = True

    def callback(self, outdata, frames, time, status):
        pass

    def stop_sound(self):
        if self.stream and self.playing:
            self.stream.stop()
            self.playing = False
            self.stream.close()

    def load_sounds(self):
        sound_files = [file for file in os.listdir(self.sounds_folder) if file.endswith(".mp3")]
        self.audio_files = sound_files
        self.table.setRowCount(len(sound_files))

        for i, sound_file in enumerate(sound_files):
            item = QTableWidgetItem(sound_file)
            self.table.setItem(i, 0, item)

    def closeEvent(self, event):
        self.stop_sound()
        self.p.terminate()
        super().closeEvent(event)

def main():
    app = QApplication(sys.argv)
    window = CloudPadSoundboard()
    window.show()
    sys.exit(app.exec_())

if __name__ == '__main__':
    main()
``` test mal aus
lofty rock
#

oder nur aus Headset

lofty rock
lofty rock
#

nächster fehler wenn ich einen sound abspielen will (Play Sound) kommt des: py Traceback (most recent call last): File "C:\Users\1444\Downloads\CloudPad\main.py", line 66, in play_sound self.play_audio(sound_file) File "C:\Users\1444\Downloads\CloudPad\main.py", line 81, in play_audio self.stream.write(audio.tobytes()) File "C:\Users\1444\AppData\Roaming\Python\Python311\site-packages\sounddevice.py", line 1538, in write raise ValueError('number of channels must match') ValueError: number of channels must match Drücken Sie eine beliebige Taste . . .

last depot
#

Weiß einer warum die Zeit unten am embed anders ist ?

fierce dove
#

Code

twilit anvil
# last depot

Du hast denke ich bei timestamp=datetime.datetime.utcnow() eingegeben. Richtig wäre: timestamp=datetime.datetime.now()

last depot
twilit anvil
limber crow
#

Kurze frage. Kann man eine Methode schreiben, dass wenn man auf EN oder DE klickt, dass sich die die Texte auf die Ausgewählte sprache ändert ?

urban glen
#

Ja.

#

Warum sollte das nicht gehen?

limber crow
urban glen
#

Googlen und ausprobieren kann man auch mal

twilit anvil
#

Moin! Ich würde mir gerne das Datum und die Uhrzeit ausgeben lassen, wann ein Nutzer seinen Account erstellt hat. Aber folgendes Problem tritt auf:
Python version 3.11 does not allow nesting of string literals with the same quote inside f-strings

Das hier ist der Code:

embed.add_field(name="📆 Erstellt", value=f"```yaml\n{user.created_at.strftime("%d.%m.%Y um %H:%M Uhr")}")
#

Sorry wegen der Formatierung.

solid ingot
#

innerhalb von einem f-string, den du mit " beginnst, kannst du nicht nochmal " verwenden

#

zumindest nicht in python 3.11

twilit anvil
#

Aber in python 3.12 wird ja pycord noch nicht unterstüzt.

#

Oder mittlerweile doch?

solid ingot
#

twilit anvil
#

bruh

#

lul hab den fehler behoben, indem ich ' anstatt " benutzt habe.

urban glen
#

GG

edgy axle
#

Moin, ich hab mal eine Allgemeine Frage zu /command Berechtigungsverwaltung, ich meine mal irgendwo ein Portal dazu gesehen zu haben entweder im Discord dev Portal oder wo anders. Dort konnte man festlegen welche Rollen welche /commands nutzen können... bin mir aber nicht sicher ob ich mir das einbilde xD

edgy axle
urban glen
#

Servereinstellungen -> Integration -> Wähle deinen Bot aus -> Und dann stell ein was du willst

#

@edgy axle

edgy axle
#

Danke : )

limber crow
#

Wie kann ich hier im Code sagen, dass es für alle Embeds sein soll die vom Bot erstellt worden sind ?

import discord

from discord.ext import commands
from discord.commands import slash_command
from deep_translator import GoogleTranslator
from Utils.config import *


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

    @slash_command(name="settings", description="Setze deine wichtigsten Einstellungen")
    async def settings(self, ctx):
        
        em = discord.Embed(
            title="Hello",
        )
        
        await ctx.respond(embed=em, view=SelectMenu())


def setup(bot):
    bot.add_cog(Translate(bot))
    
class SelectMenu(discord.ui.View):
    def __init__(self):
        super().__init__(timeout=None)
    
    options = [
        discord.SelectOption(
            label="Farbe Auswählen",
            description="Sende dein Roster in ein Channel",
        ),
    ]
    
    @discord.ui.select(
        placeholder="🀄️ | Erstelle dein Embed",
        min_values=1,
        max_values=1,
        options=options,
        custom_id="roster_select:select",
    )
    async def callback(
            self, select: discord.ui.Select, interaction: discord.Interaction
    ):
        selected_option = select.values[0]
        if selected_option == "Farbe Auswählen":
            await interaction.response.send_message(
                view=LanguageSelectMenu()
            )
            
class LanguageSelectMenu(discord.ui.View):
    def __init__(self):
        super().__init__(timeout=None)
        
    def translate(self, text: str, to_language: str):
        translator = GoogleTranslator(source='auto', target=to_language)
        return translator.translate(text)
    
    options = [
        discord.SelectOption(
            label="Deutsch",
            description="Füge deinen Custom Titel hinzu"
        ),
        discord.SelectOption(
            label="Englisch",
            description="Füge deine Custom beschreibung hinzu"
        ),
    ]
    
    @discord.ui.select(
        placeholder="🎭 | Wähle deine Sprache aus",
        min_values=1,
        max_values=1,
        options=options,
        custom_id="lg_select:select",
    )
    async def callback(
            self, select: discord.ui.Select, interaction: discord.Interaction
    ):
        selected_option = select.values[0]
        if selected_option == "Deutsch": 
            await interaction.edit(
            embed=discord.Embed(
                description=self.translate(self.text, "de")
            )
        )
            await interaction.response.send_message("Du hast die Sprache auf Deutsch gestellt", ephemeral=True)

        if selected_option == "Englisch":
            await interaction.edit(
            embed=discord.Embed(
                color=0x111111,
                description=self.translate(self.text, "en")
            )
        )
            await interaction.response.send_message("Du hast die Sprache auf Englisch gestellt", ephemeral=True)
urban glen
limber crow
native plume
fierce dove
#

Wie kann ich das sqlite theme ändern in vsc

ruby sparrow
urban glen
fierce dove
#

So meine ich

#

So soll es aussehen

urban glen
#

Kommt auf die extension an glaub ich

fierce dove
#

Ok

ruby sparrow
#
Ignoring exception in command rank:
Traceback (most recent call last):
  File "C:\Users\nicor\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\commands\core.py", line 131, in wrapped
    ret = await coro(arg)
  File "C:\Users\nicor\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\commands\core.py", line 1000, in _invoke
    await self.callback(self.cog, ctx, **kwargs)
  File "C:\Users\nicor\OneDrive\Desktop\Cookie Bot\cogs\lvlsystem.py", line 133, in rank
    mathe_lvl = self.get_level(mathe_xp)
  File "C:\Users\nicor\OneDrive\Desktop\Cookie Bot\cogs\lvlsystem.py", line 22, in get_level
    xp -= amount
TypeError: unsupported operand type(s) for -=: 'tuple' and 'int'

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

Traceback (most recent call last):
  File "C:\Users\nicor\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\bot.py", line 1133, in invoke_application_command
    await ctx.command.invoke(ctx)
  File "C:\Users\nicor\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\commands\core.py", line 381, in invoke
    await injected(ctx)
  File "C:\Users\nicor\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\commands\core.py", line 139, in wrapped
    raise ApplicationCommandInvokeError(exc) from exc
discord.errors.ApplicationCommandInvokeError: Application Command raised an exception: TypeError: unsupported operand type(s) for -=: 'tuple' and 'int'```
silk gulch
#

Weiß jemand, was man da jetzt machen muss beim Erstellen eines Links für den Bot?

#

Wegen dem "Please enter a redirect uri".

solid ingot
#

was hast du denn oben bei den scopes ausgewählt?

solid ingot
#

sonst nichts?

silk gulch
#

#

Könnte auch kurz Talk und es dir zeigen.

solid ingot
#

jo okay

raven lotus
#

Hi, ich habe eine Frage:
Ich versuche in einem Cog das Prefix s! zu machen (ich nutze ezcord), doch es geht nicht

#

egal ob ich @commands, @commands.command oder @discord.command mache

#

wie macht man das?

odd kiteBOT
urban glen
#

Hast du so deinen bot in der Main File defined?

#

Also ich weiß nd genau, aber ich vermute das man ezcord.PrefixBot machen muss

lofty rock
#

wie mention man den user der einen channel erstellt hat?

odd kiteBOT
limber crow
lofty rock
#

author.mention

limber crow
#

Damit wird der Author des Channels gepingt

lofty rock
limber crow
lofty rock
# limber crow Jo
description=f"A channel has been deleted: {channel.mention} by {author.mention}",```
#

also so?

limber crow
lofty rock
lofty rock
# limber crow Kenne deinen Code halt nicht

@bot.event
async def on_guild_channel_delete(channel):
    log_channel_id = 1164852235373649920  # Replace with the actual log channel ID
    log_channel = bot.get_channel(log_channel_id)
    if log_channel:
        creator = channel.guild.get_member(channel.guild.owner_id)
        embed = discord.Embed(
            title="Channel Deleted",
            description=f"A channel has been deleted: {channel.mention} by {author.mention}",
            color=discord.Color.red()
        )
        await log_channel.send(embed=embed)```
#
@bot.event
async def on_guild_channel_create(channel):
    log_channel_id = 1164852235373649920  
    log_channel = bot.get_channel(log_channel_id)
    if log_channel:
        creator = channel.guild.get_member(channel.guild.owner_id)
        embed = discord.Embed(
            title="Channel Created",
            description=f"A new channel has been created: {channel.mention} by {author.mention}",
            color=discord.Color.green()
        )
        await log_channel.send(embed=embed)```
silk gulch
#

Muss man einen Loop noch irgendwo starten oder sowas? Führt halt absolut nichts aus.

@tasks.loop(time=time(9, 27, tzinfo=timezone.utc))```
limber crow
#

Also in on_guild_channel_create(ctx, channel)

#

Genauso beim löschen

limber crow
limber crow
lofty rock
#

Ignoring exception in on_guild_channel_create
Traceback (most recent call last):
File "C:\Users\1444\AppData\Roaming\Python\Python311\site-packages\discord\client.py", line 378, in _run_event
await coro(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^
TypeError: on_guild_channel_create() missing 1 required positional argument: 'channel'

limber crow
lofty rock
# limber crow Dann mach das ctx weg und mach es einfach so ‘channel.author.mention‘

Ignoring exception in on_guild_channel_create
Traceback (most recent call last):
File "C:\Users\1444\AppData\Roaming\Python\Python311\site-packages\discord\client.py", line 378, in _run_event
await coro(*args, **kwargs)
File "C:\Users\1444\Desktop\code\main.py", line 60, in on_guild_channel_create
description=f"A channel has been deleted: {channel.mention} by {channel.author.mention}",
^^^^^^^^^^^^^^
AttributeError: 'TextChannel' object has no attribute 'author'

limber crow
lofty rock
raven lotus
#

Kann man eine Custom Activity (also beim Profil) mit Python machen?

limber crow
native plume
silk gulch
#

Wie erhalte ich denn nochmal den Anzeigenamen, anstelle des Usernames?
Will, dass × 𝑨𝒆𝒏𝒐𝒙𝒊𝒄 × ausgegeben wird und nicht aenoxic.

silk gulch
twilit anvil
#

Der User ist ja der Member.

silk gulch
#

Achso.

odd kiteBOT
#

Mein Discord Server
https://discord.gg/zfvbjTEzv6

Links aus diesem Video
Git ► https://git-scm.com/downloads

▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
Mein Hosting* ► https://tidd.ly/3gJufg6
Code auf Github ► https://github.com/tibue99/tutorial-bot

PYCORD
Docs ► https://docs.pycord.dev/
Guide ► https://guide.pycord.dev/introduction/
Discord Server ► https://d...

▶ Play video
silk gulch
twilit anvil
#

@solid ingot GRÜÜÜÜÜÜÜßE

twilit anvil
#

Passiert in der 1. Minute.

silk gulch
#

Bin dabei.

raven lotus
silk gulch
#

@solid ingot, aber wie erhalte ich ihn von der Member-Klasse?

AttributeError: 'Member' object has no attribute 'global_name'

solid ingot
#

vlt ist deine pycord Version zu alt

odd kiteBOT
quasi eagle
#

Die schriftart.otf datei wird nicht gefunden. Wie kann man den pfad zu der schriftart angeben?

fierce dove
#
Traceback (most recent call last):
  File "C:\Users\Schüler\AppData\Local\Programs\Python\Python311\Lib\site-packages\discord\client.py", line 378, in _run_event
    await coro(*args, **kwargs)
  File "C:\Users\Schüler\Documents\CosmicBot\cogs\General\Level.py", line 17, in on_ready
    await db.execute(
  File "C:\Users\Schüler\AppData\Local\Programs\Python\Python311\Lib\site-packages\aiosqlite\core.py", line 184, in execute
    cursor = await self._execute(self._conn.execute, sql, parameters)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\Schüler\AppData\Local\Programs\Python\Python311\Lib\site-packages\aiosqlite\core.py", line 129, in _execute
    return await future
           ^^^^^^^^^^^^
  File "C:\Users\Schüler\AppData\Local\Programs\Python\Python311\Lib\site-packages\aiosqlite\core.py", line 102, in run
    result = function()
             ^^^^^^^^^^
sqlite3.OperationalError: database is locked
#

hilfeeeee

urban glen
fierce dove
#

ja

urban glen
fierce dove
#

er erstellt keine tabelle

urban glen
#

Wenn du was änderst, musst du auf "Änderung schreiben" klicken

urban glen
fierce dove
#
[ERROR] Error in event on_message 
Traceback (most recent call last):
  File "C:\Users\Schüler\AppData\Local\Programs\Python\Python311\Lib\site-packages\discord\client.py", line 378, in _run_event
    await coro(*args, **kwargs)
  File "C:\Users\Schüler\Documents\CosmicBot\cogs\General\Level.py", line 32, in on_message
    guild = message.guild
    ^^^^^
UnboundLocalError: cannot access local variable 'db' where it is not associated with a value
urban glen
#

Du connectest nirgends zu deiner Datenbank

#

Also kannst du auch nicht async with db.execute nutzen

fierce dove
#

ok

#

also mit cursor = await db.execute("")

urban glen
#

Nein, du musst erstmal zur Datenbank connecten

fierce dove
#

jetzt

lofty rock
#

Was kommt als nächstes @solid ingot

viscid lake
#

bekomme die ganze zeit py discord.errors.HTTPException: 400 Bad Request (error code: 50035): Invalid Form Body In permission_overwrites: Must be 100 or fewer in length.
das ding ich habe 11 perms die ich ändern Code:

class SupportModal(discord.ui.Modal):
    def __init__(self, user, *args, **kwargs):
        super().__init__(

            discord.ui.InputText(
                label="Wie können wir dir Helfen",
                style=discord.InputTextStyle.long,
                min_length=0,
                max_length=2500,
            ),
            *args,
            **kwargs
        )
        self.user = user

    async def callback(self, interaction):

        with open('ticketname.json', 'r') as f:
            data = json.load(f)
        countersupport = data["countersupport"]
        supportcategory_id = 1164311336445038747  # SUPPORT KATEGORIE
        kategorie = interaction.guild.get_channel(supportcategory_id)

        # Berechtigungen für den erstellten Textkanal festlegen
        overwrites = {
            interaction.user: discord.PermissionOverwrite(
                read_messages=True,  # Nachrichten lesen
                send_messages=True,  # Nachrichten senden
                add_reactions=True,  # Reaktionen hinzufügen
                mention_everyone=False,  # Jeden erwähnen (@everyone und @here)

            )
        }

        # Liste der Support-Rollen
        support_roles = ["⠀⠀⠀⠀🔫 𑁉 CREW-TEΛM 𑁉 🔫⠀⠀⠀⠀", "「📌」 𑁉 TICKET-SUPPORTER"]

        for support_role_name in support_roles:
            support_role = discord.utils.get(interaction.guild.roles, name=support_role_name)
            if support_role:
                overwrites[support_role] = discord.PermissionOverwrite(
                    read_messages=True,  # Nachrichten lesen
                    send_messages=True,  # Nachrichten senden
                    add_reactions=True,  # Reaktionen hinzufügen
                    mention_everyone=False,  # Jeden erwähnen (@everyone und @here)
                )

        # Berechtigungen für alle anderen Rollen festlegen (Keine Zugriffsrechte)
        for role in interaction.guild.roles:
            if role not in overwrites:
                overwrites[role] = discord.PermissionOverwrite(
                    read_messages=False,
                    send_messages=False,
                    add_reactions=False,
                )


                now = datetime.datetime.now()
                timestamp = now.strftime("%A, %d. %B %Y %H:%M")

                ticket_beschreibung = f"Ticket geöffnet am: {timestamp}" # Das ist die Ticket kanal Beschreibung

        channelsupport = await interaction.guild.create_text_channel(
            f"Support-{countersupport}",
            category=kategorie,
            overwrites=overwrites,
            topic=ticket_beschreibung
        )```
#

(kp ob das mit chatgpt gemacht wurde ich hab den so bekommen)

lofty rock
viscid lake
#

Nur weil da ein # ist heißt es nicht das es von chatgpt kommen muss kann auch sein das er das gemacht hat um es zu verstehen oder so 🤷‍♂️

native plume
#

Bzw du musst da meines Wissens was reinschreiben

viscid lake
#

Und wenn ich mich nicht täusche kommt er Fehler von den Channel perms

native plume
#

Max_lenght = 100?

viscid lake
#
discord.errors.HTTPException: 400 Bad Request (error code: 50035): Invalid Form Body
In permission_overwrites: Must be 100 or fewer in length.```
native plume
#

Form Bpdy kommt meines Wissens von Modal

viscid lake
#

Yes

ruby sparrow
# viscid lake bekomme die ganze zeit ```py discord.errors.HTTPException: 400 Bad Request (erro...
class SupportModal(discord.ui.Modal):
    def __init__(self, user, *args, **kwargs):
        super().__init__(
            discord.ui.InputText(
                label="Wie können wir dir Helfen",
                style=discord.InputTextStyle.long,
                min_length=0,
                max_length=2500,
            ),
            *args,
            **kwargs
        )
        self.user = user

    async def callback(self, interaction):
        with open('ticketname.json', 'r') as f:
            data = json.load(f)
        countersupport = data["countersupport"]
        supportcategory_id = 1164311336445038747  # SUPPORT KATEGORIE
        kategorie = interaction.guild.get_channel(supportcategory_id)

        

        # Setze Berechtigungen für den Benutzer, der das Ticket erstellt
        overwrites[interaction.user] = discord.PermissionOverwrite(
            read_messages=True,
            send_messages=True,
            add_reactions=True,
            mention_everyone=False,
        )

        # Definiere Support-Rollen
        support_roles = ["⠀⠀⠀⠀🔫 𑁉 CREW-TEΛM 𑁉 🔫⠀⠀⠀⠀", "「📌」 𑁉 TICKET-SUPPORTER"]

        for support_role_name in support_roles:
            support_role = discord.utils.get(interaction.guild.roles, name=support_role_name)
            if support_role:
                overwrites[support_role] = discord.PermissionOverwrite(
                    read_messages=True,
                    send_messages=True,
                    add_reactions=True,
                    mention_everyone=False,
                )

        # Setze Berechtigungen für alle anderen Rollen mit minimalem Zugriff
        for role in interaction.guild.roles:
            if role.id not in overwrites:
                overwrites[role] = discord.PermissionOverwrite(
                    read_messages=False,
                    send_messages=False,
                )

        now = datetime.datetime.now()
        timestamp = now.strftime("%A, %d. %B %Y %H:%M")
        ticket_beschreibung = f"Ticket geöffnet am: {timestamp}"

        # Überprüfe, ob die Anzahl der Berechtigungen im Limit von 100 bleibt
        if len(overwrites) > 100:
            await interaction.response.send_message("Zu viele Berechtigungen. Der Kanal kann nicht erstellt werden.")
        else:
            channelsupport = await interaction.guild.create_text_channel(
                f"Support-{countersupport}",
                category=kategorie,
                overwrites=overwrites,
                topic=ticket_beschreibung
            )``` test mal so
#

@viscid lake geht es ?

viscid lake
ruby sparrow
lofty rock
#
Traceback (most recent call last):
  File "/home/container/main.py", line 108, in <module>
    for filename in os.listdir("cogs"):
NameError: name 'os' is not defined```
lofty rock
#

danke#

#

irgendwie wird die Auto mod regel nicht angezeigt

#

achso

#

ist garnicht eingerichtet

urban glen
#

._.

lofty rock
urban glen
#

Keine Ahnung

lofty rock
solid ingot
#

welcher bot?

tawdry leaf
lofty rock
tawdry leaf
#

Hat Timo bereits im Video gesagt

lofty rock
tawdry leaf
#

Kannst du nachlesen

lofty rock
tawdry leaf
#

Auf der discord Website

viscid lake
#

wenn ich jemand hinzufüge per id ist der channel auf einmal offen warum auch immer

class UserHinzufuegenModal(discord.ui.Modal):
    def __init__(self, *args, **kwargs):
        super().__init__(
            discord.ui.InputText(
                label="USER ID",
                placeholder="Schreibe die User ID hier rein",
                min_length=18,
                max_length=18,
            ),
            *args,
            **kwargs
        )

    async def callback(self, interaction):
        user_id = self.children[0].value

        try:
            user_id = int(user_id)
        except ValueError:
            ungueltige_id_embed = discord.Embed(
                title="Ungültige User ID",
                description=f"Bitte gib eine gültige numerische ID ein",
                color=discord.Color.red()
            )
            await interaction.response.send_message(embed=ungueltige_id_embed, ephemeral=True)
            return

        user = interaction.guild.get_member(user_id)

        if not user:
            user_id_embed = discord.Embed(
                title="User nicht Gefunden",
                description=f"Die angegebene User ID wurde nicht gefunden oder gibt es nicht",
                color=discord.Color.red()
            )
            await interaction.response.send_message(embed=user_id_embed, ephemeral=True)
            return

        text_channel = interaction.channel
        overwrites = text_channel.overwrites

        if user in overwrites:
            user_id_ist_im_ticket = discord.Embed(
                title="User bereits im Ticket ??",
                description=f"Der User {user.mention} ist bereits im Ticket.",
                color=discord.Color.blue()
            )
            await interaction.response.send_message(embed=user_id_ist_im_ticket, ephemeral=True)
            return

        overwrites[user] = discord.PermissionOverwrite(
            read_messages=True,
            send_messages=True,
            add_reactions=True,
            use_slash_commands=False,
            external_emojis=False,
            use_external_emojis=False,
            mention_everyone=True,
            attach_files=True,
            embed_links=True,
            manage_messages=False,
            send_tts_messages=False,
            create_instant_invite=False,
        )

        await text_channel.edit(overwrites=overwrites)

        embed = discord.Embed(
            title="✅ USER ERFOLGREICH HINZUGEFÜGT ✅",
            description=f"{interaction.user.mention} hat den User {user.mention} zum Ticket Hinzugefügt",
            color=discord.Color.green()
        )
        await interaction.response.send_message(embed=embed)```
#

hat jemand eine lösung und beim entfernen wird der user dann auch nicht entfernt

vivid sky
#
       overwrites = discord.PermissionOverwrite(
            user,
            read_messages=True,
            send_messages=True,
            add_reactions=True,
            use_slash_commands=False,
            external_emojis=False,
            use_external_emojis=False,
            mention_everyone=True,
            attach_files=True,
            embed_links=True,
            manage_messages=False,
            send_tts_messages=False,
            create_instant_invite=False,
        )

        await text_channel.edit(overwrites=overwrites)

versuchs mal so

upper adder
#

Wisst ihr was passiert, wenn man eine Message ID einer gelöschten Nachricht hat und davon eine PartialMessage bekommen will?

viscid lake
upper adder
vivid sky
# viscid lake ```py File "c:\Users\sebas\Desktop\baustelle\haupt bot\cogs\moderation\modmail...
    overwrites = {
        user: discord.PermissionOverwrite(
            read_messages=True,
            send_messages=True,
            add_reactions=True,
            use_slash_commands=False,
            external_emojis=False,
            use_external_emojis=False,
            mention_everyone=True,
            attach_files=True,
            embed_links=True,
            manage_messages=False,
            send_tts_messages=False,
            create_instant_invite=False,
        )
    }
    
    await ctx.text_channel.edit(overwrites=overwrites)
```?
upper adder
#

Daran liegts nicht

#

liegt an der __init__.

#

Lest doch mal den Error mensch.

viscid lake
#

davor kam der fehler nicht...

#

alles gut funktoniert

blissful vale
#

Hey, an die ganzen Python OpenCV Freaks unter euch:
Ich habe eine kleine Frage!
Wie kann ich denn checken ob ein Gesicht in der Cam ungefähr mit einem Bild übereinstimmen? Sollte ich dafür mit YoloV5 models Arbeiten oder gibt es da einen anderen, vielleicht sogar einfacheren Weg?
Vielen Dank im Vorraus!

lofty rock
#

Kann mir wer ein Ticke system geben bitte

urban glen
#

viscid lake
lofty rock
#

Ok

ruby sparrow
# lofty rock Ok

wenn du timo seine vieso an gesehen hast denn kannst dir ein machen

lofty rock
ruby sparrow
limber crow
lofty rock
limber crow
ruby sparrow
#

@lofty rock guck mal dm

ruby sparrow
#
 File "C:\Users\nicor\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\ui\modal.py", line 285, in find_open_space
    raise ValueError("could not find open space for item")
ValueError: could not find open space for item```
#
    def __init__(self, user, *args, **kwargs):
        super().__init__(

            discord.ui.InputText(
                label="Als was möchtest du dich bewerben ?",
                style=discord.InputTextStyle.long,
                min_length=0,
                max_length=2500,
            ),
            discord.ui.InputText(
                label="Wie alt bist du ?",
                style=discord.InputTextStyle.long,
                min_length=1,
                max_length=2500,
            ),
            discord.ui.InputText(
                label="Was sind deine Stärken ?",
                style=discord.InputTextStyle.long,
                min_length=2,
                max_length=2500,
            ),
            discord.ui.InputText(
                label="Nennen mir 3 nicht so gute Dinge über dich",
                style=discord.InputTextStyle.long,
                min_length=3,
                max_length=2500,
            ),
            discord.ui.InputText(
                label="Wie sind Ihre Online-Zeiten?",
                style=discord.InputTextStyle.long,
                min_length=4,
                max_length=2500,
            ),
            discord.ui.InputText(
                label="haben sie Admin Erfahrung",
                placeholder="zb auf Servern",
                style=discord.InputTextStyle.long,
                min_length=5,
                max_length=2500,
            ),
            *args,
            **kwargs
        )
        self.user = user```
urban glen
graceful fiber
#

Wollte gerade mal das Dashboard in grundzügen nachcoden mit dem Tut, bei Part 2 kommt aber der Error

#

Hab aber leider keinen Plan von Ezcord 😅

fierce dove
#

pip freeze

graceful fiber
fierce dove
#

Zeig deine pip freeze

graceful fiber
fierce dove
#

Hmmm

graceful fiber
#

ist halt das von der env

#

als einfach die reqs für das projekt

ruby sparrow
#

@graceful fiber komm mal call

graceful fiber
graceful fiber
ruby sparrow
graceful fiber
#

kann erst gleich kurz kommen

ruby sparrow
#

Wie kann ich das so machen, dass nur bestimmte Rollen die Buttons nutzen dürfen?

urban glen
#

rolle getten und dann mit ner if abfrage prüfen ob der user die rolle hat, und wenn nicht dann schickst du die nachricht das er nh ebstimmte rolle braucht

kind depot
#

welches vsc plugin nutzt Timo eigentlich um die datenbanken anzeigen zu lassen?

tawdry leaf
#

keines

viscid lake
urban glen
#

Nein

viscid lake
#

Statt ein x kannst du es auch sagen peepothink

tawdry leaf
#

geht auch gar nd xD

urban glen
#

Such einfach nach qwtel.sqlite-viewer

viscid lake
urban glen
#

dann hast du es :)

tawdry leaf
urban glen
#

@modest obsidian du hast es ja geschafft ^^

kind depot
urban glen
#

Kein ding :o

tawdry leaf
urban glen
tawdry leaf
#

ja erst lesen 🙂

modest obsidian
#

Hi habe eine frage kann mir jemand bei dem erorr code helfen weil ich sitze daran schon seit/ monaten Traceback (most recent call last):
File "C:\Users\chris\PycharmProjects\pythonProject7\main.py", line 5, in <module>
import aiocron
File "C:\Users\chris\AppData\Local\Programs\Python\Python311\Lib\site-packages\aiocron_init_.py", line 2, in <module>
from croniter.croniter import croniter
File "C:\Users\chris\AppData\Local\Programs\Python\Python311\Lib\site-packages\croniter_init_.py", line 3, in <module>
from .croniter import (
File "C:\Users\chris\AppData\Local\Programs\Python\Python311\Lib\site-packages\croniter\croniter.py", line 6, in <module>
import traceback as _traceback
File "C:\Users\chris\AppData\Local\Programs\Python\Python311\Lib\traceback.py", line 5, in <module>
import linecache
File "C:\Users\chris\AppData\Local\Programs\Python\Python311\Lib\linecache.py", line 11, in <module>
import tokenize
File "C:\Users\chris\AppData\Local\Programs\Python\Python311\Lib\tokenize.py", line 38, in <module>
cookie_re = re.compile(r'^[ \t\f]#.?coding[:=][ \t]*([-\w.]+)', re.ASCII)
^^^^^^^^
AttributeError: module 're' has no attribute 'ASCII'

Process finished with exit code 1

tawdry leaf
#

code ?

modest obsidian
urban glen
#

Da wo der Error ist

tawdry leaf
modest obsidian
urban glen
#

Ja dann schick den Code

tawdry leaf
ruby sparrow
tawdry leaf
urban glen
modest obsidian
#
import ezcord
import random
from discord import Option
import aiocron
import pytz
bot = ezcord.Bot(
)


c = [
    "Online",
    "Idle",
    "Do not disturb",
    "Invisible",
]
gametype = [
    "Playing",
    "Streaming",
    "Listening",
    "Watching",
]
@bot.slash_command(name="status", description="Set the status of the bot")
async def abc(ctx, status: Option(str, "The status of the bot", choices=c), gametype: Option(str, "The gametype of the bot", choices=gametype), *, text: Option(str, "The text of the bot")):
    if status == "Online":
        status = discord.Status.online
    elif status == "Idle":
        status = discord.Status.idle
    elif status == "Do not disturb":
        status = discord.Status.dnd
    elif status == "Invisible":
        status = discord.Status.invisible
    else:
        status = discord.Status.online
    if gametype == "Playing":
        gametype = discord.ActivityType.playing
    elif gametype == "Streaming":
        gametype = discord.ActivityType.streaming
    elif gametype == "Listening":
        gametype = discord.ActivityType.listening
    elif gametype == "Watching":
        gametype = discord.ActivityType.watching
    else:
        gametype = discord.ActivityType.playing
    await bot.change_presence(status=status, activity=discord.Activity(type=gametype, name=text))
    await ctx.respond(content=f"Status was set to {status} {gametype} {text}", ephemeral=True)


minute = "0"
stunde = "22"
end = f"{minute} {stunde} * * *"
@aiocron.crontab(end, tz=pytz.timezone('Europe/Berlin'), start=True)
async def morning():
    channel = bot.get_channel(1111799805384081588)
    await channel.send("Gute Nacht Feuer-chris • Community ! ::sleeping::")


minute = "0"
stunde = "6"
end = f"{minute} {stunde} * * *"
@aiocron.crontab(end, tz=pytz.timezone('Europe/Berlin'), start=True)
async def morning():
    channel = bot.get_channel(1111799805384081588)
    await channel.send("Guten Morgen Feuer-chris • Community ! ::sleeping_accommodation::")


@bot.slash_command(name="iq", description="Zeigt dir den IQ eines Users an")
async def iq(ctx, user: discord.Member = None):
    if user == None:
        user = ctx.author
    await ctx.respond(f"**{user.name}'s IQ:** {random.randint(75, 150)}")

@bot.slash_command(description='Kicke ein Nutzer auf dein Server.')
async def kick(ctx, member: discord.Member, grund: str):
    if not ctx.author.guild_permissions.kick_members:
        embed = discord.Embed(title=":warning: | Du hast keine Rechte dafür!", color=0xffa55c)
        await ctx.respond(embed=embed, ephemeral=False)
        return
    guild = bot.get_guild(886328523701223504)
    embed = discord.Embed(title=f"Erfolgreicher Kick!", description=f"""
    **Der Nutzer {member.mention} Wurde Erfolgreich Gekickt**

    Grund: {grund}
    """, color=0x2ecc71)
    embed.set_thumbnail(url=f"{ctx.guild.icon.url}")
    embed.set_footer(text=f"{ctx.author.name}", icon_url=ctx.author.avatar.url)
    await ctx.respond(embed=embed)
    embed2 = discord.Embed(title=f'**Du Wurdest Gekickt! auf {ctx.guild.name}**', description=f"""


    **Der Grund: {grund}**
        """, color=0xe74c3c)
    embed2.set_thumbnail(url=f"{ctx.guild.icon.url}")
    embed2.set_footer(text=f"{ctx.author.name}", icon_url=ctx.author.avatar.url)
    await member.send(embed=embed2)
    await ctx.guild.kick(member)

if message.content.startswith("!apply"):

        applyChannel = client.get_channel(729854567197704303)



@bot.slash_command(description="Überprüfe ob der Bot noch online ist!")
async def ping(ctx):
    await ctx.respond(f"**:bulb:` | Pong! {ctx.author.mention}**", ephemeral=True)
@bot.event
async def on_ready():
    print(f"{bot.user} ist online")

if name == "main":
    bot.load_cogs("cogs")  # Load all cogs in the "cogs" folder
    bot.run ```
tawdry leaf
#

Hilfe

urban glen
urban glen
modest obsidian
tawdry leaf
modest obsidian
#

aber da geht es um taks

tawdry leaf
urban glen
urban glen
ruby sparrow
#
import asyncio

import discord
from discord.ext import commands
from discord.commands import slash_command

class Umfrage(commands.Cog):
    def __init__(self, bot):
        self.bot = bot
        self.Btnopti1 = None
        self.Btnopti2 = None
        self.channel = None
        self.embed = None

    @slash_command(
        name='umfrage',
        description='Erstelle eine Umfrage',
    )
    async def umfrage(self, ctx, channel: discord.TextChannel = None):
        # Variablen
        self.channel = channel or ctx.channel

        if not ctx.author.guild_permissions.manage_messages:
            await ctx.send('Du hast keine Berechtigung, diesen Befehl zu verwenden.', hidden=True)
            return

        self.embed = discord.Embed(
            title='Umfrage-Embed',
            color=discord.Color.blue()
        )
        self.embed.set_thumbnail(url=ctx.guild.icon.url)
        self.embed.add_field(name='Option 1', value='> **`0`** Stimmen', inline=True)
        self.embed.add_field(name='Option 2', value='> **`0`** Stimmen', inline=True)
        self.embed.add_field(name='Umfrageersteller:', value=f'> {ctx.author}', inline=False)

        components = [
            discord.ui.Button(
                style=discord.ButtonStyle.secondary,
                label='Titel',
                emoji='📝',
                custom_id='umfrage-titel'
            ),
            discord.ui.Button(
                style=discord.ButtonStyle.secondary,
                label='Beschreibung',
                emoji='📝',
                custom_id='umfrage-beschreibung'
            ),
            discord.ui.Button(
                style=discord.ButtonStyle.secondary,
                label='Optionen bearbeiten',
                emoji='📝',
                custom_id='umfrage-optionen'
            ),
            discord.ui.Button(
                style=discord.ButtonStyle.primary,
                label='Umfrage senden',
                emoji='✉️',
                custom_id='umfrage-send'
            ),
            discord.ui.Button(
                style=discord.ButtonStyle.secondary,
                label='Kanal bearbeiten',
                emoji='📝',
                custom_id='umfrage-kanal'
            )
        ]

        await ctx.send(content=f'Sende an: {self.channel.mention}', embed=self.embed, components=components)

    @commands.Cog.listener()
    async def on_button_click(self, interaction):
        if not interaction.component.custom_id.startswith('umfrage-'):
            return

        # Behandlung von Button-Interaktionen
        if interaction.component.custom_id == 'umfrage-titel':
            title_modal = discord.ui.View()
            title_option = discord.ui.TextInput(style=discord.TextInputStyle.short, placeholder='Titel des Embeds')
            title_modal.add_item(title_option)
            await interaction.response.send_message('Gib den neuen Titel ein:', view=title_modal)

            try:
                title_response = await self.bot.wait_for('button_click', check=lambda
                    res: res.user == interaction.user and res.view == title_modal, timeout=60)
                title = title_response.values[0]
                if title:
                    self.embed.title = title
                await interaction.response.edit_message(embed=self.embed)
                await interaction.response.defer()
            except asyncio.TimeoutError:
                await interaction.response.send_message('Keine Antwort erhalten.', ephemeral=True)

def setup(bot):
    bot.add_cog(Umfrage(bot))
#
    raise ApplicationCommandInvokeError(exc) from exc
discord.errors.ApplicationCommandInvokeError: Application Command raised an exception: TypeError: Messageable.send() got an unexpected keyword argument 'components'```
kind depot
#

Frage... wie fügt man eigentlich zu seinem Dashbord aus dem Tutorial ein Icon hinzu? also zu der website? weil ich finde nix im internet..

urban glen
#

Du machst in deinen Header einfach <img src="BILD.png">

lofty rock
#
    bot = commands.Bot(command_prefix="*", activity=activity, status=discord.Status.online, intents=intents)
          ^^^^^^^^^^^^
AttributeError: module 'discord.commands' has no attribute 'Bot'```
twilit anvil
lofty rock
# twilit anvil Musst `discord.Bot` machen ig
    @bot.slash_command # Replace 'slash_command' with 'add_command'
     ^^^^^^^^^^^^^^^^^
TypeError: ApplicationCommandMixin.slash_command() takes 1 positional argument but 2 were given```
twilit anvil
#

Wo codest du denn? Pycord?

limber crow
#

Wieso wird der User nicht mit der neuen Discord funktion getimeoutet ?

Code

import discord
import os
import humanfriendly
import datetime

from discord.ext import commands
from discord.commands import slash_command

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

    @slash_command(description="hello")
    async def mute(self, ctx, member: discord.Member, time, *, reason: str = None):
        time = humanfriendly.parse_timespan(time)
        await member.edit(timeout = discord.utils.utcnow() + datetime.timedelta(seconds=time))
        await ctx.respond(f"{member.mention} wurde für {time} gemutet: {reason}")
        
    @slash_command(description="hello")
    async def unmute(self, ctx, member: discord.Member, *, reason: str = None):
        await member.edit(timeout = None)
        await ctx.respond(f"{member.mention} wurde für {reason} unmutet")
        


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

Fehler

[ERROR] Error while executing /mute 
Traceback (most recent call last):
  File "C:\Users\YT197\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\commands\core.py", line 131, in wrapped
    ret = await coro(arg)
  File "C:\Users\YT197\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\commands\core.py", line 1000, in _invoke
    await self.callback(self.cog, ctx, **kwargs)
  File "c:\Users\YT197\Desktop\Allgemein\Dev\Discord\Pycord\Ninja Dojo (Public Bot)\cogs\Admin\timeout.py", line 16, in mute
    await member.edit(timeout = discord.utils.utcnow() + datetime.timedelta(seconds=time))
TypeError: Member.edit() got an unexpected keyword argument 'timeout'

limber crow
# odd kite

@wind finch danke, aber hab den Fehler gefunden

wind finch
#

Alles klar 👌

limber crow
#

Wie kann ich es fixen, dass mir nicht die Sekunden zurückgegebn werden im Chat, sondern das was ich eingetragen haben in time ?


import discord
import os
import humanfriendly
import datetime

from discord.ext import commands
from discord.commands import slash_command

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

    @slash_command(description="hello")
    async def mute(self, ctx, member: discord.Member, time, *, reason: str = None):
        time = humanfriendly.parse_timespan(time)
        await member.timeout(discord.utils.utcnow() + datetime.timedelta(seconds=time))
        await ctx.respond(f"{member.mention} wurde für {time} gemutet: {reason}")
        
    @slash_command(description="hello")
    async def unmute(self, ctx, member: discord.Member, *, reason: str):
        await member.remove_timeout()
        await ctx.respond(f"{member.mention} wurde für {reason} unmutet")
        


def setup(bot):
    bot.add_cog(TimeoutCommand(bot))
urban glen
limber crow
urban glen
#

Dann definier es halt in Zeile 15 nicht als time, weil du es ja schon bei der mute function als parameter hast

#
    @slash_command(description="hello")
    async def mute(self, ctx, member: discord.Member, time, *, reason: str = None):
        time_for_timeout = humanfriendly.parse_timespan(time)
        await member.timeout(discord.utils.utcnow() + datetime.timedelta(seconds=time_for_timeout))
        await ctx.respond(f"{member.mention} wurde für {time} gemutet: {reason}")
limber crow
#

Ich habe eine frage und zwar wie kann ich abfragen ob der User getimeoutet wurde oder nicht und darauf hin soll der User getimeoutet werden wenn er es nicht ist und wenn der getimeoutet ist, soll eine Nachricht kommen

@slash_command(name="mute", description="Timeoute einen Member")
    async def mute(self, ctx, 
               member: Option(discord.Member, "Wähle einen Member"), 
               time: Option(str, required=True, description="Gib eine Zeit an", choices = [
                   OptionChoice(name="60 sec", value=60),
                   OptionChoice(name="5 min", value=300),
                   OptionChoice(name="10 min", value=600),
                   OptionChoice(name="1 hour", value=3600),
                   OptionChoice(name="1 day", value=86400),
                   OptionChoice(name="1 week", value=604800)
                   ]), *, 
               grund: Option(str, required=True, description="Grund für den Timeout")
            ):
        time_in_seconds = time
        time_for_timeout = humanfriendly.parse_timespan(time)
        await member.timeout(discord.utils.utcnow() + datetime.timedelta(seconds=time_for_timeout))
        
        
        em = discord.Embed(
            title="Timeout",
            color=MyColor
        )
        em.add_field(name="User", value=f"{member.mention} | `{member.id}`", inline=False)
        em.add_field(name="Grund", value=f"{grund}", inline=False)
        em.add_field(name="Zeit", value=f"{time_in_seconds}", inline=False)
        em.add_field(name="Teamler", value=f"{ctx.author.mention} | `{ctx.author.id}`", inline=False)
        em.set_footer(text=f"{ctx.guild.name}", icon_url=ctx.guild.icon)      
        
        await ctx.respond(embed=em)
odd kiteBOT
tawdry leaf
#

damit

limber crow
tawdry leaf
#

kd

wicked echo
#

bei mir beim starten des bots beim hosting kommt dieser error

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
wicked echo
#

warte

#
Python 3.10.13
:/home/container$ if [[ -d .git ]] && [[ "${AUTO_UPDATE}" == "1" ]]; then git pull; fi; if [[ ! -z "${PY_PACKAGES}" ]]; then pip install -U --prefix .local ${PY_PACKAGES}; fi; if [[ -f /home/container/${REQUIREMENTS_FILE} ]]; then pip install -U --prefix .local -r ${REQUIREMENTS_FILE}; fi; /usr/local/bin/python /home/container/${PY_FILE}
Requirement already satisfied: py-cord in ./.local/lib/python3.10/site-packages (from -r requirements.txt (line 1)) (2.4.1)
Requirement already satisfied: typing-extensions<5,>=4 in ./.local/lib/python3.10/site-packages (from py-cord->-r requirements.txt (line 1)) (4.8.0)
Requirement already satisfied: aiohttp<3.9.0,>=3.6.0 in ./.local/lib/python3.10/site-packages (from py-cord->-r requirements.txt (line 1)) (3.8.6)
Requirement already satisfied: async-timeout<5.0,>=4.0.0a3 in ./.local/lib/python3.10/site-packages (from aiohttp<3.9.0,>=3.6.0->py-cord->-r requirements.txt (line 1)) (4.0.3)
Requirement already satisfied: charset-normalizer<4.0,>=2.0 in ./.local/lib/python3.10/site-packages (from aiohttp<3.9.0,>=3.6.0->py-cord->-r requirements.txt (line 1)) (3.3.0)
Requirement already satisfied: attrs>=17.3.0 in ./.local/lib/python3.10/site-packages (from aiohttp<3.9.0,>=3.6.0->py-cord->-r requirements.txt (line 1)) (23.1.0)
Requirement already satisfied: yarl<2.0,>=1.0 in ./.local/lib/python3.10/site-packages (from aiohttp<3.9.0,>=3.6.0->py-cord->-r requirements.txt (line 1)) (1.9.2)
Requirement already satisfied: frozenlist>=1.1.1 in ./.local/lib/python3.10/site-packages (from aiohttp<3.9.0,>=3.6.0->py-cord->-r requirements.txt (line 1)) (1.4.0)
Requirement already satisfied: multidict<7.0,>=4.5 in ./.local/lib/python3.10/site-packages (from aiohttp<3.9.0,>=3.6.0->py-cord->-r requirements.txt (line 1)) (6.0.4)
Requirement already satisfied: aiosignal>=1.1.2 in ./.local/lib/python3.10/site-packages (from aiohttp<3.9.0,>=3.6.0->py-cord->-r requirements.txt (line 1)) (1.3.1)
Requirement already satisfied: idna>=2.0 in ./.local/lib/python3.10/site-packages (from yarl<2.0,>=1.0->aiohttp<3.9.0,>=3.6.0->py-cord->-r requirements.txt (line 1)) (3.4)
[notice] A new release of pip is available: 23.0.1 -> 23.3.1
[notice] To update, run: pip install --upgrade pip
Traceback (most recent call last):
  File "/home/container/main.py", line 6, in <module>
    from dotenv  import load_dotenv
ModuleNotFoundError: No module named 'dotenv'
tawdry leaf
#

python-dotenv

urban glen
tawdry leaf
#

ins requirement.txt schreiben

wicked echo
#

ok

hard pivot
#

Hallo weiß wer wie ich bei guthup diese abzeichen bekomme? (hat sich beantwortet)

urban glen
hard pivot
#

Danke

limber crow
#

Kann jemand über nen Code (Code ist nen Command in Dc) drüber gucken und mir sagen was man verbessern könnte (Am code oder ähnlichem und code schicke ich per dm)

tawdry leaf
limber crow
fierce dove
odd kiteBOT
limber crow
#

Warum tritt der Fehler auf und wie kann ich ihn beheben, damit ich diesen User entbannen kann ?

fehlercode

[ERROR] Error while executing /unban 
Traceback (most recent call last):
  File "C:\Users\YT197\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\commands\core.py", line 131, in wrapped
    ret = await coro(arg)
  File "C:\Users\YT197\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\commands\core.py", line 1000, in _invoke
    await self.callback(self.cog, ctx, **kwargs)
  File "c:\Users\YT197\Desktop\Allgemein\Dev\Discord\Pycord\Ninja Dojo (Public Bot)\cogs\Admin\ban.py", line 136, in unban
    await ctx.guild.unban(user=member, reason=grund)
  File "C:\Users\YT197\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\guild.py", line 3094, in unban
    await self._state.http.unban(user.id, self.id, reason=reason)
AttributeError: 'str' object has no attribute 'id'

Code

@slash_command(name="unban", description="Entbanne einen User von dem Server")
    async def unban(self, ctx: commands.Context,
                    member: Option(str, "Gib die ID des zu entbannenden Users an"),
                    grund: Option(str, required=True, description="Bitte gebe einen Grund an", choices=[
                        OptionChoice(name=gr, value=gr) for gr in [
                            "Entschuldigt",
                            "Andere"
                        ]
                    ])):
        
        member_id = int(member)

        if not ctx.author.guild_permissions.ban_members:
            await ctx.respond(f"Du hast keine Berechtigung um von dem User {member.mention} seinen Timeout zu Entfernen", ephemeral=True)
            return

        em1 = discord.Embed(
            color=MyColor
        )
        file1 = discord.File(f"img/Banner.png", filename="Banner.png")
        em1.set_image(url="attachment://Banner.png")

        em2 = discord.Embed(
            title="User entbannt",
            color=MyColor,
            timestamp=datetime.now()
        )

        async with aiosqlite.connect("database/ban.db") as db:
            async with db.cursor() as cursor:
                await cursor.execute("SELECT user_name, user_id FROM bans WHERE user_id = ? AND guild_id = ?", (int(member), ctx.guild.id))
                result = await cursor.fetchone()
                user_name = result[0] if result else "Unbekannt"

        em2.add_field(name="User", value=f"{user_name} | `{member_id}`", inline=False)
        em2.add_field(name="Grund", value=f"{grund}", inline=False)
        em2.add_field(name="Teamler", value=f"{ctx.author.mention} | `{ctx.author.id}`", inline=False)
        em2.set_footer(text=f"{ctx.guild.name}", icon_url=self.bot.user.avatar.url)

        file2 = discord.File(f"img/Imagelinie.png", filename="Imageline.png")
        file3 = discord.File(f"img/Profilbild.png", filename="Profilbild.png")

        em2.set_image(url="attachment://Imageline.png")
        em2.set_thumbnail(url="attachment://Profilbild.png")

        await ctx.guild.unban(user=member, reason=grund)
        await ctx.respond(embeds=[em1, em2], files=[file1, file2, file3])
solid ingot
#

member ist kein Member, sondern nur eine ID

limber crow
#

Verstehe gerade nicht wo ich nen fehler gemacht hab 😅

limber crow
#

Habs gefixed

tawdry leaf
#

ok

kind depot
#

Habe ein Problem Mit Meine Slash Commands... Undzwar... das alle meine commands nur für admins sichtbar sind und nicht für alle leute... wie kann man das beheben?

limber crow
kind depot
#

habe ja nix angegeben... das ist ja das komische... allerding glaube ich habe ich den bug gefixt.. auser das man jz alle commands wieder sehen kann... auch die mit perms im code...

#

also mit command groups

limber crow
kind depot
#

okee...

#

nadann passt alles ^^

#

dankee ^^

tawdry leaf
limber crow
tawdry leaf
#

im cog?

limber crow
#

Warum zählt der ban_counts hier keinen hoch, wenn der user gebannt ist ?

Code

limber crow
tawdry leaf
#
@slash_command(description="Zeigt die Server auf dem der Bot ist",guild_ids=[493422342635126786])```
tawdry leaf
#

also einf guild ids in die Liste

limber crow
tawdry leaf
limber crow
#

mache ich persölich so

tawdry leaf
#

len(ctx.guild.bans)

#

du kannst doch alle die gebannt sind ohne datenbank herausfinden?

limber crow
tawdry leaf
#

ok

limber crow
limber crow
tawdry leaf
#

hm