#Allgemeine Hilfe

1 messages · Page 9 of 1

serene ermine
#

Dann bezweifle ich das du nen bot Hosten kannst

paper iris
#

so unlustig vallah

paper iris
serene ermine
serene ermine
urban glen
#

hab

tawdry leaf
#

stark

#

@urban glen soll ich dir trz mal meins senden 😄

urban glen
#

Wenn ich halt im Select Menü Information auswähle dann bearbeitetet sich das Embed wie gewollt, wenn ich aber im Select Menü Fun oder Moderation auswähle wird das Embed nicht bearbeitet...

urban glen
tawdry leaf
urban glen
tawdry leaf
#

okay

#

🙂

urban glen
#

direkt im Help Command als Button gecodet weil es praktisch ist

#

aber Danke :)

tawdry leaf
urban glen
#

ey

tawdry leaf
#

meins hätte dir auch nix gebracht weil des nur ein cmd wäre 😅

urban glen
#

wäre es möglich mithilfe von json's ein levelsystem zu coden?

urban glen
#

Wie macht man 2. Buttons in eine Klasse?

solid ingot
#

das musst du dann in einer view klasse machen

serene ermine
urban glen
# solid ingot das musst du dann in einer view klasse machen

so geht es ja nicht:

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

    @discord.ui.button(label="Fehler melden", style=discord.ButtonStyle.red)
    async def button_callback1(self, button, interaction):
        await interaction.response.send_modal(Bug_Modal())

    @discord.ui.button(label="Idee einreichen", style=discord.ButtonStyle.green)
    async def button_callback2(self, button, interaction):
        await interaction.response.send_modal(Idee_Modal())
#

Dann wird nur der erste Button angezeigt

#

der zweite Button ist halt nur im Code sichtbar

solid ingot
#

doch so gehts

urban glen
solid ingot
#

loser

urban glen
#

junge bei mir geht fr nichts

#

pillow ging auch nicht

serene ermine
urban glen
#

und jetzt gehen diese buttons auch nicht

tender horizon
#

wie kann ich mit pillow text auf ein bild schreiben?

thick haven
#

mit dem .text arg

tender horizon
wise stone
#

docs einfach googlen da wirds es Recht gut eigentlich erklärt

rustic valley
#

Wie kann man bei @discord.default_permissions 2 mögliche **Permissions ** machen, so dass man nur eine von den 2 braucht?

#

@discord.default_permissions(administrator=True or kick_members=True)
Problem ist or

silk gulch
rustic valley
#

Achso, okay, danke

urban glen
#

Kann man die Farbe von dem Banner bei den bots irgendwie ändern?

solid ingot
#

nur indem man das profilbild des bots ändert

urban glen
#

Danke

silk gulch
#

Weiß jemand warum ich bei diesem Code:

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

    @commands.Cog.listener()
    async def on_message(
            self,
            message
    ):
        current = MongoAPI.get('aenoxic_bot', 'discord_games', 'game', 'count_to_infinity', 'count')
        result = str(current + 1)

        print(f'Erhalten: {message.content} || Erwartet: {result}')
        if message.channel.id == 1051099605959442513:
            if message.author.bot:
                return

            if message.content == result:
                MongoAPI.update('aenoxic_bot', 'discord_games', 'game', 'count_to_infinity', 'count', current + 1)
            else:
                print("Falsche Zahl!")


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

immer geprinted bekomme: `Erhalten:  || Erwartet: 2` ??
#

message.content wirft da irgendwie nix aus.

solid ingot
#

hast du den message content intent aktiviert?

silk gulch
solid ingot
#

im code und im developer portal

silk gulch
#

Danke, das war der Fehler.

solid ingot
#

super

silk gulch
#

Danke dir. 🙂

#

Achso und noch was:

Ist es möglich auf einer response-Nachricht des Bots eine add_reaction zu machen?

solid ingot
#

ja das geht

silk gulch
#

Wie? 😄

solid ingot
#

so müsste das gehen

silk gulch
solid ingot
#

Das ist für dich wahrscheinlich nicht mehr relevant, aber ich habe gerade herausgefunden, dass es doch möglich ist, versteckte Infos in Choices einzubauen. Ich bin selbst verblüfft

vivid sky
#

fortnite

silk gulch
#
await message.add_reaction(emoji=":+1:")```
iron apex
silk gulch
crystal star
silk gulch
crystal star
#

ja

silk gulch
crystal star
#

format

silk gulch
crystal star
#

kein problem

silk gulch
# crystal star kein problem
await message.add_reaction(emoji="![infinitely_check](https://cdn.discordapp.com/emojis/1050534571168497725.webp?size=128 "infinitely_check")")```

Unknown emoji
crystal star
#

mach mal ohne <>

#

und :

silk gulch
crystal star
#

1 sekunde

silk gulch
#

Keine Hektik.

crystal star
silk gulch
crystal star
silk gulch
#

Teste gleich mal..

tawdry leaf
#

also bot muss auf den server vom emoji sein

silk gulch
#

Hat geklappt. Danke euch zweien.

left current
#

Moin zusammen,

await db.execute(
                        "INSERT OR IGNORE INTO users (user_id) VALUES (?)", (interaction.user.id,)
                                            )w

damit schreibe ich ihn meine Datenbank, das funktioniert aber die user_id ist jedes mal anders beim drücken des Buttons. Kann mir jemand sagen sagen wieso ? Sollte die user.id nicht immer die selbe sein ?

burnt prairieBOT
#
Level Up!

Herzlichen Glückwunsch @left current, du bist jetzt Level 2 🎉

Du hast <@&1042123300970696705> erhalten!

solid ingot
#

hm, die User ID eines User bleibt definitiv immer gleich

#

beachte, dass jeder User immer nur einmal eingefügt werden kann. wenn du also das insert statement ausführst, obwohl der User schon in der DB ist, passiert nichts

left current
#

Das steht in meiner Callback funktion.

        async with aiosqlite.connect("plantage.db") as db:
            await db.execute(
                        "INSERT OR IGNORE INTO users (user_id) VALUES (?)", (interaction.user.id,))
            await db.execute(
                        "INSERT OR IGNORE INTO users (user_nickname) VALUES (?)", (interaction.user.display_name,))
             await db.commit()                                
#

und das kommt raus wenn ich ihn drücke mehrmals

solid ingot
#

was ist dein primary key?

left current
#

user_id INTEGER PRIMARY KEY

solid ingot
#

ah ich weiß wieso, du solltest User ID und Username mit demselben Befehl einfügen

#

wenn du erst die ID einfügst und danach den Namen, wird für den Namen eine neue Zeile erstellt, bei der die ID dann automatisch 1 hochgezählt wird

silk gulch
#
randomBot = ['Schere', 'Stein', 'Papier']
result = randomBot[randomInt]```

discord.errors.ApplicationCommandInvokeError: Application Command raised an exception: IndexError: list index out of range
#

Wissen jemand was?

crystal star
#

musst 0-2 machen

tawdry leaf
#

user rollen auch 👀

obtuse estuary
#

Moin moin, hier Coden doch bestimmt leute mit VSCode. Naja jedenfalls ist seit gerade eben VSCode voll weird, meine ganzen Dc imports werden gelb unterstrichen mit dem fehler reportMissingImports kann mir da jemand weiter helfen?

tawdry leaf
indigo sapphire
#

Tibue kann ich wegen dem neuen Video auch per blob Datei vom Datenbank schicken?

obtuse estuary
#

Ist halt im jeden file so. Pycord habe ich auch neu installiert

#

und ist auch in der main datei so

tawdry leaf
#

also ich behaupte es liegt daran das die init.py file sich selbstständig gemacht hat

obtuse estuary
#

nö habe keine

tawdry leaf
#

da speichern sich die imports und die Änderungen

tawdry leaf
obtuse estuary
#

aso und wie kann ich das änder peepothink

tawdry leaf
#

gute Frage

obtuse estuary
#

._.

tawdry leaf
#

ich habe da dann eine andere IDE benutzt xD

obtuse estuary
#

xD

tawdry leaf
#

hatte bei pycharm des problem gehabt

tawdry leaf
#

sonst würde ich vorschlagen python neu zu installieren -_-

obtuse estuary
#

Wie kann ich den Interpreter bei VSCode bearbeiten?

tawdry leaf
tender horizon
#

kann ich bei pilow den text auch irgenwie auf der x achse zentrieren? und die schrift größer machen?

obtuse estuary
obtuse estuary
#

danke^^ @tawdry leaf love

tender horizon
tawdry leaf
#

ich bin kein developer 🙂

indigo sapphire
#

hey wie kann ich mit blob arbeiten sqlite?

#

würde gerne als embed schicken

urban glen
#

Um dieses Problem zu beheben, sollten Sie sicherstellen, dass Sie die neueste Version von Pycord verwenden und dass Sie das User-Objekt korrekt über die get_user-Methode abrufen. Sie können dann versuchen, auf die status-Eigenschaft des User-Objekts zuzugreifen, um den aktuellen Status des Benutzers abzurufen.```hat openai gedroppt wie hilft es mir weiter?
open dragon
#

