#Allgemeine Hilfe

1 messages · Page 11 of 1

tender horizon
#

ja aber dadurch kann ich trozdem nicht mehr rollen verteilen

indigo sapphire
#

Doch sollte gehen bei einem Fehler sollte es passen

wise stone
#

da gibt's kein paramter interaction.bot xd

#

for role in liste:

fluid leaf
wise stone
#

einfach raus nehmen

#

wozu brauchst du es weil im Code wird es nirgendswo definiert oder genutzt

#

außerdek setzt man das in der class oben ein

urban glen
#

ehm ja

tender horizon
#

Du musst er erst installieren

urban glen
wise stone
#

das 2te geht nicht

#

bzw. empfehle ich dir easy_pil

dense magnet
#

Welche Datenbank?

tender horizon
dense magnet
crystal star
#

weiß jemand ob es möglich ist einen bot invite per code generieren?

dense magnet
crystal star
#

geht bei mir nicht

burnt prairieBOT
#
Level Up!

Herzlichen Glückwunsch @dense magnet, du bist jetzt Level 11 🎉

dense magnet
#

Und bei permissions dann halt die permissions

crystal star
#

ah danke war gerade lost

open dragon
#

Ich kann meine Db net öffnen

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

import aiosqlite
import random

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

    @commands.Cog.listener()
    async def on_ready(self):
        async with aiosqlite.connect("level.db") as db:
            await  db.execute(
               """
               CREATE TABLE IF NOT EXISTS users (
               user_id INTEGER PRIMARY KEY,
               msg_count INTEGER DEFAULT 0,
               xp INTEGER DEFAULT 0
               )
               """
            )


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

habe auch die file level.db bekommen aber kann es net in der db öffnen bzw. sie wird nicht gefunden

open dragon
#

@solid ingot vlt du ist von deinem Tutorial

floral monolith
#

Nicht

#

pingen

open dragon
#

okö

solid ingot
#

wie meinst du das genau? du erzeugst eine db aber du findest die datei nicht?

open dragon
#

ja

solid ingot
#

such mal in deinem projektordner

open dragon
#

habs auch net

solid ingot
#

hast du den richtigen pfad ausgewählt?

open dragon
#

habe datenbank öffnen wen du es meinst

solid ingot
#

was meinst du denn mit "habe auch die file level.db bekommen"?

open dragon
#

die hier

solid ingot
#

dann musst du diese datei auswählen und dann auf öffnen klicken

burnt prairieBOT
#
Level Up!

Herzlichen Glückwunsch @solid ingot, du bist jetzt Level 44 🎉

open dragon
#

das kommt raus

solid ingot
#

mit dem DB Browser natürlich

open dragon
#

sie wird nicht angezeigt

#

alle ordner sind leer

solid ingot
#

du musst den richtigen pfad auswählen

#

die datenbank ist ja in deinem projektordner

open dragon
#

finde sie net

solid ingot
#

wo du dein projekt gespeichert hast musst du selbst wissen

tawdry leaf
#

Muss aber des > dabei sein

#

Und man müsste auch die Extension dazu haben 😅

silk gulch
#

Wie erhalte ich denn alle Member die in einem Sprachchannel sind?

urban glen
#

Hilfeeee

#

hab py-cord schon installiert

#

geht trzm. nicht

silk gulch
urban glen
silk gulch
urban glen
silk gulch
urban glen
urban glen
#

Hallo ich habe ein Problem mit globalen slash commands

#
@bot.slash_command(description="Sets the channel as the AI Harald Channel", name="setchannel") 
@default_permissions(administrator = True)
async def setchannel(ctx):

Ich mache das ganze so und habe auch keine Test-Guilds festgelegt. Trotzdem wird der Command selbst nach einer Stunde nicht registriert. Bzw er ist einmal Verwendbar und verschwindet dann wieder aus den Optionen. Weiß jemand woran das liegen könnte?

solid ingot
#

hey, könnte es sein dass dein bot mehrmals läuft? das ist ein häufiger grund wenn slash commands nach einmaliger benutzung verschwinden

urban glen
#

OH! ja ich habe zwei instanzen, die verschiedene Dinge erledigen

#

Folgendes Problem: Die eine Funktion braucht manchmal sehr sehr lange und deswegen habe ich den Bot in zwei Parts aufgeteilt

solid ingot
#

hm, also auch wenn der bot verschiedene dinge erledigen soll, darf er nur einmal laufen. alternativ könntest du einen zweiten bot erstellen

urban glen
#

Danke dir für die Info! Habe ich sonst nirgends gefunden.

burnt prairieBOT
#
Level Up!

Herzlichen Glückwunsch @lean snow, du bist jetzt Level 2 🎉

Du hast <@&1042123300970696705> erhalten!

solid ingot
#

gerne peepohappy

urban glen
urban glen
#

@solid ingot geht der /close befehl auch hier? XD

#

Darf ich mal testen?

solid ingot
#

versuch es mal :D

urban glen
#

Hmm

#

Gemein

#

Das ist sehr gemein

solid ingot
urban glen
#

Sehr sehr gemein

floral monolith
#

Kann ich den schliessen?

obtuse estuary
#

Ja 👍 versuch es

quiet socket
#

wie kann ich die id vom user für den unban usen?

crystal star
quiet socket
#

funkt nicht

#

weiss jemand wie man im chat coden kann xd?

wise stone
wise stone
#

und die id dann fetchen des users

quiet socket
#

Thx

floral monolith
#

@solid ingot darf Ichs ausprobieren?

solid ingot
floral monolith
solid ingot
#

na gut

floral monolith
solid ingot
#

noob

floral monolith
tawdry leaf
#

Kein Moderator 🫠

