#Allgemeine Hilfe

1 messages · Page 62 of 1

kind depot
#

Viele

ruby sparrow
#

ah danke

kind depot
#

Bitte

ruby sparrow
#

Wie kann ich die cogs ĂŒber main.py in Nextcord laden?

viscid lake
last depot
viscid lake
last depot
#

Hab das wie nicht gesehen xD

viscid lake
#

digga bester kommentar xd

tawdry leaf
lucid furnace
lucid furnace
#

Weiss was fĂŒr commands ich coden kann
die commands die ich schon hab sieht man im bild

lucid furnace
fierce dove
#
Traceback (most recent call last):
  File "C:\Users\SchĂŒler\Documents\Timo\Discord\Bots\EzCloudBot\bot.py", line 3, in <module>
    import ezcloud
  File "C:\Users\SchĂŒler\AppData\Local\Programs\Python\Python311-32\Lib\site-packages\ezcloud\__init__.py", line 6, in <module>
    from . import blacklist, components, emb, logs, sql, times, utils
  File "C:\Users\SchĂŒler\AppData\Local\Programs\Python\Python311-32\Lib\site-packages\ezcloud\blacklist.py", line 12, in <module>
    from .internal import EzConfig
  File "C:\Users\SchĂŒler\AppData\Local\Programs\Python\Python311-32\Lib\site-packages\ezcloud\internal\__init__.py", line 5, in <module>
    from .ready_style import *
  File "C:\Users\SchĂŒler\AppData\Local\Programs\Python\Python311-32\Lib\site-packages\ezcloud\internal\ready_style.py", line 5
    from __future__ import annotations
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
SyntaxError: from __future__ imports must occur at the beginning of the file
#
__title__ = "ezcloud"
__author__ = "timoodev"
__license__ = "MIT"
__version__ = "0.5.8"

from . import blacklist, components, emb, logs, sql, times, utils
from .bot import *
from .components import *
from .emb import *
from .enums import *
from .logs import *
from .sql import *
from .times import *
from .utils import *
solid ingot
#

der Future Import bei ready Style muss in die erste zeile

fierce dove
#

danke timoooo

#

❀#

ruby sparrow
opaque blade
#

was zum f@ck ist timtdone

solid ingot
#

das gibt es nicht, deswegen kannst du es auch nicht importieren @ruby sparrow

opaque blade
lucid furnace
rose epoch
#

note: This error originates from a subprocess, and is likely not a problem with pip.
  ERROR: Failed building wheel for multidict
Failed to build aiohttp multidict
ERROR: Could not build wheels for aiohttp, multidict, which is required to install pyproject.toml-based projects```
solid ingot
rose epoch
last depot
rose epoch
last depot
#

wieso haha

rose epoch
last depot
#

lösch alle und lad dir nur 3.11 herunter

rose epoch
last depot
rose epoch
#

@last depot

opaque blade
#

Moinooo bekomme diesen Error, macht meiner Meinung aber kein Sinn, da lvl definiert ist:

Traceback (most recent call last):
  File "/home/container/.local/lib/python3.10/site-packages/discord/ext/tasks/__init__.py", line 169, in _loop
    await self.coro(*args, **kwargs)
  File "/home/container/cogs/levelsystem.py", line 331, in is_connected
    lvlup.add_field(name="⭐ Neues Level!", value=f"Du hast die Rolle `{lvl}` freigeschaltet!")
NameError: name 'lvl' is not defined

Code kann ich aus irgendeinem Grund nicht reinschicken da ich einen Error bekomme

unkempt karma
viscid lake
#

@solid ingot hast du was an ezcord gemacht bekomme jetzt den fehler den ich davor nicht bekommen habe

solid ingot
solid ingot
opaque blade
#

sollte doch richtig sein?

solid ingot
#

bin Grad am Handy, send vlt mal ein Screenshot von der Stelle im Code, wo du lvl definierst

solid ingot
opaque blade
solid ingot
#

wo definierst du lvl?

opaque blade
#

weiter oben, ist nicht im screenshot weil wie soll ich das drauf kriegen?

solid ingot
#

naja, Level ist auf jeden fall nicht in allen FĂ€llen definiert

#

der Fehler ist also weiter oben bei der definition

opaque blade
solid ingot
#

ist lvl im else Teil definiert?

opaque blade
#

nein

solid ingot
#

das ist der fehler

opaque blade
#

insane

solid ingot
#

wenn new_level zum Beispiel 2 ist, ist lvl nicht definiert

opaque blade
#

ist es denn gezwungen im else zu definieren oder gibt es da umwege?

solid ingot
#

es gibt andere Wege, aber immer wenn du lvl benutzen willst, musst du es vorher definiert haben

#

du könntest Level am Anfang auf None setzen und den Text nur anzeigen, wenn lvl nicht None ist

opaque blade
#

ist nh idee

#

aber danke dir

fierce dove
#

Wie kann ich kekshosting Panel mit GitHub verbinden das wenn ich was auf GitHub hochlade das der Code auf kekshosting Panel geupdated wird

fierce dove
#

Weiß jemmand wie das geht

viscid lake
viscid lake
solid ingot
#

wenn du die gleiche ezcord Version nutzt wie davor hast du was anderes falsch installiert

lucid furnace
#

keine ahnung ob das rchtig ist aber

fierce dove
#

ok

fierce dove
lucid furnace
#

probiers aus

#

versuch mit privaten repo dann öffentlichen

#

aber ich denke mal öffentlich

fierce dove
#

ok

lucid furnace
fierce dove
#

Ich habe aber kein Git

#

Kann das mir auch nicht installieren

silk gulch
#

Es ist ja möglich von einer .env-Datei Informationen mithilfe os.getenv() zu erhalten.
Ist es auch möglich, Informationen zu updaten?
z.B. so:

TEST = 0```
```py
os.setenv('TEST', '1')```?
solid ingot
#

ja, da gibt es mehrere Möglichkeiten, zB direkt mit os.environ

silk gulch
solid ingot
#

os.environ["SHEESH"] = "1"

silk gulch
thick forum
#

Hey zusammen!

Hat jemand von euch auch mal den Fehler von einem Discord Bot bekommen der meldet HTTP ERROR (403): The Authorization token you passed did not have permission to the resource und ihn lösen konnte?

Ich habe es schon seit fast 2 Stunden versucht das zu fixen aber es klappt nicht. Ich habe den Bot natĂŒrlich auch alle rechte gegeben und der geht auch online sobald dieser startet aber sobald ein Report in-game gemacht wird womit dieser Report an einem Kanal des Discord Server gesendet wird, taucht der Fehler auf und die Nachricht erscheint auch nicht sowohl auch geht der Discord Bot dann direkt offline. Weiß jemand was das sein kann?

silk gulch
thick forum
#

ja das habe ich. Bin mir nur nicht sicher welcher code es ist da es von einem Entwickler damals fĂŒr mich entworfen worden ist. Ich weiß nicht ob dieser Abschnitt den ich hier als Bilder dazu schicke das richtige ist was du meinst?

#

Weil damals hatte der Bot einwandfrei funktioniert auf einem anderem Server, nun versuche ich diesen auf einem neuen Server einzurichten was diesmal nicht funktioniert. 😩

silk gulch
thick forum
#

Oh okay, du willst wissen wie der Bot die Nachrichten verschickt richtig?

silk gulch
thick forum
#

Nein nein das habe ich nicht. Das Problem ist der Discord Bot ist mit einem Server Manager verbunden der die Assetto Corsa Servern betreibt. Bei einer Eingabe des Report (In-Game) wird normalerweise eine Nachricht an den Discord Server gesendet was aber nicht funktioniert da die Fehlermeldung mit dem HTTP 403 kommt. Ich weiß das es sich um nicht ausreichende berechtigungen handelt oder um einen Auth Problem aber ich bekomme das nicht gelöst

#

Der Bot geht ja auch online wenn er gestartet ist nur springt er sofort wieder auf offline wenn ein Report gesendet wird.

#

@silk gulch

lucid furnace
thick forum
silk gulch
# thick forum Nein nein das habe ich nicht. Das Problem ist der Discord Bot ist mit einem Serv...

Quelle: ChatGPT

Es scheint, als ob der Discord Bot Schwierigkeiten hat, Nachrichten an den Discord Server zu senden, insbesondere wenn es sich um einen In-Game-Report handelt. Der HTTP 403-Fehler deutet darauf hin, dass es an Berechtigungen oder Authentifizierungsproblemen mangelt.

  • Bot-Berechtigungen ĂŒberprĂŒfen:
    -> Stelle sicher, dass der Bot ĂŒber die erforderlichen Berechtigungen verfĂŒgt, um Nachrichten in den entsprechenden Discord-Server zu senden.
    -> ÜberprĂŒfe, ob der Bot die Berechtigung "SEND_MESSAGES" fĂŒr den Textkanal hat, in den die Meldung gesendet werden soll.

  • Bot-Token ĂŒberprĂŒfen:
    -> Stelle sicher, dass du das richtige Bot-Token verwendest und dass es nicht abgelaufen oder zurĂŒckgesetzt wurde.
    -> Gehe sicher, dass der Bot auch in den richtigen Discord-Server eingeladen wurde und die richtigen Berechtigungen hat.

  • Discord API-RatenbeschrĂ€nkungen:
    -> ÜberprĂŒfe, ob dein Bot nicht durch die Discord-API-RatenbeschrĂ€nkungen eingeschrĂ€nkt wird. Wenn zu viele Anfragen innerhalb kurzer Zeit gesendet werden, kann dies zu einer vorĂŒbergehenden Sperrung fĂŒhren.

  • Logging hinzufĂŒgen:
    -> FĂŒge Logging-Statements in deinem Code hinzu, um zu ĂŒberwachen, was genau passiert, wenn ein Report gesendet wird. Das kann bei der Fehlersuche helfen.

thick forum
#

Ahhh, sehe ok dann versuche ich es nochmal wusste gar nicht das so etwas mit ChatGPT auch möglich ist dachte ChatGPT sendet nur Codes und so. Vielen Dank. 🙂

$ бЮіус $ da ist meine Antwort. pepehype

silk gulch
lucid furnace
thick forum
#

Naja wenn man von einer Person eine Antwort bekommt geht man davon aus das diese Person auch helfen wird. 😉 Aber hat sich ja jetzt gelöst. 😛

silk gulch
thick forum
#

Genau das meine ich. 😂 Solange es kein ping spam ist oder sonstiges. 😄 Nachrichten zu markieren auf diese man Antworten möchtet ist auch nicht anderes als pingen.

thick forum
#

Ne Frage kann das hier eigentlich ignoriert werden? Das bekomme ich nÀmlich immer beim Discord Developer Portal einmal wenn ich eine neue Anwendung erstelle?

lucid furnace
thick forum
#

Ok fixed....

thick forum
# thick forum Ne Frage kann das hier eigentlich ignoriert werden? Das bekomme ich nÀmlich imme...

Das ist echt seltsam.... Ich habe jetzt mal auf einem anderen PC versucht die Anwendung zu erstellen wo auch dieser Fehler nicht angezeigt worden ist und alles dasselbe gemacht wie vorher sonst auch. Spricht einladen des Bot, rechte vergeben etc. wirklich alles dasselbe und jetzt scheint er die nachrichten zum Discord zu senden. Vermutlich hat Discord meinen Konto eingeschrÀnkt somit auch die Rechte des Bot aufgrund des Fehler was beim erstellen der Anwendungen kommt? Echt seltsam...

silk gulch
solid ingot
#

chatGPT ist hier im Channel nicht erlaubt

ruby sparrow
#

@solid ingot ey timo

solid ingot
thick forum
#

Oh? Ja das verstehe ich aber nur nicht ganz weil das schließlich meine erste Anfrage war die ich seit langem nicht mehr tat. Unc ich muss auch mal in meinen E-Mails schauen ich habe nĂ€mlich das gefĂŒhl das mein Discord Account irgendeine EinschrĂ€nkung hat da wieder dasselbe Problem ist. Wenn ich dies aber mit einem anderen Discord Account mache geht es ohne Probleme

ruby sparrow
#
Traceback (most recent call last):
  File "/home/docs/checkouts/readthedocs.org/user_builds/cloudcord/envs/latest/lib/python3.11/site-packages/sphinx/config.py", line 358, in eval_config_file
    exec(code, namespace)  # NoQA: S102
    ^^^^^^^^^^^^^^^^^^^^^
  File "/home/docs/checkouts/readthedocs.org/user_builds/cloudcord/checkouts/latest/docs/conf.py", line 12, in <module>
    from cloudcord import __version__
ImportError: cannot import name '__version__' from 'cloudcord' (unknown location)
silk gulch
solid ingot
#

soso, dieses Mal verzeihe ich dir noch peepogun

ruby sparrow
#

sag mal was er error heist

solid ingot
#

dass version nicht importiert werden kann

ruby sparrow
#

wieso nicht

silk gulch
solid ingot
#

weiß nicht wie man diese Codeblock Zeichen am Handy macht :(

silk gulch
ruby sparrow
#

das muss doch so sein oder

solid ingot
#

kommt auf die Position der Datei an, und darauf wie die init datei von cloudcourd aussieht

solid ingot
#

ja aber Gboard Tastatur

silk gulch
#

Wieso kann ich da self nicht verwenden?

ruby sparrow
#

so

#

oder

solid ingot
solid ingot
#

du könntest getAvailableLanguages() als staticmethod nutzen

silk gulch
solid ingot
#

self geht aber nicht

silk gulch
hot thunder
#

Hi, weiß irgendwer warum die ID's von meinen Slash commands auf allen Discord Servern unterschiedlich sind? Meine Commands sind nicht guild only und sonnst könnte ich mir auch nicht vorstellen warum das so ist! Ich habe schon probiert einen anderen Bot zu erstellen und es nochmal zu probieren, aber ich hatte das gleiche Problem!

Das ist der Code vom Slash command falls das hilft

    @leavecmd.command(description="Set the channel for the leave system.")
    @commands.has_permissions(administrator=True)
    async def channel(self, ctx, channel: Option(discord.SlashCommandOptionType.channel,
                                                 description="The channel for the leave system")):
        cursor.execute(f"SELECT * FROM leavemsg WHERE guildId = '{ctx.guild_id}'")
        res = cursor.fetchall()

        if not res:
            cursor.execute(
                f"INSERT INTO leavemsg (guildId, channelId, message) VALUES ('{ctx.guild_id}', '{channel.id}', '[member_mention] left [guild_name]')")
            db.commit()
            await ctx.respond(
                f"{yes}{dot}The channel for the leave system is now <#{channel.id}>! You can use </leave toggle:1185703776825380902> to enable the system!",
                ephemeral=True)
        else:
            cursor.execute(f"UPDATE leavemsg SET channelId = '{channel.id}' WHERE guildId = '{ctx.guild_id}'")
            db.commit()
            await ctx.respond(
                f"{yes}{dot}The channel for the leave system is now <#{channel.id}>! You can use </leave toggle:1185703776825380902> to enable the system!",
                ephemeral=True)
solid ingot
solid ingot
#

falls du ezcord nutzt, kannst du bot.get_cmd dafĂŒr benutzen

odd kiteBOT
hot thunder
#

Okay, nvm

#

Ich hatte noch in der main.py die debug guilds drin obwohl ich dachte, dass ich sie entfernt hatte! Jetzt funktioniert alles, danke mc

solid ingot
#

freut mich :)