der code ist alt

urban glen
#

Installiert

ocean sandal
#

Wie zeichnet man ein Bild mit Tkinter

tender horizon
#

ob das mit tkinter geht weiß ich nicht aber soweit ich weiß geht das mit turtle glaube ich

#
Ignoring exception in on_member_join
Traceback (most recent call last):
  File "C:\Python310\lib\site-packages\discord\client.py", line 377, in _run_event
    await coro(*args, **kwargs)
  File "e:\fire-bot\cogs\welcome_channel.py", line 64, in on_member_join
    welcome_bild_status = await self.get_welcome_bild_status(member.guild.id)
  File "e:\fire-bot\cogs\welcome_channel.py", line 53, in get_welcome_bild_status
    async with db.execute("SELECT welcome_bild FROM setup WHERE guild_id = ?", (guild_id)) as cursor:
  File "C:\Python310\lib\site-packages\aiosqlite\context.py", line 41, in __aenter__
    self._obj = await self._coro
  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()
ValueError: parameters are of unsupported type```
#

weiß wer was hier falsch ist?

tawdry leaf
#

supi

tender horizon
# tender horizon ```py Ignoring exception in on_member_join Traceback (most recent call last): ...
 
@commands.Cog.listener()
    async def on_member_join(self, member):
        await self.check_guild(member.guild.id)
        await self.check_user(member.id)
        welcome_bild_status = await self.get_welcome_bild_status(member.guild.id)
        welcome_id = await self.get_weclome_id(member.guild.id)
        try:
            role_id = await self.get_role_id(member.guild.id)
            join_role = member.guild.get_role(role_id)
            await member.add_roles(join_role)
        except:
            return```
#
if welcome_bild_status == "aktiviert":
            try:
                    
                W = 1100
                H = 500
                size = W, H
                img = Image.new('RGB', size, 'black')
                draw = ImageDraw.Draw(img)
                font = ImageFont.truetype("Baby Pilot.ttf", 64)
                # draw.text((x, y),"Sample Text",(r,g,b))
                _, _, w, h = draw.textbbox((0, 0),f'Willkommen {member.name}\n\n    auf dem Server {member.guild}\n\n       Member Nummer: {member.guild.member_count}', font=font)
                draw.text(((W-w)/2, (H-h)/2),f"Willkommen {member.name}\n\n    auf dem Server {member.guild}\n\n        Member Nummer: {member.guild.member_count}",'white',font=font)
                if not os.path.exists(f'welcome_bilder\{member.guild}'):
                    os.makedirs(f'welcome_bilder\{member.guild}')

                img.save(f'welcome_bilder\{member.guild}\{member}.png')
                async with aiosqlite.connect(self.DB) as db:
                    await db.execute(
                        "UPDATE econemy SET flame = flame + 10 WHERE user_id = ?", (member.id,)
                        )
                    await db.commit()
                file = discord.File(f"welcome_bilder\{member.guild}\{member}.png", filename="image.png")
                channel = await self.bot.fetch_channel(welcome_id, )
                embed=discord.Embed(title=f"**Schön das du da bist \n\nHier hast du 10 Flammen! Verbrenne dich nicht!**", color=discord.Color.brand_green())
                await channel.send(f"{member.mention}",embed=embed, file=file)
            except:
                return```
#
elif welcome_bild_status == "deaktiviert":
            try:
                async with aiosqlite.connect(self.DB) as db:
                    await db.execute(
                        "UPDATE econemy SET flame = flame + 10 WHERE user_id = ?", (member.id,)
                        )
                    await db.commit()
                channel = await self.bot.fetch_channel(welcome_id, )
                embed=discord.Embed(title=f"__**Willkommen {member}**__", description=f"**Schön das du da bist \n\nHier hast du 10 Flammen! Verbrenne dich nicht!**", color=discord.Color.brand_green())
                await channel.send(f"{member.mention}",embed=embed)
            except:
                return```
solid ingot
#

was ist welcome_bild für ein datentyp?

tender horizon
#
async def get_welcome_bild_status(self, guild_id):
        await self.check_guild(guild_id)
        async with aiosqlite.connect(self.DB) as db:
                async with db.execute("SELECT welcome_bild FROM setup WHERE guild_id = ?", (guild_id)) as cursor:
                    result = await cursor.fetchone()
        
        return result[0]
    ```
tender horizon
vocal phoenix
#

Wieso kommt hier keine Nachricht, wenn ich den Button drücke?

#

also die nachricht kommt mit dem button, aber es passiert nix, wenn ich ihn drücke

solid ingot
#

hast du eine eigene klasse für den button gemacht?

vocal phoenix
#

ne

#

dachte es geht ohne, wenn ich es so mache

solid ingot
#

also die callback methode einfach ons on_member_join event reinzutun geht nicht denke ich

#

ich empfehle immer eine eigene klasse zu machen

vocal phoenix
#

Ok, dann mach ich das, danke

urban glen
#

Wie erwähne ich halt durch einen Button einen gejointen user?
{member} wird dann halt bei der interaction.response msg nicht erkannt

urban glen
tawdry leaf
urban glen
# dense magnet Wie meinst du?

habe halt ein event wodurch neue mitglieder begrüßt werden, habe auch einen Button geaddet wenn man auf den Button klickt soll auch teilweise angezeigt werden welcher user gejoint ist...

#

um halt anzeigen zu lassen ... begrüßt ...

tawdry leaf
dense magnet
urban glen
dense magnet
#

schick mal deinen code

urban glen
#

wait

#

könnte ich member durch view=WelcomeView(member) übergeben?

dense magnet
tender horizon
mystic sentinel
#

ich habe das probelm mit den Option das es nicht geht

tawdry leaf
#

wie findest du das

solid ingot
solid ingot
urban glen
tawdry leaf
dense magnet
mystic sentinel
mystic sentinel
urban glen
dense magnet
tawdry leaf
tawdry leaf
dense magnet
tawdry leaf
urban glen
#

man kann doch sicher durch einen command halt z.B. einen textkanal von einer json file ändern oder?

tawdry leaf
urban glen
tawdry leaf
solid ingot
#

danke übrigens für die ganze hilfe die du hier gibst entchen, wenn du nichts dagegen hast würde ich dir die rolle Freiwilliger Helfer geben, du kennst dich ja ziemlich gut aus

urban glen
#

@dense magnet hier ping damit du nicht in 4. Tagen antworten musst und er aufgrund Inaktivität seine Meinung ändern muss

solid ingot
#

xD

dense magnet
urban glen
#

@solid ingot lucky musst du auch freiwilliger helfer xD

dense magnet
#

Danke dir pepelove

tawdry leaf
#

Ich mag nur nachtreten 🙂

urban glen
#

@dense magnet bin neidisch

tawdry leaf
urban glen
tawdry leaf
#

@urban glen falls du noch Hilfe benötigst #1020759567421931620 ist noch frei 😂

dense magnet
urban glen
burnt prairieBOT
#
Level Up!

Herzlichen Glückwunsch @elder epoch, du bist jetzt Level 11 🎉

tawdry leaf
urban glen
tawdry leaf
#

da müsste ich den ping manuell im code ändern ^^

mystic sentinel
tawdry leaf
urban glen
tawdry leaf
#

einf user:discord.Member=None dann ist es keine erforderliche Option mehr

#

wenn es darum grad geht

solid ingot
urban glen
tawdry leaf
mystic sentinel
# solid ingot schick mal deine pip freeze liste

aiohttp==3.8.3
aiosignal==1.3.1
async-generator==1.10
async-timeout==4.0.2
attrs==22.1.0
certifi==2022.9.24
cffi==1.15.1
charset-normalizer==2.1.1
discord.py==2.1.0
frozenlist==1.3.3
h11==0.14.0
idna==3.4
multidict==6.0.3
outcome==1.2.0
py-cord==2.3.2
pycparser==2.21
PySocks==1.7.1
selenium==4.7.2
sniffio==1.3.0
sortedcontainers==2.4.0

tawdry leaf
serene ermine
tawdry leaf
#

deswegen hab ich es nicht 😄

urban glen
tawdry leaf
tawdry leaf
serene ermine
urban glen
#

haha

tawdry leaf
tawdry leaf
urban glen
tawdry leaf
#

für den maximalen Bruch

urban glen
tawdry leaf
mystic sentinel
burnt prairieBOT
#
Level Up!

Herzlichen Glückwunsch @mystic sentinel, du bist jetzt Level 2 🎉

Du hast <@&1042123300970696705> erhalten!

serene ermine
tawdry leaf
#

du sagst discord.PYTHON ist nicht mit PYTHON kompatibel

Ich glaub mich drehts

urban glen
#

einf. 00:22 schon wieder verging die zeit so schnell 😭

solid ingot
#

streits über die beste library gehören nicht in #1019974414487535736 jungs

#

pycord ist aber schon die beste

serene ermine
tawdry leaf
dense magnet
mystic sentinel
#