quiet socket
#
@slash_command(description="Entbanne einen User")
    @discord.default_permissions(administrator=True, ban_members=True)
    @discord.guild_only()
    async def unban(
            self, ctx,
            member: Option(discord.Member, "Wähle einen Member"),
            reason1: Option(str)):
        try:
            await member.unban()
        except discord.Forbidden:
            await ctx.respond("Ich habe keine Berechtigungen, um diesen Member zu entbannen")
            return
        await ctx.respond(f"{member.mention} wurde erfolgreich entbannt", ephemeral=True)
        unban_embed = discord.Embed(
            title=":rotating_light: - Du wurdest entbannt!",
            description=f"» Du wurdest von dem `{ctx.guild.name}` Server entbannt."
        )
        unban_embed.add_field(name="┏`👮` - **ENTBANNT VON:**", value=f'{ctx.author.mention}', inline=False)
        unban_embed.add_field(name="┣`🚧` - **GRUND:**", value=f"`{reason1}`", inline=False)
        await member.send(embed=unban_embed)

        channel = self.bot.get_channel(# CHANNEL_ID)


        unban_log = discord.Embed(
            title=":rotating_light: - User entbannt!",
            description=f"» Der User `{member.mention}` wurde von dem `{ctx.author}` entbannt."
        )
        unban_log.add_field(name="┏`👮` - **ENTBANNT VON:**", value=f'{ctx.author.mention}', inline=False)
        unban_log.add_field(name="┣`🚧` - **GRUND:**", value=f"`{reason1}`", inline=False)
        await channel.send(embed=unban_log)```
#

Immer wenn ich das channel objekt erstelle wird bei mir der unban_log komisch angezeigt

#

weiss jemand woran das liegen könnte ich sitzte schon seit 20 Minuten dran

quiet socket
#

Ich liebe Cogs dog_haha_blue

tawdry leaf
#

😂

tawdry leaf
quiet socket
#

Liegt nicht dran

tawdry leaf
#

Hm

tawdry leaf
urban glen
#

@quiet socket durch den Kommentar da drinne, wurde die Klammer nicht geschlossen.
Deshalb musst du dieses # weg machen

#

Weil dein Code sieht die Klammer auch als Kommentar

quiet socket
#

Danke hat mir sehr weitergeholfen ^^

blazing pilot
#

Der keks bot hat ja eine level funktion mit Belohnungen also eine Rolle wenn man ein level weiter ist, meine Frage wird die alte Rolle von level 1 entfernt wenn der spieler lvl 2 erreicht und dan die rolle von lvl2 bekommt ? Danke im vorraus

solid ingot
#

beim keks bot wird die rolle aktuell nicht entfernt, es ist aber natürlich auch möglich ein system zu programmieren dass die alten level rollen wieder entfernt

quiet socket
#

Wieso wird mein self parameter nicht erkannt?

tender horizon
#

Hast du das Self in der Class drinne ?

quiet socket
#

ja

quiet socket
urban glen
quiet socket
#
C:\Users\Georgi\AppData\Local\Programs\Python\Python310\python.exe "C:\Users\Georgi\Documents\Georgi\Developer stuff\Twevis Bot\main.py" 
Europe × Security#7866 ist online```
#

nix

tender horizon
#

Hmm keine Ahnung

solid ingot
quiet socket
#
import discord
from discord.ext import commands
from discord.commands import slash_command, Option


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

    @slash_command(description="Banne einen User")
    @discord.default_permissions(administrator=True, ban_members=True)
    @discord.guild_only()
    async def bann(
            self, ctx,
            member: Option(discord.Member, "Wähle einen Member"),
            reason1: Option(str)):
        try:
            await member.ban()
        except discord.Forbidden:
            await ctx.respond("Ich habe keine Berechtigungen, um diesen Member zu bannen")
            return
        await ctx.respond(f"{member.mention} wurde erfolgreich gebannt", ephemeral=True)
        bann_embed = discord.Embed(
            title=":rotating_light: - Du wurdest gebannt!",
            description=f"» Du wurdest von dem `{ctx.guild.name}` Server gebannt."
        )
        bann_embed.add_field(name="┏`👮` - **GEBANNT VON:**", value=f'{ctx.author.mention}', inline=False)
        bann_embed.add_field(name="┣`🚧` - **GRUND:**", value=f"`{reason1}`", inline=False)
        await member.send(embed=bann_embed)

        channel = self.bot.get_channel(123456789)  # hier channel id einfügen
        bann_log = discord.Embed(
            title=":rotating_light: - User wurde gebannt!",
            description=f"» Der User `{member}` wurde von dem `{ctx.guild.name}` Server gebannt.",
            color=discord.Color.red())
        bann_log.add_field(name="┏`👮` - **GEBANNT VON:**", value=f'{ctx.author.mention}', inline=False)
        bann_log.add_field(name="┣`🚧` - **GRUND:**", value=f"`{reason1}`", inline=False)
        await channel.send(embed=bann_log)

        @slash_command(name="unban",description="Entbanne einen User")
        @discord.default_permissions(administrator=True, ban_members=True)
        @discord.guild_only()
        async def unban(
                self,ctx,
                user: Option(discord.Member, "Wähle einen User"),
                reason: Option(str)):
            try:
                await user.unban()
            except discord.Forbidden:
                await ctx.respond("Ich habe keine Berechtigungen, um diesen Member zu entbannen")
                return
            await ctx.respond(f"{reason.mention} wurde erfolgreich entbannt", ephemeral=True)
            unban_embed = discord.Embed(
                title=":rotating_light: - Du wurdest entbannt!",
                description=f"» Du wurdest von dem `{ctx.guild.name}` Server entbannt."
            )
            unban_embed.add_field(name="┏`👮` - **ENTBANNT VON:**", value=f'{ctx.author.mention}', inline=False)
            unban_embed.add_field(name="┣`🚧` - **GRUND:**", value=f"`{reason}`", inline=False)
            await reason.send(embed=unban_embed)

            channel1 = self.bot.get_channel(12345)
            unban_log = discord.Embed(
                title=":rotating_light: - User entbannt!",
                description=f"» Der User `{reason.mention}` wurde von dem `{ctx.author}` entbannt.")
            unban_log.add_field(name="┏`👮` - **ENTBANNT VON:**", value=f'{ctx.author.mention}', inline=False)
            unban_log.add_field(name="┣`🚧` - **GRUND:**", value=f"`{reason}`", inline=False)
            await channel1.send(embed=unban_log)


def setup(bot):
    bot.add_cog(Bann(bot))```
#

ich habe den fehler jetzt gefunden

#

die einrückung wars xd

tawdry leaf
urban glen
#

Du hast ja nicht genau definiert welche Klammer du meinst

quiet socket
#
        try:
         if user is in ctx.guild.ban_list:
            await ctx.guild.unban(user)
         else:
            await ctx.respond("Der User ist nicht gebannt")
        except discord.Forbidden:
            await ctx.respond("Ich habe keine Berechtigungen, um diesen Member zu entbannen")
            return``` was könnte ich hier falsch haben?
#

if user is in ist was falsch

tender horizon
#

Das geht so nicht

#

Du Must mit for Schleife das durchlaufen lassen

quiet socket
#

was war das nochmal xD?

tender horizon
#

for user in ctx.guild.ban_list:

quiet socket
#

ah thx

urban glen
# quiet socket ah thx

Ich bin nicht sicher ob es so ganz korrekt ist, aber du kannst auch so machen:´

await ctx.guild.unban([user for user if user in ctx.guild.ban_list])
#

Oder irgendwie so

#

Bin nicht sicher ob es so komplett richtig is

tender horizon
#

Dies kann ich dir jetzt gerade auch nicht genau sagen

quiet socket
#

Ist jetzt egal habs gefixt

blazing pilot
tawdry leaf
solid ingot
#

so einfach ist es nicht. zuerst muss die letzte Level Rolle für den jeweiligen Server geladen werden. wenn ein Server keine Level Rolle für lvl 2 hat, sondern nur für 1 und 3, muss das dementsprechend anders geladen werden. dazu kommt, das manche ja auch nicht wollen, dass die Rollen entfernt werden. deswegen müsste es so gemacht werden, dass jeder Server das individuell einstellen kann

visual swallow
#

Ne Frage

#

Github Copilot will ich mir holen habe auch heute auch einen Schülerausweis bekommen aber Github nimmt mein Schülerausweis nicht an kann mir vllt jemand helfen

solid ingot
#

was wird angezeigt?

visual swallow
#

Warte

#

Das hier:
Your application cannot be reviewed until you fix the following:
You are significantly more likely to be verified if you have completed your GitHub user profile with your full name and a short bio.,The image you selected does not appear to contain your school name. You may include multiple documents in your image, so long as they are legible. For example, if your original document is not in English then you might take a photo of the original next to an English translation.

solid ingot
#

ahh

#

@floral monolith hatte dasselbe Problem, keine Ahnung wie man das löst

burnt prairieBOT
#
Level Up!

Herzlichen Glückwunsch @visual swallow, du bist jetzt Level 8 🎉

visual swallow
#

Hab sogar ein Profilbild genommen

#

Und es will trotzdem nicht

solid ingot
#

hat der Ausweis den du hochgeladen hast den Namen der Schule drauf?

visual swallow
#

Oh

#

Ne

#

Kann ich mal probieren

visual swallow
#

Hab mit mein Bild

#

Geht trotzdem nicht )=

