#Allgemeine Hilfe

1 messages · Page 18 of 1

mental hamlet
#

dein helfer xD

solid ingot
#

du kannst vlt nicht mehrere Datenbanken haben, aber du kannst mehrere Tabellen in einer Datei haben, falls du das meinst

cloud cedar
solid ingot
#

diese Dinger die du mit CREATE TABLE erstellst

#

davon kannst du so viele in einer Datei machen wie du magst

cloud cedar
#

@solid ingot kann ich das einfach in den String mit rein bauen?

    @commands.Cog.listener()
    async def on_ready(self):
     async with aiosqlite.connect("money.db") as db:
        await db.execute(
            """
            CREATE TABLE IF NOT EXISTS money(
                user_id INTEGER PRIMARY KEY,
                money_count INTEGER DEFAULT 100
            )
            """
        )```
tawdry leaf
solid ingot
#

du kannst ein zweites CREATE TABLE hinzufügen

cloud cedar
viscid lake
#

AttributeError: 'Client' object has no attribute 'load_extemsion' was kann man dagegen tun hatte sowas noch nicht

solid ingot
#

du hast extension falsch geschrieben

#

ich würde empfehlen bot zu nehmen statt Client

viscid lake
frail loom
#

wenn ich daten aus einer .db datei auslesen möchte für bestimmte commands.
Ist es da sinnvoll eine extra .py datei zu erstellen um mit einem on ready event die jeweiligen datensätze direkt zu laden, um sie später nur zu importieren in dem cog wo man sie braucht ?

Statt jedes mal einzelnd zu connecten.

Bin da grad in der findungsphase 😄

solid ingot
#

wenn sich die daten nicht ändern, kannst du sie direkt am anfang auslesen. es spricht aber auch nix dagegen, die daten jedes mal neu auszulesen, das ist natürlich besonders sinnvoll wenn sie die daten zur laufzeit ändern

frail loom
#

ich würde den kompletten bot gerne mit einer datenbank versehen das er auf jedem server individuell anpassbar ist.
Ändern würde sich ja gelegendlich schon was.

Weiss nur nicht genau ob das so richtig ist wie ich es bissher mache.
Kann ich mal reinschicken das du mal n auge auf son command wirfst ? 😄

solid ingot
#

ja

frail loom
#
@commands.Cog.listener()
    async def on_ready(self):
        async with aiosqlite.connect(self.DB) as db:
            await db.execute(
                """
                CREATE TABLE IF NOT EXISTS servers (id INTEGER PRIMARY KEY, name TEXT, server_id TEXT, cat_id TEXT)
                """
            )

            for guild in self.bot.guilds:
                async with db.execute("SELECT id FROM servers WHERE server_id=?", (str(guild.id),)) as cursor:
                    result = await cursor.fetchone()
                    if result:
                        print(f"Der Server {guild.name} ist bereits in der Datenbank")
                    else:
                        async with db.execute("INSERT INTO servers (server_id, name) VALUES (?, ?)",
                                              (str(guild.id), guild.name)):
                            await db.commit()
                            print(f"Der Server {guild.name} wurde der Datenbank hinzugefügt")

Den um die server einzupflegen.

@slash_command(description="Setze eine Kategorie für Tickts !")
    async def setup_ticketch(self, ctx):
        await ctx.response.send_message("bitte gebe deine ID für eine kategorie ein")

        def check(m):
            return m.author.id == ctx.author.id

        msg = await self.bot.wait_for("message", check=check)

        await ctx.send('Eingabe erhalten: ' + f"<#{msg.content}>")
        async with aiosqlite.connect("test.db") as db:
            await db.execute("UPDATE servers SET cat_id=? WHERE server_id=?", (msg.content, ctx.guild.id))
            await db.commit()
            await ctx.respond("Kategorie wurde geändert/gesetzt !")```

Und den um eine bestimmte Kategorie einzupflegen.
solid ingot
#

hm, es wäre wahrscheinlich besser die server nicht im on_ready event in die DB einzufügen, sondern im slash command. der bot kann ja auch auf einen neuen server joinen, nachdem er gestartet wurde. in diesem fall würde der bot nicht automatisch hinzugefügt werden

#

weil du die klammer nicht geschlossen hast

open dragon
#

Du hast die klammer vergessen

open dragon
solid ingot
#

sori

open dragon
#

Btw. Gucke dir das nächste mal den error an

open dragon
frail loom
solid ingot
#

das kannst du direkt in dem command machen wo du auch dein UPDATE befehl hast

frail loom
#

guter call deinerseits 😄

fluid leaf
#