ich hab jetzt mal py-cord deinstalliert

serene ermine
urban glen
tawdry leaf
#

🙂

mystic sentinel
mystic sentinel
serene ermine
serene ermine
floral monolith
urban glen
floral monolith
#

Pycord server

tawdry leaf
serene ermine
urban glen
floral monolith
#

Ka

floral monolith
#

Was soll man machen

serene ermine
floral monolith
tawdry leaf
#

und damit würde ich sagen

burnt prairieBOT
#
Level Up!

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

tawdry leaf
#

Aufgabenstellung lesen +1

urban glen
#

ich bin so lost dass ich für die pycord docs ein extra tutorial bräuchte wie man dass alles versteht

serene ermine
tawdry leaf
serene ermine
#

Auch wenn die eig nur aus Python basics bestehen :p

urban glen
serene ermine
tawdry leaf
serene ermine
floral monolith
#

Ne

#

Timo hats geändert

tawdry leaf
#

ich sehe hier nix was meine Nachricht revidiert

serene ermine
tawdry leaf
#

rund um Python steht da 🤔

floral monolith
#

Ja gestern nicht

tawdry leaf
#

ja vllt hat es so gestunken das es zu Python wurde

urban glen
#

ey kann man einen channel mit textkanal.mention erwähnen?

tawdry leaf
#

ja versuch mal

urban glen
#

später muss gerade einen anderen cog fertig coden

tawdry leaf
#

uiii

urban glen
tawdry leaf
urban glen
#

muss man modal & button classen im cog oder auserhalbes des cogs machen?

tawdry leaf
#

Du brauchst einen der im Talk ist den du es erklärst und er danach noch weniger versteht 😂

solid ingot
urban glen
#

sag doch einf. to do liste

tawdry leaf
tawdry leaf
urban glen
urban glen
tawdry leaf
urban glen
tawdry leaf
#

das die den Typen nicht akzeptieren

serene ermine
tawdry leaf
solid ingot
fluid leaf
#

COC

dense magnet
#

Na ihr seid ja hilfreich 👀

dense magnet
urban glen
dense magnet
tawdry leaf
urban glen
#

Kann man halt wenn ein User durch ein Modal etwas eingereicht hat und ich dann auf annehmen klicke bei einem button wodurch dann der vorherige interaction.user vom modal eine dm bekommen würde, geht dass ohne db?

tawdry leaf
#

Wenn du zum modal direkt den Button erstellt was man eig immer macht kannst du dort des ja so coden das der Interaktion User der ist der die dm bekommt

silk gulch
#

Morgen. Habe mir mal das Dropdown-Select Video von tibue angeschaut. Wie läuft das da ab, wenn ich jemanden da eine Rolle zuweisen möchte?

solid ingot
#

zuerst musst du die Rolle über die ID bekommen, dann kannst du interaction.user.add_roles benutzen

silk gulch
solid ingot
#

ja

silk gulch
solid ingot
#

das user kannst du weglassen

fluid leaf
fluid leaf
#

interaction.guild.get_role()

burnt prairieBOT
#
Level Up!

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

Du hast <@&1024276907136663562> erhalten!

fluid leaf
#

Und in die Klammern muss die ID

silk gulch
#

Ja das weiß ich. Danke dir. 🙂

#

Und HGW zum Role-Update xD

fluid leaf
#

Danke 😂

urban glen
solid ingot
#

ja

old ore
#

wieso bei all meinen Buttons geht das so

solid ingot
#

das b von button muss klein geschrieben werden

urban glen
solid ingot
#

wenn du den View persistent machst ja

#

solange du nur auf interaction.user zugreifen willst musst du nichts abspeichern

thick haven
#

Kann mir jmd helfen und sagen warum wenn ich als alert das eingebe: a\nb\nc
das es so angezigt wird: a\nb\nc
und nicht so:
a
b
c
?

    @discord.guild_only()
    async def alert(self, ctx, alert: Option(str, "Veröffentliche eine Neuikeit")):
        channel = 0
        if ctx.channel.id == SERVER_SYSTEM["news_channel"]:
            channel = self.bot.get_channel(SERVER_SYSTEM["news_channel"])
            role = ROLLEN["allgemeine-neuigkeiten"]
            embed = discord.Embed(title=f"**Neuigkeiten**", description=f"{alert}")
        elif ctx.channel.id == SERVER_SYSTEM["hosting_channel"]:
            channel = self.bot.get_channel(SERVER_SYSTEM["hosting_channel"])
            role = ROLLEN["hosting"]
            embed = discord.Embed(title=f"**Hosting Neuigkeiten**", description=f"{alert}")
        elif ctx.channel.id == SERVER_SYSTEM["bot_channel"]:
            channel = self.bot.get_channel(SERVER_SYSTEM["bot_channel"])
            role = ROLLEN["hosting"]
            embed = discord.Embed(title=f"**Hosting/Allgemeine Neuigkeiten**", description=f"{alert}")
        else:
            await ctx.respond("Bitte Nutze die Richitgen Channel für diese Funktion", ephemeral=True)
        await ctx.respond("Du hast eine Neue Veröffentlicung getätigt!", ephemeral=True)
        msg = await channel.send(f"<@&{role}> \n", embed=embed)```
urban glen
#

und wie greife ich halt auf den vorherigen interacton.user zu der das modal genutzt hat

#

wie übergebe ich dass pepecry

urban glen
#
#post reaction
@bot.event
async def on_thread_create(thread):
    if thread.parent is discord.ForumChannel:
        await thread.send("Hallo")
``` ich brauche hilfe der will keine nachricht rein senden
thick haven
solid ingot
#

ne das alert selbst als r string

thick haven
solid ingot
#

da wo du dein alert definierst

thick haven
urban glen
thick haven
#

(self, ctx, alert: Option(str, "Veröffentliche eine Neuikeit")):

urban glen
#

ich will, wenn ich ein neuen forum thread aufmache, dass er hallo reinschreibt

urban glen
#

wie kann ich den nutzer vom modal übergeben

#

oder button

solid ingot
#

wohin willst du das denn übergeben?

#

generell kannst du Sachen so zwischen Klassen übergeben:
https://youtu.be/Zdexqb8XxJE

urban glen
lofty haven
#

könnte mir bitte jemand kurz hier helfen?

#
import discord
from discord.ui import Button, View
from discord.ext import commands
import asyncio

bot = commands.Bot(command_prefix="!", intents=discord.Intents.all())

GUILD_ID = 798144883016859689
TEAM_ROLE = 800726841329057822
TICKET_CHANNEL = 840882678681305098
CATEGORY_ID = 840882129880481822

@bot.event
async def on_ready():
    print(f"{bot.user} ist online")

@bot.command()
@commands.is_owner()
async def ticketmsg(ctx):
    button1 = Button(label="Ticket öffnen!", style=discord.ButtonStyle.blurple, custom_id="ticket_button")
    view = View()
    view.add_item(button1)
    embed = discord.Embed(description=f"Beschreibe dein Anliegen!", title=f"Ticket System")
    channel = bot.get_channel(TICKET_CHANNEL)
    await channel.send(embed=embed, view=view)
    await ctx.reply("Gesendet!")

@bot.event
async def on_interaction(interaction):
    if interaction.channel.id == TICKET_CHANNEL:
        if "ticket_button" in str(interaction.data):
            guild = bot.get_guild(GUILD_ID)
            for ticket in guild.channels:
                if str(interaction.user.id) in ticket.name:
                    embed = discord.Embed(description=f"Du kannst nur ein Ticket gleichzeitig öffnen! {ticket.mention}")
                    await interaction.response.send_message(embed=embed, ephemeral=True)
                    return

            category = bot.get_channel(CATEGORY_ID)
            ticket_channel = await guild.create_text_channel(f"ticket-{interaction.user.id}", category=category,
                                                                 topic=f"Ticket von {interaction.user} \nClient-ID: {interaction.user.id}")

            await ticket_channel.set_permissions(guild.get_role(TEAM_ROLE), send_message=True, read_message=True, add_reations=False,
                                                     embed_links=True, attach_files=True, read_message_history=True,
                                                     external_emojis=True)
            await ticket_channel.set_permissions(interaction.user, send_message=True, read_message=True, add_reations=False,
                                                     embed_links=True, attach_files=True, read_message_history=True,
                                                     external_emojis=True)
            embed = discord.Embed(description=f'Willkommen im Ticket {interaction.user.mention}!\n'
                                      f'Hier packst du deine Beschreibung rein!\n'
                                      f'Ticket mit `!close`schließen',
                            color=62719)
            embed.set_author(name=f'Neues Ticket!')
            mess_2 = await ticket_channel.send(embed=embed)
            embed = discord.Embed(title="Ticket geöffnet!",
                                       description=f'Dein Ticket wurde erstellt! {ticket_channel.mention}',
                                       color=discord.colour.Color.green())

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