fluid tartan
#

Wie mache ich aus eine Liste von member eine Liste von discord.SelectOptions

solid ingot
#

du könntest den Namen als Anzeige nehmen und die ID als value

fluid tartan
solid ingot
#

alternativ kannst du halt direkt User als Option type nehmen, aber dann kann man halt alle User auswÀhlen

fluid tartan
solid ingot
#

hm ne keine Chance denke ich

#

höchstens in nem generierten Bild mit dropdown darunter

fluid tartan
#

Ich verstehe, danke schonmal. Das hat jetzt zumindest schonmal so funktioniert, wie ich es mir erhofft habe^^

odd kiteBOT
lofty rock
twilit anvil
lofty rock
twilit anvil
lofty rock
tawdry leaf
#

ist doch in d.py desselbe wie in pycord

twilit anvil
#
@bot.event()
async def on_guild_boost(boost):
<CODE>
lofty rock
#

Danke

twilit anvil
tawdry leaf
#

wenn du des clean machst fĂŒg guild id hinzu

silk gulch
#

Kennt sich wer mit wavelink aus und kann mir helfen?

lofty rock
#

Ne sorry

limpid wolf
#

Habe mir gerade was zu essen geholt

silk gulch
#

Ginge auch etwas spÀter?

limpid wolf
limpid wolf
#

hab schon öfter was damit gemacht

silk gulch
limpid wolf
silk gulch
# limpid wolf klar

Okay vielleicht hab ich es schon geschafft, aber teste es erstmal dann aus. 😄
[WAVELINK] Node "myso9h4y61hs851n" started!

silk gulch
#

@limpid wolf hast in ca. 30 Minuten noch Zeit?

limpid wolf
#

muss mal schauen aber bin bestimmt noch da

viscid lake
# solid ingot nutzt du Discord.py?

aiohttp==3.8.6
aiosignal==1.3.1
aiosqlite==0.19.0
async-timeout==4.0.3
attrs==23.1.0
betterstack-uptime==1.0.3
certifi==2023.11.17
charset-normalizer==3.3.2
chat-exporter==2.6.1
colorama==0.4.6
emoji==2.8.0
ezcord==0.4.1
frozenlist==1.4.0
grapheme==0.6.0
idna==3.6
multidict==6.0.4
py-cord==2.4.1
python-dotenv==1.0.0
pytz==2023.3.post1
requests==2.31.0
string-py==0.1.3
urllib3==2.1.0
yarl==1.9.3
mehr hab ich nicht

solid ingot
#

vlt nutzt du aus Versehen eine andere Python als diese

#

installier auf jeden Fall pycord neu

fierce dove
#

Wo kann Mann die Version Àndern in Pycord in welchem File

fierce dove
lucid furnace
#

Weiss wer warum meine /commands nd mehr regrestriert wird, also die werden auch nd in intergrationen angezeigt oder bei mein /register commands command

#

also der cog wird regrestriert aber mein command nd

viscid lake
lofty rock
#

Moin eine Frage wie macht man das ein Bot keinen Online/dnd/idle status hat?

#

Also am profilbild ist kein status

twilit anvil
#

Dass der Bot zwar online ist, aber nirgends ein Status steht

#

Oder @lofty rock ?

lofty rock
#

Aber er meinte damit nicht mich

#

Er meinte timoo4dev

twilit anvil
jade sapphire
#

Jungs

#

Eine frage undzwar mein Code fĂŒr meine Bots sind auf einem anderen Laptop

#

Nun habe ich kein Zugriff mehr auf diese, hat jemand eine idee wie ich die wieder bekommen könnte?

limber crow
tawdry leaf
jade sapphire
#

Hab es nicht benutzt

twilit anvil
jade sapphire
#

Gibt es wirklich keinen anderen Weg?

tawdry leaf
jade sapphire
#

Hab damals alle meine Codes in KeksHosting in die Cogs da rein gepastet jetzt wurde mein Server dort auch noch gelöscht

jade sapphire
tawdry leaf
#

hast du den Laptop noch

jade sapphire
#

Nope

tawdry leaf
#

ja dann gehts nd

jade sapphire
#

F

tawdry leaf
jade sapphire
#

ÄÄfff

jade sapphire
solid ingot
#

ne, du?

tawdry leaf
#

xD

jade sapphire
hot thunder
#

Weiß jemand wie man einen User von einem Voice Channel disconnecten kann?

solid ingot
hot thunder
#

Danke mc

fierce dove
#

warum kann ich die version nicht Àndern

Uploading ezcloud-0.5.1-py3-none-any.whl
100% ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 56.0/56.0 kB ‱ 00:00 ‱ ?
WARNING  Error during upload. Retry with the --verbose option for more details.
ERROR    HTTPError: 400 Bad Request from https://upload.pypi.org/legacy/
         This filename has already been used, use a different version. See https://pypi.org/help/#file-name-reuse for more information.Uploading ezcloud-0.5.1-py3-none-any.whl
100% ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 56.0/56.0 kB ‱ 00:00 ‱ ?
WARNING  Error during upload. Retry with the --verbose option for more details.
ERROR    HTTPError: 400 Bad Request from https://upload.pypi.org/legacy/
         This filename has already been used, use a different version. See https://pypi.org/help/#file-name-reuse for more information.

Aktuelle version ist die 0.4.9 möchte aber zu version 0.5.1 umÀndern

solid ingot
#

die version existiert anscheinend bereits

fierce dove
#

ok

fierce dove
solid ingot
#

wurde jedenfalls schonmal irgendwo auf pypi oder testpypi hochgeladen. du musst die version also nochmal Àndern bevor du es hochladen kannst

fierce dove
#

Wie meinst du das

#

Also soll die Version auf 0.5.2

solid ingot
#

zum beispiel

fierce dove
#

@solid ingot was bringt das es wurde nix in denn Files dafĂŒr verĂ€ndert

solid ingot
#

doch

fierce dove
#

Ne

#

Oder ich bin Blind

fierce dove
fierce dove
#

Ok

fierce dove
#

ich habe ein audit log system gemacht aber wenn ich ein embed lösche wird das nicht angezeigt

fierce dove
#

warum

tawdry leaf
fierce dove
#

Ka

twin slate
fierce dove
#

ok

twin slate
#

Hab in den docs nachgeschaut

#

Die embeds einer message kriegst du mit message.embeds und dann musst du halt bei der message die embeds anghÀngen. Man muss das aber mit embeds=message.embeds machen da halt ne liste returnt wird

hot thunder
#

Gibt es ein Event, wenn ein User einen Voice Channel betritt? Ich hatte bis jetzt das hier, aber wenn man bereits in einem Voice Channel ist, ist der State immer noch gleich (oder Discord Ratelimited mich gerade xD)

    @commands.Cog.listener()
    async def on_voice_state_update(self, member, before, after):
        if before.channel is None and after.channel is not None:
            ...
lucid furnace
#

Ich glaub discord hat dich ratelimited

tawdry leaf
#

das wĂŒrde er doch eig als print bekommen đŸ€”

twin slate
#

Beides der gleiche channel kommt wenn der user sich muted oder gemuted wird

strange juniper
strange juniper
fierce dove
#

warum kann ich das nicht auf testpy hochladen

Uploading devcord-0.5.1-py3-none-any.whl
100% ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 56.1/56.1 kB ‱ 00:00 ‱ ?
WARNING  Error during upload. Retry with the --verbose option for more details.
ERROR    HTTPError: 403 Forbidden from https://upload.pypi.org/legacy/
         Invalid or non-existent authentication information. See https://pypi.org/help/#invalid-auth for more
         information.
#

@solid ingot kannst du mir helfen

ruby sparrow
#

@fierce dove

solid ingot
ruby sparrow
#

und Timo wie kann man Tests veröffentlichen?

fierce dove
#

auf testpypi

fierce dove
ruby sparrow
#

send mal link

fierce dove
#
tawdry leaf
ruby sparrow
#
  File "C:\Users\nicor\AppData\Local\Programs\Python\Python311\Lib\site-packages\discord\interactions.py", line 847, in send_message
    self._parent._state.store_view(view)
  File "C:\Users\nicor\AppData\Local\Programs\Python\Python311\Lib\site-packages\discord\state.py", line 386, in store_view
    self._view_store.add_view(view, message_id)
  File "C:\Users\nicor\AppData\Local\Programs\Python\Python311\Lib\site-packages\discord\ui\view.py", line 581, in add_view
    view._start_listening_from_store(self)
  File "C:\Users\nicor\AppData\Local\Programs\Python\Python311\Lib\site-packages\discord\ui\view.py", line 425, in _start_listening_from_store
    self.__timeout_expiry = time.monotonic() + self.timeout
                            ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
TypeError: unsupported operand type(s) for +: 'float' and 'Button'```
#
@discord.ui.button(label="timout", style=discord.ButtonStyle.blurple, custom_id="timeout",
                       emoji="![icon_bestrafung_timeout](https://cdn.discordapp.com/emojis/987644033784483890.webp?size=128 "icon_bestrafung_timeout")")
    async def timeout(self, button: discord.ui.Button, interaction: discord.Interaction):
        if self.user.guild_permissions.timeout_members:
            await interaction.response.send_message("Du kannst keine Moderatoren timeout geben", ephemeral=True)
            await asyncio.sleep(5)
            await interaction.delete_original_response()
            return

        if self.user.id == interaction.user.id:
            await interaction.response.send_message("Du kannst dich nicht selbst timeout geben!", ephemeral=True)
            await asyncio.sleep(5)
            await interaction.delete_original_response()
            return

        if interaction.user.top_role.position < self.user.top_role.position:
            await interaction.response.send_message("Du kannst keinen Nutzer timeout geben, der eine höhere Rolle hat als du!", ephemeral=True)
            await asyncio.sleep(5)
            await interaction.delete_original_response()
            return

        await self.user.kick(reason=self.reason)
        await interaction.response.send_message(f"{self.user.mention} wurde timeout fĂŒr `{self.reason}`", ephemeral=True)
        await asyncio.sleep(5)
        await interaction.delete_original_response()```
lofty rock
#

Könnt ihr mir bitte sagen wie man den online status von einen Bot entfernen kann wie hier:

solid ingot
lofty rock
ruby sparrow
#

das ist keine helfe?

limber crow
#

Dann wir er zwar als Online angezeigt, aber hat keinen Status

tough thicket
#

Weiß jemand eigentlich, wie das geht?

solid ingot
lucid furnace
ruby sparrow
#
Ignoring exception in view <PunishView timeout=180.0 children=3> for item <Button style=<ButtonStyle.primary: 1> url=None disabled=False label='timout' emoji=<PartialEmoji animated=False name='icon_bestrafung_timeout' id=987644033784483890> row=None>:
Traceback (most recent call last):
  File "C:\Users\nicor\AppData\Local\Programs\Python\Python311\Lib\site-packages\discord\ui\view.py", line 414, in _scheduled_task
    await item.callback(interaction)
  File "d:\Projects\cloud-bot\cogs\Panel.py", line 133, in timeout
    await self.user.ban(reason=self.reason, delete_message_days=0, until=until)
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
TypeError: Member.ban() got an unexpected keyword argument 'until'```
#
@discord.ui.button(label="timout", style=discord.ButtonStyle.blurple, custom_id="timeout",
                   emoji="![icon_bestrafung_timeout](https://cdn.discordapp.com/emojis/987644033784483890.webp?size=128 "icon_bestrafung_timeout")")
    async def timeout(self, button: discord.ui.Button, interaction: discord.Interaction):
        if self.user.guild_permissions.kick_members:
            await interaction.response.send_message("Du kannst keine Moderatoren timeout geben", ephemeral=True)
            await asyncio.sleep(5)
            await interaction.delete_original_response()
            return

        if self.user.id == interaction.user.id:
            await interaction.response.send_message("Du kannst dich nicht selbst timeout geben!", ephemeral=True)
            await asyncio.sleep(5)
            await interaction.delete_original_response()
            return

        if interaction.user.top_role.position < self.user.top_role.position:
            await interaction.response.send_message("Du kannst keinen Nutzer timeout geben, der eine höhere Rolle hat als du!", ephemeral=True)
            await asyncio.sleep(5)
            await interaction.delete_original_response()
            return

        # Calculate the time until the user should be unbanned (e.g., 180 seconds from now)
        until = datetime.datetime.utcnow() + datetime.timedelta(seconds=self.timeout)
        
        await self.user.ban(reason=self.reason, delete_message_days=0, until=until)
        
        await interaction.response.send_message(f"{self.user.mention} wurde timeout fĂŒr `{self.reason}`", ephemeral=True)
        await asyncio.sleep(5)
        await interaction.delete_original_response()```
lucid furnace
ruby sparrow
#

er user getimeout

solid ingot
#

@tough thicket meinst du das?

lucid furnace
tough thicket
#

Also nicht online oder dnd, einfach nichts

ruby sparrow
#

er user ist kein Admin, aber es zeigt an, dass das ein Admin ist, also kann ich es nicht nutzen, kein Timeout, was könnte das sein?```py

@discord.ui.button(label="timout", style=discord.ButtonStyle.blurple, custom_id="timeout",
emoji="icon_bestrafung_timeout")
async def timeout(self, button: discord.ui.Button, interaction: discord.Interaction):
await interaction.response.send_modal(TutorialModal(title="warum willst du ihn timeout", user=interaction.user))

class TutorialModal(discord.ui.Modal):
def init(self, user, *args, **kwargs):
self.user = user
super().init(
discord.ui.InputText(
label="why do you want to timeout him",
placeholder="reason"
),
discord.ui.InputText(
label="how long will it have the timeout",
placeholder="give the time!",
style=discord.InputTextStyle.long
),
*args,
**kwargs
)

async def callback(self, interaction):
    embed = discord.Embed(
        title=self.children[0].value,
        description=self.children[1].value,
        color=discord.Color.green()
    )
    if interaction.user.guild_permissions.kick_members:
        await interaction.response.send_message("Du kannst keine Moderatoren timeout geben", ephemeral=True)
        await asyncio.sleep(5)
        await interaction.delete_original_response()
        return

    if interaction.user.id == self.user.id:
        await interaction.response.send_message("Du kannst dich nicht selbst timeout geben!", ephemeral=True)
        await asyncio.sleep(5)
        await interaction.delete_original_response()
        return

    if interaction.user.top_role.position < self.user.top_role.position:
        await interaction.response.send_message("Du kannst keinen Nutzer timeout geben, der eine höhere Rolle hat als du!", ephemeral=True)
        await asyncio.sleep(5)
        await interaction.delete_original_response()
        return
    until = datetime.datetime.utcnow() + datetime.timedelta(seconds=self.timeout)
    
    await interaction.user.timeout(reason=self.reason, until=until)
    
    await interaction.response.send_message(f"{interaction.user.mention} wurde timeout fĂŒr `{self.reason}`", ephemeral=True)
    await asyncio.sleep(5)
    await interaction.delete_original_response()```
odd kiteBOT
#