In VSC ist alles Normal aber in py-charm nicht :(

wise stone
#

Error steht auch drin

fluid leaf
#

Was ist denn mit der guild_id

wise stone
#

da steht alles doch drinnen....

fluid leaf
#

#

Ja, steht es aber ich versteh es nd

wise stone
#

googlen...

mental hamlet
wise stone
#
Ignoring exception in view <View timeout=None children=2> for item <TicketSchliessen style=<ButtonStyle.danger: 4> url=None disabled=False label='Closen!' emoji=None row=None>:
Traceback (most recent call last):
  File "C:\Users\49152\Desktop\Coding\Python\lib\site-packages\discord\ui\view.py", line 414, in _scheduled_task
    await item.callback(interaction)
  File "C:\Users\49152\Desktop\Coding\Void System\cog\ticket.py", line 250, in callback
    view.add_item(Test())
  File "C:\Users\49152\Desktop\Coding\Python\lib\site-packages\discord\ui\view.py", line 287, in add_item
    raise TypeError(f"expected Item not {item.__class__!r}")
TypeError: expected Item not <class 'cog.ticket.Test'>
class Test(discord.ui.View):
    def __init__(self):
        super().__init__(timeout=None)

    @discord.ui.button(label='Test', style=discord.ButtonStyle.red)
    async def callback(self, button, interaction):
        for button in self.button:
            button.disabled = True
        await interaction.response.edit_message(view=self)
        await interaction.followup.send('Test', ephemeral=True)```
#

@solid ingot das meinte ich .__.

solid ingot
#

ich habe immer noch das leichte gefühl dass es an dir liegt und nicht an pycord

wise stone
solid ingot
#

du kannst keinen view zu einem view hinzufügen

#

schick mal das example

#

ich glaube nicht dass da view.add_item(Test()) vorkommt

wise stone
#

lol

wise stone
#

trz gleicher error

mental hamlet
#

BRUDER

#

wieso addesd du nen vide nen view

#

self.bot.add_view(Test())

wise stone
mental hamlet
#

DA

#

DAVID du 0IQ ding

fluid leaf
#

ShareX

urban glen
#

code?

#

Nutzt du normale prefix commands oder slash commands?

#

Wofür dann das response.send_message

#

Es ist keine interaction

#

In dem fall musst du alles wo interaction steht ersetzten zu -> ctx und dann ctx.send

#

@mental hamlet

#

Joa der ping is blöd, aber das mach ich grad nur wegen dem Namen

#

Weil du ja immer noch nen response drinne hast ._.

visual swallow
#

Hallo

#

Ich bräuchte kurz Hilfe

#

Ich hätte auch eine kleine Frage

urban glen
#

Was sollen wir mit der Info jetzt?

#

Stell deine Frage doch einfach

visual swallow
#

Muss man Python auf den Mac Os installiert haben?

#

Also

#

wie pip install py-cord

urban glen
#

Maybe hilft das

#

Hab kein macos

visual swallow
#

Also ich meine ob ich es so machen soll wie Coding Keks es beim 1 Video gemacht hat

urban glen
#

Also idk

mental hamlet
#

interaction ??

#

ctx bitte

#

ctx.send

#

ctx.send

#

docs

#

lesen

wise stone
#

@urban glen respond

#

und lern gefälligst die Sachen

mental hamlet
visual swallow
mental hamlet
#

DAS IST KEIN SLASH COMMAND

dense magnet
#

Ihr treibt den armen joker in die Verzweiflung

mental hamlet
#

ich dachte auf Bl4cklist währe das schlimm aber hier manchmal ._.

dense magnet
#

Hahaha

#

ctx.send.send_message @urban glen bisschen mitdenken würde allen sehr helfen

visual swallow
#

@urban glen Geht es auch wenn ich Pyhton Version 10 mir hole?

quiet socket
visual swallow
#

Bei mir geht pip install py-cord nicht

#

Obwohl ich Pyhton version 10.0 Installiert habe

quiet socket
visual swallow
#

Äh ich habe Visual Studio Code

visual swallow
#

Bloß ich habe halt Visual Studio Code

#

Weißt du es vllt trotzdem?

#

@quiet socket

mental hamlet
#

path nicht angeklickt?

visual swallow
#

Path?

#

Meinst du Datei?

tawdry leaf
#

ja meint er

#

bzw den Pfad

wise stone
#

das ist der Weg zur Datei

tawdry leaf
#

Pfad 🙂

wise stone
#

ansonsten hätte er Datei gesagt...

wise stone
#

aber englisches wort wäre path

tawdry leaf
#

hm

visual swallow
visual swallow
tawdry leaf
visual swallow
#

Da verstehen wir uns mehr

quiet socket
wise stone
#

?

visual swallow
#

ich bräuchte wo hilfe

#

und zwar mein Code hat keine Fehler aber da stehen Zeilen wie 1206 obwohl mein Code 176 Zeilen Code hat

#

Weiß jemand wie ich es fixen kann?

#

hier

wise stone
#

les den Error nochmal

#

man siehst direkt...

mental hamlet
#

indent falsch

#

einrückung

#

ja sieht man doch

#

das das falsch ist bisschen mitdenken würde allen sehr helfen

#

bisschen mitdenken würde allen sehr helfen

visual swallow
#

Hoster

#

Bot maybe groß

#

@wise stone

urban glen
#

Weiß er Bot nirgends definiert hat

#

def __init__(self, bot):

visual swallow
#

Ja und weiter..

mental hamlet
#

basics peeposhy

#

LERN DIE BASICS

open dragon
#

"Lern die Basics"

mental hamlet
open dragon
#

Hat Timo beim Button Video gesagt nh?

#

Warum has du da jetz Init stehen.

#

@urban glen

mental hamlet
open dragon
#

Acheo

#

Schick bitte Code

#

Warum client.

#

Benutze Bot

mental hamlet
open dragon
#

Gucke dir es Bitte bitte an

mental hamlet
#

ist ja nur ne variable

open dragon
mental hamlet
#

nein ist es nd

open dragon
#

Doch

mental hamlet
#

das ist komplett egal

open dragon
#

Für mein Kompf schon

mental hamlet
open dragon
#

Il

#

Ik

mental hamlet
#

you see

open dragon
#

Trzdm fackt ist

#

Timo hats erklärt

#

Timos Video angucken

tawdry leaf
#

xD

tawdry leaf
open dragon
#

Ja

#

Ja tmm

#

Damit du es auch verstehst

#

Ja

#

Tmm hat mir Tivue auxh immer gesagt

tawdry leaf
#

sieht sehr interresant aus dein code

#

self.bot = client xD

#

self.client gibts nd

#

ig

#

aber dann client....

#

und nicht self.client

#
class on_ready(commands.Cog):
    def __init__(self, client):
        self.bot = client

    @commands.Cog.listener(
        'on_ready'
    )
    async def listener(
        self
    ):
        self.bot.add_view(
            TicketViewCreateTicket()
        )
        self.bot.add_view(
            TicketViewButtonEmMSG()
        )
        self.bot.add_view(
            CloseDropdown())



def setup(client):
     client.add_cog(on_ready(client))```
#

hmm

#

ich kann kein pycord 🙂

#

und dann noch cogs

wise stone
#

in den () muss self.bot stehen

#

ern basic

#

du übergibts den Parameter bot in der class aber machst es nicht

floral monolith
#

steht ja auch nicht grundlos in #🔰・old-help-rules

viscid lake
#

weiß wer wie man ValueError: mutable default <class 'discord.utils._MissingSentinel'> for field name is not allowed: use default_factory weg bekommt

snow hatch
#

habe ich schonmal gefragt, aber welche grundlagen braucht man für bot coden?

umbral goblet
mental hamlet
#

also alle basics die auf w3schools sind

snow hatch
umbral goblet
snow hatch
mental hamlet
snow hatch
#

Aber was sind die basics

mental hamlet
#

die auf w3schools stehen

urban glen
snow hatch
#

Alterpepecry
Ich Frage doch welche Grundlagen ich in Python brauche

frail loom
#

kennt sich jemand mit minecraft servern aus?
Will n restart.sh skript haben mit title benachrichtigung aber find nix gescheites 😄

mental hamlet
#

du mc titel musst du in java machen

mental hamlet
#
  1. Schau auf meinen Namen
  2. mach das
#

sry aber deine fragen sind extrem basic

#

aso und code & error

#

CODE

tawdry leaf
mental hamlet
tawdry leaf
#

geht auch netter xD

burnt prairieBOT
#
Level Up!

Herzlichen Glückwunsch @trail locust, du bist jetzt Level 19 🎉

mental hamlet
#

der code der den fehler veruhrsacht

tawdry leaf
#

supa

#

weiter so

viscid lake
#

weiß wer wie man

ValueError: mutable default <class 'discord.utils._MissingSentinel'> for field name is not allowed: use default_factory```
 weg bekommt
tawdry leaf
#

einf sachen die erlaubt sind in fields usen

viscid lake
urban glen
#

Aber ohne code, wird schwierig

viscid lake
tawdry leaf
#

die zeile

viscid lake
tawdry leaf
#

das ist doch kein error 😄

tawdry leaf
#

dann mach des use default_factory weg ^^

viscid lake
#

?

tawdry leaf
#

This issue will be fixed on the next update, 2.2.3 or something similar. For now it is possible to use the development version.

viscid lake
tawdry leaf
#

ik habe ich grad geschrieben lulw

tawdry leaf
#

joa

#

bitte code dazu 🤔

#
  embed.set_footer(icon_url=self.client.user.avatar.url, text="|  Cequunity")

statt des würde ich

embed.set_footer(icon_url=client.user.display_avatar, text="|  Cequunity")
)```
#

benutzt du bot ?

#

probier mal self.bot

urban glen
#

Woher soll dein modal denn wissen, was "client" ist

solid ingot
#

interaction.client

urban glen
#

urban glen
#

DA WO DU ES BRAUCHST

tawdry leaf
urban glen
#

Junge

#

interaction.client

#

Und lern die basics

tawdry leaf
#

warte

urban glen
#

Obwohl, ne eher

tawdry leaf
#

das hilft immer

mental hamlet
#

Ja

urban glen
#

👀

tawdry leaf
#

jz gehts ab

#

oha bin ein hardcore mensch

urban glen
#

Was versteht man denn nicht an "interaction.client" statt "client"

tawdry leaf
#

self.bot mag ich nicht muss man immer so viel schreiben 🙂

urban glen
tawdry leaf
urban glen
#

Gagmaschine

tawdry leaf
tawdry leaf
#

links sorrrryyyy

#

-_-

urban glen
tawdry leaf
#

er könnte auch self.user usen 😄

urban glen
#

Du hast doch nur geschrieben das client besser is als bot hä (hab kein bock hoch zu scrollen)

tawdry leaf
#

😦

#

lass doch einf icon url weg fertig ❤️

#

FRAGE EINFACH chatgpt

urban glen
#

So lernt er nichts

tawdry leaf
#

Meine Deutschlehrerin lässt uns auch bericht mit chat gpt schreiben

tawdry leaf
#

vllt kann er mit chat gpt erklärung mehr wissen ^^

urban glen
tawdry leaf
#

bevor chat gpt auf dem stand 2021 is

tawdry leaf
#

es kommt doch auf des selbe wie meine antwort 🙂

#

supa

#

Ich lerne die docs mit stackoverflow

#

😄

#

solange du nicht nachfragst wie man ein bot zum griefen macht wie manch andere 😄

#

er hat gefragt wie man einen kanal erstellt

#

und hat dann ein event machen wollen bei den er pro msg einen neuen txtkanal erstellt

#

er hat dazu extra auch everyone als msg vom bot benutzt das es endlos wäre

#

hm

#

schon dumm sowas versuchen zu leugnen

#

Lügen

mental hamlet
#

code & error

#

CreateTicketModal(self.client)

mental hamlet
#

ich hab dir es doch geschickt die Löung

#

die musst du einfach übertragen

mental hamlet
#

basics

#

das sind diekleinsten Fehler

normal sundial
#

kann man sich alle commands ausgeben lassen die der bot registriert hat? finde nur die prefix commands aber nichts zu den slashcommands in den docs wäre cool wenn mir das jemand sagen könnte oder mir sagt wonach ich mal suchen soll danke vorab.

solid ingot
wise stone
#

steht alles drin...mm

#

Google Übersetzer

floral monolith
wise stone
#

wenn du es übersetzt verstehst du es...

#

und JZ Lest du es DP_lost

#

dann MUSS DU ES DOCH VERSTEHEN WAS DA STEHT!

solid ingot
#

bitte nicht schreien @wise stone

wise stone
#

da steht no Front du hast ein Argument zu viel angegeben

#

was daran so schwer zu lesen mein Gott

#

lmao woher soll ich das wissen

#

da hast es

#

von da ist der error

#

mein Gott

#

sieht du dein Fehler nicht

#

@urban glen da fehlt button I'm callback

#

achte also bitte #🔰・old-help-rules

#

und?

#

das gehört da rein

#

schau die Docs alter

#

mach erst das und dann helfe ich dir weiter

#

zudem hast du nichts Client gesagt

#

nichts bekommen nichts helfen

#

ganz ehrlich ich kann nicht helfen wenn man Rum motzt und nicht den Error gleich mitschicken

#

code

#

und der Error sagt wo es ist

#

@urban glen JZ zeigst du mir den modal

#

den init DP_lost

#

client raus aus den init

#

da du es nicht übergibts

wise stone
#

liegt an der json

#

nicht am Code

#

bzw. er findet diesen Key nicht

mystic flower
#
import discord
from discord.ext import commands
from colorama import Fore
import asyncio

bot = commands.Bot(command_prefix="!")

class status(commands.Cog):
    def __int__(self, bot):
        self.bot=bot

    @commands.Cog.listener()
    async def on_ready(self):
        bot.loop.create_task(status_task(self))
        print(Fore.GREEN + "The File " + Fore.MAGENTA + "'Status'" + Fore.GREEN + " started succesfully!" + Fore.RESET)


@commands.Cog.listener()
async def status_task(self):
    await bot.change_presence(activity=discord.Game(f"bla bla"), status=discord.Status.online)
    await asyncio.sleep(30)
    await bot.change_presence(activity=discord.Game("bla bla"), status=discord.Status.online)
    await asyncio.sleep(30)
    await bot.change_presence(activity=discord.Game("mit Night of my Life"), status=discord.Status.online)


def setup(bot):
    bot.add_cog(status(bot))```

```py
Task exception was never retrieved
future: <Task finished name='Task-22' coro=<status_task() done, defined at C:\Boss Wolfi\Bot\cogs\status.py:18> exception=AttributeError("'NoneType' object has no attribute 'change_presence'")>
Traceback (most recent call last):
  File "C:\Boss Wolfi\Bot\cogs\status.py", line 20, in status_task
    await bot.change_presence(activity=discord.Game(f"bla bla"), status=discord.Status.online)
  File "C:\Users\bonny\AppData\Local\Programs\Python\Python311\Lib\site-packages\discord\client.py", line 1209, in change_presence
    await self.ws.change_presence(activity=activity, status=status_str)
          ^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'NoneType' object has no attribute 'change_presence' ```
normal sundial
#

du musst self.bot.change_presence nutzen

#

immer self.bot

mystic flower
#

jo

#
Task exception was never retrieved
future: <Task finished name='Task-22' coro=<status_task() done, defined at C:\Boss Wolfi\Bot\cogs\status.py:18> exception=AttributeError("'status' object has no attribute 'bot'")>
Traceback (most recent call last):
  File "C:\Boss Wolfi\Bot\cogs\status.py", line 20, in status_task
    await self.bot.change_presence(activity=discord.Game(f"bla bla"), status=discord.Status.online)
          ^^^^^^^^
AttributeError: 'status' object has no attribute 'bot'```
normal sundial
#

wait

mystic flower
#

ja

mystic flower
#

?

#

i need help

tawdry leaf
#

was versuchst du da denn wieder für dumme sachen

mystic flower
#

xD

normal sundial
#

ich habs an sich auch so nur in einem command und da geht es

mystic flower
#

häää

tawdry leaf
#

xD

tawdry leaf
urban glen
#

Würden die an meiner schule sagen

tawdry leaf
urban glen
outer ibex
#

beim bot template von Coding keks

tawdry leaf
outer ibex
#

Ich hab alles an gemacht

#

aber funktioniert nit

#

hab nix gesagt hab falsche guild id eingetragen

tough thicket
#

Wie kann ich den User an die untere Button-Klasse übergeben, wenn ich keinen Button Timeout habe:


@commands.Cog.listener()
    async def on_ready(self):
        self.bot.add_view(WelcomeButton())

#

@commands.Cog.listener()
    async def on_member_join(self, member):
        channel = await self.bot.fetch_channel(1234)
await channel.send(f'Herzlich Willkommen {member.mention}!', file=discord.File("willkommen.png"),
                           view=WelcomeButton())
#

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


    @discord.ui.button(label="Winken zur Begrüßung", style=discord.ButtonStyle.secondary, emoji='![wumpus_wumper](https://cdn.discordapp.com/emojis/1063105288753909760.webp?size=128 "wumpus_wumper")', custom_id="Welcome-Button")
    async def button_callback(self, button, interaction):

dense magnet
#
@commands.Cog.listener()
    async def on_member_join(self, member):
        channel = await self.bot.fetch_channel(1234)
await channel.send(f'Herzlich Willkommen {member.mention}!', file=discord.File("willkommen.png"),
                           view=WelcomeButton(member))
class WelcomeButton(discord.ui.View):
    def __init__(self, member):
        super().__init__(timeout=None)


    @discord.ui.button(label="Winken zur Begrüßung", style=discord.ButtonStyle.secondary, emoji=':wumpus_wumper:', custom_id="Welcome-Button")
    async def button_callback(self, button, interaction):
#

@tough thicket persistent musst du den nicht machen. Das nimmt dir einfach nur unnötig Leistung weg

tough thicket
outer ibex
#

code von #1069249880612155504

tawdry leaf
#

send trz deinen

outer ibex
tawdry leaf
#

morgen erst

#

xD

#

json used du

royal hinge
#

wieso findet er den pfad nicht ist alles richtig

#

@fluid leaf

urban glen
#

Falscher Pfad maybe?

royal hinge
#

nein ist alles richtig

#

der Ordner "Drache" ist auf meinem Desktop ja

urban glen
#

Lass dir doch mal alle Dateien und Ordner aus diesem Pfad printen

fluid leaf
#

dann geht es nicht

#

der ordner muss in vsc sein

#

also in deiner linken liste

urban glen
royal hinge
fluid leaf
#

boah

urban glen
#

Also ordner anordnung

royal hinge
urban glen
# royal hinge

Dann musst du einfach nur "cogs" machen soweit ich weiß

fluid leaf
royal hinge
#

nein geht nd

burnt prairieBOT
#
Level Up!

Herzlichen Glückwunsch @royal hinge, du bist jetzt Level 6 🎉

Du hast insgesamt 129 Nachrichten geschrieben und 1516 XP gesammelt.

royal hinge
#

habs gefixt

urban glen
royal hinge
#

ja ka

#

mich fuckt grad was anders AB AMK

#

FEHLER

urban glen
royal hinge
urban glen
#

PriviligedIntentsRequired

#

Musst Intents anmachen

royal hinge
#

bruh

#

stimmt habs vergessen

urban glen
#

Das steht da doch alles in dem Text direkt eine zeile drunter

royal hinge
#

geil der cog wird glaube nd erkannt oder irgendein fehler ist drine MANNN

#

bin erstmal eine rauchen :/ brauche ruhe

urban glen
#

Lass dir doch erstmal alle dateien in dem ordner printen

burnt prairieBOT
#
Level Up!

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

Du hast insgesamt 2505 Nachrichten geschrieben und 25310 XP gesammelt.

urban glen
#
import os

path = "./cogs"
dir_list = os.listdir(path)
 
print("Files and directories in '", path, "' :")
print(dir_list)
royal hinge
urban glen
royal hinge
#

ja

urban glen
#

außer das du halt bot.load_extension awaiten musst

#

Aber da du es da nd awaiten kannst, kannst du ja so machen:

#

Oder ungefähr so

royal hinge
#

gehts au so xD weil idk wenn ich es oben im on_ready event haue kommt nen error

urban glen
#

Lern bitte erstmal die Python grundlagen bevor du mit Discord Bots anfängst

royal hinge
#

tut mir ja leid amk

royal hinge
urban glen
#

Und nicht einfach ohne Vorkenntnisse rein stürzen in Discord bots

royal hinge
#

ach komm ich lass es einfach mit coden

#

egal

#

trz danke für die hilfe

viscid lake
#

wie bekommt nochmal ModuleNotFoundError: No module named 'discord' weg es steht in der requirements.txt

solid ingot
#

du kannst discord einfach aus deiner requirements.txt entfernen wenn du pycord nutzt

viscid lake
#

das ist alles

solid ingot
#

achso

#

py-cord scheint dann nicht richtig installiert zu sein

viscid lake
#

hab den .cache
zum x mal gelöscht

#

bei deinem panel ist das auch so

solid ingot
#

komisch

#

du brauchst jedenfalls keine andere discord library außer pycord

viscid lake
#

discord ui auch nicht?

solid ingot
#

nein

viscid lake
#

geht immer noch ned

#

wenn du willst kannst du rüber schauen

limpid wolf
#

Hatte sowas auch mal, lag daran, dass ich discord Library installiert hatte. Bist du dir sicher, das die deinstalliert ist?

#

Also py-cord drinnen ist aber discord nt

tough thicket
#

Kann ich in PyCharm auch alle meine Bot Projekte anzeigen lassen?

#

habe das aktuell so, nur in der discord presence wird das projekt, an dem ich dann arbeite nicht angezeigt

#

halt mit file etc.

mental hamlet
#

komish

tough thicket
mental hamlet
#

hast du show project an?

tough thicket
mental hamlet
#

ja appliction

#

nicht project hast du da

tough thicket
mental hamlet
#

active

tough thicket
mental hamlet
#

resatrt

tough thicket
mental hamlet
#

wieder application

#

ah ne

#

mhm

tough thicket
mental hamlet
#

ja

tough thicket
mental hamlet
#

?

tough thicket
#

ach egal, teste es einfach gleich aus

tough thicket
#

wo finde ich nochmal die python console

floral monolith
#

a

tough thicket
#

bzw. worüber kann ich sonst noch neue packages installieren?

#

aso

#

jo

urban glen
#

Du gibst den die ID als String an

#

Es muss aber ein Integer sein

wise stone
#

Str = String
integer = int

#

😑

urban glen
#

Meinst du das ernst??

#

Also "peinlich" ist Ansichtssache

#

ok

#

wtf

thick haven
#

Weiss jmd was das macvht?

wise stone
#

checke es auch nicht

thick haven
# wise stone checke es auch nicht

Das Feature bewirkt das wenn du auf deinem Server die Sicherheit hat das Teammitgleider z.b. eine Verifizierte email braucht kannst du ihn damit freischalten

tough thicket
tough thicket
#

oder meinst du diesen ganzen listener mit on_ready weglassen?

dense magnet
#

ja

tough thicket
# dense magnet ja

Habe das aus einem Tutorial, damit der Button eigentlich nach dem neustart auch noch funkt

outer ibex
urban glen
outer ibex
#

Hab ich aber funktioniert nit

tough thicket
mental hamlet
#

Code & error

#

Wie oft muss ich das sagen

mental hamlet
#

Deine data definition

#

Aber nicht

#

Und das sieht sehr copy pasted aus

urban glen
#

Da wo du data definierst

urban glen
#

Junge

#

Du sollst den code Abschnitt schicken wo du auch deine „data“ definiert hast

urban glen
#

Damn

#

Die leute denken auch das wir hellsehen können und wir verpflichtet sind ihnen zu helfen 😂

urban glen
#

wieso könnte ich keine 2 embeds responden?

#

await ctx.respond(embed=embed1, embed=embed2)

wise stone
urban glen
#

achso perfekt danke

tough thicket
#

Warum kann sich das Mitglied immer noch selber begrüßen?

solid ingot
#

==

#

nicht !=

tough thicket
#

achso, mein fehler

#

@dense magnet jetzt geht der button halt nach dem neustart nicht mehr

#

sagtest ja aber, dass das viel leistung ziehen würd'

wise stone
#

hast den ja in # gepackt

tough thicket
wise stone
#

hab's auch nicht drin finde das unnötig

#

aber wenn du oft restartet sollte man es haben

tough thicket
dense magnet
dense magnet
mental hamlet
#

ah das istz nen veralteter code bei BLUE

#

der mal wieder ohne nachdenken kopiert wurde

#

klar

#

du nicht weil du nicht die basics gelernt hast

#

xD

#

sry. aber jedes deiner probleme sind extrem klein

#

und mit wenig basics kann man das

urban glen
#

weiss jemand warum bei mir nur die main.py auf dem hosting ding läd

mental hamlet
#

Musst deine cogs auch laden

limpid wolf
#

und wie man die richtig lädt

urban glen
#

nein auf dem hosting ding

#

gib mal /account ein

#

da drauf

solid ingot
#

auf dem server sollte es genauso funktionieren wie bei dir lokal

urban glen
#

ne wenn ich alle files in dem gleichen dictionary pack so wie es im vsc ist läd nur die main.py

solid ingot
#

wie ist dein username bei keks hosting?

urban glen
#

der mir bei dem settings angezeigt wird?

solid ingot
#

der der bei /account angezeigt wird

urban glen
#

deval

solid ingot
#

du hast py-cord und discord.py in deiner requirements datei, das geht nicht, siehe #🔍・pycord-help

urban glen
burnt prairieBOT
#
Level Up!

Herzlichen Glückwunsch @fierce sedge, du bist jetzt Level 9 🎉

Du hast insgesamt 334 Nachrichten geschrieben und 3616 XP gesammelt.

solid ingot
#

das ist geschmacksache, in den tutorials nutze ich aber pycord

urban glen
#

dann nutze ich jetzt pycord

floral monolith
urban glen
urban glen
solid ingot
#

deine category ist None. vlt wird sie nicht gefunden?

dense magnet
#

Und warum in ner liste?

dense magnet
#

jo

dense magnet
#

doof

#

Wenn du hilfe willst brauch ich code und error

open dragon
#

hast dus gefetcht

#

zeig ma code u. Error

urban glen
#

Oka

#

y

urban glen
#

meinst du das grad ernst?

#

Junge

#

Wenn du Hilfe willst, dann nerv nicht mit diesen scheiß Emojis

#

guild.get_role

#

Is das so schwer?

#

Dann gette nh guild

#

Oder mach ctx.guild

#

So ein unnötiger Ping

tough thicket
#

Error & Code sussypeepo

floral monolith
#
@bot.event
async def on_member_join( member ):
    role = discord.utils.get( member.guild.roles, id = Deine_id)
    await member.add_roles( role )
urban glen
#

Wofür das ctx ._.

urban glen
floral monolith
#

Was soll ich jz machen

#

Hänger

urban glen
#

Soweit ich weiß

#

Macht ja sonstk ein sinn

urban glen
#

ok.

#

Was sollen wir mit der Info?

#

Code & Error

urban glen
open dragon
#
line 46, in begruessen
    await interaction.response.send_message(f":wave: | {interaction.user.mention} begrüßt {self.member.mention}")
AttributeError: 'Bot' object has no attribute 'mention'

das der error
```py
@discord.ui.button(label="Begrüßen", style=discord.ButtonStyle.green, custom_id="Hallo")
async def begruessen(self, button, interaction: discord.Interaction):
await interaction.response.send_message(f":wave: | {interaction.user.mention} begrüßt {self.member.mention}")
button.disabled = True
await interaction.message.edit(view=self)

der Code
urban glen
floral monolith
#

ich hab nichts geändert

urban glen
#

?

open dragon
urban glen
#

Weil ich wusste das du änderst xD

urban glen
#

mach doch einfach role = member.guild.get_role(dieRollenID) 😭

#

Wofür das: {len(list(member.guild.members))}??

#

Und nicht bot.add_roles

#

So weiß er ja nicht, wem er die rolle geben soll.

#

member.add_roles(role)

open dragon
#

Der member der gejoint ist

urban glen
#

Oder wo du den übergibst

open dragon
#

Kann net muss PC ausmachen :/

urban glen
#

😭 warum fragst du dann

#

Anstatt später oder morgen

#

Wenn du weiter dran arbeiten kannst

#

Also die anzahl der member die aufm server sind?

tawdry leaf
#

😄

urban glen
#

Mach {len(list(member.guild.members))} weg und mach nur {member.guild.member_count}

tawdry leaf
#

ist desselbe

#

man spart da dann bytes

urban glen
tawdry leaf
cloud cedar
#

Wie kann man bei dem Spezial - Dropdown Video machen, das nur bestimmte Rollen angezeigt werden
Und das die Rollen, die Ausgewählt werden dem User hinzugefügt werden

burnt prairieBOT
#

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

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

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

Discord Developer Portal ► https://discord...

▶ Play video
open dragon
open dragon
# urban glen Zeig mal, wo du den member abrufst der gejoined is?
import discord
from discord.ext import commands
from discord.commands import slash_command

from easy_pil import Editor, Font, load_image_async




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

    @commands.Cog.listener()
    async def on_member_join(self, member):
        if member.guild.id != 1066764262963433523:
             return
        background = Editor("wlcb.jpg").resize((800, 250))

        avatar = await load_image_async(member.display_avatar.url)
        circle_avatar = Editor(avatar).resize((180, 180)).circle_image()
        background.paste(circle_avatar, (100, 40))

        big_text = Font.poppins(size=25, variant="bold")
        small_text = Font.poppins(size=20, variant="regular")

        background.text((440, 90), f"{member.name}", color="White", font=big_text, align="center")
        background.text(
            (510, 170), f"Jetz haben wir {member.guild.member_count} Mitglieder", color="White", font=big_text, align="center"
        )

        file = discord.File(fp=background.image_bytes, filename='test.png')
        channel = await self.bot.fetch_channel(1066764263517065218)
        await channel.send(file=file, view=halloView(self.bot))

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

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

    @discord.ui.button(label="Begrüßen", style=discord.ButtonStyle.green, custom_id="Hallo")
    async def begruessen(self,  button, interaction: discord.Interaction):
        await interaction.response.send_message(f":wave: | {interaction.user.mention} begrüßt {self.member.mention}")
        button.disabled = True
        await interaction.message.edit(view=self)
wise stone
#

@open dragon...

#

du ubergibts den bot

#

nicht den member

open dragon
#

Weiß ich aber ich bin zu dumm den Member zu übergeben

urban glen
solid ingot
open dragon
#

Habe ich schon verduxht

cloud cedar
mental hamlet
#

await channel.send(file=file, view=halloView(member))

#

xD

open dragon
#

nur member?

#

und net self.member

urban glen
urban glen
open dragon
#

bruhh

urban glen
#

self.member is die definition für den Member den du in deine view class übergibst

solid ingot
#

nutzt du vlt python 3.11 mit einer library die nur für python 3.10 gemacht ist?

#

pip freeze

open dragon
#

gehe auf aseetings

#

seetings

burnt prairieBOT
#
Level Up!

Herzlichen Glückwunsch @hoary loom, du bist jetzt Level 12 🎉

Du hast insgesamt 521 Nachrichten geschrieben und 6616 XP gesammelt.

open dragon
#

bei deinem Projekt auf interpreter

#

dann aufs plus und suche easy-pil

#

was steht da bei dir?

#

dann muss da 3.10 oder 3.9 also klicke drauf

wise stone
#

py-cord==0.1.1?

#

schon eine alte Version

solid ingot
#

das ist das falsche pycord

#

du brauchst das mit bindestrich

wise stone
#

ah lel sehe es jz

burnt prairieBOT
#
Level Up!

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

Du hast insgesamt 2256 Nachrichten geschrieben und 21001 XP gesammelt.

slim creek
#

hallo ich hab ein problem ich will pycord installieren aber er schreibt immer

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

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

jup

urban glen
slim creek
#

wie meinst du mit diesen path

#

ich installier mal python neu glaube nich

urban glen
#

Nein, ob du beim Installieren von Python "pip" ausgewählt hast

slim creek
#

ne glaube nich

tawdry leaf
urban glen
manic tusk
#

Mein Code import discord

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

bot = discord.Bot(intents=intents)

@bot.event
async def on_ready():
print("Der Bot ist online")

@bot.event
async def on_message_delete(msg):
await msg.channel.send(f"Eine Nachricht von {msg.author} wurde gelöscht: {msg.content}")

urban glen
tawdry leaf
slim creek
#

geht immer noch nich

urban glen
tawdry leaf
#

hast du dein code auf pycharm gestartet

manic tusk
tawdry leaf
manic tusk
#

Wie seh ich das?

#

Jz

urban glen
#

Oder im Taskmanager

tawdry leaf
#

jap

manic tusk
urban glen
manic tusk
#

Wie das killen?

tawdry leaf
#

entweder programm über task manager killen

manic tusk
#

Wie tu ich killen?

tawdry leaf
#

Mert schreibt

urban glen
#

So wie man es normalerweise immer macht

tawdry leaf
urban glen
tawdry leaf
#

ich mache des immer so 🙂

#

dann ist terminal noch aber der prozess ist gestoppt

urban glen
tawdry leaf
#

wenn es gestartet ist

urban glen
#

Wird auch gestoppt

tawdry leaf
#

ja braucht aber

#

geht bei mir meist nur beim 2.versuch

urban glen
#

Wenn du halt was ausm Terminal kopieren willst und dann Strg + C machst, könnte das terminal geschlossen werden, deshalb haben die es 2 mal gemacht

manic tusk
#

Hab einfach Programm neu gestartet

cloud cedar
#
@discord.ui.button(label="50 C Spenden", style=discord.ButtonStyle.gray, emoji="💰")
    async def button_callback(self, ctx, button, interaction):
        async with aiosqlite.connect("money.db") as db:
            await db.execute("UPDATE money SET money_count = money_count + 50 WHERE user_id = ?", (ctx.author.id,))
            await db.commit()
            await db.execute("UPDATE money SET money_count = money_count - 50 WHERE user_id = ?", (interaction.user.id,))
            await db.commit()
        interaction.respond("Du hast 50 C gespendet")```
ERROR:
TypeError: bettlerview.button_callback() missing 1 required positional argument: 'interaction'
urban glen
cloud cedar
#

Naja, ich will dem Autor der nachricht 50 Coins geben und dem interaction.user 50 abziehen

urban glen
cloud cedar
#

Wie mach ich das

manic tusk
#

Warum kommt bei meinem Bot nicht der Status der Code ausschnitt @client.event async def status_task(): while True: await client.change_presence(activity=discord.Game("Tutorial Bot"))?

burnt prairieBOT
#
Level Up!

Herzlichen Glückwunsch @manic tusk, du bist jetzt Level 5 🎉

Du hast insgesamt 82 Nachrichten geschrieben und 1003 XP gesammelt.

Du hast <@&1024276691205496872> erhalten!

urban glen
manic tusk
#

Wie mache ich das dann?

urban glen
burnt prairieBOT
#
Level Up!

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

Du hast insgesamt 2765 Nachrichten geschrieben und 27604 XP gesammelt.

urban glen
#

#1069916479312625684 schau mal da

manic tusk
urban glen
manic tusk
urban glen
cloud cedar
#
class bettlerview(discord.ui.View):
 def __init__(self, user):
    self.user = user
    @discord.ui.button(label="50 C Spenden", style=discord.ButtonStyle.gray, emoji="💰")
    async def button_callback(self, button, interaction):
        async with aiosqlite.connect("money.db") as db:
            await db.execute("UPDATE money SET money_count = money_count + 50 WHERE user_id = ?", (user.id,))
            await db.commit()
            await db.execute("UPDATE money SET money_count = money_count - 50 WHERE user_id = ?", (interaction.user.id,))
            await db.commit()
        await interaction.response.send_message("Du hast 50 C gespendet")

@urban glen müsste alles so gemacht haben wie im Video, krieg keinen Error aber die applikation reagiert nicht

urban glen
cloud cedar
#

oh

manic tusk
urban glen
#

Die anderen einfach löschen

#

is das so schwer?

manic tusk
urban glen
#

Da ist für nextcord und für py-cord

manic tusk
urban glen
cloud cedar
manic tusk
urban glen
#

@manic tusk


status = "Dein Status"

@bot_definition.event
async def on_ready():
    change_status.start()

@tasks.loop(seconds=30)
async def change_status():
    await bot_definition.change_presence(discord.Game(status)) 
#

Is das so schwer?

manic tusk
#

Ist Spielt schon dabei?

urban glen
manic tusk
urban glen
#
status = "Dein Status"

@bot_definition.event
async def on_ready():
    await bot_definition.change_presence(discord.Game(status)) 

So wäre für dich eig besser, weil du ja nur ein Status hast schätze ich mal

urban glen
tawdry leaf
#

Game ist spielt...

manic tusk
#

Ja

tawdry leaf
#

na also

manic tusk
#

Meine Kopf….

urban glen
cloud cedar
#

Kannst du mal bei meinem code gucken

tawdry leaf
#

wenn du den sendest maybe

#

🤔

solid ingot
tawdry leaf
urban glen
#

Das sieht man doch

solid ingot
#

wenn du das siehst ist es schön, trotzdem kann man freundlich bleiben

tawdry leaf
#

+1

manic tusk
urban glen
# solid ingot unicode, hör auf immer so unhöflich zu sein

Und gestern hab ich nh Timeout bekommen, weil mich einer per Dm genervt hat, ich ihn blockiert habe und er mich dann angefangen hat hier zu nerven und random zu pingen

ja, dann is mein geduldsfaden geplatzt, aber das er random jemanden anschreibt und anfängt zu nerven und dann aufm server weiter macht, das is egal nh

tawdry leaf
urban glen
tawdry leaf
#

oder client.event je nach dem was du benutzt

urban glen
tawdry leaf
tawdry leaf
manic tusk
#

da ist ein erorr

solid ingot
tawdry leaf
#

selbe sachen

#

@manic tusk beides durch bot oder client ersetzen

urban glen
#

Is jetzt eh vergangen, scheiß drauf

tawdry leaf
solid ingot
#

hier ist kein channel für diskussionen

#

mach ein ticket auf wenn dich jemand belästigt

urban glen
manic tusk
#

so?

tawdry leaf
#

nein

#

alles weg

#

await client.change_presence(discord.Game(status))

tawdry leaf
#

np

#

pycharm halt

#

lol

manic tusk
tawdry leaf
manic tusk
#

Wie?

tawdry leaf
manic tusk
tawdry leaf
#

ja kommt manchmal vor

#

würde behaupten des liegt an discord

urban glen
#

Wieso nutzt man pprint?

#

I mean, is voll unnötig

solid ingot
#

ey du bist gemein

#

das hab ich im video auch benutzt

urban glen
#

Hahaha

#

Ab jetzt: alles was du fürs coden nutzt is unnötig

#

🫶

wise stone
#

ja @urban glen

#

schreib einfach rein statt zu Pingen

#

nop

#

easy-pil muss du in den requirments angeben

#

hm

#

dann sollte es installieren

#

lösch Mal die cache Datei und restarte

solid ingot
#

easy_pil nicht installiert

solid ingot
dense magnet
#

easy-pil

#

Nope

#

Du musst in der requirements datei "easy_pil" mit "easy-pil" ersetzen

urban glen
#

Dings, ich glaub du hast vergessen jemanden zu Pingen ||Falls Timo das ließt, !!SATIRE!!||

tough thicket
urban glen
#

Das is keine aussagekräftige Frage

tough thicket
urban glen
urban glen
#

Psychopath schreibt…
stoppt
Psychopath schreibt…
stoppt
Psychopath schreibt…
stoppt

urban glen
urban glen
#

Is das der komplette error?

#

Ehh

#

Bei key, da brauchst du keine Klammern

#

Liegt wohl an data[..][0][..]

#

Aber code hast du ja gelöscht

#

Sieht so aus, ja

#

komisch, ok

#

okay dann frag mal den timo

#

Mach mal ?q=keks oder so, maybe liegt es daran, das er bei slap nichts finden kann

#

Idk arbeite nd mit dieser d-r-e-c-k-s api xD

#

Das einzige das ich für So bilder mal genutzt habe war Neko api

#

Because Cute

#

Lmao

#

Hier is auch sowas nur besser peepepoint

#

Da kommt sowas raus lmao

#

Oder sowas

#

Und das gute, du brauchst kein Api Key + du musst nur request machen und dann data['url']

#

Und fertig

#

@urban glen

#

Musst nur beim request den link ersetzten und dann url = data['url'] machen

#

Nein

#

Code?

#

Wait ich code es dir kurz am handy vor, in besser

#

Als Screenshot bitte

#

Hab ich jetzt am handy gemacht

#

Kann sein das da fehler sind

#

Ah ne wait

#

Da is fehler

#

async with aiohttp.ClientSession() as session:
        async with session.get('https://nekos.life/api/v2/img/slap') as response:
            res = await response.json()
            print(res['url'])
#

@urban glen

#

In dein command ._.

#

Junge

#

Schick mir mal deinen Code vom command

#

Nur vom command

urban glen
# urban glen

Und das war nd der fertige code, das war ein Beispiel code, unabhängig von deinem

#

@slash_command()
async def hauen(self, ctx):
    async with aiohttp.ClientSession() as session:
        async with session.get('https://nekos.life/api/v2/img/slap') as response:
            res = await response.json()
            url = res['url']

            embed = discord.Embed()
            embed.set_image(url=url)
            await ctx.respond(embed=embed)
#

@urban glen also so schwer is es nd

manic tusk
burnt prairieBOT
#
Ghost Ping

@manic tusk hat @past temple gepingt.

Nachricht
@past temple

manic tusk
#

Sh!t

#

War ausversehen

burnt prairieBOT
#
Ghost Ping

@past temple hat @manic tusk gepingt.

Nachricht
@manic tusk

urban glen
#

Sorry was ausversehen

cloud cedar
#
class bettlerview(discord.ui.View):
 def __init__(self, user):
    self.user = user
    @discord.ui.button(label="50 C Spenden", style=discord.ButtonStyle.gray, emoji="💰")
    async def button_callback(self, button, interaction):
        async with aiosqlite.connect("money.db") as db:
            await db.execute("UPDATE money SET money_count = money_count + 50 WHERE user_id = ?", (self.user.id,))
            await db.commit()
            await db.execute("UPDATE money SET money_count = money_count - 50 WHERE user_id = ?", (interaction.user.id,))
            await db.commit()
        await interaction.response.send_message("Du hast 50 C gespendet")```
Error: Keiner, aber bei button_callback steht "button_callback is not accessed"
urban glen
cloud cedar
#

alles?

urban glen
cloud cedar
#

Was?

urban glen
#

Was?

cloud cedar
#

Was ich falsch eingerückt hab

urban glen
#

Alles

#

das def __init__ is zu weit hinten, ab @discord.ui.button müsste alles unter def __init__

#

class bettlerview(discord.ui.View):
    def __init__(self, user):
        self.user = user
    @discord.ui.button(label="50 C Spenden", style=discord.ButtonStyle.gray, emoji="💰")
    async def button_callback(self, button, interaction):
        async with aiosqlite.connect("money.db") as db:
            await db.execute("UPDATE money SET money_count = money_count + 50 WHERE user_id = ?", (self.user.id,))
            await db.execute("UPDATE money SET money_count = money_count - 50 WHERE user_id = ?", (interaction.user.id,))
            await db.commit()
        await interaction.response.send_message("Du hast 50 C gespendet")

#

@cloud cedar

cloud cedar
#

hm
steht nicht mehr is not accessed, aber ich krieg keine response, die anwendung reagiert nicht

#

oh wait

#

vielleicht beim /command das ich den ctx.author übergeb?

urban glen
#

Weil du beim command nicht antwortest ._.

cloud cedar
#

Wie meinst du

urban glen
#

Du antwortest im command nicht ._.

#

Natürlich steht da dann wenn du den command ausführst das die Anwendung nicht reagiert

cloud cedar
#
 @commands.Cog.listener()
    async def on_member_remove(self, member):
        background = Editor("hintergrund.png").resize((800, 250))
        avatar = await load_image_async(member.display_avatar.url)
        circle_avatar = Editor(avatar).resize((200, 200)).circle_image()
        background.paste(circle_avatar, (25, 25))
        big_text = Font.poppins(size = 50, variant = "bold")
        small_text = Font.poppins(size = 30, variant = "regular")
        background.text((490, 70), f"Bye!", color = "black", font = big_text, align = "center")
        background.text((490, 155), f"{member}", color = "black", font = small_text, align = "center")
        file = discord.File(fp = background.image_bytes, filename="image.png")
        bye_channel_id = ...
        channel = await self.bot.fetch_channel(bye_channel_id)
        await channel.send(file = file)```
Schriftart ist weiß, aber sollte schwarz sein
cloud cedar
urban glen
cloud cedar
#

@slash_command(description ="Frage eine Spende an")
async def beg(self, ctx):
await ctx.respond(f"Spende {ctx.author} 50 C", view = bettlerview(ctx.author))
Das geht auch nicht

cloud cedar
#

Nope, gibt keinen
aber button is not accessed

urban glen
#

Schick mal deinen code als screenshot

cloud cedar
urban glen
#

Also pycord is zwar schmutz, aber muss man nicht await ctx.response.send_message machen bei slash commands?

#

Is ja nh interaction

cloud cedar
#

Glaub nicht, kanns aber probieren

#

Ändert nichts

urban glen
#

Lmao

cloud cedar
wise stone
#

zeig Mal code

#

bzw. error

urban glen
#

Du willst nh lösung? Wechsel zu Nextcord pepegun

cloud cedar
cloud cedar
urban glen
cloud cedar
wise stone
#

und teste es nochaml

cloud cedar
#

Was meinst du

wise stone
#

beim command

#

den view

cloud cedar
#

Ja dann wirds gesendet
nur ohne buttons

wise stone
#

ok

#

und welcher Error kommt jz nun mit ver View?

urban glen
#

Kanns maybe daran liegen, dass er den Button zu weit unten erstellt?

Weil python ließt den code eig von oben nach unten

#

Versuch es mal oben, außerhalb von der cog class zu machen

cloud cedar
wise stone
#

das ist egal oben oder unten des cog

wise stone
cloud cedar
#

glaub es liegt an dem button is not accessed

urban glen
#

Code?

#

Als Screenshot

urban glen
#

res = await response.json()

wise stone
#

@cloud cedar

cloud cedar
#

ja, hilft mir glaube nicht hab das schon angeguckt

wise stone
#

???

#

da wirds gezeigt wie ein Button class geht

native plume
#

Moin, wollte fragen ob es beim:

@bot.slash_command(description="Grüße einen User")
async def greet(ctx, user: Option(discord.User, "Der User, den du grüßen möchtest")):
    await ctx.respond(f"Hallo {user.mention}")

auch eine Möglichkeit für einen Cooldown gibt.

urban glen
native plume
burnt prairieBOT
#
Level Up!

Herzlichen Glückwunsch @native plume, du bist jetzt Level 2 🎉

Du hast insgesamt 8 Nachrichten geschrieben und 106 XP gesammelt.

Du hast <@&1042123300970696705> erhalten!

urban glen
native plume
solid ingot
#

hey @native plume schau mal hier

native plume
solid ingot
wise stone
#

Parameter.bot

native plume
wise stone
#

Parameter = was du nutzt halt

solid ingot
native plume
#

Alr danke

wise stone
#

z.b.

#

if ctx.bot is True

#

oder ohne is True

urban glen
#

if irgendwas.author.bot:
print('oh no')

urban glen
#

if ctx.author.bot: würde reichen

wise stone
#

if member == ctx.bot

#

aber was von @urban glen wurde auch reichen

#

du fragst ja direkt ab ob es ein bot ist oder nicht

urban glen
#

@urban glen machst du in nem Command oder on_message?

#

Was machts dann für nen sinn zu schauen ob der author ein bot is?

#

Bots können keine Commands ausführen

#

weiss jemand wie mann das module bridge von discord.ext installiert

#

was ist disocrd