@bot.command()
async  def close(ctx):
    if "ticket" in ctx.channel.name:
        embed = discord.Embed(
                description=f'Ticket schließt in 5 Sekunden automatisch!',
                color=16711680)
        await ctx.channel.send(embed=embed)
        await asyncio.sleep(5)
        await ctx.channel.delete()```
#

Wieso geht der code nicht richtig

wise stone
#

wie mache ich das der button eine nachricht sendet und den button daraufhin gleich disable macht

                await interaction.response.send_message(f'test')
                button.disabled = True
                await interaction.response.edit_message(view=self)       ```

aber das geht ja nicht weil eine interaction schon davor da ist
old ore
#
        await interaction.response.defer()
        channel1 = bot.get_channel(1048658002024083588)
        embed = discord.Embed(
            title="Custom Code",
            description=f"**Here ist the custom Code:** `{self.code.content}`",
            color=0x9461cb
        )

        embed.set_footer(
        text="Nuzaki coded for NXTUP ESPORTS | EU 🎃",
        icon_url="https://cdn.discordapp.com/attachments/1045464812177604669/1048240399560478761/Nxtup_Player_Picture.PNG"
        )

        embed.set_author(
            icon_url="https://cdn.discordapp.com/attachments/1045464812177604669/1048240399560478761/Nxtup_Player_Picture.PNG",
            name="By Nuzaki"
            )

        embed.set_thumbnail(
            url="https://cdn.discordapp.com/attachments/1045464812177604669/1048254754171670558/video.mkv.png"
            )
        
        await interaction.user.send(embed=embed)
        
        embed1 = discord.Embed(
            title="Code Unlock",
            description=f"{interaction.user.mention} Has unlocked the the custom games code",
            color=0x9461cb
        )

        embed1.set_footer(
        text="Nuzaki coded for NXTUP ESPORTS | EU 🎃",
        icon_url="https://cdn.discordapp.com/attachments/1045464812177604669/1048240399560478761/Nxtup_Player_Picture.PNG"
        )

        embed1.set_author(
            icon_url="https://cdn.discordapp.com/attachments/1045464812177604669/1048240399560478761/Nxtup_Player_Picture.PNG",
            name="By Nuzaki"
            )

        embed1.set_thumbnail(
            url="https://cdn.discordapp.com/attachments/1045464812177604669/1048254754171670558/video.mkv.png"
            )

        await channel1.send(embed=embed1)
        
        button.disabled = True
        await interaction.response.edit_message(view=self)```
#

Kann mir bitte wer sagen wieso dieser fehler auftritt

wise stone
wise stone
old ore
#

nein das kann man öfters benutzen

wise stone
#

ne

#

kann man Net machen

#

nur bei If abfragen, try except else und so jam

#

normal net

old ore
wise stone
#

Oda?

old ore
#

ja das weiß ich doch aber ich weiß nicht wie man das dann so machen kann der der button trotzdessen er reagier hat so einen error bringt mit Interaktion fehlgeschlagen

#

ja auch nur so geht es

#

wenn ich das response.defer weglasse kommt nachdem ich auf den Button gedrückt habe die feehler meldung: Interaktion Fehlgeschlagen

wise stone
#

es sendet halt nur die Nachricht ich bevorzuge eher das es auf die Nachricht antwortet also interaction.response.send_message halt

old ore
wise stone
#

stimmt

old ore
#

es sollte bloß den Button deaktivieren ohne das in Dc ein error kommt aber egal ich hab es hinbekommen und der fehler war nicht beim respont

burnt prairieBOT
#
Level Up!

Herzlichen Glückwunsch @old ore, du bist jetzt Level 9 🎉

dense magnet
urban glen
#

kennt sich wer mit bridge.bridge_command aus?

#

wenn ja, dm mich mal bitte thx

thick haven
solid ingot
#

@thick haven

solid ingot
solid ingot
indigo sapphire
#

Why me?

solid ingot
#

du bist einer der wenigen die das benutzen xD

fluid leaf
thick haven
fluid leaf
#

Also willst du einen embedbuilder machen oder wie soll ich das verstehen

#

schick mal ein screen wie das aussieht also

#

so als beispiel

solid ingot
#

FORTNITE

fluid leaf
#

fortnait

thick haven
fluid leaf
#

mhm

#

Also /embed <title> <description="A\nb\nc" und dann soll das halt

<title>
a
b
c

sein oder?

fluid leaf
#

Das geht nicht

solid ingot
#

achso bruh du willst das andersrum

#

dann drehs einfach um

fluid leaf
#

Du könntest es umständlich machen ungefähr so:
/embed <title> <line1=blahblah> <line2=blahblah>, etc

Und in deinem code in die Desc: f"{line1}\n{line2}"

visual swallow
#

😂

solid ingot
fluid leaf
#

Kennt ihr eine Seite die mir eine bestimme anzahl character in "teile" die eine bestimme anzahl character hat umwandelt?

solid ingot
#

also ABCD zu AB CD?

fluid leaf
#

Ja zum beispiel

solid ingot
#

hm website weiß nicht, könntest du aber auch schnell in python selbst machen mit einer for schleife

fluid leaf
#

Kannst du mir das machen?

#

Ich schick dir 0.01 € über paypal

solid ingot
solid ingot
fluid leaf
#

schick mir mal den code

#

kb den abzutippen

solid ingot
#
anzahl = 2
text = "ABCDEF"

result = ""
for index, char in enumerate(text):
    result += char
    if (index + 1) % anzahl == 0:
        result += " "

print(result)
fluid leaf
#

und anzahl = 2 zu wie viele character ich will right?

solid ingot
#

ja

fluid leaf
#

schau mal in #🔗・bots

thick haven
#

danke @solid ingot

fluid leaf
indigo sapphire
#

@solid ingot

Tibue wie geht's es mit Blob?

#

So wie diese Video:
Ich hoffe Werbung ist erlaubt lmao
https://youtube.com/shorts/IzvVdvFmiAY

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
fluid leaf
indigo sapphire
#

Nein blob ist ein bild Speicherung für SQlite

fluid leaf
#

Ah ich dachte das du diese eine farbe meintest

#

ok dann egal

indigo sapphire
#

Anstatt das Bild direkt am PC zu speichern hollt man es sich aus der Datenbank.

fluid leaf
#

@solid ingot

solid ingot
indigo sapphire
#

Du speicherst ja am pc

solid ingot
fluid leaf
#

???

#

Das es nd geht

#

Hab es gerunnt

#

text ist drin und anzahl auch

indigo sapphire
solid ingot
fluid leaf
#

Ich schick dir per dm

solid ingot
fluid leaf
#

ist nh js code drin

solid ingot
#

bruder was für js

#

ich hab dir python code geschickt xD

fluid leaf
#

guck eif

#

Wenn du siehst dann checkst du

solid ingot
#

du kannst nicht einfach python code in ne js datei schreiben

#

bist du echt von pycord zu discord.js gewechselt?

fluid leaf
#

Guck dms

solid ingot
#

ja hab

fluid leaf
#

ja

solid ingot
#

python code gehört immer noch nicht in ne JS datei

fluid leaf
#

das ist in einer .py datei

#

Ich will den JS code einteilen

#

verstehst du es jz?

solid ingot
#

du hast mit ne txt datei geschickt xD

fluid leaf
#

ja, weil ich kopiert hab und discord instatt .txt macht

solid ingot
#

Frag Chat GPT der schreibt dir bestimmt code der nen string splittet

fluid leaf
#

Also Programmier mir in Python ein Script der mir einen String in eine bestimmte anzahl teilt ?

solid ingot
fluid leaf
#

🖕

floral monolith
solid ingot
#

also mein code sollte auch funktionieren aber mit dem JS und Python in einer Datei kann ich dir nicht weiterhelfen

fluid leaf
#
# Define the input string and the number of parts to split it into
string = "This is a sample string"
num_parts = 3

# Calculate the length of each part (rounded up to the nearest integer)
part_length = len(string) / num_parts
part_length = int(part_length + 0.5)

# Split the string into the specified number of parts
parts = []
for i in range(num_parts):
    # Extract the substring for the current part
    start = i * part_length
    end = start + part_length
    part = string[start:end]

    # Add the part to the list of parts
    parts.append(part)

# Print the resulting parts
print(parts)
#

das hab ich jz

#

geil

solid ingot
#

typischer screenshot eines JS users

fluid leaf
#

bist du dumm

#

Der code ist nur in js

solid ingot
#

ahh

#

du meinst python oder

#

ja hab gesehen dass der js code nur der string ist

fluid leaf
#

Ja

solid ingot
#

hab ich in der txt nicht so gut erkannt

fluid leaf
#
# Dieses Skript teilt einen String in Abschnitte und nummeriert diese

# Definieren Sie hier den String, den Sie teilen möchten
string = "Dies ist ein Beispielstring, der in Abschnitte geteilt wird"

# Definieren Sie hier, wie viele Abschnitte Sie erstellen möchten
num_sections = 4

# Berechnen Sie hier die Länge eines jeden Abschnitts
section_length = len(string) // num_sections

# Teilen Sie hier den String in Abschnitte
sections = [string[i:i+section_length] for i in range(0, len(string), section_length)]

# Nummerieren Sie hier die Abschnitte
for i, section in enumerate(sections):
  print(f"Abschnitt {i+1}: {section}")
``` 🤣
#