Mein Discord Server
â–ș https://discord.gg/zfvbjTEzv6

▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
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://discord.gg/pycord

Discord Developer Portal â–ș https://discord...

▶ Play video
limpid wolf
# lofty rock Könnt ihr mir bitte sagen wie man den online status von einen Bot entfernen kann...

Das geht meine ich mit "INTERACTIONS ENDPOINT URL" im Dev Dashboard. https://www.youtube.com/watch?v=ywtBI9cEXIk&t=332s Hier im Video wird das ein wenig erklĂ€rt und anschließend auch ein Beispiel gecodet jedoch in js.

Besser Discord Interaction Bots programmieren (mit Interactions ĂŒber HTTP)

In diesem Video geht es ĂŒber die Vorteile von Interactions ĂŒber HTTP anstatt ĂŒber Websockets, was die Endpoint Url in deinem Discord Developer Portal zu heißen kannst und wie du das alles anwenden und deployen kannst.

Discord Developer Docs: https://discord.com/develope...

▶ Play video
empty plaza
#

Es gibt die channel select menĂŒ funktion kann man auch einstellen das nur Text KanĂ€le angezeigt werden?

solid ingot
#

ja das geht

empty plaza
#

Und wie? genau?

solid ingot
#

du kannst channel_types angeben

lucid furnace
#
@bot.event
async def on_application_command(ctx):
    try:
        channel = ctx.channel.mention
    except:
        channel = "#1186017387791794206"

    options = ctx.options or []

    options_info = "\n".join(
        [f"**{option.name}:** {option.value}" for option in options]
    )

    embed = discord.Embed(
        title=f"Command Used: {ctx.command.qualified_name}",
        color=discord.Color.blue(),
    )
    embed.add_field(name="Options", value=options_info or "No options provided")
    embed.add_field(name="User", value=ctx.author.mention)
    embed.add_field(name="Channel", value=channel)

    log_channel = bot.get_channel(1186014503205343335)
    if log_channel:
        await log_channel.send(embed=embed)```
#

warum gibt der mir nur None zurĂŒck?

#

recieved options gehört zu /my_command

pulsar sundial
#

Wie macht man sowas?

lucid furnace
solid ingot
#

das geht im Discord developer portal

lofty rock
odd kiteBOT
#

Mein Discord Server
â–ș https://discord.gg/zfvbjTEzv6

Links aus diesem Video
FFMPEG â–ș https://ffmpeg.org/download.html
I Love Radio â–ș https://ilovemusic.de/streams

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

PYCORD
Docs â–ș https://docs.pycord.dev/
Guide â–ș https://guide....

▶ Play video
pulsar sundial
lofty rock
fierce dove
#

wie kann ich da die deutsche zeot einstellen

{member.created_at.strftime("%d.%m.%Y %H:%M")}
fierce dove
urban glen
# fierce dove Ja
import pytz

de_timezone = pytz.timezone('Europe/Berlin')
created_at = member.created_at.replace(tzinfo=pytz.utc).astimezone(de_timezone)

{created_at.strftime("%d.%m.%Y %H:%M")}
#

Hatte jetzt mal testweise diesen cog hier erstellt:

class Activity(commands.Cog):
    def __init__(self, bot: discord.Bot) -> None:
        self.bot = bot
        self.refresh_activity.start()

    @tasks.loop(minutes=5)
    async def refresh_activity(self):
        num_guilds = len(self.bot.guilds)
        activity = discord.CustomActivity(f'Ich bin in {num_guilds} guild(s).')
        await self.bot.change_presence(activity=activity)

    @refresh_activity.before_loop
    async def before_member_count(self):
        await self.bot.wait_until_ready()

Bot profil zeigt aber einfach nix an also halt kein status oder so, passiert einfach nix ^^

#

Wenn ich nach dem presence change die bot.activity ausgebe ist diese immernoch None

solid ingot
#

welche pycord Version hast du?

urban glen
#

2.4.1

solid ingot
#

fĂŒr den Custom Status brauchst du den master branch

urban glen
#

hatte ich schon gesehen, bin davon ausgegangen dass der standardmĂ€ĂŸig von master pulled

thick haven
#

Weiss jmd wie ich ein Votion System mithilfe von Pycord fĂŒr top.gg machen kann?

solid ingot
fierce dove
odd kiteBOT
urban glen
odd kiteBOT
#

Mein Discord Server
â–ș https://discord.gg/zfvbjTEzv6

Links aus diesem Video
EzCord Docs â–ș https://ezcord.readthedocs.io/
EzCord GitHub â–ș https://github.com/tibue99/ezcord

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

PYCORD
Docs â–ș https://docs.pycord.dev/
Guide â–ș https:...

▶ Play video
thick haven
solid ingot
solid ingot
urban glen
solid ingot
#

frĂŒher gab es das nur bei normalen Usern

urban glen
#

versetehe verstehe danke

#

hast du eine idee wie man diese buttons als status machen kann? Ist das eine EmbeddedActivity?

solid ingot
#

ich denke nicht das Bots das können

urban glen
#

Hab ich auch das gefĂŒhl aber ich bin mir sehr sicher dass ich das schonmal irgendwo gesehen hab

#

Ich glaube das hat was hiermit zu tun

ruby sparrow
#

kenne sich hier einer mit git aus?

solid ingot
#

was brauchst du denn?

viscid lake
lofty rock
worldly phoenix
lofty rock
worldly phoenix
#

Must du halt coden ich weiß nicht ob Timo das gemacht hat ich schau mal nach

#
#

Hier schau dir das mal an da wird es erklÀrt

lofty rock
worldly phoenix
#

Also das er offline ist oder was

#

Hast du ein Beispiel ihgend wie bei einen bot

lofty rock
worldly phoenix
#

Was dann

#

Verstehe es leider nicht

last depot
lofty rock
#

garkeinen status

worldly phoenix
last depot
#

Hier z.b

lofty rock
worldly phoenix
worldly phoenix
#

Ich weiß es wirklich nicht Kamm noch nie auf die idea frag mal Timo am besten

lofty rock
worldly phoenix
#

Ok

limpid wolf
limpid wolf
#

Na dann viel spaß dir, den Bot um zu schreiben.

thick haven
#

Weiss jmd wie ich den Pfad richtig angeben muss fĂŒr ddas get_config
from utils.funcs import get_config ModuleNotFoundError: No module named 'utils.funcs'

solid ingot
#

welche Datei hast du gerade offen?

thick haven
thick haven
#

und ne iidee

trim dagger
tawdry leaf
trim dagger
#

Das steht immer da

#

@solid ingot kannst du mir helfen

tawdry leaf
#

xD

#

seit wann darf man pingen

trim dagger
#

Ka

last depot
#

Wie macht man das der bot am Handy ist

#

Als Status

urban glen
#

Hat jemand eine Idee wie man eine SlashCommandGroup in mehreren Cogs verwenden kann? Hab schon gefĂŒhlt alles probiert aber die commands werden dann einfach nicht registriert

odd kiteBOT
#

Mein Discord Server
â–ș https://discord.gg/zfvbjTEzv6

▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
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://discord.gg/pycord

Discord Developer Portal â–ș https://discord...

▶ Play video
ruby sparrow
#

@urban glen hier ist video er zeigt

urban glen
#

đŸ«Ą

ruby sparrow
urban glen
# odd kite https://youtu.be/J8E2d32V7HU

Achso ja er zeigt ja generell Command groups, ich meine dass ich eine group in nem anderen cog verwende weil das Ding jetzt schon viele viele hunderte Zeilen hat

#

Oder eine andere Idee wie ich den Code irgendwie auslagern kann dann

ruby sparrow
#

ka ob es geht

urban glen
#

Also wenn man jz viele commands in einer Gruppe hat dann wir deer cog einfach immer voller und voller

#

Und wie geht das mit dieser Meldung?

solid ingot
#

das ist automatisch von discord

ruby sparrow
#

Wie kann ich es ermöglichen, Sterne von Ihrem Konto abzuheben?

thick haven
fierce dove
#

Wie meinst du das?

thick haven
#

embed.set_footer(text="🎄")
das mit Windows + . emoji die werden angezeigt wenn ich das embed sende aber das hier nicht also wenn ich nen custom emoji nehme
embed.set_footer(text="!server_owner_xenority")

fierce dove
#

Hmm

thick haven
ruby sparrow
#

kann wer mir dem link zu DB Browser SQLite senden

ruby sparrow
#

ah danke

ruby sparrow
#
async def setup(self):
        await self.execute(
            """CREATE TABLE IF NOT EXISTS users(
            user_id INTEGER PRIMARY KEY,
            stern INTEGER DEFAULT 0,
            streak INTEGER DEFAULT 0,
            Konto INTEGER DEFAULT 0,
            )"""
        )```