#

Also ich hab ein Foto von mir hochgeladen und der Namen von der Schule

tawdry leaf
#

jemand eine Ahnung wie man unban cmd macht in discord.py

#

also mit slash cmds

solid ingot
#

was kommt raus und was soll rauskommen?

wise stone
#

Profil muss vollständig sein also Pb, bio. dazu nur eine Datei hast jedoch mehrerer ausgewählt.

#

bei der Datei Meine ich wo du das Ausweis hochlädst

solid ingot
wise stone
#

neuer ACC erstellen wie ich xd

#

und instand pro

tawdry leaf
#

*instant 😦

cloud cedar
#

Hi

#

Wie ping ich wen in nem Embed

#

Weil hier dann nur die User Id steht
Also @gray quest

urban glen
cloud cedar
#

oh

#

ok

cloud cedar
#

und wie legt man ein "hauptbild" fest

#

so wie bei

burnt prairieBOT
#
Für Fortnite!
floral monolith
#

Guck @solid ingot neues vid an

cloud cedar
#

nrvm

#

muss einfach nur embed.set_image machen

#

lol

#

aber danke

lofty haven
#

ich hätte mal nh frage wie kann ich emojis zum code hinzufügen

#

also nicht die normalen

cloud cedar
#

Und kann ich im Footer
statt
"angefordert von @cloud cedar " (weil das ja nich geht)
"angefordert von Kospingtan#9790 "
machen?

floral monolith
#

Ja

lofty haven
#

z_ so ein z.b

floral monolith
#

Du nimmst die id

lofty haven
#

und dann

floral monolith
#

Fügst du die ein

#

\

#

So z.b.

lofty haven
#