Hab jz das

#
# Dieses Skript teilt einen String in Abschnitte mit einer festen Länge

# Definieren Sie hier den String, den Sie teilen möchten
string = "Dies ist ein Beispielstring, der in Abschnitte geteilt wird"

# Definieren Sie hier die Länge der Abschnitte
section_length = 700

# Teilen Sie hier den String in Abschnitte
sections = [string[i:i+section_length] for i in range(0, len(string), section_length)]

# Drucken Sie hier die Abschnitte aus
for i, section in enumerate(sections):
  print(f"Abschnitt {i+1}: {section}")
#

geil

solid ingot
#

warte warte

#

ich hab jetzt erst richtig verstanden was du machen willst

#

bin bisschen eingeschränkt weil ich nicht zu hause bin

#

nimm nochmal meinen code

#

kanns sein dass du einfach nur das print am ende vergessen hast

#

dann wird auch nicht ausgegeben

fluid leaf
#
anzahl = 2
text = "ABCDEF"

result = ""
for index, char in enumerate(text):
    result += char
    if (index + 1) % anzahl == 0:
        result += " "

print(result)
#

ist doch ein print

solid ingot
#

aber nicht in dem code den du geschickt hast

fluid leaf
#
print(f"Abschnitt {i+1}: {section}")
solid ingot
#

ne in deinem DM code

#

du kek

fluid leaf
#

stimmt

#

Ich hab es aber :o

#

Mein jetziger code geht

solid ingot
#

achso dann ist gut

#

viel erfolg noch

fluid leaf
#

ICH RASTE AUS

#

Dann benutz ich halt chatgpt

solid ingot
#

ich weiß nicht genau was du mit dem JS code vor hast, aber ich glaube es wäre einfacher alles von vorne in python zu machen

fluid leaf
#

Das hat mein JS freund gecodet

solid ingot
#

ah okay

#

ich muss auch bald JS lernen

#

aber nicht für bot

fluid leaf
#

#

chatgpt will nd wie ich will

#

#

Der codet mein Code um hhahah

thick haven
fluid leaf
#

von nh website die eine sprache in eine andere üebrsetzt

floral monolith
old ore
#

wie kann ich es machen das jeder user nur einmal auf den Button klicken kann

mystic sentinel
#

wofür ist daas f

fluid leaf
#

zum beispielt du machst

blah = "mario"

und willst das dann der Bot diese definition schreibt dann machst du nähmlich

await ctx.respond(f"{blah}")

das blah ist wie ich das oben gennant habe und dann würde der bot mario schreiben

#

verstanden?

mystic sentinel
#

nicht wircklich

dense magnet
fluid leaf
indigo sapphire
tender horizon
#

k

#

´kann ich in einem dropdaown menü alle text kanale zur auswahl stellen und wenn ja wie?

dense magnet
mystic sentinel
#

ist das der beste weg den token zu verstecken? oder gibt es einen bessere

dense magnet
#

Wo definierst du die bal variable?

dense magnet
#

Dann schick mal deine get_user_info funktion

old ore
#

wieso geht der Mist nichgt

dense magnet
dense magnet
old ore
old ore
tender horizon
wise stone
#

self.code muss wahrscheinlich üher den super init stehen hab's auch auf blue geschrieben

dense magnet
dense magnet
old ore
tender horizon
old ore
dense magnet
tender horizon
#

kann ich dropdowns in pageinator packen?

burnt prairieBOT
#
Level Up!

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

dense magnet
tender horizon
#

das ich den paginator habe und auf der einen seite ist das dropdown und auf der andene seite ist ein anderer dropdown

dense magnet
tender horizon
#

ok wie?

dense magnet
#

print den fetch mal und sag was drin steht

urban glen
#

Fortnite

tender horizon
#

und wi kann ich machen das für jeden channel ein option hinzugefügt wird?

vivid sky
#

wie erstelle ich das nach 2 stunden immer ein embed gepostet wird?

tender horizon
dense magnet
dense magnet
tender horizon
dense magnet
tender horizon
#

zu den optionen

dense magnet
#

options=LISTE

urban glen
vivid sky
#

👀

#

Wenn du wirklich langeweile hast mach doch.

urban glen
#

jo wait

urban glen
tender horizon
urban glen
vivid sky
dense magnet
urban glen
thick haven
#

Hat wer ne ideee

#
Traceback (most recent call last):
  File "/home/container/.local/lib/python3.10/site-packages/discord/commands/core.py", line 124, in wrapped
    ret = await coro(arg)
  File "/home/container/.local/lib/python3.10/site-packages/discord/commands/core.py", line 976, in _invoke
    await self.callback(self.cog, ctx, **kwargs)
  File "/home/container/cogs/xenority/xenority.py", line 404, in left
    await ctx.respond(datetime.date(2022,12,31)-datetime.date.today().days)
TypeError: descriptor 'date' for 'datetime.datetime' objects doesn't apply to a 'int' object
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
  File "/home/container/.local/lib/python3.10/site-packages/discord/client.py", line 377, in _run_event
    await coro(*args, **kwargs)
  File "/home/container/bot.py", line 110, in on_application_command_error
    raise error
  File "/home/container/.local/lib/python3.10/site-packages/discord/bot.py", line 1114, in invoke_application_command
    await ctx.command.invoke(ctx)
  File "/home/container/.local/lib/python3.10/site-packages/discord/commands/core.py", line 375, in invoke
    await injected(ctx)
  File "/home/container/.local/lib/python3.10/site-packages/discord/commands/core.py", line 132, in wrapped
    raise ApplicationCommandInvokeError(exc) from exc
discord.errors.ApplicationCommandInvokeError: Application Command raised an exception: TypeError: descriptor 'date' for 'datetime.datetime' objects doesn't apply to a 'int' object```
#

await ctx.respond(datetime.date(2022,12,31)-datetime.date.today().days)

floral monolith
urban glen
#

Warum kommt der error: "(" was not closed

#

die Klammer ist aber geschlossen

dense magnet
#

code?

tender horizon
dense magnet
#

aber eig solltest du nd einfach den code abschreiben xd

open dragon
urban glen
open dragon
thick haven
open dragon
#

Hm

urban glen
#

hab ich schon versucht

open dragon
open dragon
urban glen
thick haven
open dragon
#

Nein

#

Du hast es normal geschrieben solltest es aber so schreiben

#
Dein Error
thick haven
#

hä sihst dus ned oder iwe

open dragon
#

Du hast da eif. nur 1en ` gemacht solltest aber oben 3 davon dahinter "py" dann dein Eror und ganz unten wieder 3 von den

#

`

thick haven
#

ja ebend das sind 3

open dragon
thick haven
#

nutz lieber mal nen pc

open dragon
#

Komisch

thick haven
#
Traceback (most recent call last):
  File "/home/container/.local/lib/python3.10/site-packages/discord/commands/core.py", line 124, in wrapped
    ret = await coro(arg)
  File "/home/container/.local/lib/python3.10/site-packages/discord/commands/core.py", line 976, in _invoke
    await self.callback(self.cog, ctx, **kwargs)
  File "/home/container/cogs/xenority/xenority.py", line 404, in left
    await ctx.respond(datetime.date(2022,12,31)-datetime.date.today().days)
TypeError: descriptor 'date' for 'datetime.datetime' objects doesn't apply to a 'int' object
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
  File "/home/container/.local/lib/python3.10/site-packages/discord/client.py", line 377, in _run_event
    await coro(*args, **kwargs)
  File "/home/container/bot.py", line 110, in on_application_command_error
    raise error
  File "/home/container/.local/lib/python3.10/site-packages/discord/bot.py", line 1114, in invoke_application_command
    await ctx.command.invoke(ctx)
  File "/home/container/.local/lib/python3.10/site-packages/discord/commands/core.py", line 375, in invoke
    await injected(ctx)
  File "/home/container/.local/lib/python3.10/site-packages/discord/commands/core.py", line 132, in wrapped
    raise ApplicationCommandInvokeError(exc) from exc
discord.errors.ApplicationCommandInvokeError: Application Command raised an exception: TypeError: descriptor 'date' for 'datetime.datetime' objects doesn't apply to a 'int' object```
#

jetzt bei dir

fluid leaf
tender horizon
jade sapphire
#

module.exports = client => {
const channelId = "1050870005715181598"
client.on("guildMemberAdd", (member) =>{
console.log (member)

    const message = `Willkommen zu meiner Schule <@${member.id}>`;

    const channel = member.guild.channels.cache.get (channelId);
    channel.send(message);
});

};

#

Is da irgendwas falsch?

urban glen
#

Eu parado no bailão

dense magnet
urban glen
#

Ela com o popozão

#

E o popozão no chão

jade sapphire
#

