#Allgemeine Hilfe

1 messages · Page 13 of 1

indigo sapphire
#

hä?

fluid leaf
#

Man kann nur 2 oder 3 geben

indigo sapphire
#

wo den?

umbral goblet
#

du darfst nur 2übergeben aber hast 5

fluid leaf
#

Man kann 2 oder 3 übergeben aber nd 5

umbral goblet
#

zeile

indigo sapphire
#

als ob hab ja nur 3?

umbral goblet
#

zeile 597 @indigo sapphire

indigo sapphire
#

check den fehler nicht

#

bei jede funktioniert ? und hier nicht?

umbral goblet
#

aha die letzten children dinger müssen in eine klaamer und slamein argument übergeben weden

#

@indigo sapphire

indigo sapphire
#

genauer erklären bitte oder als code?

umbral goblet
#

digga du stellst mir keine vorderungen

indigo sapphire
#

ist eine bitte

umbral goblet
#

siese drei argumente in eine klammer packen

indigo sapphire
#

ahh

#

welche klammer?

#

xD

umbral goblet
#

anstatt (1,2,3,4) madhst du (1,(1,2,3))

indigo sapphire
#

fehler:

Ignoring exception in modal <cogs.SevenDSGC.ADD_EditModalViewInput_All_Name object at 0x0000016F856C2A10>:
Traceback (most recent call last):
  File "C:\Users\Manuel Berchtold\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\ui\modal.py", line 324, in dispatch
    await value.callback(interaction)
  File "c:\Users\Manuel Berchtold\OneDrive - Kantonale Schule für Berufsbildung\Dokumente\Programmieren\Python\ShrioLaplaceBot\ShiroSystem\cogs\SevenDSGC.py", line 597, in callback
    async with db.execute('SELECT * FROM SevenDSGC_Unit WHERE Unit_Title_Name=? OR Alias LIKE "%?%" OR Unit_Name LIKE "%?%"', (self.children[0].value, self.children[0].value, self.children[0].value,)) as cursor:
  File "C:\Users\Manuel Berchtold\AppData\Local\Programs\Python\Python310\lib\site-packages\aiosqlite\context.py", line 41, in __aenter__
    self._obj = await self._coro
  File "C:\Users\Manuel Berchtold\AppData\Local\Programs\Python\Python310\lib\site-packages\aiosqlite\core.py", line 184, in execute
    cursor = await self._execute(self._conn.execute, sql, parameters)
  File "C:\Users\Manuel Berchtold\AppData\Local\Programs\Python\Python310\lib\site-packages\aiosqlite\core.py", line 129, in _execute
    return await future
  File "C:\Users\Manuel Berchtold\AppData\Local\Programs\Python\Python310\lib\site-packages\aiosqlite\core.py", line 102, in run
    result = function()
sqlite3.ProgrammingError: Incorrect number of bindings supplied. The current statement uses 1, and there are 3 supplied.
#

code:

async with db.execute('SELECT * FROM SevenDSGC_Unit WHERE Unit_Title_Name=? OR Alias LIKE "%?%" OR Unit_Name LIKE "%?%"', (self.children[0].value, self.children[0].value, self.children[0].value,)) as cursor:
#

nicht mal chatgpt kann das lösen lmao

indigo sapphire
umbral goblet
indigo sapphire
#

naja bei like schon

#

like brauche ich % zeichen

umbral goblet
#

nein nicht prozent anführungszeichen weg

indigo sapphire
#

hab es so gelöst:

(self.children[0].value, f'%{self.children[0].value}%', f'%{self.children[0].value}%'))
#
SELECT * FROM SevenDSGC_Unit WHERE Unit_Title_Name=? OR Alias LIKE ? OR Unit_Name LIKE ?'
umbral goblet
#

ja geht auch xD

#

es müsste glaub statt "%?%?" %? % sein

indigo sapphire
#

xD

#

ahh unterschied mehr zeit verbrauch xD

indigo sapphire
#

xD

indigo sapphire
#

den error deine methode:

Ignoring exception in modal <cogs.SevenDSGC.TextInputModalView object at 0x0000020414752FB0>:
Traceback (most recent call last):
  File "C:\Users\Manuel Berchtold\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\ui\modal.py", line 324, in dispatch
    await value.callback(interaction)
  File "c:\Users\Manuel Berchtold\OneDrive - Kantonale Schule für Berufsbildung\Dokumente\Programmieren\Python\ShrioLaplaceBot\ShiroSystem\cogs\SevenDSGC.py", line 645, in callback
    async with db.execute(f"""
  File "C:\Users\Manuel Berchtold\AppData\Local\Programs\Python\Python310\lib\site-packages\aiosqlite\context.py", line 41, in __aenter__
    self._obj = await self._coro
  File "C:\Users\Manuel Berchtold\AppData\Local\Programs\Python\Python310\lib\site-packages\aiosqlite\core.py", line 184, in execute
    cursor = await self._execute(self._conn.execute, sql, parameters)
  File "C:\Users\Manuel Berchtold\AppData\Local\Programs\Python\Python310\lib\site-packages\aiosqlite\core.py", line 129, in _execute
    return await future
  File "C:\Users\Manuel Berchtold\AppData\Local\Programs\Python\Python310\lib\site-packages\aiosqlite\core.py", line 102, in run
    result = function()
sqlite3.OperationalError: near "%": syntax error
umbral goblet
indigo sapphire
#

xD

#

Gefixt einfach meine Methode Anwenden

umbral goblet
umbral goblet
#

ey weiss jemand wie man eine list in py zu string umwandelt und wieder zurück???

solid ingot
#

mit join zum beispiel

#

und mit split wieder zurück

umbral goblet
#

? ich bin zu dumm

solid ingot
#

ich muss auch immer wieder nachschauen

#

ich empfehle dir die beispiele bei w3schools anzuschauen

solid ingot
#

hey, am besten wäre es, wenn du die datenbankabfragen in externe methoden auslagern würdest. dann kannst du beispielsweise immer eine methode aufrufen, wenn du den kontostand eines users abfragen möchtest. außerdem verhinderst du so doppelten code

#

ein beispiel dafür findest du in meiner datenbankserie

#

da könntest du auch eine methode machen, nur dass du dann jedes mal den namen und den preis an die methode übergibst

#

um einen wirklichen unterschied bei der performance zu merken, müsstest du schon sehr viele items einfügen, das sollte kein problem sein.
es gibt aber mit großer wahrscheinlichkeit auch einen weg, den code ohne if bedingungen für die items zu schreiben, der für alle items direkt funktioniert

#

dann würde ich auf keinen fall für jedes item eine if bedingung machen.
du kannst im grunde den ganzen code in eine methode machen, und den name/preis jedes mal an diese methode übergeben

#

ah okay. eine lösung wäre zum beispiel ein dictionary oder eine json, datei. damit könntest du mit demselben code jedes mal individuell den preis für ein item bekommen

#

achso, dann würde ich ein dictionary empfehlen. da kannst du für jedes item den preis abspeichern und dann dann dynamisch in einer methode laden statt if bedingungen zu nutzen

#

so kannst du zb den preis laden

items = {
    "kettensäge": 250,
    "ball": 50
}

async def test(name):
    preis = items[name]
    # hier kommt der restliche code hin
    
@bot.command()
def buy(self, ctx, name):
    await self.test(name)
#

hm bestimmt, das kommt ein bisschen darauf an wie es funktionieren soll. generell kannst du immer versuchen doppelten code in methoden auszulagern, dann ist der code schon sehr viel besser

whole sentinel
#

Nh Frage welche Pycord und Python Version nutzt ihr? Bei mir buggt der slash command dauernd herum

fluid leaf
#
discord.errors.ApplicationCommandInvokeError: Application Command raised an exception: RateLimitError: You exceeded your current quota, please check your plan and billing details.
``` Was ist hier falsch?
whole sentinel
#

manchmal werden die selbstprogrammierten commands angezeigt und dann gehen die einfach nicht mehr

fluid leaf
#

hast du debug_guilds drin

#

und welche version benutzt du

whole sentinel
#

Pycord v2.3.2 Python 3.11

fluid leaf
#

also ich benutz python 3.10

solid ingot
#

die Version sollte passen, pycord 2.3 hat schon Support für 3.11

whole sentinel
#

Ja aber ich habe schon in nem Post versucht

#

und da konnte ich mir irgendwie temporär selber helfen

#

jetzt wird da halt gar nichts mehr angezeigt

fluid leaf
#

Was kann ich dagegen unternehmen?

discord.errors.ApplicationCommandInvokeError: Application Command raised an exception: RateLimitError: You exceeded your current quota, please check your plan and billing details.
solid ingot
#

hm schwierig, vlt hast du irgendein rate Limit erreicht?

#

Versuch den Code Mal mit dem anderen bot zu starten

urban glen
#

@limber pewter schreibt…

#

Bruder wie lange willst du noch schreiben?

limber pewter
#

scheiße digga

#

ich verstehe meinen eigenen code nicht mehr

#

bin komplett verwirrt

limber pewter
#

ja

#

unbedingt

#

ich heule gleich wenn ich hier nicht weiter komme

#

@urban glen schreibt...

urban glen
#

scheiße digga

#

ich verstehe meinen eigenen code nicht mehr

#

bin komplett verwirrt

limber pewter
#

hey!

#

was soll das!

urban glen
indigo sapphire
#

Daraus könnte ein meme werden für Tibue Discord Server

floral monolith
limber pewter
#
Traceback (most recent call last):
  File "C:\Users\aange\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\ui\view.py", line 414, in _scheduled_task
    await item.callback(interaction)
TypeError: object NoneType can't be used in 'await' expression```
limber pewter
# dense magnet Code?
                        admin = guild.get_role(1056737490419060777)
                        if admin in interaction.user.roles:
                            await msg.delete()
                            view2 = View(timeout=None)
                            publish_button = Button(label="Publish", emoji="🚀", style=discord.ButtonStyle.blurple, custom_id="publish")
                            view2.add_item(publish_button)

                            def publish_callback(interaction):
                                print("published!")
                            publish_button.callback = publish_callback
                            
                            embed = discord.Embed(
                                title = "Shop Approved ✅",
                                description = f"Congratulations, your shop has been approved"
                            )
                            embed.add_field(name="Shop approved by:", value=interaction.user.mention)
                            embed.add_field(name="Get Help:", value="/shop help")

                            

                            await interaction.response.send_message(embed=embed, view=view2)
                        else:
                            await interaction.response.send_message("Only Admins can use that!", ephemeral=True)```
dense magnet
#
view2.add_item(Button(label="Publish", emoji=":rocket:", style=discord.ButtonStyle.blurple, custom_id="publish"))```
Probier mal so die returns bei pycord sind weird
limber pewter
limber pewter
# dense magnet ```py view2.add_item(Button(label="Publish", emoji=":rocket:", style=discord.But...
Traceback (most recent call last):
  File "C:\Users\aange\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\ui\view.py", line 414, in _scheduled_task
    await item.callback(interaction)
  File "c:\workspace\python\Discord Bots\Marketplace\main.py", line 112, in approve_callback
    await interaction.response.send_message(embed=embed, view=view2)
  File "C:\Users\aange\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\interactions.py", line 825, in send_message
    await self._locked_response(
  File "C:\Users\aange\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\interactions.py", line 1090, in _locked_response
    await coro
  File "C:\Users\aange\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\webhook\async_.py", line 217, in request
    raise HTTPException(response, data)
discord.errors.HTTPException: 400 Bad Request (error code: 50035): Invalid Form Body
In data.components.0.components.0.emoji.name: Invalid emoji```
dense magnet
limber pewter
#

uhm

#

wie meinst du das?

#

einfach eine View Klasse und dann darin die callback methode?

#

@dense magnet

#

was ist denn jetzt los

#
                        admin = guild.get_role(1056737490419060777)
                        if admin in interaction.user.roles:
                            await msg.delete()
                            class PublishView(discord.ui.View):
                                @discord.ui.Button(label="Publish", emoji=":rocket:", style=discord.ButtonStyle.blurple, custom_id="publish")
                                
                                async def publish_callback():
                                    print("published!")
                            

                            embed = discord.Embed(
                                title = "Shop Approved ✅",
                                description = f"Congratulations, your shop has been approved"
                            )
                            embed.add_field(name="Shop approved by:", value=interaction.user.mention)
                            embed.add_field(name="Get Help:", value="/shop help")

                            

                            await interaction.response.send_message(embed=embed, view=PublishView())
                        else:
                            await interaction.response.send_message("Only Admins can use that!", ephemeral=True)
#
Traceback (most recent call last):
  File "C:\Users\aange\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\ui\view.py", line 414, in _scheduled_task
    await item.callback(interaction)
  File "c:\workspace\python\Discord Bots\Marketplace\main.py", line 100, in approve_callback
    class PublishView(discord.ui.View):
  File "c:\workspace\python\Discord Bots\Marketplace\main.py", line 102, in PublishView
    async def publish_callback():
TypeError: 'Button' object is not callable```
urban glen
#

Also ich meine async def publish_callback(button: discord.ui.Button, interaction: discord.Interaction):

limber pewter
#

was soll da fehlen?

#

ich wills doch erstmal testen

#

oh warte

#

hast recht

urban glen
#

._.

limber pewter
#

gleicher fehler

#
Traceback (most recent call last):
  File "C:\Users\aange\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\ui\view.py", line 414, in _scheduled_task
    await item.callback(interaction)
  File "c:\workspace\python\Discord Bots\Marketplace\main.py", line 100, in approve_callback
    class PublishView(discord.ui.View):
  File "c:\workspace\python\Discord Bots\Marketplace\main.py", line 103, in PublishView
    async def publish_callback(button: discord.Button, interaction: discord.Interaction):
TypeError: 'Button' object is not callable```
urban glen
#

@discord.ui.button(label="Publish", emoji=":rocket:", style=discord.ButtonStyle.blurple, custom_id="publish")

limber pewter
#

...

#

ernsthaft jz

urban glen
limber pewter
#

.......

urban glen
#

........

limber pewter
#
Traceback (most recent call last):
  File "C:\Users\aange\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\ui\view.py", line 414, in _scheduled_task
    await item.callback(interaction)
  File "c:\workspace\python\Discord Bots\Marketplace\main.py", line 116, in approve_callback
    await interaction.response.send_message(embed=embed, view=PublishView())
  File "C:\Users\aange\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\interactions.py", line 825, in send_message
    await self._locked_response(
  File "C:\Users\aange\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\interactions.py", line 1090, in _locked_response
    await coro
  File "C:\Users\aange\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\webhook\async_.py", line 217, in request
    raise HTTPException(response, data)
discord.errors.HTTPException: 400 Bad Request (error code: 50035): Invalid Form Body
In data.components.0.components.0.emoji.name: Invalid emoji```
urban glen
#

Also is es im Code als Text so oder das Emoji direkt?

limber pewter
#

fuck

#

XD

#

stand \ 🚀

#

ACH DU WEIßT WAS ICH MEINE

urban glen
#

Also stand es ausgeschrieben?
Oder als Emoji?

limber pewter
#

der text

#

: rocket :

urban glen
#

Ja musst als Emoji machen

limber pewter
#
Traceback (most recent call last):
  File "C:\Users\aange\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\ui\view.py", line 414, in _scheduled_task
    await item.callback(interaction)
  File "c:\workspace\python\Discord Bots\Marketplace\main.py", line 116, in approve_callback
    await interaction.response.send_message(embed=embed, view=PublishView())
  File "C:\Users\aange\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\interactions.py", line 825, in send_message
    await self._locked_response(
  File "C:\Users\aange\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\interactions.py", line 1090, in _locked_response
    await coro
  File "C:\Users\aange\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\webhook\async_.py", line 217, in request
    raise HTTPException(response, data)
discord.errors.HTTPException: 400 Bad Request (error code: 50035): Invalid Form Body
In data.components.0.components.0.emoji.name: Invalid emoji
PS C:\workspace\python\Discord Bots\Marketplace> & C:/Users/aange/AppData/Local/Programs/Python/Python310/python.exe "c:/workspace/python/Discord Bots/Marketplace/main.py"
Ignoring exception in view <PublishView timeout=180.0 children=1> for item <Button style=<ButtonStyle.primary: 1> url=None disabled=False label='Publish' emoji=<PartialEmoji animated=False name='🚀' id=None> row=None>:
Traceback (most recent call last):
  File "C:\Users\aange\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\ui\view.py", line 414, in _scheduled_task
    await item.callback(interaction)
TypeError: ShopModal.callback.<locals>.CategoryView.select_callback.<locals>.approve_callback.<locals>.PublishView.publish_callback() takes 1 positional argument but 3 were given```
#
    print("published!")```
#

warum 3 were given?

limber pewter
#
                        admin = guild.get_role(1056737490419060777)
                        if admin in interaction.user.roles:
                            await msg.delete()
                            class PublishView(discord.ui.View):
                                @discord.ui.button(label="Publish", emoji="🚀", style=discord.ButtonStyle.blurple, custom_id="publish")

                                async def publish_callback(interaction):
                                    print("published!")
                            

                            embed = discord.Embed(
                                title = "Shop Approved ✅",
                                description = f"Congratulations, your shop has been approved"
                            )
                            embed.add_field(name="Shop approved by:", value=interaction.user.mention)
                            embed.add_field(name="Get Help:", value="/shop help")

                            

                            await interaction.response.send_message(embed=embed, view=PublishView())
                        else:
                            await interaction.response.send_message("Only Admins can use that!", ephemeral=True)```
urban glen
#

Kann mir hier bitte jemand helfen?
Code:

import discord
import os
from dotenv import load_dotenv
from asyncio import sleep

intents = discord.Intents.default()
intents.members = True

bot = discord.Bot(intents=intents)


@bot.event
async def on_ready():
    print(f"{bot.user} ist nun online!")
    while True:
        await bot.change_presence(activity=discord.Activity(type=discord.ActivityType.playing, name="Text"))
        await sleep(10)
        await bot.change_presence(activity=discord.Activity(type=discord.ActivityType.watching, name="Text"))
        await sleep(10)


if __name__ == "__main__":
    for filename in os.listdir("cogs"):
        if filename.endswith(".py"):
            bot.load_extension(f"cogs.{filename[:-3]}")

    load_dotenv()
    bot.run(os.getenv("TOKEN"))
solid ingot
#

der token wird anscheinend nicht richtig geladen oder gefunden

urban glen
#

Generiere ich nochmal einen neuen

#

Okay neu generieren hat nichts geholfen

wise stone
#

@urban glen zeig Mal die .env Datei aber ohne den token

urban glen
#
TOKEN=Hier der Token
solid ingot
#

ist die .env datei im selben verzeichnis wie die main datei?

urban glen
#

Hab den Fehler schon gefunden aber trotzdem Danke

#

Jetzt hab ich dafür diesen Error der Bot startet zwar ganz normal aber der Error kommt halt

urban glen
solid ingot
urban glen
burnt prairieBOT
#
Level Up!

Herzlichen Glückwunsch @neon garnet, du bist jetzt Level 4 🎉

urban glen
#

Das war der Grund des Errors

urban glen
#

Dann kannst du ja nur den Namen weg machen ._.

burnt prairieBOT
#
Level Up!

Herzlichen Glückwunsch @past temple, du bist jetzt Level 14 🎉

solid ingot
#

meinst du ctx.author.avatar.url ?

paper iris
#

krasse antwort

burnt prairieBOT
#
Level Up!

Herzlichen Glückwunsch @paper iris, du bist jetzt Level 6 🎉

tender horizon
#

Kann ich mehre Views auf einmal hinzufügen

burnt prairieBOT
#
Level Up!

Herzlichen Glückwunsch @tender horizon, du bist jetzt Level 12 🎉

solid ingot
urban glen
#

beim blue discord gibts doch mehrere views bei einer nachricht? sprich mehrere views oder bin ich doof

#

oder sprichst du von view.add_item()

solid ingot
urban glen
#

ahh

#

ok

#

dann habe ich die frage misverstanden ig

umbral goblet
#

mit einer for schleife und WHERE im sql

#
fluid leaf
#

Wie mach ich eine if abfrage ob in der Methode sogesagt Groß-Buchstaben sind?

silk gulch
#

Meinst nh String?

fluid leaf
#

ye

#

xd

burnt prairieBOT
#
Level Up!

Herzlichen Glückwunsch @silk gulch, du bist jetzt Level 12 🎉

fluid leaf
#

Ich hab 0 ahnung wie ich das einbauen soll

#
# Importieren Sie die benötigten Bibliotheken
import pyautogui
import keyboard
from colorama import Fore

print(Fore.BLUE + f'Willkommen beim kleinem Spam Tool!\nDu musst nur bei "Text" reinschreiben was gespammt werden soll.\nBei Hot-Key alles klein eingeben. Als beispiel "enter".')
text = str(input(Fore.MAGENTA + "Text: "))
hotkey = str(input(Fore.MAGENTA + "Hotkey: "))


# Definiert eine Funktion zum Eingeben von Text
def enter_text():

  # Geben Sie den Text ein
  pyautogui.write(text)

  # Drücken Sie die Enter-Taste, um die Eingabe abzuschließen
  pyautogui.press('enter')
 

keyboard.add_hotkey(f'{hotkey}', enter_text)

print(Fore.GREEN + f"Du kannst nun jetzt spammen.")
print(Fore.RED + f'Text der gespammt wird: {text}')
print(Fore.YELLOW + f"Hotkey zum Spammen: {hotkey}")

# Warten Sie auf Hotkey-Eingaben
while True:
  keyboard.wait()
burnt prairieBOT
#
Level Up!

Herzlichen Glückwunsch @umbral goblet, du bist jetzt Level 17 🎉

fluid leaf
#

Schau dir den Code an dann weißt du es

umbral goblet
fluid leaf
#

ist nicht aus dem internet

#

Hab ich mit ChatGPt gemacht und selber verbessert

umbral goblet
#

if chatgpt != internet:
du seien dumm

fluid leaf
#

?

#

wtf

#

Ja

#

wow

#

Kannst du auch so sagen und musst nicht auf Bester Programmieren tun

umbral goblet
#

ey keine ahnung fü wasjbrauchst du das wojwillst du das einbauen

fluid leaf
#

Kannst nicht mal schreiben

umbral goblet
umbral goblet
limber pewter
#

chill mal digga

umbral goblet
#

er hat angefangen

limber pewter
#

halt die fresse

#

spaß

silk gulch
#

Leute, ruhig bleiben.

urban glen
limber pewter
#

muss net schmecke

#

muss wirke

wise stone
#

wenn der bot ne Nachricht anspinnt wie mache ich das die system Nachricht gelöscht wird?

urban glen
#
if message.type is discord.MessageType.pins_add:
   await message.delete()

Müsste so sein

wise stone
#

wie lösche ich dann die system Nachricht

tawdry leaf
urban glen
#

In dem 4 Tutorial wurde gezeigt, dass man mit await ctx.respond(embed=embed) das Embed senden kann, aber bei ctx zeigt es bei mir ganze Zeit ein Fehler an.
Kann mir jemand helfen?

#

``@bot.slash_command(description="Zeige Infos über einen User", name="userinfo")
async def info(ctx,
alter: Option(int, "Das Alter", min_value=1, max_value=99),
user: Option(discord.Member, "Gib einen User an", default=None)
):
if user is None:
user = ctx.author

embed = discord.Embed(
title=f"Infos über {user.name}",
description=f"Hier siehst du alle Details über {user.mention}"
)
await ctx.respond(embed=embed)``

umbral goblet
urban glen
#

Hab mehrfach kontrolliert

umbral goblet
burnt prairieBOT
#
Level Up!

Herzlichen Glückwunsch @hollow birch, du bist jetzt Level 3 🎉

urban glen
#

Wo liegt denn das Problem?

tender horizon
#

Falsch eingerückt

umbral goblet
urban glen
urban glen
umbral goblet
tender horizon
#

Du gehts vor das await und drückst die Tab Taste

urban glen
#

Okay alles klar. Schaue später nach.

tawdry leaf
#

Ist ein discord Fehler ig

solid ingot
#

also unknown interaction kommt zum beispiel wenn der bot länger als 3 sekunden zum antworten braucht, aber hier wurde ja schon eine response gesendet, deswegen weiß ich nicht woran es liegt

tawdry leaf
urban glen
#

@umbral goblet @tender horizon Vielen Dank für die Hilfe.

devout orchidBOT
#
Infos über tibuNullˡᵘˡ

• Account erstellt: <t:1468518971:R>
• Server Beigetreten: <t:1661091335:R>

@solid ingot • AvatarProfil ID: 203208036053942272

🏷️ Bisherige Usernames

<t:1668302322:d> - tibue99#3529

🏷️ Bisherige Nicknames

<t:1672361333:d> - tibuNullˡᵘˡ
<t:1672360026:d> - tibüNullˡᵘˡ
<t:1671746659:d> - tibue99
<t:1671739929:d> - tibue98
<t:1671739553:d> - tibue99
<t:1671736787:d> - tibue98

🔰 Geändert von

@solid ingot
@solid ingot
@solid ingot
@solid ingot
@solid ingot
@solid ingot

devout orchidBOT
#
Infos über Webind

• Account erstellt: <t:1660561029:R>
• Server Beigetreten: <t:1668881988:R>

@past temple • AvatarProfilBannerID: 1008690808582590494

⚠ Warnungen

Dieser User hat aktuell 1 Warnung.

🏷️ Bisherige Usernames

<t:1672563772:d> - Webind#6969
<t:1671485222:d> - WednesdayBohrtInDerNase#6969
<t:1671263620:d> - Dein Nachbar#5729
<t:1670952835:d> - WednesdayBohrtInDerNase#5729
<t:1670940699:d> - SimpForWednesday#5729
<t:1670435239:d> - Dein Nachbar#5729
<t:1670012467:d> - Lucifer Morningstar#5729
<t:1668878466:d> - Luxifer#5729

urban glen
#

Hahahaha

#

Wird das alles in einer Db abgespeichert? ._.

solid ingot
wise stone
thick haven
#

Ja bei discord loading_xenority

fluid leaf
urban glen
fluid leaf
#

Timo hat das aber gemacht und du weißt das der keine Jsons benutzt

urban glen
urban glen
#

Ist dieser Code richtig?

#

Der Status dnd wird bei mir nämlich nicht angezeigt

solid ingot
#

ja der code sieht gut aus

urban glen
solid ingot
#

wird die Activity angezeigt wenn du sie zum bot hinzufügst?

urban glen
#

Ja

#

Dort steht immer nur online, obwohl ich bitte nicht stören machen wollte

#

genauso wenn ich offline aktiviere

#

@solid ingot Weißt du wie ich den Fehler beheben kann?

solid ingot
#

leider nicht, bei mir funktioniert der code

#

benutzt du pycord und änderst du noch irgendwo anders im code den status?

urban glen
#

Ich benutze pycord

#

Und soweit ich weiß ändere ich nirgendswo sonst etwas

urban glen
solid ingot
#

hm, der code ist 1:1 so wie in dem tutorial, aber ich kann gleich trotzdem mal kurz schauen wenn du magst

urban glen
#

Okay

#

Wäre gut

tender horizon
#

wie kann ich machen das wenn ich ein embed editiere das image was ich hinzugefügt hab wieder weg ist

solid ingot
#

embed.remove_image()

urban glen
#

Bin grad nd sicher xD

tawdry leaf
urban glen
#

Woran liegt es, dass self z.B. bei async def nummer(self) nicht lila wird?

solid ingot
#

ist die methode innerhalb von einer klasse?

urban glen
#

ja

burnt prairieBOT
#
Level Up!

Herzlichen Glückwunsch @hollow birch, du bist jetzt Level 4 🎉

solid ingot
#

dann ist wahrscheinlich die einrückung falsch, oder die klasse ist falsch formatiert

urban glen
#

Manchmal wird es lila und manchmal nicht

#

Okay

wise stone
#

jo wie kann ich mein bot wenn er in voice Joint die kopfhörer deaktiviert hat?

wise stone
urban glen
wise stone
#

sollte eigentlich "lila" markiert

#

zeig Mal den Code

urban glen
wise stone
#

alles muss eins nach links

#

also unter def

#

und es ist nicht lila weil der Code Fehler hat

urban glen
#

Nach seconds=10 z.B.

solid ingot
urban glen
#

Vielen Dank jetzt ist alles normal

#

Kurze Frage wann bekommt man eigentlich dieses Aktiver Entwickler Abzeichen? Ein Tag ist schon um und ich hab diese Slash Commands

wise stone
urban glen
wise stone
#

was sonst

urban glen
#

Hattest bei der falschen Nachricht mit geantwortet

urban glen
urban glen
#

Wenn er zu schnell paar Messages Veröffentlicht musst du paar stunden warten

#

Liegt maybe daran

urban glen
urban glen
#

was meinien die mit thread ist gejoint?

urban glen
#

was ist hiermit

#

Idk gibt bestimmt nh Unterschied

#

Teste es mal aus

#

ok

urban glen
#

das macht sinn

urban glen
# urban glen ??

Idk von pycord

Aber sieht so aus, als könntest du kein datetime.datetime objekt als option machen

#

ich versteh den err aber wie fix ich den

urban glen
#
@bot.slash_command(description = "Timeoute ein Member")
@discord.default_permissions(kick_members=True)
@discord.guild_only()
async def timeout(ctx: discord.ApplicationContext, member: Option(discord.Member, "Wer soll getimeoutet werden"), zeit: Option(datetime.datetime, "Wie lange soll der Timeout sein")):
    try:
       await member.timeout(until=zeit, reason="Timeout")
    except discord.Forbidden as e:
        await ctx.respond("Der Bot hat dazu keine Berechtigungen", ephemeral=True)
        print(e)
        return
    guild = ctx.guild.name
    await ctx.respond(f"{member.mention} wurde erfolgreich getimeoutet", ephemeral=True)
    await member.send(f"Du wurdest von {guild} getimeoutet. Zeit: {zeit} Minuten")
urban glen
#

die zeit für die der user getimeoutet werden soll

urban glen
urban glen
urban glen
# urban glen humeanfriendly?
@bot.slash_command(description = "Timeoute ein Member")
@discord.default_permissions(kick_members=True)
@discord.guild_only()
async def timeout(ctx: discord.ApplicationContext, member: Option(discord.Member, "Wer soll getimeoutet werden"), zeit: Option(int, "Wie lange soll der Timeout sein")):
    time = humanfriendly.parse_timespan(zeit)
    try:
       await member.timeout(until=discord.utils.utcnow() + datetime.timedelta(seconds=time), reason="Timeout")
    except discord.Forbidden as e:
        await ctx.respond("Der Bot hat dazu keine Berechtigungen", ephemeral=True)
        print(e)
        return
    guild = ctx.guild.name
    await ctx.respond(f"{member.mention} wurde erfolgreich getimeoutet", ephemeral=True)
    await member.send(f"Du wurdest von {guild} getimeoutet. Zeit: {zeit} Minuten")
#

Würde dann so aussehen

#

makl schauen

#

thx

#

er ist on

urban glen
limber pewter
burnt prairieBOT
#
Level Up!

Herzlichen Glückwunsch @limber pewter, du bist jetzt Level 5 🎉

Du hast <@&1024276691205496872> erhalten!

limber pewter
#
                        admin = guild.get_role(1056737490419060777)
                        if admin in interaction.user.roles:
                            await msg.delete()
                            class PublishView(discord.ui.View):
                                @discord.ui.button(label="Publish", emoji="🚀", style=discord.ButtonStyle.blurple, custom_id="publish")

                                async def publish_callback(interaction):
                                    print("published!")
                            

                            embed = discord.Embed(
                                title = "Shop Approved ✅",
                                description = f"Congratulations, your shop has been approved"
                            )```
#
Traceback (most recent call last):
  File "C:\Users\aange\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\ui\view.py", line 414, in _scheduled_task
    await item.callback(interaction)
TypeError: ShopModal.callback.<locals>.CategoryView.select_callback.<locals>.approve_callback.<locals>.PublishView.publish_callback() takes 1 positional argument but 3 were given```
silk gulch
#
[LISTENER] OnMessage.py geladen!
[LISTENER] LogListener.py geladen!
[LISTENER] OnReady.py geladen!
[LISTENER] Counting.py geladen!
[TASK] DailyTask.py geladen!
[TASK] StatusTask.py geladen!
Ignoring exception in on_connect
Traceback (most recent call last):
  File "/usr/local/lib/python3.8/site-packages/discord/client.py", line 377, in _run_event
    await coro(*args, **kwargs)
  File "/usr/local/lib/python3.8/site-packages/discord/bot.py", line 1164, in on_connect
    await self.sync_commands()
  File "/usr/local/lib/python3.8/site-packages/discord/bot.py", line 738, in sync_commands
    app_cmds = await self.register_commands(
  File "/usr/local/lib/python3.8/site-packages/discord/bot.py", line 531, in register_commands
    prefetched_commands = await self._bot.http.get_guild_commands(
  File "/usr/local/lib/python3.8/site-packages/discord/http.py", line 360, in request
    raise Forbidden(response, data)
discord.errors.Forbidden: 403 Forbidden (error code: 50001): Missing Access```

Bekomme den Fehler gerade zum ersten Mal. Weiß da wer was? 😄
umbral goblet
#

ich habe eine frage und zwar angenommen du hast eine liste: [klasse1,klasse2] wie kann ich dann in der klasse selber die klasse aus dem array löschen?

silk gulch
#
Traceback (most recent call last):
  File "/usr/local/lib/python3.8/site-packages/discord/cog.py", line 780, in _load_from_module_spec
    setup = getattr(lib, "setup")
AttributeError: module 'commands.main' has no attribute 'setup'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "main.py", line 33, in <module>
    bot.load_extension(f'commands.{filename[:-3]}')
  File "/usr/local/lib/python3.8/site-packages/discord/cog.py", line 910, in load_extension
    self._load_from_module_spec(spec, name)
  File "/usr/local/lib/python3.8/site-packages/discord/cog.py", line 783, in _load_from_module_spec
    raise errors.NoEntryPointError(key)
discord.errors.NoEntryPointError: Extension 'commands.main' has no 'setup' function.```

Habe keine commands.main Extension..
urban glen
blazing pilot
wise stone
#

niemand sagt hier Fake badge alter

limber pewter
#

😮

silk gulch
blazing pilot
#

Was hat das eine mit dem anderen zutun

#

😂

#

War nur so ein Tipp aber kopf hoch du Gnom

limber pewter
#

XD

blazing pilot
# wise stone niemand sagt hier Fake badge alter

Discord is changing their Active Developer Badge to make a bit more sense. Instead of being able to run a command once and have a badge forever, you may be forced to run your discord bot every 30 days.

This video not only updates you on the Discord active developer badge, but it also shows you how to get the active developer badge using methods...

▶ Play video
#

Es gehen fake badge rum

#

Ab Januar wird discord nicht mehr jede Methode unterstützten

burnt prairieBOT
#
Level Up!

Herzlichen Glückwunsch @blazing pilot, du bist jetzt Level 5 🎉

Du hast <@&1024276691205496872> erhalten!

blazing pilot
#

Deshalb sagte ich das Botghost unterstütz wird

wise stone
#

besser so

limber pewter
#

geht es da nicht irgendwie um die, die nur einen slash command ausgeführt haben und dann nichts mehr gemacht haben?

blazing pilot
#

Wie hier jeder aus der haut fährt hahaha

limber pewter
#

also die "inaktiven"

blazing pilot
limber pewter
#

ah okay

wise stone
blazing pilot
#

Es gibt webseiten zur Unterstützung gür die badge

wise stone
#

und die die nicht mehr unterstützt werden

blazing pilot
#

Die werden nicht mehr unterstütz

#

Entweder Codes komplett selbst oder hast pech

#

Aber Hilfe Stellungen wird dan in Zukunft nicht mehr geben

limber pewter
#

die slash commands müssen öffentlich sein damit man das badge bekommt/behält oder?

blazing pilot
#

Darüber rede ich garnicht

limber pewter
#

ich weiß

#

frage ich mich trotzdem

blazing pilot
urban glen
#

Weiß irgendjemand wie man eine Nachricht macht, die beispielsweise jede Stunde in einen bestimmten Kanal gesendet wird?

limber pewter
#

ja mit loops, soweit ich weiß hat CodingKeks dazu ein tutorial

urban glen
limber pewter
#

den channel meinst du?

urban glen
#

Jo

limber pewter
#

channel = bot.get_channel(channelid)

#

und dann

#

await channel.send(nachricht)

urban glen
#

Okay

#

Und wie kann ich machen, dass mehrere Messages zur einer bestimmten Zeit kommen?

urban glen
limber pewter
#

WEBIND

#

HILF MIR

#
                        admin = guild.get_role(1056737490419060777)
                        if admin in interaction.user.roles:
                            await msg.delete()
                            class PublishView(discord.ui.View):
                                @discord.ui.button(label="Publish", emoji="🚀", style=discord.ButtonStyle.blurple, custom_id="publish")

                                async def publish_callback(interaction):
                                    await interaction.response.send_message("Hello")
                            

                            embed = discord.Embed(
                                title = "Shop Approved ✅",
                                description = f"Congratulations, your shop has been approved"
                            )
                            embed.add_field(name="Shop approved by:", value=interaction.user.mention)
                            embed.add_field(name="Get Help:", value="/shop help")

                            

                            await interaction.response.send_message(embed=embed, view=PublishView())
                        else:
                            await interaction.response.send_message("Only Admins can use that!", ephemeral=True)```
#
Traceback (most recent call last):
  File "C:\Users\aange\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\ui\view.py", line 414, in _scheduled_task
    await item.callback(interaction)
TypeError: ShopModal.callback.<locals>.CategoryView.select_callback.<locals>.approve_callback.<locals>.PublishView.publish_callback() takes 1 positional argument but 3 were given```
urban glen
urban glen
limber pewter
#

warum "takes 1 positional argument but 3 were given" ????

urban glen
#

Ungefähr so könnte es aussehen

#

Dann wird alle 6 Minuten die nachrichten geschickt

urban glen
limber pewter
#

das ist alles

burnt prairieBOT
#
Level Up!

Herzlichen Glückwunsch @limber pewter, du bist jetzt Level 6 🎉

urban glen
urban glen
urban glen
solid ingot
burnt prairieBOT
#
Kuscheln

@limber pewter kuschelt mit @past temple!

urban glen
#

Für Partnerschaften ist das sehr praktisch.

burnt prairieBOT
#
Für Fortnite!
burnt prairieBOT
#
Gegen Fortnite
#
Schlag

@limber pewter schlägt @hollow birch!

solid ingot
#

@limber pewter #🔗・bots

limber pewter
#

ok stimmt

#

sorry

urban glen
#
async def approve_callback(interaction):
    admin = guild.get_role(1056737490419060777)
    if admin in interaction.user.roles:
        await msg.delete()
        class PublishView(discord.ui.View):
            async def publish_callback(self, interaction):
                await interaction.response.send_message("Hello")

                embed = discord.Embed(title = "Shop Approved ✅", description = f"Congratulations, your shop has been approved")
                embed.add_field(name="Shop approved by:", value=interaction.user.mention)
                embed.add_field(name="Get Help:", value="/shop help")
                await interaction.response.send_message(embed=embed, view=PublishView())
    else:
        await interaction.response.send_message("Only Admins can use that!", ephemeral=True)

Probiers mal so @limber pewter

limber pewter
#

jetzt geht garnichts mehr 😂

urban glen
#

Error?

limber pewter
#

kein error

#

nur nachricht wird nd gesendet

#

btw

#

es geht um die

#

publish callback methode

#

das approve funktioniert perfekt

urban glen
limber pewter
#

nein

#

da kommt ja nur dieser error

#

kann dir das auf dem server zeigen kurz

#

wenn du bock hast

#

ist ein cooler server 😎

urban glen
burnt prairieBOT
#
Ghost Ping

@hollow birch hat @past temple gepingt.

Nachricht
Ganz unten kommen dann alle Nachrichten?@past temple

#
Ghost Ping

@past temple hat @hollow birch gepingt.

Nachricht
Ja @hollow birch

urban glen
#

Einfach Ghostping gespräch xD

#

Wollte auf die obere Nachricht nochmal antworten und vertippt

urban glen
urban glen
urban glen
#

Stimmt

eager reef
#

wie kann ich das fixen bot.load_extension(f"cogs.{filtername[:-3]}") der sagt das geht nd

urban glen
eager reef
# solid ingot schick mal den error

das ist der SyntaxError: invalid syntax

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

Traceback (most recent call last):
File "C:\Users\erika\PycharmProjects\TΞST SYSTΞM\main.py", line 28, in <module>
bot.load_extension(f"cogs.{filtername[:-3]}")
File "C:\Users\erika\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\cog.py", line 910, in load_extension
self._load_from_module_spec(spec, name)
File "C:\Users\erika\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\cog.py", line 777, in _load_from_module_spec
raise errors.ExtensionFailed(key, e) from e
discord.errors.ExtensionFailed: Extension 'cogs.leave' raised an error: SyntaxError: invalid syntax (leave.py, line 9)

Process finished with exit code 1

#

ich habe ka wie man das fixst

urban glen
#

@limber pewter problem is fixxed

urban glen
#

Als Screenshot, auf hastebin oder hier als Codeblock bitte

eager reef
urban glen
eager reef
fluid leaf
urban glen
#

Also es kam nur etwas als das Thread eröffnet wurde

#

@urban glen das könnte so aussehen:

@client.event
async def on_message(message):
    if message.type == discord.MessageType.premium_guild_subscription:
        await message.channel.send(f"{message.author.mention} vielen Dank für deinen Boost")
#

Was dann?

#

Musst deine frage genauer definieren

#

Achso dem Post

#

Ich dachte du meinst Boosts

#

Idk hab nie was mit Posts zutun gehabt als ich mit discord bots gearbeitet hab

eager reef
#

@urban glen

#

ne an mich xD

urban glen
#

Hab ich eben auch reingeschickt xD

wise stone
#

Hey das ist ein Code von BLUE, dieser tut wenn jemand ein Posts erstellt (beim Forum) das der Bot automatisch in diesen eine Nachricht Absender

Disclaimer: Nicht von mir sondern von BLUE!

@bot.event
async def on_thread_create(thread):
  if thread.parent_id == CHANNEL_ID:

    embed = discord.Embed(description=f'',        colour=discord.Colour.blue())
    await asyncio.sleep(10)
    await thread.send(embed=embed)```
wise stone
#

ne

urban glen
urban glen
#

Okay dann schaue ich mal später wie ich es nochmal mache.

tender horizon
#

sonst ne idee wie ich das bild wegkriege?

solid ingot
#

schick mal deinen code

tender horizon
#
elif self.values[0] == "bankkonto":
            bar_geld= await get_money(interaction.user.id)
            bank_konto = await get_bankkonto(interaction.user.id)
            embed = discord.Embed(title=f"Bankkonto von {interaction.user}", color=discord.Color.yellow())
            embed.set_thumbnail(url=interaction.user.avatar.url)
            
            embed.add_field(name="Kontostand", value=f"{bar_geld}$", inline=False)
            embed.add_field(name="Bargeld", value=f"{bank_konto}$")
            embed.remove_image()

            button1=bargeldeinzahlen()
            button2=bargeldauszahlen()
            button3=home_button()
            view=discord.ui.View(timeout=None)
            view.add_item(button1)
            view.add_item(button2)
            view.add_item(button3)
            await interaction.response.edit_message(embed=embed, view=view)
solid ingot
#

naja du setzt ja das thumbnail, nicht das image

#

dann musst du remove_thumbnail benutzen

tender horizon
#

das image ist schon gestezt

#
@slash_command(description="Zeige dein Zuhause")
    async def home(self, ctx):
        await check_user_home(ctx.author.id)
        lager = await lager_raum_len(ctx.author.id)
        home_id = await get_home(ctx.author.id)
        bar_geld= await get_money(ctx.author.id)
        bank_konto = await get_bankkonto(ctx.author.id)
        ges_geld = bar_geld + bank_konto
        hausnummer = await get_hausnummer(ctx.author.id)

        file = discord.File("stadt.jpg", filename="image.png")
        embed = discord.Embed(title=f"Zuhause von {ctx.author}", description=f"**Hausnummer: {hausnummer}**", color=discord.Color.dark_green())
        embed.add_field(name="Inventar",value=f"Abstellraum: {lager}/20")
        embed.add_field(name="Geld", value=f"Bankkonto: {bank_konto}$\nBargeld: {bar_geld}$\nGesammtes Geld: {ges_geld}$", inline=False)
        embed.set_thumbnail(url=ctx.author.avatar.url)
        embed.set_image(url="attachment://image.png")
        select=home_select()
        view=discord.ui.View(timeout=None)
        view.add_item(select)
        await ctx.respond(embed=embed, file=file, view=view, ephemeral=True)
#

hier setzte ich das image und in dem ersten will ich es wieder entfernen

tender horizon
#

einen großen RPG bot

urban glen
#

Aha?
Aber ich werde angeschissen, wenn ich Pinge

burnt prairieBOT
#
Ghost Ping

@tender horizon hat @solid ingot gepingt.

Nachricht
@solid ingot

tender horizon
urban glen
#

wié kann ich den fehler fixen:

Ignoring exception in on_connect
Traceback (most recent call last):
  File "C:\Users\Long\AppData\Local\Programs\Python\Python311\Lib\site-packages\discord\client.py", line 377, in _run_event    
    await coro(*args, **kwargs)
  File "C:\Users\Long\AppData\Local\Programs\Python\Python311\Lib\site-packages\discord\bot.py", line 1164, in on_connect      
    await self.sync_commands()
  File "C:\Users\Long\AppData\Local\Programs\Python\Python311\Lib\site-packages\discord\bot.py", line 738, in sync_commands    
    app_cmds = await self.register_commands(
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\Long\AppData\Local\Programs\Python\Python311\Lib\site-packages\discord\bot.py", line 599, in register_commands
    registered = await register("bulk", data, _log=False)
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\Long\AppData\Local\Programs\Python\Python311\Lib\site-packages\discord\http.py", line 366, in request
    raise HTTPException(response, data)
discord.errors.HTTPException: 400 Bad Request (error code: 50035): Invalid Form Body
In options.5: Required options must be placed before non-required options```
#

es gibt halt keinen einzigen verweis auf meinen code

tender horizon
#

du hast bei deinem slash befehl sachen die nicht benötigt werden und die müssen vor sachen stehen die benötigt sind

urban glen
#

was

tender horizon
#

bei deinem slash befehl die sachen wo none require ist müssen hinten stehen

urban glen
#

ich versteh deine satz nicht

tender horizon
#

ist das der ganze fehler?

urban glen
#

ja

tender horizon
#

welcher ist der letzte den du gemacht hast?

urban glen
#

ich hab keinen gemacht

#

das letzte war etwas mit statussen

burnt prairieBOT
#
Level Up!

Herzlichen Glückwunsch @pulsar herald, du bist jetzt Level 8 🎉

tender horizon
#

ok dann keine ahung

urban glen
#

ja nh

#

macht gar kein sinn der error

tender horizon
indigo sapphire
#

what that error?:

Ignoring exception in on_connect
Traceback (most recent call last):
  File "C:\Users\Manuel Berchtold\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\client.py", line 382, in _run_event
    await coro(*args, **kwargs)
  File "C:\Users\Manuel Berchtold\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\bot.py", line 1055, in on_connect
    await self.sync_commands()
  File "C:\Users\Manuel Berchtold\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\bot.py", line 642, in sync_commands
    registered_commands = await self.register_commands(
  File "C:\Users\Manuel Berchtold\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\bot.py", line 541, in register_commands
    registered = await register("bulk", data, _log=False)
  File "C:\Users\Manuel Berchtold\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\http.py", line 359, in request
    raise HTTPException(response, data)
discord.errors.HTTPException: 400 Bad Request (error code: 50035): Invalid Form Body
In 2.options.0.options.1: Required options must be placed before non-required options
solid ingot
#

options mit default value dürfen erst nach verpflichtenden options kommen

urban glen
#

Wo ist denn "word" definiert?

#

hm

#

word war nirgendwo definiert

#
embed.set_footer(text='Quiz zu schwer? Verwende "/emojiquiz skip"', icon_url="https://cdn.discordapp.com/attachments/1052617061513318400/1059906201418207432/Screenshot_2023-01-02_114643.png%22)
#

So maybe?

#

Code?

#

Aber er findet die Message nicht

indigo sapphire
indigo sapphire
urban glen
#
    def __int__(self, bot):
        self.bot = bot

    @slash_command()
    @commands.cooldown(1, 30 * 60, commands.BucketType.user)
    async def test(self, ctx):
        await ctx.respond("Test")

    @staticmethod
    def convert_time(seconds):
        if seconds < 60:
            return f"{round(seconds)} Sekunden"

            minutes = seconds / 60
            if minutes < 60:
                return f"{round(minutes)} Minuten"

            hours = minutes / 60
            return f"{round(hours)} Stunden"

    @commands.Cog.listener()
    async def on_application_command_error(self, ctx, error):
        if isinstance(error, commands.CommandOnCooldown):
            seconds = ctx.command.get_cooldown_retry_after(ctx)
            final_time = self.convert_time(seconds)

            await ctx.respond(f"Du musst noch {final_time} warten", ephemeral=True)```
#

Ich versuche den Cooldown bei der Rolle zu machen und immer wenn ich ihn nochmal ausführe, dann steht dort Du musst noch None warten. Weiß jemand was ich falsch gemacht hab?

#

Will das dort die Minuten stehen

solid ingot
#

hey, sieht so aus als wäre der code zu weit nach rechts eingerückt, und so wird nur etwas zurückgegeben wenn die if bedingung mit den seconds true wird

urban glen
solid ingot
urban glen
limber pewter
#

guten morgen

#

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

#

kann mir jemand sagen wie man diese interaction responses löscht?

#

ich hätte jetzt einfach gesagt approvedmsg.delete()

#

da kommt aber folgender error: AttributeError: 'Interaction' object has no attribute 'delete'

indigo sapphire
#

Warum nicht einfach delet?

#

Tibue sagt immer gerne schau in Pycord Bibliothek oder recherchiere in stack overflow

#

@limber pewter

limber pewter
#

aber es ist ja nicht nur eine message

#

wenn es einfach nur ctx.send oder channel.send wäre

#

würde es auch gehen

#

aber bei einer response auf eine interaction scheint es anders zu gehen

#

wie gesagt kommt bei der delete funktion ein fehler

#

AttributeError: 'Interaction' object has no attribute 'delete'

indigo sapphire
limber pewter
#

also habe ich es richtig verstanden

#

es funktioniert garnicht?

thick haven
limber pewter
#

was oder wer ist chatgpt

#

ist ja auch egal

#

habe es jz mit channel.purge(limit=1) gemacht

urban glen
#

In welcher zeile is der error?

indigo sapphire
limber pewter
#

da steht dass es eben nicht geht

#

da sagt einer er fragt sich wie das geht

#

und der andere antwortet dass man es nur nach einer zeit löschen kann

#

wo steht denn da dass es geht???

#

bist du verrückt

indigo sapphire
#

Kannst wohl nicht lesen

limber pewter
#

geh mal weiter deine valorant donation challenges machen du schwanz

#

"Chang Chi"

urban glen
#

Wie kann ich ein einem Loop zufällige Zeit machen?
Also das manchmal nach 5 Minuten etwas geschickt wird, dann maybe nach 7 minuten und dann nach 3 minuten und so weiter
Also halt zufällig.

thick haven
#

Kein pycharm

#

Ich finde pycharm nerfig weil man da imma nen Interpreter einstellen muss

tender horizon
#

Vsc ist besser

thick haven
#

Ich meine bei vsc installierst dir einfach pyht9n und fertig

limber pewter
urban glen
#

vsc ist ja keine ide

limber pewter
#

damit kannst du quasi random zahlen generieren und im code benutzen

urban glen
#

Habs schon gemacht xD

#

@tasks.loop(minutes=randrange(6, 25))

limber pewter
#

wenn du wusstest was das random modul macht wieso fragst du hier wie du das randomizen kannst

#

"sherlock"

urban glen
#
@tasks.loop(minutes=randrange(6, 25))
async def my_background_task(self):
    self.my_background_task.change_interval(minutes=randrange(6, 25))
limber pewter
#

ist doch klar

urban glen
mystic sentinel
#

wie heißt nochmal schnell das gegenteil von on_member_join

solid ingot
#

on_member_remove

mystic sentinel
urban glen
solid ingot
#

das event triggert auch bei kicks und bans, deswegen haben sie es remove genannt denke ich

thick haven
#

Bei

thick haven
#

I DB ist für mich mysql

dense magnet
#

Erklär das nochmal genauer pls

blazing pilot
#

xD aktuelle webseite?

indigo sapphire
#

hey mal so eine blöde frage kann man eine reload cogs erstellen?

#

anstatt den bot neuzustarten?

indigo sapphire
indigo sapphire
# urban glen

ähm würde das funktionieren`?

@bot.command()
@commands.is_owner()
async def reload(ctx, extension):
    bot.reload_extension(f"cogs.{extension}")
    embed = discord.Embed(title='Reload', description=f'{extension} successfully reloaded', color=0xff00c8)
    await ctx.send(embed=embed)
urban glen
indigo sapphire
#

oder datei name?

solid ingot
#

schick mal den code aus der view klasse

wise stone
#

self.bot

#

bot ist in der class nicht drin

#

und nicht übertragen worden

#

nichts klappen

#

falsch

#

schau bitte das Tutorial nochmal an

urban glen
#
    def __init__(self, bot):
        self.bot = bot


    @commands.Cog.listener()
    async def on_ready(self):
        self.bot.add.view(FantasyUniverse())

    @slash_command()
    async def button1(self, ctx):
        await ctx.respond("Klicke hier", view=FantasyUniverse())



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

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


        @discord.ui.button(label="Klicke hier", style=discord.ButtonStyle.primary, emoji=":white_check_mark:", custom_id="button1")
        async def button_callback1(self, button, interaction):
            await interaction.response.send_message("Du hast die Rolle erhalten", emphemeral=True)

        @discord.ui.button(label="Klicke hier 2", style=discord.ButtonStyle.primary, emoji=":white_check_mark:", custom_id="button2")
        async def button_callback2(self, button, interaction):
            button.disabled = True
            await interaction.response.edit_message(view=self)```
#

Bei den Buttons wird bei mir unten wieder ein Fehler angezeigt, dass die self auf einmal nicht mehr lila sind.

#

Woher soll ich wissen in welche Richtung ich es einrücken soll?

#

Als ich das mit super().__(init_timeout=None) hinzugefügt habe, ist dieser Fehler aufgetreten

solid ingot
#

die buttons müssen nach links gerückt werden, sodass sie auf derselben höhe wie das def init sind

#

das int musst du noch zu init umbenennen

urban glen
#

Alles klar schaue morgen nach

urban glen
#

warum machst du 5 mal self.add_item

brazen scarab
brazen scarab
#

Mein Fehler wurde behoben. Dankeschön trotzdem.

burnt prairieBOT
#
Level Up!

Herzlichen Glückwunsch @brazen scarab, du bist jetzt Level 2 🎉

Du hast <@&1042123300970696705> erhalten!

frail loom
#

hat jemand für mich eventuell ein stichwort wonach ich am besten suchen kann wenn ich Per slash command eine Json datei bearbeiten kann?

Mürde gern somit streamer aus/einfügen in meiner watchlist zeile.

hoffe das war verständlich genug 😄

solid ingot
#

also ich würde generell nach einem tutorial suchen wie man json dateien modifiziert, und den code dafür dann in den slash command schreiben

frail loom
#

habe ich schon gemacht aber irgendwie finde ich nix passendes

#

ich werd einfach nochmal schauen

thick haven
frail loom
#

stark genau das habe ich gesucht

#

aber wieso stoße ich da nicht drauf 😄
ich glaube ich besuche nochmal ne google schule 😄

thick haven
#

Stelle deine fragen genau und du bekomsmt fast immer ysehr gut antworten

frail loom
#

habs hinbekommen 😄 sehr starkl

manic tusk
#

Wie arbeitet man mit Nextcord in Python vsc? Wie benutzt man das?

urban glen
fluid leaf
solid ingot
urban glen
#
    def __init__(self, bot):
        self.bot = bot


    @commands.Cog.listener()
    async def on_ready(self):
        self.bot.add.view(FantasyUniverse())

    @slash_command()
    async def button1(self, ctx):
        await ctx.respond("Klicke hier", view=FantasyUniverse())



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

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


    @discord.ui.button(label="Klicke hier", style=discord.ButtonStyle.primary, emoji=":white_check_mark:", custom_id="button1")
    async def button_callback1(self, button, interaction):
        await interaction.response.send_message("Du hast die Rolle erhalten", emphemeral=True)

    @discord.ui.button(label="Klicke hier 2", style=discord.ButtonStyle.primary, emoji=":white_check_mark:", custom_id="button2")
    async def button_callback2(self, button, interaction):
        button.disabled = True
        await interaction.response.edit_message(view=self)```
#

Dort steht line 13, in on_ready self.bot.add.view

#

Bot object has no attribute add

#

Line 377 in _run_event

thick haven
#

add_view

urban glen
urban glen
fluid leaf
#

Kann man
await interaction.response.send_message("lol")
await interaction.response.edit_message("lol2") machen?

fluid leaf
#

keine ahnung

urban glen
fluid leaf
#

Warum pingst du so oft

urban glen
#

Hab nur einmal gepingt

fluid leaf
#

Bei einer antwort wird er auch gepingt

urban glen
#

Sorry

floral monolith
#

Beruhigt dich euchpeepocookie lmao

brazen scarab
#

Hat irgendeiner ne Ahnung, wieso ich dotenv nicht installieren kann?

#

Ah xD

#

Danke

#

Und was will der jetzt hier von mir?

bot = commands.Bot(intents=discord.Intents.all(), command_prefix='!', help_command=None)
AttributeError: 'Bot' object has no attribute 'slash_command'. Did you mean: 'add_command'?

fluid leaf
#

du musst anstatt commands.Bot discord.Bot machen

#

Weil sonst gehen nur Prefix commands

#

!help als beispiel

#
intents = discord.Intents.default()

bot = discord.Bot(
    intents=intents,
    debug_guilds=[123456789]  # hier server id einfügen
)
brazen scarab
#

Habe ich schon versucht gehabt ... Keine Sorge, Token sieht man ned 😄

fluid leaf
#

aber warum machst du command_prefix

urban glen
#

Hab den Fehler bei mir gefunden.

burnt prairieBOT
#
Level Up!

Herzlichen Glückwunsch @hollow birch, du bist jetzt Level 6 🎉

brazen scarab
#

Hat ja erstmal rein garnichts mit meinem Fehler zutun 😄

burnt prairieBOT
#
Level Up!

Herzlichen Glückwunsch @brazen scarab, du bist jetzt Level 3 🎉

fluid leaf
#
import discord  ,  json  ,  os , asyncio
from discord.ext import bridge, commands
from colorama import Fore

        
client = bridge.Bot(
    command_prefix='prefix',
    intents=discord.Intents.all(),
    help_command=None
)
``` das ist meins
brazen scarab
#

Das ist ein schöner Code nur was hat das jetzt mit meinem Problem zutun? xD

wise stone
#

ja das gleiche

#

aber statt member: discord.Member kommt role: discord.Role

#

und wenn du die Rolle pingen willst ist das gleiche wie du den member pingst

#

role.mention?

burnt prairieBOT
#
Level Up!

Herzlichen Glückwunsch @wise stone, du bist jetzt Level 17 🎉

wise stone
#

ansonsten mach das

#

await ctx.respond(...., role_mention=True)

fluid leaf
#

mach doch einfach <@&ROLE-ID>

#

Ja

#

Man kann es einfach machen

#

du machst 3 choices und wenn die owner choice ist dann ist die id die ID halt

#
    async def weitergeben(self, ctx,
                        rolle: Option(str, choices=["Owner", "Admin", "Manager", required=True)
    ):
        if rolle == "Owner":
            rolle = await self.bot.fetch_role(ROLLENID)
        elif status == "Admin":
            rolle = await self.bot.fetch_role(ROLLENID)
        else:
            rolle = await self.bot.fetch_role(ROLLENID)
#

Option muss importiert werden!!!

#

Code:

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

    @discord.ui.button(
        label="Beanspruchen",
        style=discord.ButtonStyle.green,
        custom_id="claimbutton",
        emoji="🖐🏼"
    )
    async def callback1(self, button, interaction):
        logc = interaction.guild.get_channel(1058921744636842064)

        claime = discord.Embed(
            title="Beansprucht",
            description=f"Das Ticket wird nun von {interaction.user.mention} bearbeitet.",
            color=0x303030
        )

        logclaim = discord.Embed(
            title="Beansprucht",
            description=f"Das Ticket {interaction.channel.mention} wird nun von {interaction.user.mention} bearbeitet.\n",
            color=0x303030
        )

        await logc.send(embed=logclaim)
        await interaction.response.send_message(embed=claime)
        await interaction.response.edit_message(embed=claime, view=Beansprucht())

Error:

discord.errors.InteractionResponded: This interaction has already been responded to before
#
    async def weitergeben(self, ctx,
                        rolle: Option(str, choices=["Owner", "Admin", "Manager", required=True)
    ):
        if rolle == "Owner":
            rolle = await self.bot.fetch_role(ROLLENID)
        elif status == "Admin":
            rolle = await self.bot.fetch_role(ROLLENID)
        else:
            rolle = await self.bot.fetch_role(ROLLENID)

    await ctx.respond(f" nachricht... {rolle}")
#

so

#

bruh anstatt rolle mach rolle.mention

#

code?

#
    @slash_command()
    @commands.has_role(1032007641553174628)
    async def weitergeben(self, ctx,
                        rolle: Option(str, choices=["Owner", "Admin", "Manager", required=True)
    ):
        if rolle == "Owner":
            rolle2 = await self.bot.fetch_role(ROLLENID)
        elif status == "Admin":
            rolle2 = await self.bot.fetch_role(ROLLENID)
        else:
            rolle2 = await self.bot.fetch_role(ROLLENID)

    await ctx.respond(f"**{ctx.author.mention} Braucht Hilfe** \n Deswegen wurde dieses Ticket an {rolle2.mention} weitergegeben")
#

mach das mal

#

mach eif

#

Bei mir geht alles

#

also liegt es an einer deiner codes

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


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

    @slash_command()
    async def modal(self, ctx):
        modal = FantasyModal(title="Erzeuge ein Embed")
        await ctx.send_modal(modal)


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


class FantasyModal(discord.ui.Modal):
    def __init__(self, *args, **kwargs):
        super().__init__(
            discord.ui.InputText(
                label="Embed Titel",
                placeholder="Placeholder"
            ),
            discord.ui.InputText(
                label="Embed Beschreibung",
                placeholder="PLaceholder",
                style=discord.InputText.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()
    )

        await interaction.response.send_message(embeds=embed)```
urban glen
#

Bei mir wird nämlich kein Fehler angezeigt

fluid leaf
#

du musst auch ein respond haben

#

await ctx.respond("erfolgreich")

#

AH WARTE

burnt prairieBOT
#
Ghost Ping

@fluid leaf hat @hoary loom gepingt.

Nachricht
@hoary loom

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


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

    @slash_command()
    @commands.has_role(1032007641553174628)
    async def claim(self, ctx):
        await ctx.respond(f"**Willkommen im Support auf BastiGame Zone!** \n {ctx.author.mention} wird sich um dein Anliegen kümmern.")

    @slash_command()
    @commands.has_role(1032007641553174628)
    async def unclaim(self, ctx):
        await ctx.respond(f"**Dieses Ticket wurde gerade unclaimed** \n {ctx.author.mention} wird sich leider nichtmehr um dich kümmern können! \n Aber es kommt bestimmt gleich ein anderer Teamler! \n <@&1005534585293127761>", role_mention=True)

    @slash_command()
    @commands.has_role(1032007641553174628)
    async def weitergeben(self, ctx, rolle: Option(choices=["Owner", "Admin", "Manager"], required=True)):
        if rolle == "Owner":
            rolle = await self.bot.fetch_role(993590920001884211)
        elif rolle == "Admin":
            rolle = await self.bot.fetch_role(1061390494946574496)
        else:
            rolle = await self.bot.fetch_role(1031995441371431013)
            
        await ctx.respond(f"**{ctx.author.mention} Braucht Hilfe** \n Deswegen wurde dieses Ticket an {rolle.mention} weitergegeben")

def setup(bot):
    bot.add_cog(TicketClaim(bot))
fluid leaf
#

knecht bot

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


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

    @slash_command()
    @commands.has_role(1032007641553174628)
    async def claim(self, ctx):
        await ctx.respond(f"**Willkommen im Support auf BastiGame Zone!** \n {ctx.author.mention} wird sich um dein Anliegen kümmern.")

    @slash_command()
    @commands.has_role(1032007641553174628)
    async def unclaim(self, ctx):
        await ctx.respond(f"**Dieses Ticket wurde gerade unclaimed** \n {ctx.author.mention} wird sich leider nichtmehr um dich kümmern können! \n Aber es kommt bestimmt gleich ein anderer Teamler! \n <@&1005534585293127761>", role_mention=True)

    @slash_command()
    @commands.has_role(1032007641553174628)
    async def weitergeben(self, ctx, rolle: Option(choices=["Owner", "Admin", "Manager"], required=True)):
        if rolle == "Owner":
            rolle2 = await self.bot.fetch_role(993590920001884211)
        elif rolle == "Admin":
            rolle2 = await self.bot.fetch_role(1061390494946574496)
        else:
            rolle2 = await self.bot.fetch_role(1031995441371431013)

        await ctx.respond(f"**{ctx.author.mention} Braucht Hilfe** \n Deswegen wurde dieses Ticket an {rolle2.mention} weitergegeben")

def setup(bot):
    bot.add_cog(TicketClaim(bot))
``` @urban glen das ist der richtige code
urban glen
fluid leaf
#

doch

urban glen
#

Okay und wo muss ich das hinzufügen?

fluid leaf
#

vor ctx.send_modal

#
    @slash_command()
    async def modal(self, ctx):
        modal = FantasyModal(title="Erzeuge ein Embed")
        await ctx.respond("Deine Nachricht")
        await ctx.send_modal(modal)
#

dann mach get_role

#

und mach await weg

#

urban glen
# fluid leaf vor ctx.send_modal

Also ich hab es hinzugefügt und es geht immer noch nicht. Außerdem wurde im Tutorial gesagt, dass dieses await ctx.send_modal(modal) das await ctx.respond ersetzt

fluid leaf
#
    @slash_command()
    @commands.has_role(1032007641553174628)
    async def weitergeben(self, ctx, rolle: Option(choices=["Owner", "Admin", "Manager"], required=True)):
        if rolle == "Owner":
            rolle2 = self.bot.get_role(993590920001884211)
        elif rolle == "Admin":
            rolle2 = self.bot.get_role(1061390494946574496)
        else:
            rolle2 = self.bot.get_role(1031995441371431013)

        await ctx.respond(f"**{ctx.author.mention} Braucht Hilfe** \n Deswegen wurde dieses Ticket an {rolle2.mention} weitergegeben")
urban glen
fluid leaf
#

ka

fluid leaf
urban glen
fluid leaf
#

Musst du halt warten

urban glen
#

Jo

brazen scarab
# urban glen Jo
import discord
from discord.ext import commands
from discord.commands import slash_command


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

    @slash_command()
    async def modal(self, ctx):
        modal = FantasyModal(title="Erzeuge ein Embed")
        await ctx.send_modal(modal)
        await ctx.respond("Modal gesendet", ephemeral=True)


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


class FantasyModal(discord.ui.Modal):
    def __init__(self, *args, **kwargs):
        super().__init__(
            discord.ui.InputText(
                label="Embed Titel",
                placeholder="Placeholder"
            ),
            discord.ui.InputText(
                label="Embed Beschreibung",
                placeholder="PLaceholder",
                style=discord.InputText.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()
    )

        await interaction.response.send_message(embeds=embed)```
#

So sollte der Fehler weg sein.

#

Oh ich hab nen Typo ... Warte

#

Jetzt

fluid leaf
#
    @slash_command()
    @commands.has_role(1032007641553174628)
    async def weitergeben(self, ctx, rolle: Option(choices=["Owner", "Admin", "Manager"], required=True)):
         owner = "rollenid"
         admin = "rollenid"
         manager = "rollenid"

        if rolle == "Owner":
            rolle2 = await self.bot.fetch_role(owner)
        elif rolle == "Admin":
            rolle2 = await self.bot.fetch_role(admin)
        else:
            rolle2 = await self.bot.fetch_role(manager)

        await ctx.respond(f"**{ctx.author.mention} Braucht Hilfe** \n Deswegen wurde dieses Ticket an {rolle2.mention} weitergegeben")
wise stone
fluid leaf
#

xd

brazen scarab
#

channel_id aka {channel} ... Wie heißt die function um den channel von "Allgemeine Hilfe" zu #1019974414487535736 ändern? ... hinter das {channel.blablabla} kommt noch was ich hab vergessen ... xD

#

channel.mention ... NC_Blob_Facepalm

fluid leaf
#

Code:

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

    @discord.ui.button(
        label="Beanspruchen",
        style=discord.ButtonStyle.green,
        custom_id="claimbutton",
        emoji="🖐🏼"
    )
    async def callback1(self, button, interaction):
        logc = interaction.guild.get_channel(1058921744636842064)

        claime = discord.Embed(
            title="Beansprucht",
            description=f"Das Ticket wird nun von {interaction.user.mention} bearbeitet.",
            color=0x303030
        )

        logclaim = discord.Embed(
            title="Beansprucht",
            description=f"Das Ticket {interaction.channel.mention} wird nun von {interaction.user.mention} bearbeitet.\n",
            color=0x303030
        )

        await logc.send(embed=logclaim)
        await interaction.response.send_message(embed=claime)
        await interaction.response.edit_message(embed=claime, view=Beansprucht())

Error:

discord.errors.InteractionResponded: This interaction has already been responded to before
brazen scarab
#

followup

wise stone
#

du kannst nicht 2x Mal response haben

brazen scarab
#

oder so

wise stone
brazen scarab
#

😄

#

Kann mir wer sagen, wie ich ein Modal callback in einen anderen command übertragen kann? ...

wise stone
#

müsstest die in ne Cache oder DB speichern lasseb

brazen scarab
#

Nah, ich merke grade ... Ich glaube mir fehlt zu meiner Sache noch etwas Sadge

brazen scarab
# wise stone öh die parameters?

Kann man dich per Pm mal fragen wo das Problem liegt? Ich will mein Code jetzt nicht unbedingt öffentlich machen aber finde das Problem nicht kottonLUL

wise stone
#

error kannste sicher Mal hier reinschicken

brazen scarab
#

Warte

#
Ignoring exception in modal <__main__.MyModal object at 0x000001E6D92FDA90>:
Traceback (most recent call last):
  File "C:\Users\domid\AppData\Local\Programs\Python\Python311\Lib\site-packages\discord\ui\modal.py", line 341, in dispatch
    await value.callback(interaction)
  File "c:\Users\domid\Desktop\Discord Projekt\main.py", line 113, in callback
    await cursor.execute("SELECT channel_id FROM servers WHERE server_id = ?", (ctx.guild.id,))
                                                                                ^^^
NameError: name 'ctx' is not defined```
#

Wenn ich ctx aber adde kommt

#
Traceback (most recent call last):
  File "C:\Users\domid\AppData\Local\Programs\Python\Python311\Lib\site-packages\discord\ui\modal.py", line 341, in dispatch
    await value.callback(interaction)
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^
TypeError: MyModal.callback() missing 1 required positional argument: 'ctx'```
#

async def callback(self, interaction: discord.Interaction, ctx: discord.ApplicationContext):

fluid leaf
brazen scarab
#

OMG OMG OMG OMG OMG OMG OMG OMG OMG OMG OMG OMG

#

Ich liebe dich

#

Nach 3 Tagen ... Funktioniert es ... 145 Zeilen in der main.py Laras_Keks

brazen scarab
# fluid leaf interaction.guild.id

await interaction.send('Bitte setze zuerst einen Channel mit dem /setchannel-Befehl')
AttributeError: 'Interaction' object has no attribute 'send'

burnt prairieBOT
#
Level Up!

Herzlichen Glückwunsch @brazen scarab, du bist jetzt Level 4 🎉

brazen scarab
#

Statt interaction dann einfach ... Ich habs vergessen danWTF

fluid leaf
brazen scarab
#

Ne xD

#

interaction.guild.id hatten wir da statt ctx.

#

Das geht beim senden aber ned

brazen scarab
wise stone
brazen scarab
wise stone
#

ist im modal callback?

wise stone
#

hab's doch editiert

brazen scarab
#

Ich wollte grade sagen

fluid leaf
#
    @warn.command(description='Warne einen Benutzer')
    @commands.has_role(id=1059236066529382400)
    async def add(
            self, 
            interaction: discord.Interaction, 
            user: Option(discord.Member, 'Welchen User willst du einem Warn geben', required=True), 
            reason: Option(str, 'Was ist der Grund für den Warn', required=True)
        ):

        warn = await self.get_warn(interaction.guild.id, user.id)

        await interaction.response.defer()
        await asyncio.sleep(1)

        async with aiosqlite.connect(self.DB) as db:
            await db.execute("UPDATE warn SET warns = warns + 1 WHERE guild_id = ? AND user_id = ?", (interaction.guild.id, user.id))
            await db.commit()

        embed = discord.Embed(
            title=f'💊 | {user.name} wurde Gewarnt!',
            description=f"Moderator: {interaction.user.mention}\n"
                        f"User: {user.mention}\n"
                        f"ID: {user.id}\n"
                        f"Grund: **{reason}**\n"
                        f"Warn Anzahl: **{warn+1}**",
            color=discord.Color.blue(),
            timestamp=datetime.now()
        )

        await interaction.followup.send(embed=embed)

        try: 
            dm = discord.Embed(
                title=f"💊 | Du wurdest gewarnt!",
                description=f"Moderator: {interaction.user.mention}\n"
                            f"ID: {user.id}\n"
                            f"Grund: **{reason}**\n"
                            f"Warn anzahl: **{warn+1}**",
                color=0x303030
            )
            await user.send(embed=dm)

        except:
            dmE = discord.Embed(
                title=f'❌ | Error',
                description=f'{user.mention} wurde gewarnt konnte {user.mention} aber keine DM schreiben.',
                color=0x303030
            )
            await interaction.followup.send(embed=dmE, ephemeral=True)

Es wird nur 1 User eingetragen

brazen scarab
#

Man sollte auch ein kleines wtf ...

fluid leaf
#

Hab kein

wise stone
#

und was ist das problem

fluid leaf
#

Ich hab
/warn add <user> <reason> gemacht

#

und dann in die datenbank geschaut und da war er und alles

#

aber als ich dann nochmal jmd anderen gewarnt habe wurde er nd hinzugefügt

brazen scarab
#

Achso

#

Ich bin dumm (Hat sich erledigt)

fluid leaf
burnt prairieBOT
#
Level Up!

Herzlichen Glückwunsch @fluid leaf, du bist jetzt Level 19 🎉

wise stone
#

idk dann

fluid leaf
#

Ok :(

brazen scarab
#

Ich hab noch ein kleines Problem...

Ich habe das hier :

        await cursor.execute("SELECT channel_id FROM servers WHERE server_id = ?", (interaction.guild.id,))
        result = await cursor.fetchone()
        if result is None:
            await interaction.response.send_message('Bitte setze zuerst einen Channel mit dem /setchannel-Befehl')
        else:
            channel = bot.get_channel(result[0])
            await channel.send(f"Da steht was drin, was keiner wissen möchte :D", embed=embed)```

Keine Sorge, in der Server id ist mein Server drinne... 

```py
Traceback (most recent call last):
  File "C:\Users\domid\AppData\Local\Programs\Python\Python311\Lib\site-packages\discord\ui\modal.py", line 341, in dispatch
    await value.callback(interaction)
  File "c:\Users\domid\Desktop\Discord Projekt\main.py", line 120, in callback
    await channel.send(f"Da steht was drin, was keiner wissen möchte :D", embed=embed)
          ^^^^^^^^^^^^
AttributeError: 'NoneType' object has no attribute 'send'```

Wie kann ich das noch abfragen? Sehe grade. Da er den Channel nicht auslesen kann, kann er den "channel.send" nicht ausführen ...
fluid leaf
#

Du hast Channel nicht definiert

brazen scarab
#

Doch?

#

channel = bot.get_channel(result[0])

fluid leaf
#

ah ich seh

brazen scarab
#

await cursor.execute("SELECT channel_id FROM servers WHERE server_id = ?", (interaction.guild.id,)) Ist das falsch rum?

#

Ne kann ja nicht

brazen scarab
#

main

#

Also

#

Wenn meine id NICHT da drinnen ist vom Server (Die ID ist von einem anderem Server(mein test Server)) dann spuckt der das aus. Sobald meine server_id drinnen ist, gibt er mir den Error AttributeError: 'NoneType' object has no attribute 'send'

wise stone
#

wo ist das embed definiert?

wise stone
#

Channel ist none

brazen scarab
#
class MyModal(discord.ui.Modal):
    def __init__(self, *args, **kwargs) -> None:
        super().__init__(*args, **kwargs)``` Da ^^
#

Ja aber wenn channel none ist soll er das senden

wise stone
#

und was senden?

brazen scarab
#
        result = await cursor.fetchone()
        if result is None:```
#
        await cursor.execute("SELECT channel_id FROM servers WHERE server_id = ?", (interaction.guild.id,))
        result = await cursor.fetchone()
        if result is None:
            await interaction.response.send_message('Bitte setze zuerst einen Channel mit dem /setchannel-Befehl')```
wise stone
#

lösch db

brazen scarab
#

Hab ich schon

wise stone
#

und setupe die neu

#

mach Else raus

#

und tu if result is not None:

brazen scarab
#

So kann man das auch umgehen ^^ Ne ich will ne Nachricht senden wenn der Channel nicht gesetzt wurde ...

#

Das muss doch gehen LUL

wise stone
#

schon wohin

#

Channel muss angegeben sein

brazen scarab
#

Nein pass mal auf

wise stone
#

oder nimmst nen random channel

wise stone
#

mit ne for schleife

brazen scarab
#

Wenn jemand den Befehl /setupchannel macht und kein Channel gesetzt ist, sollte ja das hier passieren :

        await cursor.execute("SELECT channel_id FROM servers WHERE server_id = ?", (interaction.guild.id,))
        result = await cursor.fetchone()
        if result is not None:
            await interaction.response.send_message('Bitte setze zuerst einen Channel mit dem /setchannel-Befehl')```

Damit ist irgendwas falsch. 
Weil wenn ich **KEINE **server_id drinnen habe, spuckt er den Fehler aus. Da er aber wenn er auf einen Server joint, die server_id einfügt, bringt mir das alles nix.
wise stone
#

dann mach das raus wenn der den Server joint

#

die sollen doch selber setupen xd

brazen scarab
#
@bot.event
async def on_guild_join(guild):
    # Öffne die Datenbank-Verbindung
    db = await aiosqlite.connect('setchannel.db')
    cursor = await db.cursor()

    # Erstelle die Tabelle "servers", falls sie noch nicht existiert
    await cursor.execute('''
        CREATE TABLE IF NOT EXISTS servers (
            server_id INTEGER PRIMARY KEY,
            channel_id INTEGER
        )
    ''')```
#

._.

#

Dann darf ich das schon wieder komplett umschreiben -.-

wise stone
#

hönwenn du Connect musst du schon asyncen

brazen scarab
#

Was

wise stone
#

also Timo machst das anders mit aiosqlite

brazen scarab
#

Also ich habe das jetzt auf 10 Servern versucht, funktioniert einwandfrei. Ausser die Fehlermeldung

wise stone
#

naja

brazen scarab
#

Der ließt das falsch aus keine Ahnung

wise stone
brazen scarab
wise stone
brazen scarab
#

Ich sag ja ... Damit ist nichts falsch ... Er ließt es einfach falsch aus aber ich weiß nicht wieso und warum...

#

Oh warte mal

#

guild is not defined ... Ne ich änder da nix sonst mach ich wieder alles kaputt. Bin ja schon begeistert, das ich hinbekommen habe das es funktioniert wie es soll.

#

Ich bin und bleibe der Meinung, das hier was falsch ist... Er ließt beides aus. server_id und channel_id daher der NoneType

        # Hole den gespeicherten Channel
        await cursor.execute("SELECT channel_id FROM servers WHERE server_id = ?", (interaction.guild.id,))
        result = await cursor.fetchone()
        if result is None:
            await interaction.response.send_message('Bitte setze zuerst einen Channel mit dem /setchannel-Befehl')
        else:
            # Sende die Nachricht in den gespeicherten Channel```
thick haven
#

@tasks.loop(seconds=60) async def voice_time(self):
Wie kann ich hier alle user die sich in einem vocie channel befinden bekommen?

thick haven
#

@solid ingot wie hast du es gemacht?

brazen scarab
burnt prairieBOT
#
Level Up!

Herzlichen Glückwunsch @brazen scarab, du bist jetzt Level 5 🎉

Du hast <@&1024276691205496872> erhalten!

thick haven
brazen scarab
thick haven
burnt prairieBOT
#
Level Up!

Herzlichen Glückwunsch @thick haven, du bist jetzt Level 10 🎉

Du hast <@&1032921984612433952> erhalten!

brazen scarab
#

Hat er das gemacht? thinkingemoji_blue

brazen scarab
#

Dann schau doch mal in seinen Videos

thick haven
brazen scarab
#

Ja ich sehe grade schon in seinem Github findet man auch nichts leider.

thick haven
#

das hat er privat geamcht

#

ebend deshalb soll ers ma sagen XD

#

jetzt geh ich pennen hoffe er antwort mir

brazen scarab
# wise stone wait wait wait da wird nirgendswo die guild id geaddet

https://discordapp.com/channels/1010915072694046794/1019974414487535736/1061420566126534796
Ich glaube ich habe den Fehler gefunden thinkingemoji_blue

        await cursor.execute("SELECT channel_id FROM servers WHERE server_id = ?", (interaction.guild.id,))```

Er ließt die guild.id aus oder nicht? er soll aber die channel_id auslesen.

Also müsste es doch 
```py
        await cursor.execute("SELECT channel_id = ? FROM servers WHERE server_id", (channel_id,))

sein oder nicht?
(ich weiß nicht ob mein edit korrekt ist.)
Ich werde nun auch schlafen gehen. Vielleicht hat ja noch jemand eine Idee.

wise stone
#

du musst nur server_id definierten

brazen scarab
solid ingot
#

ja

for guild in bot.guilds:
    print(guild.name)
#

ja verlassen geht immer

#

guild.leave

urban glen
#

Die neuen Code Highlights sind irgendwie nd besser als davor ._. xD

floral monolith
#

?

urban glen
#

?

brazen scarab
#
(None,)
Ignoring exception in modal <__main__.MyModal object at 0x0000022E7E43A5D0>:
Traceback (most recent call last):
  File "C:\Users\domid\AppData\Local\Programs\Python\Python311\Lib\site-packages\discord\ui\modal.py", line 341, in dispatch
    await value.callback(interaction)
  File "c:\Users\domid\Desktop\Discord Projekt\main.py", line 122, in callback
    await channel.send(f"Das embed soll gesendet werden wenn der Channel gesetzt wurde mit /setchannel", embed=embed)
          ^^^^^^^^^^^^
AttributeError: 'NoneType' object has no attribute 'send'```

```py
        # Hole den gespeicherten Channel
        await cursor.execute("SELECT channel_id FROM servers WHERE server_id = ?", (interaction.guild.id,))
        result = await cursor.fetchone()
        print(result)
        if result is None:
            await interaction.response.send_message('Bitte setze zuerst einen Channel mit dem /setchannel-Befehl')
            print(interaction.response)
        else:
            # Sende die Nachricht in den gespeicherten Channel```

![thinkingemoji_blue](https://cdn.discordapp.com/emojis/1010861918543691826.webp?size=128 "thinkingemoji_blue")  Liegt das an dem "," oben bei None? (Habe mir das "result" mal printen lassen)
urban glen
brazen scarab
#

Ja das wissen wir xD

#

if result is None:

urban glen
brazen scarab
#

Das haste gesehen ja?

urban glen
brazen scarab
#

Schau dir das doch mal an bitte ._.
Nein wird es eben nicht.
Es kommt der Error AttributeError: 'NoneType' object has no attribute 'send'

#

Anstatt die Nachricht

urban glen
brazen scarab
#

Im else

urban glen
#

Man bräuchte schon den Code part, wo auch der Error auftritt

brazen scarab
#

Ja weil ich meinen Code nicht unbedingt leaken will LUL

#
        else:
            # Sende die Nachricht in den gespeicherten Channel
            channel = bot.get_channel(result[0])
            await channel.send(f"Eine Dungeonsuche von {interaction.user.mention} wurde gestartet!", embed=embed)```
urban glen
brazen scarab
#

Nein

urban glen
#

Und wo is das problem?
Wie soll er denn etwas in den channel schicken, wenn in der Db nicht's eingetragen is?

brazen scarab
#

Sagmal

urban glen
brazen scarab
#
        await cursor.execute("SELECT channel_id FROM servers WHERE server_id = ?", (interaction.guild.id,))
        result = await cursor.fetchone()
        print(result)
        if result is None:```

Wenn kein Channel gesetzt wurde mit /setupchannel, soll das hier kommen. Weil dann keine channel_id in der DB ist.
#

Was aber kommt ist AttributeError: 'NoneType' object has no attribute 'send'

urban glen
brazen scarab
urban glen
brazen scarab
#

Es gibt keinen Error

urban glen
brazen scarab
#

Ich habe ja jetzt nur das result hinzugefügt. thinkingemoji_blue

#

Achso warte mal xD

#

Man sollte auch die response nicht auskommentieren ich Idiot

urban glen
#

._.

brazen scarab
#

Mein Fehler sorry ...

brazen scarab
# urban glen ._.

So eine kleine Sache die ich vergessen habe ... Ich danke dir vielmals 😄 Funktioniert love

#
This error typically occurs when you try to access an element in a list using an index that is outside the bounds of the list. For example, if you have a list with three elements, the valid indices for the elements in the list are 0, 1, and 2. If you try to access an element at index 3, you will get an "index out of range" error because there is no element at that index.```
#

Denk dran. Ein Index beginnt bei 0... 0 1 2 3 -- Nicht 1 2 3

wise stone
#

wie kann ich alle bots die auf ein Server sind mit ne for schleife holen und diese in eine Liste reinpacken?

brazen scarab
urban glen
#

Eine erklärung hätte genügt

#

Man Codet nicht vor, sonst lernt die Person ja nicht's

brazen scarab
#

Ich lerne durch Beispiele. Wenn ich nach etwas Frage, möchte ich ein Beispiel haben. (Falls das möglich ist) Da es Menschen gibt, die in eine Doc schauen und nur Bahnhof verstehen.

Mir wurde fast alles beigebracht, durch Beispiele.
Und so gebe ich das auch weiter.

urban glen
urban glen
brazen scarab
#

Wenn damit ein Problem besteht. Dann sag mir das, dann helfe ich nichtmehr.

urban glen
#

Aber selber probieren geht vor

#

Anstatt etwas zu copy & pasten

brazen scarab
#

Mein Code macht doch auch noch garnicht viel. Er funktioniert so auch garnicht, da wie du schon erwähnt hattest, fehlt etwas ^^ Also verstehe ich dein Problem grade nicht thinkingemoji_blue

urban glen
#

Man soll erst selber probieren und dann code & ggf. Error schicken

brazen scarab
#

Er ist ja nicht fertig thinkingemoji_blue War ja nur ein Beispiel wie man es umsetzen könnte thinkingemoji_blue Den Rest muss man schon selber machen. Den Context, den du jetzt geliefert hast, hatte zum Teil noch gefehlt aber das hätte er schon selber rausgefunden.

#

Es steht doch dabei

#
my_list = [1, 2, 3]

try:
    print(my_list[3])
except IndexError:
    print("Oops, that index is out of range!")```
wise stone
urban glen
urban glen
#

Falls dir das etwas sagt

brazen scarab
wise stone
urban glen
wise stone
#

aber wieso derbot.name will mit je If abfrage machen das wenn die id einer des bots ist Return wird Rest weiß ich ja

brazen scarab
urban glen
#

Oder verstehe ich etwas gerade falsch? xD

wise stone
#

joah schon

#

woher soll der Code bzw. Bot wissen ob's ein bot ist

#

if member.bot bezieht sich ja nur auf einen?

urban glen
urban glen
#

Wo erwähnst du etwas über ein emojiquiz?

wise stone
brazen scarab
#

Woher soll ich wissen, das es mit irgendwas zutun hat? Du hast gefragt "Was ist das für ein Error" Ich habe ihn dir erklärt danWTF

wise stone
#

aber da ist member auch nur ein parameter oder?

brazen scarab
#

Du bist mit dem Thema auf 2 Discords unterwegs. Vergiss nicht, wo du was geschrieben hast LUL

burnt prairieBOT
#
Level Up!

Herzlichen Glückwunsch @brazen scarab, du bist jetzt Level 6 🎉

brazen scarab
#

haha_blue Das finde ich jetzt frech xD

indigo sapphire
#

Hey geht es schon Pycord auf python 3.11?

brazen scarab
indigo sapphire
#

Nein python 3.11

#

Wenn ich python 3.11 nutzen will reklamiert Pycord

brazen scarab
solid ingot
#

die neuste pycord version funktioniert auf jeden fall schon mit 3.11

indigo sapphire
#

Nein mir eigentlich egal welche Pycord Version will ja nur python 3.11 mit Pycord

indigo sapphire
brazen scarab
#

pip install py-cord funktioniert nicht?thinkingemoji_blue

indigo sapphire
#

Mit Pycord

brazen scarab
#

Mach ma deine CMD auf und schreib mal rein "pip list" und zeig mir was bei deinem py-cord steht thinkingemoji_blue @indigo sapphire

#

Möglicherweise greift dein Projekt auf die Json zu und keine Ahnung, ich weiß nichtmal was du willst, was du machen willst, was du getan hast (ausser die JSON leer gemacht) ... Hä

indigo sapphire
#

py-cord 2.3.2

#

py-cord 2.3.3.dev24+g5e2e28b0

brazen scarab
#

Mach mal pip uninstall py-cord und danach wieder pip list, guck ob py-cord weg ist. auch die dev version. Wenn ja mach nochmal pip install py-cord thinkingemoji_blue

indigo sapphire
#

kk

brazen scarab
indigo sapphire
#

mit python?

brazen scarab
#

Ja. Willst du komplett neu anfangen? Bist du schon "erfahren" ?

indigo sapphire
#

den error:

PS C:\Users\Manuel Berchtold\OneDrive - Kantonale Schule für Berufsbildung\Dokumente\Programmieren\Python\ShrioLaplaceBot\ShiroSystem> & "C:/Users/Manuel Berchtold/AppData/Local/Programs/Python/Python311/python.exe" "c:/Users/Manuel Berchtold/OneDrive - Kantonale Schule für Berufsbildung/Dokumente/Programmieren/Python/ShrioLaplaceBot/ShiroSystem/ShiroMain.py"
Traceback (most recent call last):
  File "c:\Users\Manuel Berchtold\OneDrive - Kantonale Schule für Berufsbildung\Dokumente\Programmieren\Python\ShrioLaplaceBot\ShiroSystem\ShiroMain.py", line 8, in <module>
    import discord, asyncio
ModuleNotFoundError: No module named 'discord'
PS C:\Users\Manuel Berchtold\OneDrive - Kantonale Schule für Berufsbildung\Dokumente\Programmieren\Python\ShrioLaplaceBot\ShiroSystem>
brazen scarab
#
import discord
import asyncio```
#

Nicht mit , trennen

indigo sapphire
#

geht doch?

brazen scarab
#

Mir wurde beigebracht, dass man das so nicht macht

indigo sapphire
#

und warum???

brazen scarab
#

Keine Ahnung aber wenn es so funktioniert, dann hat er discord nicht gefunden.
Welchen Editor nutzt du?

indigo sapphire
#

macht keine unterschied

#

wo liegt das problem?

brazen scarab
#

pip install discord.py panda_shrug_blue

indigo sapphire
#

xD

#

why nutze pycord

brazen scarab
#

Du nutzt aber die library discord ...

indigo sapphire
#

nein

indigo sapphire
brazen scarab
#

Ja keine Ahnung dann... Bei mir hat alles auf anhieb funktioniert beim erstellen meiner ersten Zeilen

indigo sapphire
#

idk

brazen scarab
#

Hover mal über das discord in import discord thinkingemoji_blue Was steht da?

indigo sapphire
#

selbe fehler

#

tibue weisst du wo das problem liegt?

urban glen
#

Maybe kann ich helfen

indigo sapphire
#

Joa will Pycord auf python 3.11 läuft

#

@urban glen

urban glen
indigo sapphire
#

anscheinend ja

urban glen
#

Brauchst version 2.3.0 oder höher

indigo sapphire
brazen scarab
# indigo sapphire hab py-cord 2.3.2

Habe grade mal einen kleinen Tipp erhalten, da ich scheinbar auch ein Problem hatte.
Ich nutze selber py-cord.
Schick mir mal deine Liste bitte. pip list

indigo sapphire
#

Kk

urban glen
indigo sapphire
indigo sapphire
brazen scarab
#

Was zum Teufel LUL

indigo sapphire
#

xD

#

ich code ja viel zu viel

brazen scarab
#

Da muss SIGMA ran LUL Sorry hahaha

indigo sapphire
#

xD

topaz snow
#

Hat wer eine Idee warum ich nur channel auswählen kann?

            ctx,
            text: Option(str, "Der Text, den du senden möchtest"),
            channel: Option(discord.TextChannel, "Der Channel, in den du die Nachricht senden möchtest")
    ):```
brazen scarab
urban glen