Rollenem = discord.Embed(
description=f'{emoji}⎸Erstelle dein eigenes Profil!\n\n'

#

wie würdest du das da machen

floral monolith
#

Ka kann net coden

lofty haven
#

wie jetzt xd

floral monolith
urban glen
#

@lofty haven du kannst auch einfach PartialEmoji Nutzen ...

floral monolith
lofty haven
#

ich guck mal kurz danke schonmal

urban glen
#

Oder du schreibst dir nen eigenen Code, bei dem du einfach Namen oder ID vom Emoji + Guild Id angibst und du dann dieses Emoji erhälst.

Habs auch

#

Ich stell dir den Code auch gerne zur verfügung wenn du willst

lofty haven
#

ich will ja nur ein emoji im embed hinzufügen

urban glen
#

@lofty haven

def obtain_emoji_from_guild(guild, id=0, name=""):
    if id != 0:
        for emoji in guild.emojis:
            if emoji.id == id:
                return emoji
    elif name != "":
        for emoji in guild.emojis:
            if emoji.name == name:
                return emoji
    return None

Und dann machst du z.B.:

@bot.command()
async def emoji(ctx):
    guild = bot.get_guild(guildID)
    emoji = obtain_emoji_from_guild(guild, id=DieEmojiID !ODER! name="DerEmojiName") # kanns aussuchen ob namen oder ID vom Emoji, oder beides :D
    await ctx.send(emoji)
#

So habs nochmal korrigiert xD

urban glen
urban glen
cloud cedar
#

Ja nice

#

aber wie

urban glen
#

Meinst du das ernst?

#

Einfach nur ctx.author

cloud cedar
#

Ja k war lost

#

hab nicht ans .mention am ende gedacht

lofty haven
urban glen
#

is ja nur was kleines

#

Wäre es was größeres, hätte ich es nicht gemacht xD

tender horizon
#

wie kann ich machen das auf eine variable von mehren scripten zugreifen kann?

solid ingot
#

du kannst die variable in einer config.py datei hast, kannst du diese mit import config importieren

tender horizon
#

also ich defieniere die variabken in einer config.py datein und mit import config kann ich alle abarufen?

#

muss noch irgendwas in die config datei?

solid ingot
#

dass war nur ein beisspiel wie man es machen kann, schau dir aber am besten mal ein video zu imports an

tender horizon
#

Ich hab’s schon danke

#

Man muss dann immer config.variable

#

Machen

urban glen
#

Wie await ich den Cog am besten?

solid ingot
urban glen
solid ingot
#

hm keine ahnung, bei pycord muss man das nicht awaiten

urban glen
#

Okay hab aktuell das Problem das mein anderer Computer in Reperatur ist und ich momentan Projekte von Github teste.
Bei meinem anderen Computer programmiere ich auch mit pycord.

solid ingot
#

ich würde empfehlen dich für eine bibliothek zu entscheiden, dass kann ganz schön nervig werden immer zu wechseln

wise stone
#

bei dpy

#

@urban glen

#

async def..
await bot.add....

urban glen
urban glen
tawdry leaf
urban glen
#

Hilfeeee

fluid leaf
#

#🔍・pycord-help

silk gulch
#

Versuche gerade Werte an andere Klassen zu installieren, aber irgendwie will das nicht so.

urban glen
urban glen
silk gulch
#

Nö, nur in nem String.

urban glen
urban glen
silk gulch
#

Sagt halt unresolved reference 'self..

fluid leaf
#

in nh class benutzt man interaction

#

interaction.guildID soweit ich weiß

silk gulch
wise stone
#

definiere dann halt oben guild

#

dann geht es

silk gulch
solid ingot
#

um das zu machen was du vor hast, bräuchtest du wahrscheinlich eine Button Klasse statt einer View Klasse

#

das self.guild kannst du aktuell nur innerhalb der callback Methode benutzen, mich darüber

urban glen
#

Hab alles gleich wie im Tutorial gemacht von CodingKeks und kommt trotzdem dieser Error

silk gulch
urban glen
urban glen
#

Steht da doch

#

Aber warum muss ich das bei mir machen und er nicht check ich nicht so ganz

solid ingot
#

du arbeitest doch mit discord.py oder? das funktioniert anders als pycord

silk gulch
#

Timo war schneller ._.

urban glen
solid ingot
#

hast du vlt vergessen discord.py zu deinstallieren?

dense magnet
#

Warum ist das bei pycord eig nicht async Thinkingpepe

solid ingot
#

discord.py hat das erst irgendwann async gemacht nachdem pycord das geforked hat

silk gulch
#

also für nen Button

urban glen
fluid leaf
#

Wie war das nochmal in dem Thumbnail von dem Gejointem Member den avatar zu bekommen

dense magnet
solid ingot
#

achso, pycord will generell keine änderungen von discord.py übernehmen, die sind komplett eigenständig jetzt

fluid leaf
#

@solid ingot beantwort mal meine Frage bin mega lost :(

#

Wie war das nochmal in dem Thumbnail von dem Gejointem Member den avatar zu bekommen

solid ingot
#

member.avatar?

fluid leaf
#

nicht noch _url ?

solid ingot
#

.url

fluid leaf
#

ah

#

ehm

#

geht nd

#

TypeError: Greet.on_member_join() missing 1 required positional argument: 'member'

solid ingot
#

schick Code du noob

fluid leaf
#
import random
import discord
import asyncio
import os

from colorama import Fore
from discord.ext import commands
from discord.commands import Option
from discord.commands import slash_command
from discord import guild

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

    @commands.Cog.listener()
    async def on_member_join(self, ctx, member):

        welcomeembed = discord.Embed(
            title=f":star: ı Willkommen",
            description=f"{member.mention} Willkommen auf *:>**.",
            color=0x313135
        )

        welcomeembed.set_thumbnail(url=member.avatar.url)

        welcomechannel = await self.bot.fetch_channel(1048361338453377054)
        hauptchat = await self.bot.fetch_channel(1047928301894762619)

        hauptembed = discord.Embed(
            title=f":star: ı Willkommen",
            description=f"LOL",
            color=0x313135
        )

        hauptembed.set_thumbnail(url=member.avatar.url)

        await welcomechannel.send(embed=welcomeembed)
        await hauptchat.send(embed=hauptembed)

def setup(bot):
    bot.add_cog(Greet(bot))
solid ingot
#

on_member_join hat kein ctx

#

nur member

fluid leaf
#

bruh

#

und self du noob

fluid leaf
#

Warum nicht?

#

Weil bei get nicht immer der chanel kommt

urban glen
urban glen
#

gette doch erstmal die guild und danach den channel getten

urban glen
#
guild  = self.bot.get_guild(guildID)
channel = guild.get_channel(channelID)
serene ermine
tawdry leaf
serene ermine
serene ermine
#

Was weißt du denn nicht bei dem erstellen des Befehls?

#

Slash commands, unbannen oder was

urban glen
tawdry leaf
tawdry leaf
serene ermine
serene ermine
urban glen
tawdry leaf
serene ermine
#

Nie ausprobiert

urban glen
tawdry leaf
# serene ermine Schick deinen Code
@client.tree.command()
async def unban(interaction:discord.Interaction, id: int):
    user = await client.fetch_user(id)
    await interaction.guild.unban(user)```
tawdry leaf
#

slash cmd

serene ermine
#

Kannst du das int nicht einfach mit discord.User ersetzencool_cat

tawdry leaf
#

hmm

tawdry leaf
serene ermine
tender horizon
#

wie kann ich ein emoji in ein embed einfügen?

solid ingot
#

genauso wie in einer normalen nachricht

tender horizon
solid ingot
#

normales oder custom emoji

tender horizon
#

habs schon trotzdem danke

silk gulch
wise stone
#

roleID: int

wise stone
#

und?

midnight ermine
#

Moin, ich habe das gleiche Problem. Allerdings mache ich vorher einige web requests, welche ein paar sekunden brauchen. Kann man diesen timeout irgendwie verlängern?

dense magnet
midnight ermine
solid ingot
#

du kannst einfach am anfang await ctx.defer() schreiben, dann die daten abrufen, und dann mit await ctx.respond() antworten

midnight ermine
#

Perfekt, das hat funktioniert. Hatte das await ctx.defer() an der falschen stelle. Vielen dank pepeluv

dense magnet
#

schick mal wo du das aufrufst

#

Woher hast du hint.values und answer.values?

mystic sentinel
#

wolt meine py datei in eine exe machen gebe auto-py-to-exe ein windows sagt bedrohung gefunden jetzt ich mach task-Manager auf cpu von 80 aufeinmal auf 10 nice

fluid leaf
midnight ermine
fluid leaf
#

achso ok!

tender horizon
#

wie kann ich einen rolle in einer direknachricht makieren?

solid ingot
#

gar nicht denke ich

tender horizon
#

mh ok

umbral goblet
#

ey wenn ich einen socket server habe mit einem thread pro client der verbunden ist. isr es schlau die daten in einer datei zu speichern und diese in allen threads auszulesen und den clients zu schicken oder sollte man das anders machen? bzw führt das zu problemen

#

oder sind queues besser

old ore
fluid leaf
#

Es muss ein str sein

old ore
fluid leaf
#

Was benutzt du?

#

Welche IDE?

old ore
fluid leaf
#

Drück mal im Code strg + f und dann gib da int ein

old ore
old ore
tawdry leaf
#

Strg c und k auch guter Shortcut

limber pewter
#

hi

#

kann mir vlt jemand sagen wie ich auf den Name Input vom Modal zugreifen kann

#

in der callback methode

tender horizon
#

Wie kann ich alle Nachrichten aus einem Channel zugreifen?

limber pewter
#

geilo

#

danke dir

#

frohe weihnachten btw ❤️

solid ingot
#

frohe Weihnachten peepoheart

solid ingot
tender horizon
#

Ok

tender horizon
vivid sky
floral monolith
vivid sky
#

was hat das damit zutuhen du bist dev und kaufst codes bei entchen

#

ohh gott

#

okm

#

srry

vivid sky
#

geil

floral monolith
vivid sky
#
class MyModal(discord.ui.Modal):
    def __init__(self, *args, **kwargs) -> None:
        super().__init__(*args, **kwargs)

        self.add_item(discord.ui.InputText(label="authorizationCode - Example: aabbccddeeff11223344556677889900", style=discord.InputTextStyle.long))
#

wow erstes mal mit modals gearbeitet.

visual swallow
#

Kann jemand mir helfen?

#

Wäre mit Call am besten

tender horizon
visual swallow
#

Der Code ist komisch und verwirrend

tender horizon
#

Wenn du Kurz wartest komme ich Talk

wise stone
#

wie geht nochmal github copilot xD?

#

also wo muss man nochmal drücken damit das vorgeschlagener code auch kommt?

#

ah habs schon xD

#

schneller tippen xD

fluid leaf
# vivid sky

Du musst auch anstatt MyModal dein modal name machen nh

fluid leaf
tender horizon
#

wie kann ich einen nachricht in einem on_ready event bearbeiten?

solid ingot
#

erst musst du die Nachricht bekommen

tender horizon
#

message = self.bot.get_message(1056539229557104740)

tender horizon
visual swallow
dense magnet
tawdry leaf
#

Weiß jemand wie man bei discord.py einen Change Profil Bild command machen kann mit slash cmds

fluid leaf
#

Weiß nd mal wie es in pycord geht

tender horizon
#

kann ich in einem embed zwischen 2 zeilen eine zeile lehr lassen?

tender horizon
#

ja ich hab nix gefunden dess wgen frag ich ja

indigo sapphire
#

Denke einfach mit /n

#

\n

tender horizon
#

ne leider nicht

#

bei add_field

urban glen
#

was ist hier der datentyp von ctx?

@slash_command()
async def test(self, ctx):
  ctx.respond("Test erfolgreich!");
fluid leaf
#
  1. Warum ist da ein ;
  2. await ctx.respond()
fluid leaf
urban glen
urban glen
wise stone
#

@tender horizon mach \u200

#

dann kommt eine leere Zeile

fluid leaf
#

0.0

tender horizon
tender horizon
solid ingot
urban glen
#

ok

solid ingot
#

das kannst du immer mit print(type(ctx)) rausfinden

urban glen
#

aso

wise stone
tender horizon
#

bei dir kommt fehler

#

und bei dem andern kommt nur keine leer zeile

fluid leaf
#

Ich hab noch eine alternative

#

text\n ⠀ ⠀\nanderer text
#

Das sind leere zeichen

#

also müsste das gehen

tender horizon
#

ich maches es jetzt anders

burnt prairieBOT
#
Level Up!

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

vivid sky
#

warum findet er die file nicht?

fluid leaf
#

Wie sieht deine ticket_setups.json aus?

#

Ist die json datei in einem Ordner?

#

werden deine cogs geladen?

vivid sky
vivid sky
vivid sky
fluid leaf
#

Hast du etwas mal printen lassen?

vivid sky
fluid leaf
#

Hast du etwas mal printen lassen?

#
@commands.cog.listener
async def on_ready(self, ctx):
  print("test")
#

als beispiel

#

oder einfach nur print("test")

vivid sky
#

es wird doch garnicht gehen weil immer dieser fehler kommt

tender horizon
#

wie kann ich gucken ob wer eine reaction hinzugefügt hat?

tawdry leaf
#

schreibe da einfach was in der discord embed farbe 👀

tender horizon
tawdry leaf
#

hast du es hin bekommen oder wie

tawdry leaf
fluid leaf
tawdry leaf
fluid leaf
#

idk

#

bei mir musste es nd im selben ordner sein

tawdry leaf
#

ja wenn

#

der andere ordner in dem ordner von der datei ist

dense magnet
fluid leaf
#

Ja

tawdry leaf
#

meine ich damit

fluid leaf
#

und so ist das bei mir

tender horizon
umbral goblet
#

mit dem on reaction event oder so heisst es glaub

tender horizon
#
@commands.Cog.listener()
    async def on_reaction_add(self, reaction, user):
        print("test")
        #if reaction.message.id == 1056539229557104740:
         #   print("jea")```
so  hab ich es aber funktioniert nicht
fluid leaf
#
message =  await channel.fetch_message(ID)
#

idk ob du noch channel festlegen musst

tawdry leaf
burnt prairieBOT
#
Level Up!

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

tawdry leaf
tender horizon
tawdry leaf
#

direkt als erstes 🤔

tawdry leaf
fluid leaf
#
@commands.Cog.listener()
    async def on_reaction_add(self, reaction, user):
        message =  await channel.fetch_message(ID)
        if message == ID:
          #lol
        else:
          return
         
#

:D

#

So müsste das sein

tawdry leaf
#

aso nvm anders thema wäre des :L

tender horizon
#

die messege hab ich ja durch reaktion.message

fluid leaf
#

ah ok

#

hast du schonmal in den docs geschaut

tender horizon
#

aber nicht mal der erste print wird geprinted

fluid leaf
#

maybe onReactionAdd

tender horizon
#

ne inb den docs steht on_reaction_add

fluid leaf
#

on_reaction_add(reaction, user)

#

ah hast du schon

tender horizon
#

ja

fluid leaf
#

eh

tender horizon
#

sonst ne idee?

fluid leaf
#

tender horizon
#

@solid ingot ?

silk gulch
#

Morgen zusammen,
wie mache ich denn eine Abfrage, ob ein Channel mit einem bestimmten Namen auf der Guild schon existiert?

Einen schönen zweiten Weihnachtsfeiertag wünsche ich euch. 🎄

tender horizon
tender horizon
#

Hast du es in einem Splash Befehl?

tender horizon
silk gulch
tender horizon
#

for channel in ctx.guild.channels:

tender horizon
silk gulch
#

Merci.

old ore
#

wie kann ich es machen das der Button nach dem Drauf drücken nicht diese fehler meldung kommt und das am ende man den Button deaktiviert . Normalerweiße fünktoniert das ja nicht weil es dann 2x "interaction.respnse" heißt

blazing pilot
#

Du kannst den Butto auf ein Klick reduzieren und das er nach einem Klick verschwindet oder nicht mehr erreichbar ist

#

Was das mit der Fehlermeldung auf sich hat keine Ahnung, versteh ich nicht

#

Am besten mal ein bild oder so rein schicken von deinem Code

wise stone
old ore
wise stone
#

await interaction.message.edit(view=self)

#

und dann noch darüber

#

button.disabled = True

old ore
#

OK danke

tender horizon
#

kann ich mit einem bot eine Watchparty starten? oder eine bildschirm übertragung wo ich ein viedeo abspiele

fluid leaf
#

Bildschirm geht nicht aber Activity

tender horizon
#

also kann der bot ne watchparty st5arten?

tender horizon
wise stone
#

jeah schicke dir gleich ben Beispiel code

burnt prairieBOT
#
Level Up!

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

Du hast <@&1024276907136663562> erhalten!

tender horizon
wise stone
#

voice activity

#

YouTube und co..

#

alles gelistet ist hier #1056962258955145337

tender horizon
#

ich will auf meinem server ein kino machen wo dann immer automatisch viedeos abgespielt werden

wise stone
#

ne geht nicht was du meinst

#

und technisch ebenso

tender horizon
#

achso schade

serene ermine
tender horizon
#

weißt du auch wie?

serene ermine
tender horizon
#

schon einbischen

dense magnet
serene ermine
#

Du musst eine user Account nutzen welchen du dann mithilfe eines Python scripts bottest (self bot) und den kannst du alles machen lassen was du willst

serene ermine
solid ingot
urban glen
#

Wie Kann ich ein bei einem Embed ein Button machen und dann kommt ein Text?

cloud cedar
#

Was ist bei option (discord.py) die möglichkeit für normalen Text?
Discord.ApplicationContext geht irgendwie nich

cloud cedar
urban glen
cloud cedar
#

Naja eigentlich würd ich ja jetzt sagen learn the basics

#

aber ich schau mal was ich tun kann

#

Weißt du wie man buttons macht?

urban glen
#

Kann mir jemand eine Button class machen und dann die class in einem view dem embed hinzufügen?

urban glen
#

Ich verstehe die Tutorials nicht

tender horizon
#

Du musst es erstmal verstehen wenn wir dir alles coden lernst du nichts

cloud cedar
floral monolith
cloud cedar
#

dafür keks

burnt prairieBOT
#
Keks

@cloud cedar hat @floral monolith einen Keks geschenkt!

@floral monolith hat jetzt 7110 Kekse keks

tender horizon
cloud cedar
tender horizon
#

Weil die Tutorials in Pycord sind

cloud cedar
#

Oh lol

#

naja kriegt man trotzdem hin

#

ich nutz discord.py, halt einfach paar argumente vertauschen

tender horizon
#

Ja

visual swallow
#

Jemand Talk?

wise stone
lofty haven
#
import discord
from discord.ext import commands
import asyncio
import datetime

class werbungmsg(commands.Cog):
    def __init__(self, client):
        self.client = client

    # Andere Methoden ...

    async def send_scheduled_message_task(self):
        await self.client.wait_until_ready()
        while not self.client.is_closed():
            # Sende eine geplante Nachricht in einen bestimmten Text-Kanal
            await self.send_scheduled_message()
            # Warte 30 Sekunden, bevor die nächste geplante Nachricht gesendet wird
            await asyncio.sleep(30)

    async def send_scheduled_message(self):
        # Erstelle die Nachricht
        embed = discord.Embed(title="Geplante Nachricht", description="Dies ist eine geplante Nachricht.", color=discord.Color.blue())
        # Setze den Timestamp auf 30 Sekunden in der Zukunft
        embed.timestamp = datetime.datetime.now() + datetime.timedelta(seconds=30)
        # Sende die Nachricht in einen bestimmten Text-Kanal
        channel = self.client.get_channel(1057031556541202443)
        await channel.send(embed=embed)

    @commands.Cog.listener()
    async def on_ready(self):
        # Starte den Task beim Hochfahren des Bots
        self.client.loop.create_task(self.send_scheduled_message_task())


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

wieso wird die nachricht nicht veröffentlicht

solid ingot
#

nicht gesendet oder nicht veröffentlicht?

lofty haven
#

nicht veröffentlicht

#

gesendet wirds alles klappt

solid ingot
#

wo ist denn der code wo du die nachricht veröffentlichen willst?

#

nach channel.send() kommt bei deinem code doch gar nichts mehr

lofty haven
#

ja mir ist gradauch aufgefallen dass ich es gar nicht veröffentliche

#

weißt du vlt wie das geht?

solid ingot
#
msg = await channel.send(embed=embed)
await msg.publish()
lofty haven
#

ach danke man ich probiers gleich ich bin manchmal echt so dumm XD

#

es geht danke

silk gulch
#

Ich möchte im Bot einbauen, dass man keine doppelten Tickets erstellen kann. Hier verwende ich folgenden Code:

ticket_channel_exists = False
for channel in interaction.guild.text_channels:
  if channel.name == 'ticket-{interaction.user.name}':
    ticket_channel_exists = True
    break

if ticket_channel_exists:
  # Textchannel existiert
else:
  # Existiert nicht

Leider erstellt er dennoch immer den Channel und er scheint die Abfrage irgendwie komplett zu ignorieren.
Weiß da jemand weiter?

urban glen
#

wegen sonderzeichen im namen die so in einem Channel Namen nicht verwendbar sind, wird die abfrage ignoriert, da es nicht 1-1 der gleiche name ist

#

sollte es aber ein ganz normaler name sein, keine ahnung wieso das nicht funktionieren sollte

silk gulch
#

Ist ganz normal der Name. So wie ich es stehen habe.

urban glen
#

hm

#

das weiss ich dann leider nicht tut mir leid

silk gulch
#

Aber ich sehe den Fehler glaube gerade.

solid ingot
#

du musst das als f string machen

silk gulch
#

fehlt das f

urban glen
#

ah, jzt sehe ich es auch 😂

indigo sapphire
#

Hey weiss jemand wie ich blob Bilder aus SQlite verschicken kann von SQlite?

#

Oder MySQL?

#

zB in einem Embed?

solid ingot
#

8ich würde dir empfehlen die URL vom bild zu benutzen

tawdry leaf
#

Weiß jemand wie man bei discord.py einen Change Profil Bild command machen kann mit slash

silk gulch
indigo sapphire
cloud cedar
#

Wie kann ich denn mit discord.py Option() einfach nen Text-Input machen
Also das man reinschreiben kann was man will

silk gulch
#
Option(str, description='Deine Beschreibung')```
cloud cedar
#

Danke

burnt prairieBOT
#
Keks

@cloud cedar hat @silk gulch einen Keks geschenkt!

@silk gulch hat jetzt 2140 Kekse keks

tawdry leaf
#

Kenne Bots die des können

serene ermine
serene ermine
tawdry leaf
serene ermine
tawdry leaf
#

Mit attachment senden und dann lesen

serene ermine
tawdry leaf
#

Später

tender horizon
#
Ignoring exception in command knast:
Traceback (most recent call last):
  File "C:\Python310\lib\site-packages\discord\commands\core.py", line 124, in wrapped
    ret = await coro(arg)
  File "C:\Python310\lib\site-packages\discord\commands\core.py", line 970, in _invoke
    await self.callback(self.cog, ctx, **kwargs)
  File "e:\bot\cogs\knast.py", line 15, in knast
    await verknacken(user, ctx.guild)
  File "e:\bot\botmodule.py", line 4, in verknacken
    await db.execute(
  File "C:\Python310\lib\site-packages\aiosqlite\core.py", line 184, in execute
    cursor = await self._execute(self._conn.execute, sql, parameters)
  File "C:\Python310\lib\site-packages\aiosqlite\core.py", line 129, in _execute
    return await future
  File "C:\Python310\lib\site-packages\aiosqlite\core.py", line 102, in run
    result = function()
sqlite3.InterfaceError: Error binding parameter 0 - probably unsupported type.

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

Traceback (most recent call last):
  File "C:\Python310\lib\site-packages\discord\bot.py", line 1088, in invoke_application_command
    await ctx.command.invoke(ctx)
  File "C:\Python310\lib\site-packages\discord\commands\core.py", line 374, in invoke
    await injected(ctx)
  File "C:\Python310\lib\site-packages\discord\commands\core.py", line 132, in wrapped
    raise ApplicationCommandInvokeError(exc) from exc
discord.errors.ApplicationCommandInvokeError: Application Command raised an exception: InterfaceError: Error binding parameter 0 - probably unsupported type.

#
import aiosqlite
async def verknacken(user, guild):
    async with aiosqlite.connect("user_info.db") as db:
            await db.execute(
                "UPDATE warns SET rolebeforknast = ? WHERE user_id = ?", (user.roles, user.id,))
            await db.commit()
    async with aiosqlite.connect("user_info.db") as db:
        await db.execute(
            "UPDATE warns SET inknast = ? WHERE user_id = ?", ("ja", user.id,))
        await db.commit()
    for role in user.roles:
        if role.id == 1055130269268586568:
            pass
        else:
            rrole = guild.get_role(role.id)
            await user.remove_roles(rrole)
    knast = guild.get_role(1057018278305878036)
    await user.add_roles(knast)```
#

Irgend wer ne idee wo durch der fehler entsteht?

solid ingot
#

user.roles ist eine liste mit role objekten, die kannst du nicht einfach so in die datenbank schreiben

tender horizon
#

wie kann ich die dann einfügen?

solid ingot
#

kommt drauf an wie du das in deiner Datenbank gemacht hast. auf die ID einer Rolle greifst du mit Rolle.id zu

tender horizon
#

ja dann die id aus der user.roles

solid ingot
#

user.roles sind alle Rollen die der User hat

#

nicht nur eine

tender horizon
#

ja und die müssen in eine datenbank

solid ingot
#

alle IDs in ein Feld?

tender horizon
#

ja in einer liste

#

habs geschaft

silk gulch
#

Wüsste jemand wie ich bei wavelink den aktuellen Song skippen kann?

solid ingot
#

weiß nicht, versuchs vlt mal ohne das ./

wise stone
#

sollte gehen du bre

#

bei mir geht es auch so

#

doch 😂?

solid ingot
dense magnet
#

uh

wise stone
tawdry leaf
#

Einfach mal alles neu installieren

serene ermine
#

Ignorier den Error

#

Lass den Punkt und den / weg

#

Also das hier: ./

#

Existiert der Ordner denn überhaupt 🧐

#

Hab das rechte Bild noch garnicht angeschaut :d

#

Der kann wahrscheinlich nicht auf onedrive zugreifen Probier mal ob es klappt wenn du alles verschiebst

wise stone
#

@urban glen brauchste noch Hilfe?

wise stone
#

jo wie abgemacht 13 uhr

cloud cedar
#

Welche grafischen sachen gibts denn in discord.py noch

#

also sowas wie Buttons oder selects

wise stone
#

modals, App commands

#

slash commmands

cloud cedar
#

ja modals hab ich auch schon
was sind app commands?

wise stone
#

bei desigj technisch halt easy_pil

wise stone
cloud cedar
cloud cedar
#

Und - mein größtes Problem: Ich hab nie ideen was ich coden könnt
gibts irgendwo online ideen oder so

tawdry leaf
cloud cedar
#

wie kann ich eigentlich auf den Namen, erstellungsdatum usw vom Server zugreifen? Gibts da ne dokumentation

tawdry leaf
#

Ja

fluid leaf
#

👍

tawdry leaf
cloud cedar
tawdry leaf
#

Eig immer ctx.guild dann kommt da eine Auswahl 😅

fluid leaf
#

Für Erstellungsdatum musst du was anders machen

tawdry leaf
fluid leaf
#

echt?

#

AH STIMMT

tawdry leaf
#

ctx.guild.created_at

fluid leaf
#

nene ist ctx.Guild.created

#

:>

cloud cedar
#

Danke euch, cool das mein editor die sachen gleich vorschlägt

burnt prairieBOT
#
Level Up!

Herzlichen Glückwunsch @cloud cedar, du bist jetzt Level 9 🎉

tawdry leaf
#

Ja und wenn mit timestamp dann noch bisschen Verschönerung 😂😅😆😆😅

cloud cedar
#

sekunde

cloud cedar
burnt prairieBOT
#
Keks

@cloud cedar hat @tawdry leaf einen Keks geschenkt!

@tawdry leaf hat jetzt 1661 Kekse keks

#
Keks

@cloud cedar hat @fluid leaf einen Keks geschenkt!

@fluid leaf hat jetzt 1815 Kekse keks

tawdry leaf
solid ingot
floral monolith
cloud cedar
tawdry leaf
cloud cedar
#

oof wie mach ich das schön

#

ich könnt ja auch als thumbnail die url vom servericon nehmen

cloud cedar
solid ingot
#

ne ich weiß aber wie man bei den docs richtig sachen sucht :D

cloud cedar
#

Wie krieg ich das Server-Icon

solid ingot
cloud cedar
#

heißt das jetzt icon ja oder

solid ingot
#

ja

#

probiers aus :D

cloud cedar
#

hm

#

brauch ich dahinter noch nen .url? weil das nich klappt

solid ingot
#

ja

cloud cedar
#

oof discord.errors.ApplicationCommandInvokeError: Application Command raised an exception: AttributeError: 'NoneType' object has no attribute 'url'
bei embed.set_thumbnail(url=ctx.guild.icon.url)

solid ingot
#

hat dein server denn überhauot ein icon?

cloud cedar
#

geht trotzdem nich

urban glen
#

was ist der error

urban glen
cloud cedar
#

Danke, geht jetzt

cloud cedar
solid ingot
cloud cedar
wise stone
tawdry leaf
tawdry leaf
tawdry leaf
#

Ich sende dir gleich mal wie ich es gemacht habe

cloud cedar
tawdry leaf
#

😦

#
                embed.add_field(name='📆 Servererstellung', value=f'<t:{int(ctx.guild.created_at.timestamp())}:R>',

So habe ich es xD

solid ingot
#

voll uncool

#

format_dt ist der shit

tawdry leaf
#

nööö

solid ingot
#

eyyyy

#

gemein

tawdry leaf
#

kenne des aber finde es zu einfach

#

😄

#

bei emoji info musste ich des glaube usen

solid ingot
tawdry leaf
#

nee lass ma 😦

cloud cedar
burnt prairieBOT
#
Keks

@cloud cedar hat @tawdry leaf einen Keks geschenkt!

@tawdry leaf hat jetzt 1662 Kekse keks

#
Keks

@cloud cedar hat @tawdry leaf einen Keks geschenkt!

@tawdry leaf hat jetzt 1663 Kekse keks

tawdry leaf
cloud cedar
#

Klappt sogar

burnt prairieBOT
#
Keks

@cloud cedar hat @tawdry leaf einen Keks geschenkt!

@tawdry leaf hat jetzt 1664 Kekse keks

cloud cedar
#

noch einer

cloud cedar
#

wie kann ich mit ctx.guild die anzahl der kanäle sehen

thick haven
cloud cedar
#

sprach und textkanäle

thick haven
#

channels = len(ctx.guild.text_channels) + len(ctx.guild.voice_channels)

solid ingot
#

oder guild.channels

cloud cedar
solid ingot
#

naja das ist halt eine liste von channels

#

für die länge kannst du len() benutzen wie partymann geschrieben hat

thick haven
#

Weiss jmd ob das was hier unten steht genau so mit disocrd exeption funkt also z.b. anstatt commands.CommandOnCooldown das commands.ForBidden?

async def on_application_command_error(ctx, error):
    if isinstance(error, commands.CommandOnCooldown):
        print("Command ist im Cooldown")```
solid ingot
#

wie meinst du das genau? ob es auch mit try except geht?

thick haven
urban glen
#

schick mal den code

urban glen
#

digga ich schreibe ihn jzt ned ab schick den code

#

ich gucke in VsC nach wieso es ned funktioniert

thick haven
#

Kann mir jmd sagen was der discord Forbidden error amcht also wenn er auslöst

fluid leaf
#

Import discord?

tawdry leaf
#

wenn ich des nicht verwechsle

solid ingot
#

ja stimmt

tawdry leaf
tawdry leaf
#

ok :I

cloud cedar
#

aber wirklich thx

#

deswegen

burnt prairieBOT
#
Keks

@cloud cedar hat @tawdry leaf einen Keks geschenkt!

@tawdry leaf hat jetzt 1665 Kekse keks

tawdry leaf
tawdry leaf
#

:I

#

der import

tawdry leaf
#

ok

fluid leaf
#

Wie frag ich ab ob im message.content etwas drin ist?

#

oder mach ich das in einer for schleife

tawdry leaf
#

#

if "wasdrinsein soll" in message.content:

#

oder du benutzt statt "wasdrinseinsoll" eine zuvor definerte Liste die du dann abfragst oder eine json datei

fluid leaf
#

kann ich das machen?

pings = ["@everyone", "@here"]

for pings in message.content:
  return
umbral goblet
#

nein es steht nicht @ everyone in der nachricht sondern @stable osprey also die id stimmt nicht es ist die guild id glaube ich

tawdry leaf
#

du kannst die variable für everyone abfragen

fluid leaf
#

also @everyone nicht sondern <@id>

umbral goblet
#

jup

fluid leaf
#

kk

umbral goblet
#

was die id von here ist keine ahnung must du googeln

fluid leaf
#

jeder server hat andere

#

ist my problem

#

aber müsste auch gehen mit @everyone

tawdry leaf
#

wieso nicht einf die variable 😦

fluid leaf
#

ich guck mal nach

fluid leaf
tawdry leaf
#

defaultrole

#

ist die variable für everyone und here

#

meines wissens

fluid leaf
#

also wie mach ich das?

tawdry leaf
#

Weil here macht des selbe wie everyone

fluid leaf
#

also

for defaultrole in message.content
#

oder wie

tawdry leaf
#

warte

fluid leaf
#

yo

tawdry leaf
#

müsste default_role sein

#

finde grad nix am laptop

fluid leaf
#
for default_role in message.content

???

umbral goblet
#

wie gesagt guild id ist @ everyone ping

fluid leaf
#

???

#

nein

#

und du kannst @everyone machen und musst nd @ everyone machen

floral monolith
#

<@&1020464591584641044>

#

aber jz hab ich tibue99 gepingt

tawdry leaf
#

xD

#

du bist der Wirt

fluid leaf
#

ja man kann @everyone ohne das jemand gepingt wird

#

@fluid leaf

#

ez

tawdry leaf
#

supa

fluid leaf
#

ja nh

tawdry leaf
#

könnte aber auch sowas sein

burnt prairieBOT
#
Level Up!

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

fluid leaf
#

es geht mit

if "@everyone" in message.content:
  print("lol")
tawdry leaf
#

joa solte

#

mach doch eine liste mit @here und e ping

fluid leaf
#

also


liste = ["@everyone", "@here"]

if liste in message.content:
  print("lol")
```?
#

Ja nh?

#
    for cog in interaction.bot.cogs:
AttributeError: 'Interaction' object has no attribute 'bot'
``` ![pepecry](https://cdn.discordapp.com/emojis/1020415791620960327.webp?size=128 "pepecry")
#

was muss ich denn machen royalcry

urban glen
#

Also interaction.client.cogs

wise stone
#

oderr

urban glen
#

Nein

wise stone
#

self vor bot

urban glen
#

Pfuii

fluid leaf
#

hab ich auch schon probiert

urban glen
# wise stone self vor bot

Wenns nh neue Button Klasse is oder so, dann gibt es kein self.bot
Dann müsste man den Bot überschreiben von klasse zu klasse

urban glen
fluid leaf
#

aber nächster fehler

#
    cmds.add_field(name=cog, value="• " + "\n• ".join([command.name for command in interaction.client.get_cog(cog).get_commands()]), inline=False)
UnboundLocalError: local variable 'cmds' referenced before assignment
wise stone
#

hab nur nen konkreten Vorschlag gesagt da ich den Code vom Herr @fluid leaf nicht weiß

wise stone
wise stone
#

also das cmds = discord...

fluid leaf
#
if interaction.custom_id == "button":
            cmds = discord.Embed(
            title="IN ARBEIT!",
            description="IN ARBEIT!",
            color=0x545EE2
        )

        for cog in interaction.client.cogs:
            cmds.add_field(name=cog, value="• " + "\n• ".join([command.name for command in interaction.client.get_cog(cog).get_commands()]), inline=False)
#

ich hab es glaube ic

urban glen
#

Oder irgendwie so

urban glen
fluid leaf
#

mach ich ja

urban glen
#

Also über if interaction.custom_id …

fluid leaf
#

es war was anderes

wise stone
#

ja wollte ich sagen

#

falsch eingerückt

#

xd

fluid leaf
#

ne

#

das geht wie es jetzt ist

#
@discord.ui.button(
    label="Commands",
    style=discord.ButtonStyle.grey,
    emoji="🧾",
    custom_id="cmds")
    async def button_callback(self, button: discord.ui.Button, interaction: discord.Interaction):
        if interaction.custom_id == "cmds":
            cmds = discord.Embed(
            title="IN ARBEIT!",
            description="IN ARBEIT!",
            color=0x545EE2
        )

        for cog in interaction.client.cogs:
            cmds.add_field(name=cog, value="• " + "\n• ".join([command.name for command in interaction.client.get_cog(cog).get_commands()]), inline=False)
urban glen
#

Wofür überhaupt die if abfrage wegen der Custom Id?

wise stone
fluid leaf
#

idk

fluid leaf
wise stone
#

da ist das embed in der gleiche einrückung wie der for schleife

urban glen
wise stone
urban glen
#

Am handy sieht man es ja nd

#

#TschechienNoPC

wise stone
#

waagerecht

#

dann sieht man es

urban glen
wise stone
#

f

fluid leaf
#

Maybe deswegen

umbral goblet
#

warum kannst du dich everyone nennen?

urban glen
umbral goblet
#

nein nickname geht aber username nicht

urban glen
fluid leaf
#

Yazio uff

urban glen
# fluid leaf Yazio uff

Klar urteile über Menschen weil sie nh App auf dem Handy haben die dir vielleicht nicht gefällt oder so

#

._.

thick haven
#

Weiss jmd, wie ich schauen kann ob ein user im timeout is

solid ingot
#

ja klar, du musst nur @devout orchid einladen und /userinfo benutzen peeposhy

solid ingot
tawdry leaf
#

wow

#

Lese mal deine Nachrichten

urban glen
wise stone
#

wie geht nochmal das der bot seine eigene nachricht nach absenden die anspinnt?

serene ermine
#

Anspinnt = Anpinnt?

wise stone
serene ermine
#

Message = discord.Message

wise stone
serene ermine
wise stone
#

hab schon

mystic sentinel
#

wie macht man das das angeziet wird auf wie vieln server er ist oder auf wie viele leute er guckt

solid ingot
#

die anzahl der server kannst du mit len(bot.guilds) bekommen

wise stone
#

mit welchen Programm kann man nochmal sehen was in einer db steht

#

und für sqlite3, aiosqlite?

solid ingot
wise stone
#

kk

umbral goblet
#

Suche einfach nach sqlite

umbral goblet
#

Oder was du halt brauchst

urban glen
#

Oder in VSC mit ner Extension

umbral goblet
wise stone
#

die frage wurde längst beantwortet von timo...

umbral goblet
urban glen
serene ermine
serene ermine
wise stone
#

les Mal Kontext ._.

#

wurde schon 5x Mal beantwortet

serene ermine
wise stone
#

xdd

lofty haven
#
# Sende das Embed an den Channel
    table_image = Image.open("../modules/table.png")
    table_image.show()
    card_image = Image.open("../modules/cards/2C.png")
    table_image.paste(card_image, (100, 100))
    table_image.show()
    message = await ctx.send(embed=embed)
    await asyncio.sleep(3)

    # Aktualisiere das Embed im Channel
    await message.edit(embed=embed)```
#

kann mir bitte jemand helfen wie ich das image aktualisiere

urban glen
#

du veränderst das embed garnicht

#

also schickst du das embed, dann veränderst du die nachricht aber mit dem gleichem embed: es hat sich nichts verändert

serene ermine
burnt prairieBOT
#
Level Up!

Herzlichen Glückwunsch @serene ermine, du bist jetzt Level 10 🎉

Du hast <@&1032921984612433952> erhalten!

cloud cedar
#

Wie kann ich eigentlich nen userinfo cmd machen, bei dem ich nicht nur mich selbst anzeigen lass sondern auch einen anderen user

lofty haven
#

ich paste auf das bild noch ein bild

#

aber wie aktualisiere ich das

#

ich mach table_image.paste und das funktioniert ja auch alles aber wie bekomme ich dann das neue bild rein automatisch

#

um vlt auch den sinn zu erklären es soll ein blackjackspiel werden und ich möchte auf einen tisch schritt für schritt die karten drauf legen

paper iris
#

können wir call machen um das zu klären ich versteh nicht ganz

paper iris
wise stone
paper iris
lofty haven
paper iris
#

also variablen name

lofty haven
#

embed

paper iris
#

wo veränderst du das????

lofty haven
#

bis her nirgends

#

ich will ja aber das image aktualisieren

paper iris
#

ich dachte du änderst das bild

paper iris
lofty haven
#

ja das war ja meine frage wie ich das mache

#

ich hab das table_image am anfang

#

dann sende ich das embed

#

dann paste ich auf das image ein anderes

paper iris
#

du musst das bild vom embed umändern

#

sollen dann 2 bilder da sein oder nur 1?

paper iris
#

ich kann kein blackjack ka was das ist

lofty haven
#

warte

#

das ist der tisch

paper iris
#

ja?

lofty haven
#

und so soll der tisch am ende aussehen

#

und alle karten sollen schritt für schritt drauf

#

also ich hab das embed schicke es mit dem tisch ohne alles

paper iris
#

aso

#

und dann tisch mit 1er karte, 2 karten, 3 karten usw... richtig?

cloud cedar
lofty haven
#

und dann kommt zum beispiel nach einer sekunde die erste karte und dann nach einer sekunde die 2 und das alles im selben embed und automatisch

#

also die karte wird dann random gewählt

#

und soll drauf gesetzt werden

paper iris
burnt prairieBOT
#
Level Up!

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

Du hast <@&1024276691205496872> erhalten!