Kann ich irgendwem mein DC Link kurz schicken um zu schauen ob der funktioniert?

urban glen
#

O popozão no chão

#

E o popozão no chão

jade sapphire
#

was ist da falsch?

urban glen
#

oder ne doch nicht

jade sapphire
#

da fehlt ein "." oder?

urban glen
#

wurde bei mir so weird angezeigt dieses "I"

urban glen
#

Eu parado no bailão, no bailão

jade sapphire
#

ja kenne keinen

urban glen
#

Ela com o popozão

#

O popozão no chão

jade sapphire
#

Okay reicht

urban glen
#

O popozão no chão
O popozão no chão
O popozão no chão

floral monolith
urban glen
#

ok wird langsam weird

jade sapphire
#

WEIRD

urban glen
#

hab es mit den leerzeichen geschrieben weil es sonst der automod filtern würde

#

ich dribbel automod

floral monolith
#

Imagine man used java/js

jade sapphire
#

Imagine man used py

#

Pycord

#

Pycharm

#

Iiiihhhhh

floral monolith
#

Python serverNU_PepeCute

jade sapphire
#

egal chille hier trzdm

#

ihr seid koohl

tawdry leaf
#

deswegen darfst du hier nicht chillen 🤔

jade sapphire
#

fresse du da hinten

#

JA GENAU DU LOCKY

tawdry leaf
#

😄

jade sapphire
#

lucky

#

komm 1v1 krunker

tawdry leaf
#

sei still

jade sapphire
#

schisser

silk gulch
#

Weiß jemand warum (trotz dass alles funktioniert) die Meldung kommt "Diese Interaktion ist fehgeschlagen"?

dense magnet
silk gulch
dense magnet
# silk gulch wie?

damit die interaktion nicht fehlschlägt, musst du auf sie responden. Du könntest zb await interaction.channel.send mit interaction.response.send_message ersetzen. Da hätte den selben effekt, gilt aber als response

dense magnet
solid ingot
#

in tutorial folge 5 wird dazu etwas erzählt

tender horizon
#

weiß wer wie ich self diefieneiren kann ?+

#
class welchanView(discord.ui.View):
    options = []
        
    for channel in self.guild.channels:
        if channel.Type == discord.ChannelType.text:
            options.append(discord.SelectOption(label=channel.name, value=str(channel.id)))
    super().__init__(options=options, placeholder="Select a Channel", custom_id="WelcomeChannelDropdown")

    @discord.ui.select(
        min_values=1,
        max_values=1,
        placeholder="Wähle einen Willkommen Channel",
        options=options
    )
    async def select_callback(self, select, interaction):
solid ingot
#

wie meinst du das genau?

wise stone
burnt prairieBOT
#
Level Up!

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

Du hast <@&1032921984612433952> erhalten!

wise stone
#

kk

#

wie mache ich das wenn der Button gedrückt wird gleich der Button disable wird und die Nachricht versendet

#

weil Response und edit hintereinander geht ja net

#

🤔

silk gulch
#

Wie kann ich denn eine Liste beleidigender Wörter abfragen?
Läuft leider nicht so perfekt..
Also z.B. so:

badWord = ["Arsch", "Arschloch"]

if badWord in message.content:
    print('Böses Wort!')```
mystic sentinel
floral monolith
wise stone
#

gibt's vieles dazu in Internet

silk gulch
#

Hab die Wörter ja in der List abgespeichert. Brauch ja keine Datei für.

wise stone
#

@silk gulch hilft ja nicht weiter mit der Aussage "läuft leider nicht so perfekt"

#

bräuchten schon Errors oder wobei du Hilfe benötigst

tender horizon
silk gulch
vivid sky
#

help me

wise stone
vivid sky
#

hab die nur so xs

#

xd

wise stone
#

achso bruh

#

erstell nennrichtigen Button

#

mit ne class pls

silk gulch
urban glen
#

jungs hilfe

wise stone
#

musst es darüber dann guild und Textchannel nochmal definieren

vivid sky
wise stone
#

ja

urban glen
mystic sentinel
#

was muss ich den installieren damit ich die errors davon weg bekomm

mystic sentinel
vivid sky
wise stone
vivid sky
#

wie sonst=?

wise stone
#

Google discord.ui.button py-cord

#

da kommen examples

#

und dann siehst du ein Beispiel mit disable beim py-cord guide

urban glen
tawdry leaf
vivid sky
burnt prairieBOT
#
Level Up!

Herzlichen Glückwunsch @vivid sky, du bist jetzt Level 8 🎉

solid ingot
tawdry leaf
#

naja debug guild eig unnötig

wise stone
tawdry leaf
wise stone
#

ne

#

klein

#
class MyView(discord.ui.View):
  @discord.ui.button(label="A button", style=discord.ButtonStyle.primary)
  async def button_callback(self, button, interaction):
      button.disabled = True # set button.disabled to True to disable the button
      button.label = "No more pressing!" # change the button's label to something else
      await interaction.response.edit_message(view=self) # edit the message's view```
@vivid sky
tawdry leaf
#

aso ja swagnoboi

mystic sentinel
tawdry leaf
floral monolith
mystic sentinel
burnt prairieBOT
#
Level Up!

Herzlichen Glückwunsch @mystic sentinel, du bist jetzt Level 3 🎉

solid ingot
#

ne

tawdry leaf
#

man kann es nicht halb deinstallieren 😄

#

geht nur ganz oder gar nd

mystic sentinel
#

jetzt hab ich nur noch den error

tawdry leaf
#

j

floral monolith
tawdry leaf
#

wieso machst du nicht einfach ein neues projekt mit virtuellen environment 🤔

solid ingot
silk gulch
solid ingot
wise stone
vivid sky
wise stone
tawdry leaf
#

🤔

vivid sky
#

ich habs doch oben gemacht

solid ingot
vivid sky
tawdry leaf
#

ich finde die Übersicht des Codes auch supi

#

wie soll man helfen wenn der code in halber sicht nur da ist 👀

tawdry leaf
#

jo

wise stone
vivid sky
silk gulch
tawdry leaf
#

wenn da der error ist und du hilfe brauchst ja KEK

vivid sky
#

damit ein kleines kiddie wieder mein code klaut und in #1027677692730036294 reinpostet?

#

nein danke kein bedarf

wise stone
#

🤔

tawdry leaf
#

ein code klauen der nicht funktioniert 🤔

vivid sky
wise stone
tawdry leaf
#

geben und nehmen idk

burnt prairieBOT
#
Level Up!

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

Du hast <@&1024276907136663562> erhalten!

vivid sky
wise stone
#

zeig Mal den Code wo es die Nachricht sendet und die Views addet

tawdry leaf
#

macht er denke grad im Call

vivid sky
solid ingot
#

obwohl ne

wise stone
tawdry leaf
solid ingot
#

aber musst halt interaction.message benutzen

wise stone
#

will das es auf die Nachricht reply wird und dazu der Button disable wird beim edit

solid ingot
#

await interaction.message.edit

tawdry leaf
dense magnet
# wise stone kk

Das war irgendwie button.disabled=True und dann den view nochmal neu bearbeiten in der selben Response

wise stone
#

hab ich

dense magnet
#

Ja bin am Handy seh nix

wise stone
#

hatte 2x Response drin deswegen

#

einmal senden und editn

solid ingot
#

erst interaction.message.edit(), dann interaction.response.send_message()

wise stone
tawdry leaf
#

try it 😐

solid ingot
urban glen
solid ingot
#

naja, lies mal den error

#

placeholder dürfen maximal 100 zeichen haben

urban glen
solid ingot
urban glen
#

oder doch peepepoint

#

stimmt

blazing pilot
#

Hat hier wer eine Option das ich MIT meinem Rechner Telefonieren kann also über meine Mobile sim karte ? Ohne Festnetz Anschluss und das ganze für iPhone ausgelegt

#

Hab mir gerade eben extra nh 6€ app im store gekauft absoluter müll

floral monolith
blazing pilot
#

ne leider gibts nicht

#

du kannst windows mit handy verbinen aber nur mit android

indigo sapphire
#

hey tibue ich hab mal vor lange zeit gefragt wie man beim slash command bilder/datei einbinden kann?

ich frage noch zusäzlich kann ich auch diese datei in einem ordner irgenwie abspeichern wie zb ein bild?

indigo sapphire
#

ähm wtf?

#

lost

#

zb ordner: IMG

#

mit slash zb
/img file: bild.jpg
speichert in ordner: IMG

#

so das du es verstehst

#

qusi sowas

#

nur für slash command

#

oder modal

jade sapphire
#

Node.js ist doch Java oder nicht

tender horizon
#

JavaScript

jade sapphire
#

Genau

indigo sapphire
#

wie kann man so eine anzeige machen wie viel server der bot schon drauf ist?

indigo sapphire
#

Wait

burnt prairieBOT
#
Level Up!

Herzlichen Glückwunsch @indigo sapphire, du bist jetzt Level 24 🎉

indigo sapphire
# tawdry leaf client.guilds