#
[ERROR] Error in event on_ready 
Traceback (most recent call last):
  File "C:\Users\nicor\AppData\Local\Programs\Python\Python311\Lib\site-packages\discord\client.py", line 378, in _run_event
    await coro(*args, **kwargs)
  File "C:\Users\nicor\AppData\Local\Programs\Python\Python311\Lib\site-packages\cloudcord\bot.py", line 374, in _db_setup
    await instance.setup()
  File "d:\Projects\cloud-bot\cogs\Stern.py", line 16, in setup
    await self.execute(
  File "C:\Users\nicor\AppData\Local\Programs\Python\Python311\Lib\site-packages\cloudcord\sql.py", line 322, in execute
    return await self.exec(sql, *args, end=end, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\nicor\AppData\Local\Programs\Python\Python311\Lib\site-packages\cloudcord\sql.py", line 314, in exec
    raise e
  File "C:\Users\nicor\AppData\Local\Programs\Python\Python311\Lib\site-packages\cloudcord\sql.py", line 309, in exec
    cursor = await db.execute(sql, args)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\nicor\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\nicor\AppData\Local\Programs\Python\Python311\Lib\site-packages\aiosqlite\core.py", line 129, in _execute
    return await future
           ^^^^^^^^^^^^
  File "C:\Users\nicor\AppData\Local\Programs\Python\Python311\Lib\site-packages\aiosqlite\core.py", line 102, in run
    result = function()
             ^^^^^^^^^^
sqlite3.OperationalError: near ")": syntax error```
solid ingot
#

das letzte komma muss weg

ruby sparrow
#

thx

urban glen
solid ingot
#

welche denn?

urban glen
#

Hab selber nen decorator gemacht mit commands.check

#

Bin mir grad nicht sicher aber glaub das ist halt der CheckFailure

lofty rock
urban glen
#

Kannst du nicht einfach deine application id da einfĂŒgen?

limpid wolf
thick forum
#

Hey Leute! Mal eine Frage, gibt es einen BOT oder einen Mittel womit man das beheben kann? Es geht nĂ€mlich darum das ich meinen ganze Discord Server in einer Custom Schriftart umgebaut habe spricht es ist keine Standart Schriftart. Jetzt habe ich natĂŒrlich das Problem das man durch diese Schriftart keine Rollen/KanĂ€le mehr erwĂ€hnen kann da die Text Eingabe die Schriftart es nicht erkennt. Nun gibt es da irgendeine Lösung wie zum beispiel einen Bot dwom man fĂŒr jeden Kanal/Rolle eine ID eingeben kann mit der Standart Schriftart?

Wie zum Beispiel so:

ID - Kanal ID
Kanal Name - Allgemein

Dennoch bleibt die Custom Schriftart aber bei den KanÀlen und Rollen

Bin mir nicht sicher ob es so etwas gibt oder möglich ist?

Ich hoffe ihr wisst woraf ich hinaus will? 🙂

WĂŒrde mich auf jeder Hilfe freuen.

lucid furnace
# thick forum Hey Leute! Mal eine Frage, gibt es einen BOT oder einen Mittel womit man das beh...

Speichern der IDs: Der Bot speichert die IDs aller KanÀle und Rollen zusammen mit ihren Namen und benutzerdefinierten Schriftarten.

ErwĂ€hnung generieren: Wenn jemand eine Rolle oder einen Kanal erwĂ€hnen möchte, gibt der Benutzer die gewĂŒnschte ID in einem speziellen Befehl ein, z.B. /mention Kanal_ID.

Bot generiert ErwĂ€hnung: Der Bot liest die gespeicherte Standard-ID fĂŒr den angegebenen Kanal/Rolle und sendet dann eine ErwĂ€hnung in der Standard-Schriftart.

Ist nur sehr grob und weiss nicht ob es gehen wird, probier es jedoch aus

thick forum
# lucid furnace Speichern der IDs: Der Bot speichert die IDs aller KanÀle und Rollen zusammen mi...

Okay đŸ€” Ich werde es mal Probieren weil wie gesagt die KanĂ€le haben jetzt eine andere Schriftart als vorher und durch diese Anpassung der Schriftart kann natĂŒrlich in der Text Eingabe die Rollen/KanĂ€le nur mithilfe der ID erwĂ€hnt werden was ich eigentlich nicht gerne möchte weshalb ich versuchen möchte es mit dem Text zu machen statt Zahlen.

Zum Beispiel heißt der eine Kanal 💭┃𝑼𝒆𝒏𝒆𝒓𝒂𝒍 jedoch kann dieser nicht in der Text Eingabe markiert werden da dies von der Standard Schriftart nur erkannt wird. đŸ€”

urban glen
#

was soll denn am ende rauskommen? willst du das fĂŒr commands haben wo user einen TextChannel auswĂ€hlen können oder meinst du jz normal beim schreiben

thick forum
#

Ja ich meine das eigentlich ganz normal wie zum Beispiel das ich in Text Eingabe** #regeln** eingeben kann ohne eine ID eingeben zu mĂŒssen.

#

WĂŒrde ich die selbe Schriftart die auf den Kanalnamen sind in der Text Eingabe einfĂŒgen, wĂŒrde es erkennen dennoch nicht mit der normalen Schriftart. :/

fierce dove
#

@solid ingot wie kann ich in ready Style Event denn bot owner festlegen

#

Bei ezcord

odd kiteBOT
fierce dove
#

Bei mir kommen Fehler

#

Wenn ich

bot.owner.name

Mache

tawdry leaf
fierce dove
#

ka

odd kiteBOT
#
EzCord
fierce dove
#

@tawdry leaf sowas skommt beiir raus

``<!doctype html>
<html class="no-js" lang="en" data-content_root="./">
<head><meta charset="utf-8"/>
<meta name="viewport" content="width=device-width,initial-scale=1"/>
<meta name="color-scheme" content="light dark"><link rel="index" title="Index" href="genindex.html" /><link rel="search" title="Search" href="#" />

<link rel="shortcut icon" href="_static/favicon.ico"/><!-- Generated with Sphinx 7.2.6 and Furo 2023.09.10 --><title>Search - <h3 align='center'>0.5.1</h3></title><link rel="stylesheet" type="text/css" href="_static/pygments.css?v=a746c00c" />
<link rel="stylesheet" type="text/css" href="_static/styles/furo.css?v=135e06be" />
<link rel="stylesheet" type="text/css" href="_static/copybutton.css?v=76b2166b" />
<link rel="stylesheet" type="text/css" href="/_/static/css/badge_only.css" />
<link rel="stylesheet" type="text/css" href="_static/styles/furo-extensions.css?v=36a5483c" />

<style>
body {
--color-code-background: #f8f8f8;
--color-code-foreground: black;

}
@media not print {
body[data-theme="dark"] {
--color-code-background: #202020;
--color-code-foreground: #d0d0d0;

}
@media (prefers-color-scheme: dark) {
  body:not([data-theme="light"]) {
    --color-code-background: #202020;

--color-code-foreground: #d0d0d0;

  }
}

}
</style>
<!-- RTD Extra Head -->

<link rel="stylesheet" href="/_/static/css/readthedocs-doc-embed.css" type="text/css" />

<script type="application/json" id="READTHEDOCS_DATA">{"ad_free": false, "api_host": "https://readthedocs.org", "builder": "sphinx", "canonical_url": null, "docroot": "/docs/", "features": {"docsearch_disabled": false}, "global_analytics_code": "UA-17997319-1", "language": "en", "page": "search", "programming_language": "words", "project": "ezycord", "proxied_api_host": "/_", "source_suffix": ".rst", "subprojects": {}, "theme": "furo", "user_analytics_code": "", "version": "latest"}</script>

<!--
Using this variab``

tawdry leaf
#

wieso html
wtf

fierce dove
#

ka

tawdry leaf
#

stark

fierce dove
#

also nich mal alles umschreiben

tawdry leaf
#

idk was du meinst gehst du schlafen jz?

fierce dove
#

Ne warum

#

@tawdry leaf jz sagt er

Es wurde nix mit add_ready_info gefunden

#
import ezycord
import discord
import requests

from discord import slash_command
from utils import *

class Docs(ezycord.Cog):
    
    @slash_command()
    async def ezycord(
        self,
        ctx,
        docs: str
    ):
        api_url = "https://ezycord.readthedocs.io/en/latest/search.html?q={}"
        
        formatted_api_url = api_url.format(docs)
        
        try:
            
            response = requests.get(formatted_api_url)
            response.raise_for_status()
            
            docs = response.json()
            
            for result in docs.get("result", []):
                result_text = result.get("content", "").strip()
                if result_text:
                    embed = discord.Embed(
                        title="EzyCord",
                        description=f"``{result_text}``",
                        color=successcolor
                )
                    
                await ctx.respond(embed=embed)
        
        except requests.RequestException as e:
            await ctx.respond(f"Es wurde nix mit ``{docs}`` gefunden")

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

@tawdry leaf du idiot

tawdry leaf
#

wie wÀre es mal mit json ausrpinten

fierce dove
#

keine lus#

tawdry leaf
#

genauso wie zu snapen 🖕

fierce dove
#

@tawdry leaf

{'count': 0, 'next': None, 'previous': None, 'projects': [], 'query': 'add_ready_info', 'results': []}

#
import ezycord
import discord
import requests

from discord import slash_command
from utils import *

class Docs(ezycord.Cog):
    
    @slash_command()
    async def ezycord(
        self,
        ctx,
        docs: str
    ):
        api_url = f"https://readthedocs.org/api/v3/search/?project=ezycord&q={docs}"
        
        formatted_api_url = api_url.format(docs)
        
        try:
            
            response = requests.get(formatted_api_url)
            response.raise_for_status()
            
            docs = response.json()
            print(docs)
            
            for result in docs.get("result", []):
                result_text = result.get("content", "").strip()
                if result_text:
                    embed = discord.Embed(
                        title="EzyCord",
                        description=f"``{result_text}``",
                        color=successcolor
                )
                    
                await ctx.respond(embed=embed)
        
        except requests.RequestException as e:
            await ctx.respond(f"Es wurde nix mit ``{docs}`` gefunden")

def setup(bot):
    bot.add_cog(Docs(bot))
tawdry leaf
#

fehlt da nach ezycord das /

fierce dove
#

was meinst du

#

@tawdry leaf

#

kommst du talk

#

@tawdry leaf wo fehlt was

tawdry leaf
#

ich schaue denke film

tawdry leaf
fierce dove
#

was meinst du

tawdry leaf
#

ich schlafe

fierce dove
#

nnenene

ruby sparrow
#

Was könnte es sein, dass die ganze Zeit mit Minus rechnet? ```py
@stern.command(description="holt dir eine Belohnung ab")
# @commands.cooldown(1, 86400, commands.BucketType.user)
async def daily(self, ctx):
user_id = ctx.user.id

    current_streak = await db.get_streak(user_id)
    current_stern = random.randint(1, 60)

    if current_stern > 0 and await db.check_streak(user_id):
        current_stern += 1
        await db.update_streak(user_id, current_stern)
        message = f"TĂ€gliche stern\nDu hast dir **{current_stern}** stern abgeholt! Sehr schmackhaft\n\nStreak: {current_streak} Tage + Streak beibehalten"
    else:
        await db.reset_streak(user_id)
        current_streak  = 1
        await db.update_streak(user_id, current_streak)
        message = f"TĂ€gliche stern\nDu hast dir **{current_stern}** stern abgeholt! Sehr schmackhaft\n\nStreak: {current_streak} Tag - Streak verloren"

    total_stern = await db.get_stern(user_id)
    await db.add_stern(user_id, current_stern)
    await db.close()

    embed = discord.Embed(
        title="TĂ€gliche stern", 
        description=message, 
        color=discord.Color.yellow()
    )
    embed.add_field(name=f"Du hast nun {total_stern + current_stern} stern ⭐", value=" ")
    embed.set_thumbnail(url=ctx.author.display_avatar.url)

    await ctx.respond(embed=embed)```
tawdry leaf
viscid lake
tawdry leaf
viscid lake
tawdry leaf
viscid lake
#

aso

fierce dove
#

Ok

tough thicket
solid ingot
#

fĂŒr IDs musst du string nutzen

urban glen
#

IDS sind zu groß fĂŒr integer

#

Wie macht man Guild spezifische commands?

limpid wolf
solid ingot
limpid wolf
#

ah stimmt

tawdry leaf
blazing path
#

Moin, habe eine Frage wie ich in Pycord eine !masskick @User/ID @User/ID @User/ID @User/ID ...
Programmieren kann LG 😄

tough thicket
urban glen
#

ist trotzdem ein globaler command

solid ingot
#

das mĂŒsstest du dann direkt in der command group festlegen, nicht in den group commands

ruby sparrow
#

hi nikos

limpid wolf
#

machst du das mit cloudflare oder wer ist da dein provider?

ruby sparrow
#

was meiste du

limpid wolf
#

Wo hast du denn die Domain gekauft?

#

Also in deinem fall cloudcord.cloud

ruby sparrow
#

ionos

limpid wolf
#

und die nameserver hast du auch nicht verÀndert?

ruby sparrow
#

ne

limpid wolf
#

Dann musst du dich bei ionos anmelden und dort den dns record hinzufĂŒgen

ruby sparrow
#

es ist so bei mir

limpid wolf
#

Kenne mich bei ionos nicht aus

#

hast du irgendwo die Möglichkeit DNS Records zu verwalten?

ruby sparrow
limpid wolf
#

was hast du denn da alles eingestellt, hast du die möglichkeit noch einen eintrag hinzuzufĂŒgen?

limpid wolf
ruby sparrow
limpid wolf
#

Geh mal auf Record hinzufĂŒgen

#

Bei Typ CNAME

#

bei hostname "docs"

ruby sparrow
limpid wolf
limpid wolf
ruby sparrow
#

was jerzt

limpid wolf
#

kann keine gedanken lesen

ruby sparrow
limpid wolf
#

Wie ich es oben schon gesagt habe

limpid wolf
limpid wolf
ruby sparrow
#

was muss bei ttl

#

?

limpid wolf
ruby sparrow
limpid wolf
#

nh Stunde mĂŒsste passen

ruby sparrow
#

fĂŒr was

limpid wolf
#

Hinweis
Der TTL-Wert auf IONOS Domains betrĂ€gt bis zu einer Stunde fĂŒr alle A-, AAA-, MX-, TXT- und CNAME-EintrĂ€ge.

#

"Wenn Ihre DNS-TTL-Einstellung 12 Stunden betrÀgt, werden Ihre DNS-EintrÀge 12 Stunden lang zwischengespeichert, bevor sie ablaufen und die neuen Informationen wirksam werden."

#

mach einfach eine Stunde, solange dauert es eh wahrscheinlich bis Ionos das weitergibt

ruby sparrow
limpid wolf
#

ja huch

#

warum hast du einen spf TXT record als docs hostname

#

spf hat was mit mails zu tun

ruby sparrow
#

ka

limpid wolf
#

brauchst du den?

#

wenn nicht einfach löschen

ruby sparrow
#

wie kann ich löchen ?

limpid wolf
ruby sparrow
limpid wolf
ruby sparrow
limpid wolf
#

Ah

ruby sparrow
#

was jerzt

limpid wolf
#

Also wird es von readthedocs erkannt?

#

Kann bis zu einer stunde dauern

ruby sparrow
limpid wolf
ruby sparrow
#

ah ok

misty narwhal
#

kann mir einer Helfen Bei meiner Subdomain ?

limpid wolf
misty narwhal
#

Ich habe meine website auf meinem server und meine domain bei Ionos

#

und ich weiß net weiter

limpid wolf
#

was hast du denn fĂŒr eine website auf deinem server?

#

einfach die html datein oder einen webserver?

misty narwhal
#

Html

limpid wolf
#

Dann brauchst du noch einen Webserver

misty narwhal
misty narwhal
limpid wolf
#

Was ist denn da fĂŒr ein egg drauf?

misty narwhal
#

doch der server ist bei strato

limpid wolf
ruby sparrow
#

nikos kommt ich e-meil

limpid wolf
misty narwhal
limpid wolf
ruby sparrow
misty narwhal
limpid wolf
limpid wolf
misty narwhal
#

ja

ruby sparrow
opaque blade
#

Moinooo, ich will einen Logchannel machen. Hier ist ein kleiner Teil:
Ich bekomme keinen Error, nur die Nachricht wird nicht gepostet. Ich nutze Py-cord und EzCord...

    # LOG CHANNEL --- DELETE MESSAGE
    @commands.Cog.listener()
    async def on_message_delete(self, message):
        embed = discord.Embed(
            title="❗Nachricht wurde gelöscht.",
            description="",
            color=discord.Color.red(),
            timestamp=discord.utils.utcnow())
        embed.add_field(name="Nachricht:", value=f"``{message.content}``", inline=False)
        embed.add_field(name="Verfasser:", value=f"``{message.author.mention}``", inline=False)
        embed.add_field(name="Ursprung:", value=f"``{message.channel.mention}``", inline=False)
        embed.set_footer(text=f"Keesus's Zentrale :rocket:", icon_url="https://cdn.discordapp.com/attachments/1176981686827896964/1181701861787578451/SERVERICON.png")
        z = self.bot.fetch_channel(LOGCHANNEL)
        await z.send(embed=embed)
odd kiteBOT
#

Mein Discord Server
â–ș https://discord.gg/zfvbjTEzv6

▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
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://discord.gg/pycord

Discord Developer Portal â–ș https://discord...

▶ Play video
solid ingot
#

schau dir evtl mal das hier an

opaque blade
#

@solid ingot hab mir das Video nun angeschaut, aber leider hat nix geholfen.

solid ingot
#

schade, wird das event denn ausgefĂŒhrt?

opaque blade
#

Ja

solid ingot
#

in dem fall mĂŒsstest du eigentlich einen error bekommen. hast du irgendeinen error handler?

#

wenn das fetch_channel ausgefĂŒhrt wird und kein error kommt, musst du sich erstmal darum kĂŒmmern dass dir error meldungen richtig angezeigt werden

opaque blade
#

wie macht man so einen arror handler? hast du ein tutorial dazu gemacht?

opaque blade
#

danke sehr

solid ingot
#

aber auch ohne error handler solltest du eigentlich einen error angezeigt bekommen

opaque blade
#
[ERROR] Error in event on_message_delete 
Traceback (most recent call last):
  File "C:\Users\Kai\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\client.py", line 399, in _run_event
    await coro(*args, **kwargs)
  File "c:\Users\Kai\Desktop\Bullenscheiße\DISCORDSERVER\FlauschiBot\cogs\loginfos.py", line 26, in on_message_delete
    await z.send(embed=embed)
TypeError: coroutine.send() takes no keyword arguments
C:\Users\Kai\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\client.py:404: RuntimeWarning: coroutine 'Client.fetch_channel' was never awaited
  await self.on_error(event_name, *args, **kwargs)
RuntimeWarning: Enable tracemalloc to get the object allocation traceback
solid ingot
#

genau, sehr gut

#

bei fetch_channel fehlt ein await

#
z = await self.bot.fetch_channel(LOGCHANNEL)
opaque blade
#
z = await self.bot.fetch_channel(LOGCHANNEL)
        await z.send(embed=embed)

Also so? Ist das await in der anderen Zeile dann kein Problem?

solid ingot
#

nein

opaque blade
#

bekomme immernoch den gleichen error

solid ingot
#

dann hast du deinen bot nicht neu gestartet

opaque blade
#

habs gefixt

#

danke!

opaque blade
#
TypeError: LogInfos.on_message_edit() missing 1 required positional argument: 'after'

what does that mean

    # LOG CHANNEL --- DELETE EDIT
    @commands.Cog.listener()
    async def on_message_edit(self, message, before, after):
        embed = discord.Embed(
            title="❗Nachricht wurde bearbeitet.",
            description="Ein User hat eine Nachricht bearbeitet.",
            color=discord.Color.blue(),
            timestamp=discord.utils.utcnow())
        embed.set_thumbnail(url=message.author.avatar.url)
        embed.add_field(name="Bevor:", value=f"``=`{before.message}``=`", inline=False)
        embed.add_field(name="Danach:", value=f"`=``{after.message}``=`", inline=False)
        embed.add_field(name="Verfasser:", value=f"{message.author.mention}", inline=False)
        embed.add_field(name="Ursprung:", value=f"{message.channel.mention}", inline=False)
        embed.set_footer(text=f"Keesus's Zentrale :rocket:", icon_url="https://cdn.discordapp.com/attachments/1176981686827896964/1181701861787578451/SERVERICON.png")
        z = await self.bot.fetch_channel(LOGCHANNEL)
        await z.send(embed=embed)
limpid wolf
opaque blade
#

kein message?

urban glen
#
    @commands.Cog.listener()
    async def on_ready(self):
        self.bot.add_view(setupview(self.bot, self.listener))

    def listener(self, message):
        with open('tempmail.json', 'r', encoding='utf-8') as f:
            data = json.load(f)
        if message['to']['address'] in data:
            channel = self.bot.get_channel(data[message['to']['address']]['channel_id'])
            embed = discord.Embed(
                title=f"New email from {message['from']['name']} ({message['from']['address']})",
                description=f"# Subject: {message['subject']}\n\n{message['text'] if message['text'] else message['html']}",
                color=discord.Colour.embed_background()
            )
            asyncio.run_coroutine_threadsafe(channel.send(embed=embed), self.bot.loop)
            print(f"New email from {message['from']['name']} ({message['from']['address']}) with subject {message['subject']}")
            asyncio.run_coroutine_threadsafe(self.delete_mail(), self.bot.loop)
        else:
            print(f"No channel found for email address {message['to']['address']}")
limpid wolf
#

schau einfach in die docs da steht alles

opaque blade
urban glen
# urban glen

Wieso wird dieser error hier angezeigt und nicht die Mail die empfangen werden sollte?

limpid wolf
#

steht auch so in den docs btw

opaque blade
limpid wolf
#

Hier siehst du das es ein Message Objekt ist

opaque blade
#

oh man ich bin ehrlich blind...

limpid wolf
#

Wenn du darauf gehst siehst du alle Attributes fĂŒr ein Message Objekt

opaque blade
#

kuss, danke dir!

limpid wolf
#

Dann auf channel

#

und dann mention bzw textChannel, musst halt gucken ob es den type ĂŒberall gibt

limpid wolf
urban glen
#

TypeError: list indices must be integers or slices, not str

#

Kann mir einer erklĂ€ren was das heißt?

limpid wolf
opaque blade
#
    # LOG CHANNEL --- DELETE EDIT
    @commands.Cog.listener()
    async def on_message_edit(self, before, after):
        embed = discord.Embed(
            title=":exclamation:Nachricht wurde bearbeitet.",
            description="Ein User hat eine Nachricht bearbeitet.",
            color=COLOR_BLUE(),
            timestamp=discord.utils.utcnow())
        embed.add_field(name="Bevor:", value=f"``{before.message.content}``", inline=False)
        embed.add_field(name="Danach:", value=f"``{after.message.content}``", inline=False)
        embed.add_field(name="Verfasser:", value=f"{after.author.mention}", inline=False)
        embed.add_field(name="Ursprung:", value=f"{after.channel.mention}", inline=False)
        embed.set_footer(text="Keesus's Zentrale :rocket:", icon_url="https://cdn.discordapp.com/attachments/1176981686827896964/1181701861787578451/SERVERICON.png")
        z = await self.bot.fetch_channel(LOGCHANNEL)
        await z.send(embed=embed)

???

Traceback (most recent call last):
  File "C:\Users\Kai\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\client.py", line 399, in _run_event
    await coro(*args, **kwargs)
  File "c:\Users\Kai\Desktop\Bullenscheiße\DISCORDSERVER\FlauschiBot\cogs\loginfos.py", line 45, in on_message_edit
    embed.add_field(name="Bevor:", value=f"``{before.message.content}``", inline=False)
AttributeError: 'Message' object has no attribute 'message'
solid ingot
#

before ist schon eine Message, deswegen kannst du nicht before.message schreiben

#

schreib stattdessen direkt before.content

opaque blade
#

ah habs gefixt genau in der sekunde haha

#

aber danke :D

urban glen
urban glen
ruby sparrow
#

was muss man noch mal fĂŒr einen öffentliches Ticketsystem alles in die Datenbank abspeichern?

twilit anvil
#

Sowas halt

ruby sparrow
#

ah damle

#

danke

tough thicket
#

wie kann ich das hier mit nem followup machen?

@discord.ui.button(label="Comment this feedback", style=discord.ButtonStyle.blurple, custom_id="comment-button")
    async def button_callback2(self, button, interaction):
        for child in self.children:
            child.disabled = True

        await interaction.response.edit_message(view=self)
        await interaction.response.send_modal(NoteModal(title="Comemnt this feedback"))

aktueller fehler:

Ignoring exception in view <ConfirmView timeout=None children=2> for item <Button style=<ButtonStyle.primary: 1> url=None disabled=True label='Comment this feedback' emoji=None row=None>:
Traceback (most recent call last):
  File "C:\Users\Max\AppData\Local\Programs\Python\Python311\Lib\site-packages\discord\ui\view.py", line 414, in _scheduled_task
    await item.callback(interaction)
  File "c:\Users\Max\PycharmProjects\Vysion\cogs\feedback.py", line 72, in button_callback2
    await interaction.response.send_modal(NoteModal(title="Comemnt this feedback"))
  File "C:\Users\Max\AppData\Local\Programs\Python\Python311\Lib\site-packages\discord\interactions.py", line 1049, in send_modal
    raise InteractionResponded(self._parent)
discord.errors.InteractionResponded: This interaction has already been responded to before
odd kiteBOT
solid ingot
#

@tough thicket

#

ah warte du meinst mit dem modal

#

probier mal zuerst das modal zu senden und dann ein followup zu machen

tough thicket
#

so wĂŒrde es grade auch gehen, kommt darauf an, wie ich den rest mache, sonst muss ich es so machen wie du meinst

urban glen
#

MailTm API funktioniert nicht (listener angrycat)

#

Error:

ruby sparrow
#
[ERROR] Error while executing /ticket setup 
Traceback (most recent call last):
  File "C:\Users\nicor\AppData\Local\Programs\Python\Python311\Lib\site-packages\discord\commands\core.py", line 124, in wrapped
    ret = await coro(arg)
          ^^^^^^^^^^^^^^^
  File "C:\Users\nicor\AppData\Local\Programs\Python\Python311\Lib\site-packages\discord\commands\core.py", line 978, in _invoke
    await self.callback(self.cog, ctx, **kwargs)
  File "d:\Projects\keks\cogs\ticket.py", line 48, in setup
    await db.set_config(server_id, category_id, ticket_channel_id, log_channel_id, closed_tickets_channel_id)
  File "d:\Projects\keks\cogs\ticket.py", line 30, in set_config
    await cursor.execute(
  File "C:\Users\nicor\AppData\Local\Programs\Python\Python311\Lib\site-packages\cloudcord\sql.py", line 322, in execute
    return await self.exec(sql, *args, end=end, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\nicor\AppData\Local\Programs\Python\Python311\Lib\site-packages\cloudcord\sql.py", line 314, in exec
    raise e
  File "C:\Users\nicor\AppData\Local\Programs\Python\Python311\Lib\site-packages\cloudcord\sql.py", line 309, in exec
    cursor = await db.execute(sql, args)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\nicor\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\nicor\AppData\Local\Programs\Python\Python311\Lib\site-packages\aiosqlite\core.py", line 129, in _execute
    return await future
           ^^^^^^^^^^^^
  File "C:\Users\nicor\AppData\Local\Programs\Python\Python311\Lib\site-packages\aiosqlite\core.py", line 102, in run
    result = function()
             ^^^^^^^^^^
sqlite3.OperationalError: no such table: config```
#
async def setup(self):
        await self.execute(
            """CREATE TABLE IF NOT EXISTS tickets(
            ticket_id INTEGER PRIMARY KEY,
            user_id INTEGER,
            server_id INTEGER,
            channel_id INTEGER,
            category_id INTEGER,
            team_role_id INTEGER
            )"""
        )

    async def add_ticket(self, user_id, server_id, channel_id, category_id, team_role_id):
        async with self.start() as cursor:
            await cursor.execute(
                "INSERT OR REPLACE INTO tickets (user_id, server_id, channel_id, category_id, team_role_id) VALUES (?, ?, ?, ?, ?)",
                (user_id, server_id, channel_id, category_id, team_role_id)
            )

    async def set_config(self, server_id, category_id, ticket_channel_id, log_channel_id, closed_tickets_channel_id):
        async with self.start() as cursor:
            await cursor.execute(
                "INSERT OR REPLACE INTO config (server_id, category_id, ticket_channel_id, log_channel_id, closed_tickets_channel_id) VALUES (?, ?, ?, ?, ?)",
                (server_id, category_id, ticket_channel_id, log_channel_id, closed_tickets_channel_id)
            )

db = TicketDB()

class Ticket(cloudcord.Cog, emoji="đŸŽ«"):
    ticket = SlashCommandGroup("ticket", description="Ticket commands")

    @ticket.command()
    async def setup(self, ctx, category: discord.CategoryChannel, ticket_channel: discord.TextChannel, log_channel: discord.TextChannel, closed_tickets_channel: discord.TextChannel):
        server_id = ctx.guild.id
        category_id = category.id
        ticket_channel_id = ticket_channel.id
        log_channel_id = log_channel.id
        closed_tickets_channel_id = closed_tickets_channel.id

        await db.set_config(server_id, category_id, ticket_channel_id, log_channel_id, closed_tickets_channel_id)
        await ctx.respond("Ticket-Konfiguration wurde erfolgreich festgelegt!")```
lucid furnace
lucid furnace
#

auch nicht im code

urban glen
# lucid furnace steht da doch `too many requests` du wurdest warscheinlich geratelimited

Wie mache ich das alle 60 Sekunden das hier ausgefĂŒhrt wird:

    def listener(self, message):
        with open('tempmail.json', 'r', encoding='utf-8') as f:
            data = json.load(f)
        if message['address'] in data:
            channel = self.bot.get_channel(data[message['to']]['channel_id'])
            embed = discord.Embed(title="New email", description=f"Subject: {message['subject']}\nContent: {message['text'] if message['text'] else message['html']}", color=discord.Colour.embed_background())
            channel.send(embed=embed)
lucid furnace
urban glen
lucid furnace
urban glen
lucid furnace
#

wobei

urban glen
#

kann im loop nichts awaiten

#

ah ne jz gehts

#
/home/container/.local/lib/python3.11/site-packages/mailtm/message.py:33: RuntimeWarning: coroutine 'Loop.__call__' was never awaited
  self.listener(message)
RuntimeWarning: Enable tracemalloc to get the object allocation traceback
#
    @tasks.loop(seconds=60)
    async def listener(self, message):
        with open('tempmail.json', 'r', encoding='utf-8') as f:
            data = json.load(f)
        if message['address'] in data:
            channel = await self.bot.get_channel(data[message['to']]['channel_id'])
            embed = discord.Embed(title="New email", description=f"Subject: {message['subject']}\nContent: {message['text'] if message['text'] else message['html']}", color=discord.Colour.embed_background())
            await channel.send(embed=embed)
urban glen
# urban glen ```py @tasks.loop(seconds=60) async def listener(self, message): ...
class setupview(discord.ui.View):
    def __init__(self, bot, listener):
        super().__init__(timeout=None)
        self.bot = bot
        self.listener = listener

    @discord.ui.button(label="Create temp mail", style=discord.ButtonStyle.primary, emoji="⭐", custom_id="keks", row=2)
    async def button_callback1(self, button, interaction):
        current_GMT = time.gmtime()
        time_stamp = calendar.timegm(current_GMT)
        self.email = Email()
        self.email.register()
        self.email.start(self.listener)
        category = self.bot.get_channel(1189704833607938060)
        channel = await category.create_text_channel(self.email.address)
        with open('tempmail.json', 'r', encoding='utf-8') as f:
            data = json.load(f)
        data[self.email.address] = {
            "address": self.email.address,
            "channel_id": channel.id,
            "time_created": time_stamp
        }
        with open('tempmail.json', 'w', encoding='utf-8') as f:
            json.dump(data, f, indent=4)
        embed = discord.Embed(title="Temp mail created", description=f"Your temp mail is {self.email.address}", color=discord.Colour.embed_background())
        await interaction.response.send_message(embed=embed, ephemeral=True)
        await channel.send(embed=embed)
ruby sparrow
#

was geht nicht ?

urban glen
#
/home/container/.local/lib/python3.11/site-packages/mailtm/message.py:33: RuntimeWarning: coroutine 'Loop.__call__' was never awaited
  self.listener(message)
RuntimeWarning: Enable tracemalloc to get the object allocation traceback
ruby sparrow
#

eror ?

urban glen
ruby sparrow
#
@discord.ui.button(label="Create temp mail", style=discord.ButtonStyle.primary, emoji="⭐", custom_id="keks", row=2)
async def button_callback1(self, button, interaction):
    current_GMT = time.gmtime()
    time_stamp = calendar.timegm(current_GMT)
    self.email = Email()
    self.email.register()
    self.email.start(self.listener)
    category = self.bot.get_channel(1189704833607938060)
    channel = await category.create_text_channel(self.email.address)
    with open('tempmail.json', 'r', encoding='utf-8') as f:
        data = json.load(f)
    data[self.email.address] = {
        "address": self.email.address,
        "channel_id": channel.id,
        "time_created": time_stamp
    }
    with open('tempmail.json', 'w', encoding='utf-8') as f:
        json.dump(data, f, indent=4)
    embed = discord.Embed(title="Temp mail created", description=f"Your temp mail is {self.email.address}", color=discord.Colour.embed_background())
    await interaction.response.send_message(embed=embed, ephemeral=True)
    await self.listener(message)
    await channel.send(embed=embed)
#

test so

urban glen
#

Moment

ruby sparrow
#

nein

#

ja

urban glen
#

huh

ruby sparrow
#

sry verschreibenb

urban glen
#

xd

#

Ja oder nein jetzt peeposweat

ruby sparrow
#

die eindrĂŒckung ist wichtig!

#

die class an die Wand

urban glen
#

await self.listener(message)

#

message?

lucid furnace
urban glen
lucid furnace
#

makier mal denn button und die classe

#

und mach shift und tab

#

das muss alles eins nach links

urban glen
lucid furnace
#

sende mir mal denn code

#

im code block

urban glen
lucid furnace
#

einrĂŒckung ist richtig

urban glen
#

Das hier ist der eigentliche Grund weshalb ich hier bin

lucid furnace
#

sende mir das mal

#

ich hasse screenshots

urban glen
# lucid furnace sende mir das mal
/home/container/.local/lib/python3.11/site-packages/mailtm/message.py:33: RuntimeWarning: coroutine 'Loop.__call__' was never awaited
  self.listener(message)
RuntimeWarning: Enable tracemalloc to get the object allocation traceback
lucid furnace
#

await self.listener(data[self.email.address])

urban glen
#

wird ausprobiert

#
Ignoring exception in view <setupview timeout=None children=1> for item <Button style=<ButtonStyle.primary: 1> url=None disabled=False label='Create temp mail' emoji=<PartialEmoji animated=False name='⭐' id=None> row=2>:
Traceback (most recent call last):
  File "/home/container/.local/lib/python3.11/site-packages/discord/ui/view.py", line 414, in _scheduled_task
    await item.callback(interaction)
  File "/home/container/cogs/tempmail.py", line 69, in button_callback1
    await self.listener(data[self.email.address])
  File "/home/container/.local/lib/python3.11/site-packages/discord/ext/tasks/__init__.py", line 303, in __call__
    return await self.coro(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/container/cogs/tempmail.py", line 29, in listener
    channel = self.bot.get_channel(data[message['to']]['channel_id'])
                                        ~~~~~~~^^^^^^
KeyError: 'to'
urban glen
lucid furnace
#

hmm

ruby sparrow
#
@commands.Cog.listener()
def listener(self, message):
    with open('tempmail.json', 'r', encoding='utf-8') as f:
        data = json.load(f)
    if message['address'] in data:
        channel = self.bot.get_channel(data[message['address']]['channel_id'])
        embed = discord.Embed(title="New email", description=f"Subject: {message['subject']}\nContent: {message['text'] if message['text'] else message['html']}", color=discord.Colour.embed_background())
        await channel.send(embed=embed)
urban glen
ruby sparrow
#

guck gleich wenn ich wieder zuhasuse bin

urban glen
#

👍

ruby sparrow
#

mache jerzt wieder

hot thunder
#

Hey, ist es möglich einzelne User vom Cooldown auszuschließen? Mein Cooldown sieht aktuell so aus

@commands.cooldown(1, 30, commands.BucketType.user)
ruby sparrow
#
@commands.cooldown(1, 30, commands.BucketType.user, exempt_users=[
    user1,
    user2,
    user3,
])``` Ich denke, das kannst du zum Beispiel aber idk
hot thunder
#

Das funktioniert leider nicht, trotzdem danke

urban glen
#

jungs

#
    @tasks.loop(seconds=60)
    async def listener(self, message):
        with open("configs/tempmail.json", "r", encoding="utf-8") as f:
            data = json.load(f)
        if message["address"] in data:
            channel = self.bot.get_channel(
                data.get(message.get("to", ""), {}).get("channel_id")
            )
            if channel:
                embed = discord.Embed(
                    title="New email",
                    description=f"Subject: {message['subject']}\nContent: {message['text'] if message['text'] else message['html']}",
                    color=discord.Colour.embed_background(),
                )
                await channel.send(embed=embed)
#

laut error hab ich vergessen irgendwas zu awaiten

native inlet
lucid furnace
native inlet
#

weiß aber selber nicht ganz

lucid furnace
hot thunder
# lucid furnace ``` def is_not_excluded_user( excluded_users = [123456789012345678, "Exclude...

Also irgendwie sieht das aus als hÀtte ChatGPT das generiert xD Aber ich habe nen weg gefunden wie es funktioniert

def customCooldown(ctx):
    if ctx.author.id in cooldown_bypass:
        return None
    else:
        return commands.Cooldown(1, 30)


class Economy(ezcord.Cog):
    economy = SlashCommandGroup("economy")

    @economy.command(
        description="Beg for some money",
        description_localizations={"de": "Bettele um ein wenig Geld"}
    )
    @commands.dynamic_cooldown(customCooldown, commands.BucketType.user)
    async def beg(self, ctx):
...
lucid furnace
urban glen
#

Kennt wer eine gute api fĂŒr temp mail?

tough thicket
#

Geht das, dass man bestimmte Slash Commands, welche bspw. nur fĂŒr den Bot Owner gĂŒltig sind, fĂŒr andere User ausblenden lassen kann? Ich meine jetzt außer diesen Discord Tab in den Servereinstellungen.

Ich glaube ich habe das mal auf einem Server gelesen, dass das möglich wÀre, aber nicht mit Pycord oder so.

Vielleicht weiß dort ja jemand mehr, oder ich frage direkt bei Pycord. 😄

twin slate
#

Es gibt die möglichkeit @discord.default_permissions() zu benutzen. Ich glaube das blendet die commands aus

#
@slash_command()
@discord.default_permissions(administrator=True)
async def command(self, ctx):
    await ctx.respond(“Dies ist ein Command”)
#

So ungefÀhr

solid ingot
viscid lake
#

ich bin grad etwas lost warum werden die emoji nicht in der db gespeichert

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

class emojiDB(ezcord.DBHandler):
    def __init__(self):
        super().__init__("emoji.db")

    async def setup(self):
        await self.execute(
            """CREATE TABLE IF NOT EXISTS users(
            user_id INTEGER PRIMARY KEY,
            emoji_1 TEXT,
            emoji_2 TEXT,
            emoji_3 TEXT
            )"""
        )

    async def get_emoji_1(self, user_id, emoji_1):
        return await self.one("SELECT emoji_1 FROM users WHERE user_id = ?", user_id, emoji_1) or ""

    async def get_emoji_2(self, user_id, emoji_2):
        return await self.one("SELECT emoji_2 FROM users WHERE user_id = ?", user_id, emoji_2) or ""

    async def get_emoji_3(self, user_id, emoji_1):
        return await self.one("SELECT emoji_3 FROM users WHERE user_id = ?", user_id, emoji_1) or ""

    async def set_emoji_1(self, user_id, emoji_1):
        await self.execute("UPDATE users SET emoji_1 = ? WHERE user_id = ?", (emoji_1, user_id))

    async def set_emoji_2(self, user_id, emoji_2):
        await self.execute("UPDATE users SET emoji_2 = ? WHERE user_id = ?", (emoji_2, user_id))

    async def set_emoji_3(self, user_id, emoji_3):
        await self.execute("UPDATE users SET emoji_3 = ? WHERE user_id = ?", (emoji_3, user_id))

db = emojiDB()


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


    @slash_command(description="Setze bis zu 3 Emoji")
    @discord.ext.commands.guild_only()
    @commands.cooldown(1, 10, commands.BucketType.user)
    async def emoji(self, ctx, emoji_1: Option(str, "Das erste Emoji", required=True), emoji_2: Option(str, "Das zweite Emoji", required=True), emoji_3: Option(str, "Das dritte Emoji", required=True)):
        if not ctx.author.guild_permissions.administrator:
            ctx.command.reset_cooldown(ctx)
            embed = discord.Embed(
                title="Fehler",
                description="Du benötigst die Berechtigung `Administrator` um diesen Befehl auszufĂŒhren!",
                color=discord.Color.red()
            )
            await ctx.respond(embed=embed, ephemeral=True)
            return

        if emoji_1 == emoji_2 or emoji_1 == emoji_3 or emoji_2 == emoji_3:
            ctx.command.reset_cooldown(ctx)
            embed = discord.Embed(
                title="Fehler",
                description="Du kannst keine doppelten Emojis verwenden!",
                color=discord.Color.red()
            )
            await ctx.respond(embed=embed, ephemeral=True)
            return
        print(f"Emojis: {emoji_1}, {emoji_2}, {emoji_3}")

        embed = discord.Embed(
            title="Erfolgreich",
            description="Deine Emojis wurden erfolgreich gesetzt!",
            color=discord.Color.green()
        )
        await ctx.respond(embed=embed, ephemeral=True)

        user_id = ctx.author.id
        await db.set_emoji_1(user_id, emoji_1)
        await db.set_emoji_2(user_id, emoji_2)
        await db.set_emoji_3(user_id, emoji_3)


def setup(bot):
    bot.add_cog(emoji(bot))```
solid ingot
#

um etwas in der DB zu speichern brauchst du INSERT, du hast aktuell nur UPDATE

viscid lake
solid ingot
#

dann hast du wohl nur ein emoji eingefĂŒgt

viscid lake
#
        user_id = ctx.author.id
        await db.set_emoji_1(user_id, emoji_1)
        await db.set_emoji_2(user_id, emoji_2)
        await db.set_emoji_3(user_id, emoji_3)``` hier sind 3 und der db oben (set) ist der gleich wie bei emoji3
#

es werden auch 3 geprintet

solid ingot
#

hast du alle 3 zu insert geÀndert?

viscid lake
solid ingot
#

du hast user_id als primary key festgelegt, das heißt es ann immer nur einen eintrag mit dieser user_id geben

#

entweder fĂŒgst du alle 3 gleichzeitig ein, oder du benutzt erst ein insert und dann updates

ruby sparrow
#
Traceback (most recent call last):
  File "C:\Users\nicor\AppData\Local\Programs\Python\Python311\Lib\site-packages\discord\client.py", line 378, in _run_event
    await coro(*args, **kwargs)
  File "d:\Projects\keks\cogs\test.py", line 12, in on_ready
    self.bot.add_view(AvatarView(avatar_url))
                      ^^^^^^^^^^^^^^^^^^^^^^
  File "d:\Projects\keks\cogs\test.py", line 38, in __init__
    @discord.ui.button(label="PNG", style=discord.ButtonStyle.link, url=f"{avatar_url}.png")
     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
TypeError: button() got an unexpected keyword argument 'url'```
#
import discord
from discord.ext import commands
import cloudcord

class Avatar(cloudcord.Cog):
    def __init__(self, bot):
        self.bot = bot

    @commands.Cog.listener()
    async def on_ready(self):
        # Fetching the bot's avatar URL since avatar_url is not defined yet
        avatar_url = self.bot.user.display_avatar.url
        self.bot.add_view(AvatarView(avatar_url))

    @commands.slash_command(name='avatar', description='Fetch a user\'s avatar from the server')
    async def avatar(self, ctx, *, user: discord.User = None, id: int = None):
        if user is None and id is None:
            user = ctx.author

        avatar_url = user.display_avatar.url

        embed = discord.Embed(
            color=discord.Color.dark_orange(),
            title=f'{user.display_name}\'s Avatar',
            url=avatar_url,
            timestamp=ctx.message.created_at,
            footer=discord.EmbedFooter(text=f"User ID: {user.id}")
        )
        embed.set_image(url=avatar_url)
        await ctx.respond(embed=embed, view=AvatarView(avatar_url))

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

class AvatarView(discord.ui.View):
    def __init__(self, avatar_url):
        super().__init__(timeout=None)

        @discord.ui.button(label="PNG", style=discord.ButtonStyle.link, url=f"{avatar_url}.png")
        async def button_callback1(self, button, interaction):
            pass  

        @discord.ui.button(label="JPG", style=discord.ButtonStyle.link, url=f"{avatar_url}.jpg")
        async def button_callback2(self, button, interaction):
            pass  

        @discord.ui.button(label="JPEG", style=discord.ButtonStyle.link, url=f"{avatar_url}.jpeg")
        async def button_callback3(self, button, interaction):
            pass  # Your code here

        @discord.ui.button(label="GIF", style=discord.ButtonStyle.link, url=f"{avatar_url}.gif")
        async def button_callback4(self, button, interaction):
            pass  
solid ingot
#

schau dir hier den abschnitt zu URL buttons an

viscid lake
#

wie kann ich am besten abfragen ob der emoji aus dem server ist bei mir klappt es irgendwie nicht

        guild = ctx.guild
        emoji_1 = discord.utils.get(guild.emojis, name=f"{emoji_1}")
        emoji_2 = discord.utils.get(guild.emojis, name=f"{emoji_2}")
        emoji_3 = discord.utils.get(guild.emojis, name=f"{emoji_3}")

        if not emoji_1 or not emoji_2 or not emoji_3:
            embed = discord.Embed(
                title="Fehler",
                description="Du musst die Emojis auf dem Server haben!",
                color=discord.Color.red()
            )
            await ctx.respond(embed=embed, ephemeral=True)
            return```
native plume
# viscid lake wie kann ich am besten abfragen ob der emoji aus dem server ist bei mir klappt e...
guild = ctx.guild
emoji_1_objekt = discord.utils.get(guild.emojis, name=f"{emoji_1}")
emoji_2_objekt = discord.utils.get(guild.emojis, name=f"{emoji_2}")
emoji_3_objekt = discord.utils.get(guild.emojis, name=f"{emoji_3}")

if not emoji_1_objekt or not emoji_2_objekt or not emoji_3_objekt:
    embed = discord.Embed(
        title="Fehler",
        description="Du musst die Emojis auf dem Server haben!",
        color=discord.Color.red()
    )
    await ctx.respond(embed=embed, ephemeral=True)
    return
#

Probier mal so

native plume
#

Geht ?

viscid lake
viscid lake
# native plume Geht ?

Fehler
Du musst die Emojis auf dem Server haben!

es klappt bei beiden nicht also wenn ich emojis von meinem server nehme und wenn ich welche von einem anderen nehme da kommt immer Fehler

native plume
#

Mhm und deine Emoji Übergabe also deine nicht Objekt Variablen klappen?

viscid lake
#

Was meinst du grade genau

ruby sparrow
#

Wie kann ich das so machen ob geprĂŒft wird, ob das ist ein Bot ist oder ob es sich um einen eigenen Benutzer handelt?

native plume
native inlet
viscid lake
native plume
viscid lake
# native plume Alr dann schick mal bitte wie du die 3 Emojis kriegst also wie die Variable zu S...
    @slash_command(description="Setze bis zu 3 Emoji")
    @discord.ext.commands.guild_only()
    @commands.cooldown(1, 10, commands.BucketType.user)
    async def emoji(self, ctx, emoji_1: Option(str, "Das erste Emoji", required=True),
                    emoji_2: Option(str, "Das zweite Emoji", required=True),
                    emoji_3: Option(str, "Das dritte Emoji", required=True)):
        if not ctx.author.guild_permissions.administrator:
            ctx.command.reset_cooldown(ctx)
            embed = discord.Embed(
                title="Fehler",
                description="Du benötigst die Berechtigung `Administrator` um diesen Befehl auszufĂŒhren!",
                color=discord.Color.red()
            )
            await ctx.respond(embed=embed, ephemeral=True)
            return

        guild = ctx.guild
        emoji_1_objekt = discord.utils.get(guild.emojis, name=f"{emoji_1}")
        print(emoji_1_objekt)
        emoji_2_objekt = discord.utils.get(guild.emojis, name=f"{emoji_2}")
        print(emoji_2_objekt)
        emoji_3_objekt = discord.utils.get(guild.emojis, name=f"{emoji_3}")
        print(emoji_3_objekt)

        if not emoji_1_objekt or not emoji_2_objekt or not emoji_3_objekt:
            embed = discord.Embed(
                title="Fehler",
                description="Du musst die Emojis auf dem Server haben!",
                color=discord.Color.red()
            )
            await ctx.respond(embed=embed, ephemeral=True)
            return

        if emoji_1 == emoji_2 or emoji_1 == emoji_3 or emoji_2 == emoji_3:
            embed = discord.Embed(
                title="Fehler",
                description="Du kannst keine doppelten Emojis verwenden!",
                color=discord.Color.red()
            )
            await ctx.respond(embed=embed, ephemeral=True)
            return
        print(f"Emojis: {emoji_1}, {emoji_2}, {emoji_3}")

        embed = discord.Embed(
            title="Erfolgreich",
            description="Deine Emojis wurden erfolgreich gesetzt!",
            color=discord.Color.green()
        )
        await ctx.respond(embed=embed, ephemeral=True)

        user_id = ctx.author.id
        await db.set_emojis(user_id, emoji_1, emoji_2, emoji_3)
native plume
viscid lake
#

ja

native plume
#

Ja gib mal welche an also z.B. pog

viscid lake
native plume
viscid lake
#

Die 3 Emojis sind alle vl. meinem Server

native plume
#

Ach so oh Gott ja klar. Sorry!

#

Ok ich gucke es mir spÀter nochmal an. Ich bin am handy und das ist einfach alles horrible

urban glen
urban glen
# viscid lake

Bei dem Beispiel wĂŒrde als Name nach dem ganzen <:staff:27272 Ding gesucht werden

#

Obwohl der Name nur „staff“ wĂ€re

#

Du musst dir also was anderes ĂŒberlegen um die Emoji Objekte zu bekommen

ruby sparrow
#
[ERROR] Error while executing /stern steal 
Traceback (most recent call last):
  File "C:\Users\nicor\AppData\Local\Programs\Python\Python311\Lib\site-packages\discord\commands\core.py", line 124, in wrapped
    ret = await coro(arg)
          ^^^^^^^^^^^^^^^
  File "C:\Users\nicor\AppData\Local\Programs\Python\Python311\Lib\site-packages\discord\commands\core.py", line 978, in _invoke
    await self.callback(self.cog, ctx, **kwargs)
  File "d:\Projects\keks\cogs\test.py", line 204, in steal
    embed.set_thumbnail(url=ctx.author.display_avatar.url)
    ^^^^^
UnboundLocalError: cannot access local variable 'embed' where it is not associated with a value```
#
@stern.command(
        description="Oh je, wenn du den Befehl befolgst, wirst du nie Freunde findenâ˜č"
    )
    @commands.cooldown(1, 7200, commands.BucketType.user)
    async def steal(self, ctx, member: Option(discord.Member)):
        if member.id == ctx.author.id or member.id == ctx.bot.user.id:
            embed = discord.Embed(
                title="**Bruder warum**",
                description="Bruder aber warum versuchst du, dich selbst oder den Bot zu bestehlen?",
                color=discord.Color.red(),
            )
            embed.set_thumbnail(url=ctx.author.display_avatar.url)
            await ctx.respond(embed=embed, ephemeral=True)
            return

        success_chance = random.randint(1, 30)
        stolen_stern = random.randint(1, 100)
        total_stern_stealer = await db.get_stern(ctx.author.id)
        total_stern_victim = await db.get_stern(member.id)

        await db.subtract_stern(member.id, stolen_stern)
        await db.add_stern(ctx.author.id, stolen_stern)

        embed_stealer = discord.Embed(
            title="stern Diebstahl!",
            description=f"Du hast {stolen_stern} ⭐ von {member.mention} geklaut!",
            color=discord.Color.yellow(),
        )
        embed_stealer.set_footer(
            text=f"Du hast nun {total_stern_stealer + stolen_stern} stern ⭐"
        )

        embed_victim = discord.Embed(
            title="stern Diebstahl!",
            description=f"Deine stern wurde von {ctx.author.mention} gestohlen! 😱",
            color=discord.Color.red(),
        )
        embed_victim.set_footer(
            text=f"Du hast nun {max(0, total_stern_victim - stolen_stern)} stern ⭐"
        )
        embed.set_thumbnail(url=ctx.author.display_avatar.url)

        await ctx.respond(embed=embed_stealer)
        await ctx.respond(embed=embed_victim)```
native inlet
#

Also denke das es so ist

lucid furnace
#

oder du machst einmal embed_stealer.set_thumbnail und einmal embed_victim.set_thumbnail

empty plaza
#

Wie kann ich ein wait_for mit einem button abbrechen?

opaque blade
#

Moin, ich will fuer meine Welcomemessage jeweils eine zufaellige Begruessung schreiben lassen. Also habe ich das hier gecodet:

    def randomquotes(self, kategorie):
        quotes = {
            "random_quotes": [
                "Ein wildes etwas ist aufgetaucht!",
                "Ooooh, ein neuer User!",
                "Willkommen, Willkommen! 👋",
                "Moin Chef!",
                "Oh, wer ist das? Kennt man den?",
                "Oooh, hiiii 👉👈",
                "Jetzt steigt die Party, willkommen! đŸ„ł",
                "Warte, war das geplant? Egal, hiiii!",
                "HA, ein neuer User hehe.",
                "Willkommen im Irrenhaus.",
                "Moinooo, hoffentlich weißt du was du tust. 😹"
            ]
        }
        randomquotes = random.choice(quotes[kategorie])   
        while randomquotes == self.zuletzt_verwendet.get(kategorie):
            randomquotes = random.choice(quotes[kategorie])

            self.zuletzt_verwendet[kategorie] = randomquotes
            return randomquotes


    # --- WELCOME MESSAGE
    @bot.event # - CHANNEL
    async def on_member_join(self, member):
        randomquotes = self.randomquotes("random_quotes")
        embed = discord.Embed(
            title=f"![carregando2](https://cdn.discordapp.com/emojis/1190383345947910204.webp?size=128 "carregando2") {randomquotes}",
            description=f"Willkommen **__{member.mention}__** in ``Keesus's Zentrale!`` 🚀\n"
                        f'> Schön, dass du da bist! Bitte lies dir in Ruhe die __đŸ“©-Regeln__ durch.\n'
                        f'> Ansonsten wĂŒnschen wir dir einen tollen Aufenthalt! ![waving](https://cdn.discordapp.com/emojis/1180616527834259506.webp?size=128 "waving")\n'
                        f'``Du brauchst Hilfe? = /help``',
            color=discord.Color.random(),
            timestamp=discord.utils.utcnow())
        embed.set_thumbnail(url=member.avatar.url)
        embed.set_footer(text="Keesus's Zentrale :rocket:", icon_url="https://cdn.discordapp.com/attachments/1176981686827896964/1181701861787578451/SERVERICON.png")
        channel = bot.get_channel(WELCOMECHANNEL)

        dm_embed = discord.Embed( # - DM
            title=f":wave: Willkommen **__{member.mention}__**! :rocket:",
            description=f"Ich bin Flauschi, dein persönlicher Freund & Helfer.\n"
                        f"Meine Aufgabe ist es, dein Erlebnis auf diesem Server zu verbessern.\n\n"
                        f"Damit du den Server in vollem Glanz siehst, brauchst du die *'Neuling'*-Rolle.\n"
                        f"Diese bekommst du in der Server-EinfĂŒhrung.",
            color=discord.Color.green(),
            timestamp=discord.utils.utcnow())
        dm_embed.add_field(name="Solltest du weitere Fragen haben:", value="Mach einfach ``/help`` in #đŸ€–ă€ąbot-commands! :eyes:")
        dm_embed.set_image(url="https://cdn.discordapp.com/attachments/1176981686827896964/1186346046289354812/DM_PICTURE.png")
        dm_embed.set_footer(text="Keesus's Zentrale :rocket:", icon_url="https://cdn.discordapp.com/attachments/1176981686827896964/1181701861787578451/SERVERICON.png")
    
        await channel.send(embed=embed)
        await member.send(embed=dm_embed)

Das problem wiederum ist, dass ich self, member zusammen nicht nutzen kann. Kann mir wer evtl helfen?

trim dagger
#

Warum wird da nicht Inhaber angezeigt

viscid lake
#

code?

trim dagger
#
if author.id == 1138761982317711443:
                msg_embed.set_author(name=f'{author.name}│🛡 Moderator', url=f'https://discord.com/users/{author.id}', icon_url=icon)
            elif self.is_global_member(message.author.id): # type: ignore # TODO: Implement this
                msg_embed.set_author(name=f'{author.name} │đŸœČ Inhaber', url=f'https://discord.com/users/{author.id}', icon_url=icon)
            else:
                msg_embed.set_author(name=author.name, url=f'https://discord.com/users/{author.id}', icon_url=icon)
            icon_url = guild.icon.url or "https://i.giphy.com/media/xT1XGzYCdltvOd9r4k/source.gif"
            msg_embed.set_thumbnail(url=icon_url)
viscid lake
#

chatgpt?

trim dagger
#

was meinst du

viscid lake
#

ist das von chatgpt

trim dagger
#

ne

#

ich habs

worldly phoenix
#

er dachte weil da bei elif am ende Text ist

solid ingot
#

was meinst du genau mit zusammen nutzen?

opaque blade
#

deswegen ist ja meine frage ob es eine ander methode fuer gibt

solid ingot
#

sollte eig mit self, member gehen

opaque blade
#

also es ist keine cog sondern in der main

#
[ERROR] Error in event on_member_join 
Traceback (most recent call last):
  File "C:\Users\Kai\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\client.py", line 399, in _run_event
    await coro(*args, **kwargs)
TypeError: Welcome.on_member_join() missing 1 required positional argument: 'member'
solid ingot
#

achso, dann musst du das self entfernen

hot thunder
#

Hey, ich bekommen diesen Error

Traceback (most recent call last):
  File "C:\Users\lukas\AppData\Local\Programs\Python\Python311\Lib\site-packages\discord\client.py", line 399, in _run_event
    await coro(*args, **kwargs)
  File "D:\Dev\Pycharm\Nova-Bot\cogs\invite_logger.py", line 23, in on_guild_join
    integrations = await guild.interactions()
                         ^^^^^^^^^^^^^^^^^^
AttributeError: 'Guild' object has no attribute 'interactions'

wenn ich das hier ausfĂŒhre

class InviteLogger(ezcord.Cog):
    @commands.Cog.listener()
    async def on_guild_join(self, guild):
        botUser = await self.bot.get_or_fetch_user(1157320015943569549)
        channel = await discord.utils.get_or_fetch(self.bot, "channel", 1190440291635826710, default=None)
        try:
            integrations = await guild.interactions()
        except discord.Forbidden:
            embed = discord.Embed(
                color=discord.Color.red(),
                title=f"{info}・Joined Guild Error",
                description=f"The bot joined a guild, but couldn't get the interactions for it."
            )
            channel.send(embed=embed)
            return
        for integration in integrations:
            if isinstance(integration, discord.BotIntegration):
                if integration.application.user == self.bot.user:
                    embed = discord.Embed(
                        color=discord.Color.green(),
                        title=f"{info}・Joined Guild",
                        description=f"**Inviter:**{integration.user.display_name}\n**Guild Name:** {guild.name}\n**Guild ID:** {guild.id}\n**Guild Owner:** {guild.owner.mention}\n**Guild Owner ID:** {guild.owner.id}\n**Guild Member Count:** {guild.member_count}\n**Guild Created At:** {guild.created_at}"
                    )
                    embed.set_footer(text=f"Guild Count: {len(self.bot.guilds)}")
                    embed.set_author(name="NovaBot", icon_url=botUser.avatar)
                    embed.set_thumbnail(url=guild.icon)
                    channel.send(embed=embed)
                    break
#

Nvm

#

Ich habe interactions geschrieben und nicht integrations

viscid lake
#
class afkDB(ezcord.DBHandler):
    def __init__(self):
        super().__init__("afk.db")

    async def setup(self):
        await self.execute(
            """CREATE TABLE IF NOT EXISTS AFK(
            user_id INTEGER PRIMARY KEY,
            afk TEXT,
            datum TEXT

        )"""
        )``` warum erstellt er die db nicht
tawdry leaf
trim dagger
tawdry leaf
#

dein table

solid ingot
viscid lake
solid ingot
#

du musst irgendwo sowas stehen haben wie db = afkDB()

viscid lake
#

Ă€hhh ja

#

na klar Pepe_with_jesus

tawdry leaf
solid ingot
#

naja wenn man die Datenbank nirgends nutzt muss sie auch nicht erstellt werden

viscid lake
#

bin wieder dumm gehe auch jetzt schlafen

wenn ich wieder in den chat schreibe wird mein afk status entfernt da soll stehen wie lange ich afk war aber irgendwie bekomme ich das nicht hin kann sein das ich den falschen style nutze oder so

   @commands.Cog.listener()
    async def on_message(self, message):
        afk_data = await db.get_afk(message.author.id)
        if afk_data:
            afk_status, afk_time = afk_data
            try:
                afk_time = datetime.fromisoformat(afk_time)
                afk_time = afk_time.replace(tzinfo=pytz.utc).astimezone(
                    pytz.timezone('Europe/Berlin'))

                new_time = discord.utils.format_dt(afk_time, "R")
            except ValueError:
                new_time = "Unbekannt"

            embed = discord.Embed(
                title="AFK",
                description=f"Du bist nun nicht mehr Abwesend. Grund: `{afk_status}`\n"
                            f"Du warst {new_time} abwesend",
                color=discord.Color.green()
            )
            await message.channel.send(embed=embed)
            user_id = message.author.id
            await db.remove_afk(user_id)```

wie auf dem foto da soll stehen `Du warst 56 Minuten abwesend` also ohne in
viscid lake
urban glen
#

Weil das Zeitpunkte anzeigen und nicht zeitspannen

viscid lake
urban glen
#

Du mĂŒsstest selber was schreiben was dir eine Zeitspanne ausrechnet

lucid furnace
tough thicket
#

gibt es eine art on_application_command_create event, wo man bei jeder slash command ausfĂŒhrung ĂŒberprĂŒfen kann, ob der user auf einer blacklist ist, und keine commands mehr ausfĂŒhren darf?

ich habe eben nichts dazu in den docs gefunden.

lucid furnace
#

ja

#

async def on_application_command(self, ctx):

tough thicket
#

achsoo, danke dir, versuche ich mal

ruby sparrow
hot thunder
#

Hi, ich wollte mal fragen ob es möglich ist alle Buttons von einer Nachricht zu disablen? Aktuell sieht mein Button Callback so aus

    async def button_callback1(self, button, interaction):
        r_int = random.randint(1, 100)
        type = random.randint(1, 2)
        botUser = await interaction.client.get_or_fetch_user(1157320015943569549)
        if economyGetMoneyByID(interaction.user.id) >= 100:
            if type == 1:
                if interaction.locale == "de":
                    embed = discord.Embed(
                        color=discord.Color.blurple(),
                        title="Shop Rob",
                        description=f"Du raubst einen Laden aus und bekommst 1000 {cookie}! \n \nDu hast nun **{economyGetMoneyByID(interaction.user.id) + 1000}** {cookie}"
                    )
                else:
                    embed = discord.Embed(
                        color=discord.Color.blurple(),
                        title="Shop Rob",
                        description=f"You robbed a shop and got 1000 {cookie}! \n \nYou now have **{economyGetMoneyByID(interaction.user.id) + 1000}** {cookie}"
                    )
                    embed.set_thumbnail(url=interaction.user.avatar)
                    embed.set_author(name="NovaBot", icon_url=botUser.avatar)
                button.disabled = True
                await interaction.response.edit_message(embed=embed, view=self)
urban glen
#

view.disable_all_items()

#

oder in deinem falls dann self.disable_all_items()

odd kiteBOT
urban glen
#

^ @hot thunder

hot thunder
#

Danke mc

native inlet
hot thunder
#

Jo

hot thunder
#

Ist es irgendwie möglich die Message ID von einer Nachricht zu bekommen die durch

await ctx.respond()

gesendet wurde? Mein Code sieht aktuell so aus

    @economy.command(
        description="Commit a (fake) crime for some cookies!",
        description_localizations={"de": "Begehe ein (gefĂ€lschtes) Verbrechen fĂŒr ein paar Kekse!"}
    )
    @commands.dynamic_cooldown(customCooldown20, commands.BucketType.user)
    async def crime(self, ctx):
        if ctx.interaction.locale == "de":
            embed = discord.Embed(
                color=discord.Color.blurple(),
                title="Crime",
                description="WÀhle das verbrechen, welches du begehen möchtest!"
            )
        else:
            embed = discord.Embed(
                color=discord.Color.blurple(),
                title="Crime",
                description="Choose the crime you want to commit!"
            )
        embed.set_author(name="NovaBot", icon_url=self.bot.user.avatar)
        embed.timestamp = datetime.datetime.now()
        embed.set_thumbnail(url=ctx.author.avatar)
        embed.set_footer(text=f"{ctx.author.display_name}", icon_url=ctx.author.avatar)
        await ctx.respond(embed=embed, view=View())
twin slate
#

Ich hab nachgeguckt die message id bekommt man mit message.id wie ich es oben gesagt habe

hot thunder
#

Okay, ich probiere das mal aus

#

Also so bekomme ich irgendwie nicht die ID von der Nachricht die durch

await ctx.respond()

gesendet wird. Ich bekomme irgendeine ID aber nicht die von der Nachricht die gesendet wird

lucid furnace
hot thunder
#

Also eigentlich ist das fĂŒr meinen /economy crime Command bei dem ich den Crime in ner Datenbank mit Message ID und User ID speichern möchte, um zu checken, wer den Crime gestartet hat, damit nur der User der ihn gestartet hat die Buttons verwenden kann

twin slate
hot thunder
tawdry leaf
#

das kannst du doch auch mit dem user nur

native inlet
odd kiteBOT
#
tawdry leaf
#

du musst bei den buttons einf nur den user der den cmd geschrieben hat ĂŒbergeben

native inlet
#

Indem du den User an die View ĂŒbergibst

hot thunder
#

Ah

native inlet
#

Also so hab ich es auch von Codingkeks

hot thunder
#

Danke mc

thick haven
#
    async def on_application_command_error(self, ctx, error):
        if isinstance(error, commands.MissingPermissions):```

Ich möchte das wenn der Bot z. B. nach einem Button drĂŒcken einen channel erstellt aber keine perms hat einen errror bekommen aber mit dem oder Botmissiing perms geht das nicht kann mir da jmd helfen
urban glen
#

wie das geht nicht?

#

also der error wird nicht abgefangen?

hot thunder
#

Das hier nutze ich wenn mein Bot keine Rechte hat

    @commands.Cog.listener()
    async def on_application_command_error(self, ctx, error):
        if isinstance(error, commands.MissingPermissions):
            if ctx.interaction.locale == "de":
                await ctx.respond(f"![no](https://cdn.discordapp.com/emojis/1152674352446324846.webp?size=128 "no")**・**Du hast nicht genug Rechte, um das auszufĂŒhren!", ephemeral=True)
            else:
                await ctx.respond(f"![no](https://cdn.discordapp.com/emojis/1152674352446324846.webp?size=128 "no")**・**You don't have permission to do that!", ephemeral=True)
            return
        elif isinstance(error, commands.BotMissingPermissions):
            if ctx.interaction.locale == "de":
                await ctx.respond(f"{no}**{dot}**Ich habe nicht genug Rechte, um das auszufĂŒhren!")
            else:
                await ctx.respond(f"{no}**{dot}**I don't have enough permissions to execute this!")
#

Aber ich weiß net ob das auch bei Buttons funktioniert

thick haven
# hot thunder Das hier nutze ich wenn mein Bot keine Rechte hat ```py @commands.Cog.listen...

Hab ich ja aber ich bekomme diesen fehler

            embed, file = await error_embed(ctx=ctx,
                title="Commands",
                command="Fehlende Berechtigungen",
                reason="DafĂŒr benötige: **`{error}`** ich Berechtigungen.".format(error=error))
            return await ctx.respond(embed = embed, file = file, ephemeral=True)```

aber das ist der fehler:

Ignoring exception in view <View timeout=180.0 children=4> for item <ChoiceButton style=<ButtonStyle.danger: 4> url=None disabled=False label='Red' emoji=None row=None>:
Traceback (most recent call last):
File "C:\Users\jurek\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\site-packages\discord\ui\view.py", line 414, in _scheduled_task
await item.callback(interaction)
File "c:\Users\jurek\Documents\Development\Python\DC Bots\Xenority\Xenority-Main-Pycord-V2-PY\cogs\dev\tempvoice.py", line 368, in callback
category = await interaction.guild.create_category("─┐➕│Join2Create│➕└─ ─", reason="TempVoiceSystem")
File "C:\Users\jurek\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\site-packages\discord\guild.py", line 1586, in create_category
data = await self._create_channel(
File "C:\Users\jurek\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\site-packages\discord\http.py", line 365, in request
raise Forbidden(response, data)
discord.errors.Forbidden: 403 Forbidden (error code: 50013): Missing Permissions

urban glen
#

du siehst ja dass die exception discord.errors.Forbidden ist

#

also probier es doch mal damit

hot thunder
#

Also es kann halt auch sein das dass von oben net mit Buttons funktioniert

thick haven
#

Ja denke ich auch das dass allgemein was mit interaction zu tun hat

urban glen
#

Das kommt ja wenn du den button "Red" drĂŒckst oder

thick haven
#

ja genau weil ich will den error in meinen error handler einbauen und ned mit try und so ich frag mal bei pyccord nach

urban glen
#

Ersetz doch einfach mal:
if isinstance(error, commands.BotMissingPermissions):

mit

if isinstance(error, discord.Forbidden):

native inlet
urban glen
#

das ist was von create_category, was du ja machen willst, geworfen werden kann

#

fehlende permissions ist Forbidden

native inlet
#

Aber kann auch falsch sein weiß ich nicht genau

urban glen
urban glen
native inlet
thick haven
#

kalr kann man das mit try und except machen abernee

native inlet
thick haven
native inlet
#

ja

thick haven
#

aber du hast es in nem listerner event?

#

@commands.Cog.listener()

#
    @commands.Cog.listener()
    async def on_error(self, error: Exception, item: discord.ui.Item, interaction: discord.Interaction):
        if isinstance(error, (discord.Forbidden, discord.HTTPException)):
            return await ctx.response.send_message("Ich kann kein channel machen")```
native inlet
#

In der View

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

    async def on_error(self, error: Exception, item: discord.ui.Item, interaction: discord.Interaction):
        if isinstance(error, (discord.Forbidden, discord.HTTPException)):
            return await ctx.response.send_message("Ich kann kein channel machen")

    @discord.ui.button(label="abc")
    async def ...(...):
        ...
thick haven
#

Ja gut ich arbeite mit seperaten klassen fĂŒr buttons usw. hhm aber da muss es doch irgenwie ein globales event geben hm

native inlet
thick haven
#

Genau

#

da muss ich das ja in jeden button einzel reinamchen

native inlet
#

Aber das fĂŒgst du ja auch zu einer View hinzu oder nicht?

thick haven
#

naja
in nem command z.b.


            view.add_item(create_button)
            view.add_item(delete_button)```
native inlet
#

async def channel_create_error_handling(error: Exception, item: discord.ui.Item, interaction: discord.Interaction):
    if isinstance(error, (discord.Forbidden, discord.HTTPException)):
        return await ctx.response.send_message("Ich kann kein channel machen")

view = View()
view.on_error = channel_create_error_handling

view.add_item(create_button)
view.add_item(delete_button)
#

So könnte es glaube ich gehen

#

@thick haven

tawdry leaf
#

musst nur die EinrĂŒckung beachten

thick haven
# native inlet So könnte es glaube ich gehen
  File "C:\Users\jurek\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\site-packages\discord\ui\view.py", line 414, in _scheduled_task
    await item.callback(interaction)
  File "c:\Users\jurek\Documents\Development\Python\DC Bots\Xenority\Xenority-Main-Pycord-V2-PY\cogs\dev\tempvoice.py", line 303, in callback
    view.on_error = self.channel_create_error_handling(interaction)
TypeError: temp_voice_create.channel_create_error_handling() missing 3 required positional arguments: 'error', 'item', and 'interaction'```
native inlet
#

Oh

#

Dann weiß ich leider nicht

thick haven
#

also interaction ist klar aber dder rest nicht so

native inlet
#

Sorry fĂŒr die Falsch info

thick haven
#

ah okay gut tzd danke

fringe hedge
#

hallo, habe eine ganz kleine frage wie kann man 10 Sekunden timer machen in ein msg?

hot thunder
fringe hedge
native inlet
fringe hedge
native inlet
fringe hedge
native inlet
#

<t:1703978520:R>

#

So?

fringe hedge
native inlet
#

Okay, wie das in Code geht weiß ich leider nicht

fringe hedge
#

kannst du es auf 10 Sekunden machen?

thick haven
fringe hedge
#

dankee

thick haven
viscid lake
#

@native plume hast du mich vergessen Cat_Cute

native plume
jaunty jasper
#

    async def call2(self, interaction):
        result = await db.is_locked(interaction.channel)
        if result:
            if result == interaction.user.id:
                await db.remove_claim(interaction.channel)
                embed = discord.Embed(
                    title="Ticket wurde entsperrt",
                    description=f":checkmark_dev: Das Ticket wurde entsperrt.",
                    colour=0x82e873
                )
                await interaction.response.send_message(embed=embed)
                print("1")
                new_name = interaction.channel.name[2:]
                print("2")
                await interaction.channel.edit(name=f"🟡-{new_name}")
                print("3")
            else:
                embed = discord.Embed(colour=0xff5555)
                embed.add_field(name=f"",
                                value=f"**:crosshair_dev: Dieses Ticket wurde schon von <@{result}> gesperrt**",
                                inline=False)

                await interaction.response.send_message(embed=embed, ephemeral=True)

Warum wird der name nicht geÀndert ?

Kosnole:

1
2

#

Also bis zum Àndern kommt er, aber nicht weiter

solid ingot
#

wahrscheinlich ein rate limit, da du den namen nur 2 mal alle 10min Àndern kannst

solid ingot
#

wenn du nachschauen willst kannst du auch logs aktivieren, da siehst du dann genau rate limit infos

jaunty jasper
#

👍

rancid raven
viscid lake
native plume
viscid lake
twilit anvil
#

Moin moin! Kurze Frage zu diesem Blacklist-Feature bei EzCord: Ist dies dafĂŒr da, um Nutzer vom Bot auszuschließen? Verstehe das leider mit den Docs nicht.

solid ingot
twilit anvil
# solid ingot ja genau

Okay, muss ich dann bei jedem Command checken, ob der Nutzer gebannt ist, oder macht EzCord das automatisch?

solid ingot
twilit anvil
# solid ingot das macht ezcord :) das ist sozusagen der Sinn von dem Feature <:peeposhy:104651...

Aber es gibt einen Fehler:

File "C:\Users\Leand\PycharmProjects\keks-bot\main.py", line 14, in <module>
    bot.add_blacklist(admin_server_ids=admin_server_ids, db_path='data/db/blacklist.db', db_name='blacklist', raise_error=False, disabled_commands=['add', 'remove', 'show', 'owner', 'server', 'show_servers'], owner_only=True)
TypeError: Bot.add_blacklist() got an unexpected keyword argument 'disabled_commands'```

Zeile 14:

```py
bot.add_blacklist(admin_server_ids=admin_server_ids, db_path='data/db/blacklist.db', db_name='blacklist', raise_error=False, disabled_commands=['add', 'remove', 'show', 'owner', 'server', 'show_servers'], owner_only=True)
#

Also gibts keine Variable die "disabled_commands" heißt?

tawdry leaf
tawdry leaf
twilit anvil
#

Geht auch nicht :/

#

@tawdry leaf

tawdry leaf
tawdry leaf
#
all = [
    'add', 'remove', 'show', 'owner', 'server', 'show_servers'
]
bot.add_blacklist(db_name="blacklist",db_path="blacklist.db",raise_error=False,owner_only=True,admin_server_ids=blacklist_servers,disabled_commands=all)```
tawdry leaf
twilit anvil
#

Ik habs

#

Ja copypaste

tawdry leaf
#

xD

twilit anvil
#

Aber trotzdem

#

Habe auch EzCord 0.5.1

tawdry leaf
#

matser branch 👀

twilit anvil
#

Gibts das grad nur da?

#

Ok, und wie installiere ich das dann?

tawdry leaf
twilit anvil
#

Bruh @tawdry leaf

#

Hatte ich vorher auch...

tawdry leaf
#

nein

twilit anvil
#

Doch, hatte extra in den Interpreter Settings geglozt

tawdry leaf
#

es wurden beim master branch sachen gefixt die beim anderen noch nicht gefixt sind

#

#1019974414487535736 message @twilit anvil

#

wenn bugs fixed werden sind die erst im master branch meist

solid ingot
thick haven
#

Was macht das Value? ich bekomme da eine n13 zurĂŒck ist das eine discord id also z.b. voice channels sind 5 text sind 3 stage 13 usw oder was heisst das
channel.type.value

urban glen
#

wofĂŒr denn?

urban glen
thick haven
#

also umgenau zu eseinen ob es ein satge channel ist

#

ich habe das so aber ich finde das sio nicht gut ichw eiss ned

#

if before.channel.type.name == "stage_voice":

urban glen
#

if isinstance(channel, discord.StageChannel):

#

Wenn der Channel eine Instanz von einem StageChannel ist weißt du dass es eben ein Stage Channel ist

urban glen
thick haven
urban glen
#

reicht member.guild_permissions.manage_channels: nicht aus?

thick haven
urban glen
#

Du hast doch jz bestimmt ctx.guild_permissions geschrieben oder?

urban glen
thick haven
#

weil fĂŒr was das member objekt ich will ja prĂŒfen ob der bot die perms hat

tawdry leaf
tawdry leaf
twilit anvil
#

Hey! Dieser Fehler tritt bei meinem Ban-Command auf, das passiert, weil der Nutzer den ich bannen möchte nicht auf dem Server ist. Wie kann ich ihn trotzdem bannen?

[ERROR] Error while executing /ban 
Traceback (most recent call last):
  File "/home/container/.local/lib/python3.11/site-packages/discord/commands/core.py", line 131, in wrapped
    ret = await coro(arg)
          ^^^^^^^^^^^^^^^
  File "/home/container/.local/lib/python3.11/site-packages/discord/commands/core.py", line 1000, in _invoke
    await self.callback(self.cog, ctx, **kwargs)
  File "/home/container/cogs/moderation.py", line 44, in _ban
    await member.ban(reason=reason)
#

Mit Wie kann ich ihn trotzdem Bannen ist gemeint, dass ich ihn ĂŒber meinen Bot bannen will.

twilit anvil
# solid ingot du kannst guild.ban() nutzen

Geht leider immer noch nicht.

[ERROR] Error while executing /ban 
Traceback (most recent call last):
  File "C:\Users\Leand\AppData\Local\Programs\Python\Python311\Lib\site-packages\discord\commands\core.py", line 131, in wrapped
    ret = await coro(arg)
          ^^^^^^^^^^^^^^^
  File "C:\Users\Leand\AppData\Local\Programs\Python\Python311\Lib\site-packages\discord\commands\core.py", line 1000, in _invoke
    await self.callback(self.cog, ctx, **kwargs)
  File "C:\Users\Leand\PycharmProjects\keks-bot\cogs\moderation.py", line 17, in _ban
    await ctx.defer()
  File "C:\Users\Leand\AppData\Local\Programs\Python\Python311\Lib\site-packages\discord\interactions.py", line 734, in defer
    await self._locked_response(
  File "C:\Users\Leand\AppData\Local\Programs\Python\Python311\Lib\site-packages\discord\interactions.py", line 1198, in _locked_response
    await coro
  File "C:\Users\Leand\AppData\Local\Programs\Python\Python311\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```
#
await ctx.guild.ban(user=member, reason=reason)```
#

ah nvm, bot lief zweimal, und einmal mit dem alten Code.

novel ore
#

Wie kann ich wenn ich ein Member Objekt haben schauen in welchen Vooice Kanal der Member ist?

odd kiteBOT
solid ingot
#

^ @novel ore

novel ore
#

ui

fallow raft
#

Wieso sagt er jetzt auf einmal das es kein module namens pip gibt? vor 1 minute hat es noch funktioniert?