einfach in activity name rein?

activity=discord.Activity(
    type=discord.ActivityType.watching,
    name=f'nach Updates'
)
tawdry leaf
#

Mehr oder weniger j

indigo sapphire
tawdry leaf
#

Ja

tawdry leaf
indigo sapphire
#

Okay also bot.guilds dann kommt die Zahlen?

tawdry leaf
#

Ja

#

Wenn du es richtig machst

#

In geschweifte Klammern weil ist eine variable und kein Text Input

indigo sapphire
#

Also zB in Name= f"in Server:{bot.guildd}"

#

So etwa?

indigo sapphire
#

als error

#
bot = bridge.Bot(
    command_prefix=prefix,
    status=status,
    activity=discord.Activity(
        type=discord.ActivityType.watching,
        name=f"in Server:{bot.guilds}"
    ),
    intents=intents,
    case_insensitive=True,
)
indigo sapphire
#

Und wie geht das schon wieder?

#

Gibt es auch ein möglichkeit mit modal?

solid ingot
#

nein im modal kann man keine bilder hochladen

solid ingot
indigo sapphire
solid ingot
#

nein

#

im modal geht nur text

indigo sapphire
solid ingot
#

nach gar nichts, du sollst in den docs schauen bei attachment

#

hab dir den link geschickt

indigo sapphire
#

T,

#

Ty

tawdry leaf
solid ingot
#

bei pycord doch auch oder

indigo sapphire
solid ingot
indigo sapphire
#

?

solid ingot
#

nein

indigo sapphire
#

Ah models

#

xD

solid ingot
indigo sapphire
mystic sentinel
#

hab nichts mit coding zu tun aber wie macht man das nicht den jahren? @limpid wolf

indigo sapphire
#

Gute Frage

indigo sapphire
#

Ty

lofty haven
#
from discord.ui import View, Button
from discord.ext import commands
import os
from dotenv import load_dotenv
import asyncio

bot = commands.Bot(command_prefix="!", intents=discord.Intents.all())

GUILD_ID = 798144883016859689
TEAM_ROLE = 800726841329057822
TICKET_CHANNEL = 840882678681305098
CATEGORY_ID = 840882129880481822

@bot.event
async def on_ready():
    print(f"{bot.user} ist online")

@bot.command()
@commands.is_owner()
async def ticketmsg(ctx):
    button1 = Button(label="Ticket öffnen!", style=discord.ButtonStyle.blurple, custom_id="ticket_button")
    view = View()
    view.add_item(button1)
    embed = discord.Embed(description=f"Beschreibe dein Anliegen!", title=f"Ticket System")
    channel = bot.get_channel(TICKET_CHANNEL)
    await channel.send(embed=embed, view=view)
    await ctx.reply("Gesendet!")

@bot.event
async def on_interaction(interaction):
    if interaction.channel.id == TICKET_CHANNEL:
        if "ticket_button" in str(interaction.data):
            guild = bot.get_guild(GUILD_ID)
            for ticket in guild.channels:
                if str(interaction.user.id) in ticket.name:
                    embed = discord.Embed(description=f"Du kannst nur ein Ticket gleichzeitig öffnen! {ticket.mention}")
                    await interaction.response.send_message(embed=embed, ephemeral=True)
                    return

            category = bot.get_channel(CATEGORY_ID)
            ticket_channel = await guild.create_text_channel(f"ticket-{interaction.user.name}", category=category,
                                                             topic=f"Ticket von {interaction.user} \nClient-ID: {interaction.user.id}")

            await ticket_channel.set_permissions(guild.get_role(TEAM_ROLE), send_messages=True, read_message=True, add_reations=False, embed_links=True, attach_files=True, read_message_history=True, external_emojis=True)
            await ticket_channel.set_permissions(interaction.user, send_message=True, read_message=True, add_reations=False, embed_links=True, attach_files=True, read_message_history=True, external_emojis=True)
            embed = discord.Embed(description=f"Willkommen im Ticket {interaction.user.mention}\n" 
                                              f"Hier packst du deine Beschreibung rein!\n" 
                                              f"Ticket mit `!close`schließen",
                                  color=62719)
            embed.set_author(name=f'Neues Ticket!')
            mess_2 = await ticket_channel.send(embed=embed)
            embed = discord.Embed(title="Ticket geöffnet!",
                                       description=f"Dein Ticket wurde erstellt! {ticket_channel.mention}",
                                       color=discord.colour.Color.green())

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

@bot.command()
async def close(ctx):
    if "ticket" in ctx.channel.name:
        embed = discord.Embed(
                description=f"Ticket schließt in 5 Sekunden automatisch!",
                color=16711680)
        await ctx.channel.send(embed=embed)
        await asyncio.sleep(5)
        await ctx.channel.delete()

load_dotenv()
bot.run(os.getenv("TOKEN"))
#
Traceback (most recent call last):
  File "C:\Users\Benjamin\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\abc.py", line 918, in set_permissions
    overwrite = PermissionOverwrite(**permissions)
  File "C:\Users\Benjamin\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\permissions.py", line 736, in __init__
    raise ValueError(f"no permission called {key}.")
ValueError: no permission called read_message.

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "C:\Users\Benjamin\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\client.py", line 377, in _run_event
    await coro(*args, **kwargs)
  File "D:\Users\Benjamin\Documents\MiniBossPYY\cogs\Ticket.py", line 45, in on_interaction
    await ticket_channel.set_permissions(guild.get_role(TEAM_ROLE), send_messages=True, read_message=True, add_reations=False, embed_links=True, attach_files=True, read_message_history=True, external_emojis=True)
  File "C:\Users\Benjamin\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\abc.py", line 920, in set_permissions
    raise InvalidArgument("Invalid permissions given to keyword arguments.")
discord.errors.InvalidArgument: Invalid permissions given to keyword arguments.
lofty haven
indigo sapphire
#

Ähm so wäre besser

solid ingot
#

read_message sollte zum beispiel read_messages heißen

lofty haven
#

solche kleinen fehler holy shit danke

#

hätt ich nie gesehen

tawdry leaf
lofty haven
#
from discord.ext import commands
from discord.ext import tasks
import sqlite3

GUILD = 798144883016859689
CHANNEL_ID = [925153425019248710]
CHANNEL_DESC = "Es wurden bereits {} Nachrichten gesendet"

db = sqlite3.connect("message_count.sqlite")
cursor = db.cursor()
bot = commands.Bot(intents=discord.Intents.all())

def load_message_db():
    open("message_count.sqlite", "w")
    cursor.execute('''
                    CREATE TABLE IF NOT EXISTS message_count(
                        channel_id INTEGER,
                        count INTEGER
                        )
                        ''')
    for channel in CHANNEL_ID:
        channel_data = cursor.execute(f"SELECT channel_id FROM message_count WHERE channel_id = {channel}")
        channel_data = channel_data.fetchone()
        if channel_data is None:
            cursor.execute(f"INSERT INFO message_count VALUES({channel}, 0)")
            db.commit()

@tasks.loop(minutes=1)
async def message_count():
    for channel in CHANNEL_ID:
        cursor.execute(f"SELECT count FROM message_count WHERE channel_id = {channel}")
        channel_count = cursor.fetchone()
        channel = bot.get_channel(channel)
        await channel.edit(topic=CHANNEL_DESC.format(channel_count[-1]))

@bot.event
async def on_ready():
    load_message_db()
    message_count.start()
    print(f"{bot.user} ist online")

@bot.event
async def on_message(message):
    cursor.execute(f"UPDATE message_count SET count = count +1 WHERE channel_id = {message.channel.id}")
    db.commit()```py
#
Traceback (most recent call last):
  File "C:\Users\Benjamin\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\client.py", line 377, in _run_event
    await coro(*args, **kwargs)
  File "D:\Users\Benjamin\Documents\MiniBossPYY\cogs\message_count.py", line 39, in on_ready
    load_message_db()
  File "D:\Users\Benjamin\Documents\MiniBossPYY\cogs\message_count.py", line 26, in load_message_db
    cursor.execute(f"INSERT INFO message_count VALUES({channel}, 0)")
sqlite3.OperationalError: near "INFO": syntax error
```py
#

wo ist dort jetzt der fehler

lofty haven
indigo sapphire
#

Wtf

#

Einfach lost

#

👀

lofty haven
#
from discord.ext import commands
from discord.ext import tasks
import sqlite3

GUILD = 798144883016859689
CHANNEL_ID = [925153425019248710]
CHANNEL_DESC = "Es wurden bereits {} Nachrichten gesendet"

db = sqlite3.connect("message_count.sqlite")
cursor = db.cursor()
bot = commands.Bot(intents=discord.Intents.all())

def load_message_db():
    open("message_count.sqlite", "w")
    cursor.execute('''
                    CREATE TABLE IF NOT EXISTS message_count(
                        channel_id INTEGER,
                        count INTEGER
                        )
                        ''')
    for channel in CHANNEL_ID:
        channel_data = cursor.execute(f"SELECT channel_id FROM message_count WHERE channel_id = {channel}")
        channel_data = channel_data.fetchone()
        if channel_data is None:
            cursor.execute(f"INSERT INFO message_count VALUES({channel}, 0)")
            db.commit()

@tasks.loop(minutes=1)
async def message_count():
    for channel in CHANNEL_ID:
        cursor.execute(f"SELECT count FROM message_count WHERE channel_id = {channel}")
        channel_count = cursor.fetchone()
        channel = bot.get_channel(channel)
        await channel.edit(topic=CHANNEL_DESC.format(channel_count[-1]))

@bot.event
async def on_ready():
    load_message_db()
    message_count.start()
    print(f"{bot.user} ist online")

@bot.event
async def on_message(message):
    cursor.execute(f"UPDATE message_count SET count = count +1 WHERE channel_id = {message.channel.id}")
    db.commit()
 
```py
#

geht nicht bruh

solid ingot
#

wo schreibst du das py hin?

lofty haven
#
import discord
from discord.ext import commands
from discord.ext import tasks
import sqlite3

GUILD = 798144883016859689
CHANNEL_ID = [925153425019248710]
CHANNEL_DESC = "Es wurden bereits {} Nachrichten gesendet"

db = sqlite3.connect("message_count.sqlite")
cursor = db.cursor()
bot = commands.Bot(intents=discord.Intents.all())

def load_message_db():
    open("message_count.sqlite", "w")
    cursor.execute('''
                    CREATE TABLE IF NOT EXISTS message_count(
                        channel_id INTEGER,
                        count INTEGER
                        )
                        ''')
    for channel in CHANNEL_ID:
        channel_data = cursor.execute(f"SELECT channel_id FROM message_count WHERE channel_id = {channel}")
        channel_data = channel_data.fetchone()
        if channel_data is None:
            cursor.execute(f"INSERT INFO message_count VALUES({channel}, 0)")
            db.commit()

@tasks.loop(minutes=1)
async def message_count():
    for channel in CHANNEL_ID:
        cursor.execute(f"SELECT count FROM message_count WHERE channel_id = {channel}")
        channel_count = cursor.fetchone()
        channel = bot.get_channel(channel)
        await channel.edit(topic=CHANNEL_DESC.format(channel_count[-1]))

@bot.event
async def on_ready():
    load_message_db()
    message_count.start()
    print(f"{bot.user} ist online")

@bot.event
async def on_message(message):
    cursor.execute(f"UPDATE message_count SET count = count +1 WHERE channel_id = {message.channel.id}")
    db.commit()
#

ups

#

könntest du mir vlt bitte gleich helfen tibue?

#
Ignoring exception in on_ready
Traceback (most recent call last):
  File "C:\Users\Benjamin\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\client.py", line 377, in _run_event
    await coro(*args, **kwargs)
  File "D:\Users\Benjamin\Documents\MiniBossPYY\cogs\message_count.py", line 39, in on_ready
    load_message_db()
  File "D:\Users\Benjamin\Documents\MiniBossPYY\cogs\message_count.py", line 26, in load_message_db
    cursor.execute(f"INSERT INFO message_count VALUES({channel}, 0)")
sqlite3.OperationalError: near "INFO": syntax error
#

der fehler noch

solid ingot
#

INSERT INTO

lofty haven
#

oh man danke

#

dumm

#

aber könntest du mir bitte sagen wie ich das alles dann den cogs hinzufüge

#

weil ich mach das ja jetzt mit bot.run

solid ingot
#

wie meinst du das?

lofty haven
solid ingot
#

das ist gut, ohne bot.run geht es nämlich gar nicht

lofty haven
#

aber ich arbeite ja mit cogs

solid ingot
#

genau, bot.run muss nur in die main datei

lofty haven
lofty haven
#
def setup(bot):
    bot.add_cog(Cooldown(bot))```
#

sowas mein ich jetzt

lofty haven
burnt prairieBOT
#
Level Up!

Herzlichen Glückwunsch @lofty haven, du bist jetzt Level 7 🎉

solid ingot
#

da muss man noch ein paar sachen ändern, schau dir am besten das video an

lofty haven
#

mach ich grad hmmnice

#

ist das so richtig?

solid ingot
lofty haven
#

kannst dus mir bitte für das eine zeigen dann weiß ich auch was ich bei den anderen machen muss

solid ingot
#

hey, das zeige ich im video. wenn du noch einen konkreten error hast, helf ich dir dabei gerne weiter 👍🏽

lofty haven
solid ingot
#

wenn du noch keine klasse hast würde ich erstmal eine klasse erstellen

lofty haven
#

hab ich

#

und dann

#

self parameter einfügen?

solid ingot
#

zum beispiel, wird alles im video erklärt

lofty haven
# solid ingot zum beispiel, wird alles im video erklärt
  File "C:\Users\Benjamin\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\cog.py", line 786, in _load_from_module_spec
    setup(self)
  File "D:\Users\Benjamin\Documents\MiniBossPYY\cogs\Ticket.py", line 78, in setup
    bot.add_cog(db(bot))
  File "C:\Users\Benjamin\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\cog.py", line 656, in add_cog
    cog = cog._inject(self)
  File "C:\Users\Benjamin\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\cog.py", line 567, in _inject
    raise e
  File "C:\Users\Benjamin\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\cog.py", line 561, in _inject
    bot.add_command(command)
AttributeError: 'Bot' object has no attribute 'add_command'. Did you mean: 'all_commands'?

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

Traceback (most recent call last):
  File "D:\Users\Benjamin\Documents\MiniBossPYY\main.py", line 25, in <module>
    bot.load_extension(f"cogs.{filename[:-3]}")
  File "C:\Users\Benjamin\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\cog.py", line 910, in load_extension
    self._load_from_module_spec(spec, name)
  File "C:\Users\Benjamin\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\cog.py", line 791, in _load_from_module_spec
    raise errors.ExtensionFailed(key, e) from e
discord.errors.ExtensionFailed: Extension 'cogs.Ticket' raised an error: AttributeError: 'Bot' object has no attribute 'add_command'

Process finished with exit code 1
solid ingot
#

schick mal deinen code

#

evtl noch welche pycord version du benutzt

lofty haven
solid ingot
#

hm, wie das mit prefix commands geht weiß ich ehrlich gesagt gar nicht, ich würde aber auf jeden fall empfehlen die klasse in eine andere python datei zu machen

lofty haven
#

wie meinst du das

solid ingot
#

aktuell hast du die klasse in der main datei, ich würde dafür eine neue datei erstellen

lofty haven
#

das ist nicht die main datei

#

und wird aus der main datei ausgerufen

solid ingot
#

das bot = commands.Bot sollte nur in der main datei sein

lofty haven
#

achso ja vlt gehts dann

lofty haven
#

weil ich hab das ja 10 mal im code oder so

urban glen
#

Wie kann man einen Button & Select Menü halt nh Klasse 24/7 machen?

dense magnet
#

Persistent?

urban glen
dense magnet
floral monolith
dense magnet
urban glen
# dense magnet Das ist ein Beispiel wie du Buttons und Select menüs 24/7 machst
class PersistentViewBot(commands.Bot):
    def __init__(self):
        intents = discord.Intents.default()
        intents.message_content = True
        super().__init__(
            command_prefix=commands.when_mentioned_or("!"), intents=intents
        )
        self.persistent_views_added = False

    async def on_ready(self):
        if not self.persistent_views_added:
            # Register the persistent view for listening here.
            # Note that this does not send the view to any message.
            # In order to do this you need to first send a message with the View, which is shown below.
            # If you have the message_id you can also pass it as a keyword argument,
            # but for this example we don't have one.
            self.add_view(PersistentView())
            self.persistent_views_added = True

Durch so einen Code?

dense magnet
#

ja?

urban glen
#

Ok gut

#

hab den code halt bisschen schlecht verstanden nur so zur Nachfrage yk

mystic sentinel
#

kann man auch das echte alter anzeigen

urban glen
urban glen
mystic sentinel
#

ok schade

urban glen
#

glaub mir entfern dass mit alter

#

dass ist unnötig dann kann jeder user bei deinem alter 10 oder so eingeben

mystic sentinel
#

hätte ich auch

urban glen
#

jo

solid ingot
urban glen
jade sapphire
#

Kann jemand kurz meinem DC Server joinen damit ich Welcome testen kann

mystic sentinel
#

kann man sein server private machen und wenn ja wie kann man ihn wieder öffenlich machen

solid ingot
#

wenn du niemanden einlädst ist er ja sozusagen privat, dann kann niemand joinen. um ihn öffentlich zu machen, kannst du zum beispiel "community" in den server einstellungen aktivieren

urban glen
#

genau

solid ingot
urban glen
#

@mystic sentinel man kann discord server in der regel nicht privat machen solange schon mitglieder drauf sind

urban glen
jade sapphire
#

Neuer versuch

#

Py

urban glen
#

nur wegen mir

#

(dm)

solid ingot
urban glen
solid ingot
#

achso