#Allgemeine Hilfe

1 messages · Page 76 of 1

azure jasper
#

Könntest du mir Vielleicht ein beispiel zeigen?

cloud cedar
#

och manno :(

#

also bot ist online aber hat 0 commands

#

sagt ezcord

ruby sparrow
twilit anvil
#

Hey, kurze knackige Frage:

Ich möchte die Startzeit meines Bots in einem Discord Timestamp anzeigen lassen. Ich habe schon ein Datetime Objekt. Wie kann ich das ganze nun zu einem Timestamp umwandeln?

urban glen
#

Und ezcord hat auch sowas

twilit anvil
odd kiteBOT
cloud prawn
#

Bei meinem Ticket system muss ich immer nach dem bot restart das Ticket embed neu senden wie fixe ich das?

cloud cedar
cloud prawn
#

Damit jeder user nur ein Ticket öffnen kann muss man mit db arbeiten oder?

urban glen
#

Wäre am einfachsten

#

Generell Ticket bot ohne dB geht nicht wirklich

cloud prawn
cloud prawn
urban glen
#

Mit deinem command

#

Auch wenn es garkein Ticket ist

cloud prawn
#

nee, da wird bis jetzt nur der channel gelöscht wo man den command verwendet

urban glen
cloud prawn
#

ja

urban glen
#

Ja dann wir general gelöscht

cloud prawn
#

ja

urban glen
#

Das ist schlecht

cloud prawn
#

ja...

#

aber ka wie ich das machen soll

#

mag button nicht

urban glen
#

Dafür brauchst du eine Datenbank

#

Um dir zu speichern welcher Channel ein Ticket ist

#

Und ob er gelöscht werden darf oder nicht

cloud prawn
#

Ja, aber von db keine ahnug wie ich das machen soll

#

entweder ich mache das mit button oder command und db

cloud cedar
#

Buttons sind cool, select menus sind auch super

urban glen
#

Alles ist toll

urban glen
#

Mit dB

cloud prawn
#

Ja das könnte auch gehen

urban glen
#

Timo erklärt dir alles

#

Mit dbs und Buttons und so

cloud prawn
#

Buttons habe ich schon

#

aber mit db muss ich mir genauer anschauen

azure jasper
#

wie lasse ich noch Folder/file laden?

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

Mit ezcord gehts einfacher

odd kiteBOT
#

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

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

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

PYCORD
Docs ► https://docs.pycord.dev/
Guide ► https:...

▶ Play video
azure jasper
fierce dove
#

Ja

azure jasper
# fierce dove Ja

danke, am besten wo er cogs/folder/file er soll dann jeden folder laden

fierce dove
#

Das kommt alles im Video vor

azure jasper
cloud prawn
#
    async def on_ready(self):
        async with aiosqlite.connect("tickets.db") as db:
            await db.execute(
                """"
                CREATE TABLE users (
                user_id INTEGER PRIMARY KEY,
                tickets INTEGER DEFAULT 0
                )
                """
            )```
die datei "tickets.db" wird nicht erstellt
urban glen
# fierce dove Mit ezcord gehts einfacher
def load_cogs(folder: str):
    for path in os.listdir(folder):
        folder_path = f'{folder}/{path}'
        if os.path.isdir(folder_path):
            load_cogs(folder_path)
            continue

        if not path.endswith('.py'):
            continue

        cog_name = path.removesuffix('.py')
        cog_location = f'{folder}.{cog_name}'.replace('/', '.')

        try:
            bot.load_extension(f'{cog_location}')
            print(f'✅ | Successfully loaded Cog: {cog_location}')

        except (
            discord.ExtensionNotFound,
            discord.ExtensionAlreadyLoaded,
            discord.NoEntryPointError,
            discord.ExtensionFailed
        ) as exception:
            print(f'❌ | Failed to load Cog: {cog_location}')
            raise exception
#

das hatte ich mal selber gemacht für unterordner

#

aber ja mit ezcord ist einfacher

ruby sparrow
cloud prawn
odd kiteBOT
#

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

Links aus diesem Video
EzCord Docs ► https://ezcord.readthedocs.io/en/latest/ezcord/sql.html

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

▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
Inhalt 📚
Heute schauen wir uns an, wie wir Datenbank...

▶ Play video
#

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

Links aus diesem Video
EzCord Docs ► https://ezcord.readthedocs.io/en/latest/ezcord/sql.html

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

▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
Inhalt 📚
Heute schauen wir uns an, wie wir Datenbank...

▶ Play video
fierce dove
#

Hmmm

ruby sparrow
#

hm

cloud prawn
#

okk ich versuch es mal

fierce dove
ruby sparrow
#

hm ja das stimmt

fierce dove
#

☺️

ruby sparrow
#

guck mal dm

fierce dove
#

Ich?

ruby sparrow
#

ja

ruby sparrow
cloud prawn
ruby sparrow
#

ja

cloud prawn
#
    def __init__(self):
        super().__init__("ticket.db")

    async def setup(self):
        print("setup")
        await self.exec(
            """CREATE TABLE IF NOT EXISTS users (
            user_id INTEGER PRIMARY KEY,
            tickets INTEGER DEFAULT 0
            )
            """
        )


db = TicketDB()```
es printet sowiso k´nichts
cloud prawn
ruby sparrow
# cloud prawn Ja, habe ich mal will jz ein eigenes coden
class TicketDB(ezcord.DBHandler):
    def __init__(self):
        super().__init__("test.db")

    async def setup(self):
        print("test")
        await self.exec(
            """CREATE TABLE IF NOT EXISTS users (
            user_id INTEGER PRIMARY KEY,
            tickets INTEGER DEFAULT 0
            )
            """)

db = TicketDB()```
#

mach mal so

#

und guck mal ob es print

#

bei mir geht das

cloud prawn
#

liegt maybe an pychaerm

ruby sparrow
#

ne

#

send mal dein ganze code

cloud prawn
#
from discord.ext import commands
from discord.commands import slash_command
import asyncio
import ezcord


class TicketDB(ezcord.DBHandler):
    def __init__(self):
        super().__init__("test.db")

    async def setup(self):
        print("test")
        await self.exec(
            """CREATE TABLE IF NOT EXISTS users (
            user_id INTEGER PRIMARY KEY,
            tickets INTEGER DEFAULT 0
            )
            """)

db = TicketDB()


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

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

    @slash_command(name="ticket_setup")
    async def ticket_setup(self, ctx):
        embed = discord.Embed(
            title="Role accses",
            description="""You must have 210 vouches to get the TRUSTED role.
You must have 80 vouches to get the EXPERIENCED role
You must have our vanity  in your STATUS to get the SELLER role.
NOTE: Removing vanity after getting role = BLACKLIST (UPTO BAN).""",
            color=discord.Color.green()
        )
        await ctx.send(embed=embed, view=TutorialView())
        await ctx.response.send_message("It was sent successfully", ephemeral=True)

    @slash_command()
    async def add_user(self, ctx, user: discord.User):
        if ctx.author.guild_permissions.manage_channels:
            channel = ctx.channel
            await channel.set_permissions(user, read_messages=True, send_messages=True)
            await ctx.respond(f"Der Benutzer {user.mention} wurde dem Ticket hinzugefügt.")
        else:
            await ctx.respond("Du hast keine Berechtigung, Benutzer hinzuzufügen.", ephemeral=True)```
ruby sparrow
#

help me

fierce dove
#

Bei was

ruby sparrow
# cloud prawn ```import discord from discord.ext import commands from discord.commands import ...
import discord
from discord.ext import commands
from discord.commands import slash_command
import asyncio
import ezcord


class TicketDB(ezcord.DBHandler):
    def __init__(self):
        super().__init__("test.db")

    async def setup(self):
        print("Test")
        await self.exec(
            """CREATE TABLE IF NOT EXISTS users (
            user_id INTEGER PRIMARY KEY,
            tickets INTEGER DEFAULT 0
            )
            """)

db = TicketDB()


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

    @commands.Cog.listener()
    async def on_ready(self):
        pass

    @slash_command(name="ticket_setup")
    async def ticket_setup(self, ctx):
        embed = discord.Embed(
            title="Rollenzugriff",
            description="""Du musst 210 Vouches haben, um die TRUSTED-Rolle zu erhalten.
Du musst 80 Vouches haben, um die EXPERIENCED-Rolle zu erhalten.
Du musst unsere Vanity in deinem Status haben, um die SELLER-Rolle zu erhalten.
HINWEIS: Entfernen der Vanity nach Erhalt der Rolle = BLACKLIST (BIS ZUM BAN).""",
            color=discord.Color.green()
        )
        await ctx.send(embed=embed)
        await ctx.respond("wurde erfolgreich gesendet", ephemeral=True)

    @slash_command()
    async def add_user(self, ctx, user: discord.User):
        if ctx.author.guild_permissions.manage_channels:
            channel = ctx.channel
            await channel.set_permissions(user, read_messages=True, send_messages=True)
            await ctx.respond(f"Der Benutzer {user.mention} wurde dem Ticket hinzugefügt.")
        else:
            await ctx.respond("Du hast keine Berechtigung, Benutzer hinzuzufügen.", ephemeral=True)



def setup(bot):
    bot.add_cog(TicketSystem(bot))``` mach mal so
cloud prawn
#

geht ned error beim starten
discord.errors.ExtensionFailed: Extension 'cogs.Ticket system' raised an error: NameError: name 'ticket_system' is not defined

ruby sparrow
cloud prawn
#

nope

#

same error

ruby sparrow
#

bei mir nicht

#

kannst du kurz call

cloud prawn
#

Ich glaube ich weis wieso

#

Ja jz gehts

#

aber kein setup print und keine neue datei

ruby sparrow
cloud prawn
#

ja das auch nicht

ruby sparrow
#

hm

#

komm mal call

cloud prawn
#

Kann halt nichts hören also macht es kein sinn

ruby sparrow
#

🙂

#

bei geht das

cloud prawn
#

dann ka

ruby sparrow
#

ja

native helm
#

kennt sich einer mit domains und webserver as

viscid lake
native helm
#

weiß einer wie man seine Domain mit seinem web server zu verbinden

graceful fiber
#

Und auf deinen Domain host

#

Aber vermutlich musst du erstmal einen A Record auf die IP deines Servers machen und nen SSL Zertifikat hinzufügen

#

@native helm

twilit anvil
native helm
#

@graceful fiber & @twilit anvil Könnte einer Von euch in den Talk ??

twilit anvil
#

Was ist denn deine Frage?

native helm
#

wie es Geht

twilit anvil
#

Wie was geht?

graceful fiber
native helm
graceful fiber
# native helm wie es Geht

Sag einfach mal nen bisschen konkreter dein Problem bitte, ansonsten kannst du mit unseren Stichwörtern bestimmt auch gute Tutorials finde oder Docs vom hoster

graceful fiber
graceful fiber
native helm
# native helm

Ich bin bei strato und habe meinen Eigenen server da ist mein webserver auch und da möchte ich die domain drauf haben aber ich weiß nicht wie das geht

graceful fiber
#

Das wäre dann ein erster Schritt

#

Strato hat aber eigentlich auch eine Dokumentation dazu

#

Kann sonst nachher kurz Talk wenn du's dann noch nicht hast

native helm
#

dass ist aber so ```py

85.215.50.142:3511

twilit anvil
#

In diesem Fall brauchst du einen Reverse Proxy

native helm
#

wie mache ich das ??

twilit anvil
#

Einfach mit Docker compose

limpid wolf
#

Oder einfach Nginx normal nutzen mit Configs, ist auch nicht so schwer

ruby sparrow
#

Hey Leute, ich stehe vor einem Problem: Es scheint, dass es nicht möglich ist, keine Custom Emojis add kann wer Kann mir jemand dabei helfen oder mir erklären, warum das so ist? ```py
@ticket.command()
async def select(self, ctx, name: str, emoji: discord.Emoji):
options = [
discord.SelectOption(label=name, value=name, emoji=emoji)
]
select = discord.ui.Select(
placeholder="Select an option",
options=options
)
view = discord.ui.View()
view.add_item(select)

    await ctx.respond("Please select an option:", view=view)``` ```py

error
[ERROR] Error while sending error report to webhook. Please check if the URL is correct.
[ERROR] Error while executing /ticket select
Traceback (most recent call last):
File "C:\Users\Dark_Angel\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\bot.py", line 1130, in invoke_application_command
await ctx.command.invoke(ctx)
File "C:\Users\Dark_Angel\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\commands\core.py", line 376, in invoke
await injected(ctx)
File "C:\Users\Dark_Angel\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\commands\core.py", line 131, in wrapped
ret = await coro(arg)
File "C:\Users\Dark_Angel\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\commands\core.py", line 1370, in _invoke
await command.invoke(ctx)
File "C:\Users\Dark_Angel\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\commands\core.py", line 376, in invoke
await injected(ctx)
File "C:\Users\Dark_Angel\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\commands\core.py", line 131, in wrapped
ret = await coro(arg)
File "C:\Users\Dark_Angel\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\commands\core.py", line 981, in _invoke
arg = await converter().convert(ctx, arg)
File "C:\Users\Dark_Angel\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\ext\commands\converter.py", line 846, in convert
raise EmojiNotFound(argument)
discord.ext.commands.errors.EmojiNotFound: Emoji "peepohype" not found.

tawdry leaf
ruby sparrow
#

es geht um die emojis

tawdry leaf
#

bei error webhook url

tawdry leaf
ruby sparrow
#

hab schon

tawdry leaf
#

war es der fehler 😐

ruby sparrow
#

Syntax

weary jewel
#

Hey ich wurde zu ein privaten Post auf github eingeladen habe den auch angenommen finde ihn aber jetzt nicht mehr

ruby sparrow
#

Du musst ihn einladen

weary jewel
#

Ne habe angenommen weiß jetzt aber nicht wo ich das finden

ruby sparrow
#

da @weary jewel

weary jewel
#

Ok danke

weary jewel
ruby sparrow
#

du musst schon auf ein Projekt von dir gehen🤨

weary jewel
#

Ich möchte ja kein hinzufügen

ruby sparrow
#

denn warum frage du hä

weary jewel
#

Ich wurde von einer Person in eine post hinzugefügt

#

Und weiß nicht wo ich den finden kann

ruby sparrow
#

weißt du wie der User heißt auf github? 😮

weary jewel
#

Ja

ruby sparrow
#

denn gibt user name ein

#

oder hier hin denn müsss es da sein

violet pendant
#

Kann mir wer helfen?

        if interaction.channel.name == "ticket-":
            ticket_id = "Support"
            return
        if interaction.channel.name == "bewerben-":
            ticket_id = "Bewerben"
            return
        if interaction.channel.name == "bug-":
            ticket_id = "Bug"

embed5.add_field(name="Ticket ID", value=ticket_id)```
#

wieso geht value nicht?

ruby sparrow
#

Error?

violet pendant
# ruby sparrow Error?
Ignoring exception in view <TicketClose timeout=None children=1> for item <Button style=<ButtonStyle.danger: 4> url=None disabled=False label='Schließen' emoji=<PartialEmoji animated=False name='🔒' id=None> row=None>:
Traceback (most recent call last):
  File "C:\Users\tyler\PycharmProjects\minenoxbot\venv\Lib\site-packages\discord\ui\view.py", line 426, in _scheduled_task
    await item.callback(interaction)
  File "C:\Users\tyler\PycharmProjects\minenoxbot\src\ticket.py", line 199, in button_callback3
    embed5.add_field(name="Ticket ID", value=ticket_id)
                                             ^^^^^^^^^
UnboundLocalError: cannot access local variable 'ticket_id' where it is not associated with a value```
ruby sparrow
#

Zeig mal deine button

violet pendant
#
        if interaction.channel.name == "ticket-":
            ticket_id = "Support"
            return
        if interaction.channel.name == "bewerben-":
            ticket_id = "Bewerben"
            return
        if interaction.channel.name == "bug-":
            ticket_id = "Bug"

        embed5 = discord.Embed(
            title="Ticket geschlossen",
            color=discord.Color.green(),
            timestamp=datetime.datetime.now()
        )
        embed5.add_field(name="Ticket ID", value=ticket_id)```
#

yk?

ruby sparrow
#

Das ist doch bei button das embed oder wo

#

?

violet pendant
#

beim close button

ruby sparrow
#

Zeig mal deine view class

violet pendant
#

wofür denn

ruby sparrow
#

hast du auch das value definiert?

violet pendant
#

Ich will einfach wenn der Channel bestimmt heißt, das die Variable zu einer von den drein geändert wird. Und dann im Embed field ausgegeben wird

violet pendant
ruby sparrow
ruby sparrow
#

Geht ?

violet pendant
#

ja ansich schon aber der channel heißt ja eig immer bewerben-(user)

#

deswegen immer unbekannt

#

was auch sinn macht

#

Wie kann ich das jetzt fixen? peepothink

ruby sparrow
# violet pendant Wie kann ich das jetzt fixen? <:peepothink:1027724419944161281>
if interaction.channel.name.startswith("bewerben-"):
    ticket_id = interaction.channel.name[len("bewerben-"):]
elif interaction.channel.name == "ticket-":
    ticket_id = "Support"
elif interaction.channel.name == "bug-":
    ticket_id = "Bug"
else:
    ticket_id = "Unknown"

embed5 = discord.Embed(
    title="Ticket geschlossen",
    color=discord.Color.green(),
    timestamp=datetime.datetime.now()
)
embed5.add_field(name="Ticket ID", value=ticket_id)
``` so zb
violet pendant
#

ist ja auch bei ticket-(user) und auch bei bug-(user)

#

aber ich verstehe das len nicht

#

will es ja auch verstehen

#

ah hab gecheckt danke dir

ruby sparrow
#

jo

#

bitte

violet pendant
#

Wie kann ich machen das der bot mit einer aktion z.B. 3 seconden warten soll

#

also z.B. /channeldelete aber er soll den erst nach 3sekunden löschen

ruby sparrow
#

mit py await asyncio.sleep(5) await interaction.channel.delete()

#

@violet pendant

violet pendant
#

Jo

ruby sparrow
#

😮

violet pendant
#

sicher das das richtig ist?

ruby sparrow
#

interaction ist bei button XD

#

🤔

#

wiss du schon oder

violet pendant
#

await asyncio.sleep(5)
await interaction.channel.delete()

#

sonst sagt er ist falsch

ruby sparrow
#

denn macht so

#

hab auch so

cloud cedar
#

HeyHo minecraft Freunde, ich möchte gerne für meinen Bot ein Ticketban-System machen
-> Ich würde dann für jeden Server eine Liste von IDs der dort gebannten user machen aber wie mach ich das genau?
Habe bis jetzt nur globale Sachen gemacht

#

Hat da wer ne Idee?

graceful fiber
#

Also was erwartest du für ne Antwort?

cloud cedar
graceful fiber
cloud cedar
graceful fiber
#

Na denn ist doch alles gut? gigapeepo

cloud cedar
graceful fiber
#

Es geht um ein Ticketsystem?

#

Woraus man bannen kann?

cloud cedar
graceful fiber
cloud cedar
#

stimmt

graceful fiber
#

Einfach einen Ticketban Command und dann wird z.b. der User einer DB hinzugefügt mit der User und Server id

cloud cedar
graceful fiber
#

Zum Beispiel ja

#

Wäre sehr simpel, aber das kann man ja auch gut wieder abfragen

cloud cedar
#

Ich geb denen einfach ne Ticketban Rolle 🔥

#

they call me einstein

ruby sparrow
#

Ja klar

cloud cedar
#

die drecks datenbanken kann ruhig discord übernehmen 🔥

ruby sparrow
#

Wenn du ein öffentlich discord bot machen willst dann musst du mit Datenbanken oder mit json arbeiten

#

@cloud cedar komm mal kurz dm

cloud cedar
#

HILLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLFE

#

was da los >:(

elfin rampart
cloud cedar
elfin rampart
#

glaube schon, haben lange nicht mehr damit gearbeitet

cloud cedar
odd kiteBOT
cloud cedar
#

Hey checke das nicht ganz, wie gette ich eine Rolle über die Id? self.bot.get_role(id) ist es nicht :(

ruby sparrow
#

code ?

cloud cedar
ruby sparrow
cloud cedar
#

danki

ruby sparrow
#

so muss gehen

fresh flint
#
                user: discord.PermissionOverwrite(read_messages=True, send_messages=True),
                rolee: discord.PermissionOverwrite(read_messages=True, send_messages=True),
                interaction.guild.default_role: discord.PermissionOverwrite(read_messages=False)
            }```


wie kann "rolee" dem user eine rolle geben also die permisson dazu?
ruby sparrow
ruby sparrow
#

hallo wie kann ich mein Dashboard mit meinem Domain verbinden

fierce dove
#

Welches

ruby sparrow
#

was für

ruby sparrow
#
INFO:     Started server process [9508]
INFO:     Waiting for application startup.
INFO:     Application startup complete.
ERROR:    [Errno 11001] getaddrinfo failed
INFO:     Waiting for application shutdown.
INFO:     Application shutdown complete.```
fierce dove
#

startet die website

fierce dove
#

ich wurde gezwungen des zu machen von lucky 😦

ruby sparrow
#

er error kommt bei website starten

fierce dove
#

ich soll dir von lucky sagen du bist ein noob

untold forge
#

kennt wer ne gute einfache alternative zu openai in python? möchhte eig nur nen askai cmd machen bin aber ziemlich am strugglen

ruby sparrow
#

wo bei brachst du helfe

vast cradle
#

weiß jemand ob man das was in den tutorials gezeigt wurde mit den lokalen datenbanken und aiosqlite auch mit normalen maria DB Datenbanken umsetzbar ist

graceful fiber
#

Ist ja im Endeffekt auch nur eine Datenbank

vast cradle
#

ok also mit der lib aiomysql dann

graceful fiber
#

Aso ka

#

Einfach mal googlen

#

Aber Mariadb hat eigentlich eine eigene

#

Also eher nicht nehme ich an

vast cradle
vast cradle
#

ich brauche mal ganz kurz hilfe

#

ich hab 2 buttons die keine eigene klasse haben

ruby sparrow
#

Code?

vast cradle
#

lass mich bitte erst den fehler beschreiben

#

so schnell bin ich nicht

ruby sparrow
vast cradle
#

aber beide in dem slash command sind wie kann ich die beide inten bei der view variable neben dem embed anzeigen oder müssen beide buttons view heißen?

#

ups

#

link vergessen

ruby sparrow
#

Wieso machst du nicht einfach in einer class die Button peepothink

vast cradle
#
@slash_command(description="Invite den Bot")
    @commands.cooldown(1, 15, commands.BucketType.user)
    async def invite(self, ctx):
        button = discord.ui.Button(label="Invite", url="Link Bot Invite")
        view_invite = discord.ui.View()
        view_invite.add_item(button)
        button = discord.ui.Button(label="Support Server", url="Link Server")
        view_sup = discord.ui.View()
        view_sup.add_item(button)

        embed = discord.Embed(
            title="Links!",
            description="Du kannst den Bot zu deinem Server hinzufügen indem du auf den Invite Button klickst!\n"
                        "oder du kannst den Support Server Beitreten in dem Du auf den Support Server Button Klickst!",
            color=color
        )
        embed.set_footer(text="2024 x Bot")
        embed.set_thumbnail(url=self.bot.user.display_avatar.url)
        await ctx.respond(embed=embed, view=[view_invite, view_sup])```
#

so jezt aber alle Sperrbaren Links raus

#

ich dacchte ich könnte es in ner liste übergeben

#

naja schade hätte ja klappen können

ruby sparrow
#

Soweit wie ich weiß du kannst bei euch Respond nur ein Button schicken

vast cradle
#

was ist wenn ich mehrere brauche dann brauchts ne eigene klasse?

ruby sparrow
#

Och doch

vast cradle
ruby sparrow
vast cradle
#

das ich alle einfach am anfang view nenne?

#

oder wie soll ichs verstehen

ruby sparrow
#

Zeig mal deine class

#

von Button

vast cradle
#

hab keine

ruby sparrow
vast cradle
#

ist im Slash command

ruby sparrow
#

Denn mach mit class

vast cradle
#

ich wollte es ohne eigene class für den button

ruby sparrow
#

Es ist besser

#

@vast cradle

vast cradle
ruby sparrow
#

np

vast cradle
#

pycord sollte das ja nicht interessieren

ruby sparrow
#

ne

#

du kannst deine class so nennen wie du willst

#

@vast cradle

vast cradle
#

gut

ruby sparrow
#

Du kannst immer wieder neue Buttons mit @discord.ui.button machen

#

Ist deine Frage geantwortet?

#

@vast cradle

vast cradle
#

ja

fierce dove
#

Was soll alles in nem Control PC bot rein habe bereits

Screenshot, rotate, press key und press hotkey, PC notification

restive herald
#

was macht rotate?

limpid wolf
ruby sparrow
#

kann wer helfen

#
if __name__ == "__main__":
    uvicorn.run(app, host="littxle.de", port=8000)```
fierce dove
#

Es kommen aber Fehler

cloud cedar
cloud cedar
#

hast du die gekauft?

ruby sparrow
#

Ja

cloud cedar
restive herald
#

also aktuell

cloud cedar
restive herald
#

da muss ich dich enttäuschen, die docs sagen was anderes.

odd kiteBOT
restive herald
#

siehst du?

cloud cedar
#

nico hat das gesagt :((((

restive herald
#

bei bot kannst nur guild getten

cloud cedar
#

wie mach ich das jetzt also?

restive herald
#

musst guild getten und in guild dann get_role

#

also guild.get_role

cloud cedar
restive herald
#

ja

#

muss nur halt noch var festlegen

#

also r = await guild.get_role(id)

cloud cedar
#

danki :)

#

slayyy geht

cloud cedar
#

Wie checke ich ob ein user ne bestimmte Rolle hat? hab user obj und rollen obj

cloud cedar
#

keine Ahnung :(

cloud cedar
cloud cedar
#

:( was hab ich falsch gemacht

ruby sparrow
#

Code

cloud cedar
# ruby sparrow Code
        ticketbann_role = await db.get_ticketbann_role(interaction.guild.id)
        guild = self.bot.get_guild(interaction.guild.id)
        try:
            ticketbann_role_obj = guild.get_role(ticketbann_role)
            if ticketbann_role_obj is None:
                raise ValueError("Ticketbann-Rolle existiert nicht")
        
        except Exception as e:
            embed = discord.Embed(title="❌ Ups!", description=f"Hmm, ich finde die Rolle, die die vom Ticketsystem gebannten Mitglieder markiert nicht... ich habe das dem Serverinhaber mitgeteilt!", color=discord.Color.red())
            await interaction.response.send_message(embed=embed, ephemeral=True)
            server_owner_obj = self.bot.get_user(interaction.guild.owner.id)
            guild = self.bot.get_guild(interaction.guild.id)
            embed = discord.Embed(title = "Huhu 👋", description=f"Ich finde die Ticketbann-Rolle für {guild.name} nicht :( \n - Das kann z.B. daran liegen, dass die Rolle gelöscht wurde. \n Verwende einfach /setup auf dem Server, um die Rolle neu einzustellen UwU", color=discord.Color.brand_red())
            return await server_owner_obj.send(embed = embed)
        
        if ticketbann_role_obj in interaction.user:
            embed = discord.Embed(title = "❌ Ups!", description="🚨 Stopp! Du bist auf diesem Server von der Nutzung des Ticketsystems gebannt!", color=discord.Color.brand_red())
ruby sparrow
#
if ticketbann_role_obj in interaction.user.roles:
    embed = discord.Embed(title="❌ Ups!", description="🚨 Stopp! Du bist auf diesem Server von der Nutzung des Ticketsystems gebannt!", color=discord.Color.brand_red())```
#

so glaub ich

cloud cedar
#

warum hab ich das falsch gemacht 🤦‍♂️

#

danke

ruby sparrow
ruby sparrow
fierce dove
#

was soll das machen

fierce dove
restive herald
#

ach stimmt

cloud cedar
#

ohne cooldown

fierce dove
#

soll das dann zu mir kommen

cloud cedar
fierce dove
#

@solid ingot darf ich

restive herald
#

wollte dir noch vorschlagen, dass du diese ganzen "standarts" machst wie halt pc lock, anzeige wie schnell internet is etc

fierce dove
#

wie meinst du das mit pc lock

urban glen
#

hallo an alle

habe ein embed und eine view dann möchte ich nur die view ändern aber es geht nicht

import asyncio
import json
import os

import aiosqlite
import discord
from discord.ext import commands
from discord.commands import slash_command, Option
from datetime import datetime
from discord.commands import SlashCommandGroup


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

    async def User_hinzufuegen_function(self, interaction):
        await interaction.message.edit(view=UserHinzufuegenUserDropdown())






def setup(bot):
    bot.add_cog(clear_user_hinzufuegen(bot))
cloud cedar
urban glen
fierce dove
restive herald
fierce dove
#

das kamm mann schon bei press hotkey machen

restive herald
#

ah

#

dann mach mal antivirus

fierce dove
#

was solll das können

graceful fiber
tired hearth
#

Ja nervt echt xD

ruby sparrow
#

Und du anworte nix auf dem select Menü

urban glen
# ruby sparrow Und du anworte nix auf dem select Menü

guten tag, hatte jetzt den code überarbeitet

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

    async def user_hinzufuegen_function(self, interaction):
        embed = discord.Embed(
            title="User hinzufügen",
            description="Wähle einen Benutzer aus, der die Berechtigung zum Löschen von Nachrichten erhalten soll.",
            color=discord.Color.blue(),
        )

        await interaction.message.edit(embed=embed, view=UserHinzufuegenUserDropdown())
        await interaction.message.edit(view=self)
        await interaction.response.send_message(
            "ok, wähle im Dropdown Menu ein User aus der den Befehl clear ab jetzt nutzen darf",
            ephemeral=True,
        )




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

aber da kommt dieser fehlercode:

#
Ignoring exception in view <ClearConfigDropdown timeout=None children=1> for item <Select type=<ComponentType.string_select: 3> placeholder='Wähle eine Option aus' min_values=1 max_values=1 options=[<SelectOption label='User Hunzufügen' value='user_hinzufuegen' description='wenn ein bestimmter user clear benutzen darf' emoji=<PartialEmoji animated=False name='⭐' id=None> default=False>, <SelectOption label='User Entfernen' value='user_entfaeren' description='wenn ei
' emoji=<PartialEmoji animated=False name='⭐' id=None> default=False>, <SelectOption label='Rolle Hinzufügen' value='rolle_hinzufuegen' description='wenn eine bestimmte Rolle clear benutzen darf' emoji=<PartialEmoji animated=False name='⭐' id=None> default=False>, <SelectOption label='Rolle Entfernen' value='rolle_entfaeren' description='wenn eine bestimmte Rolle clear nicht benutzen darf' emoji=<PartialEmoji animated=False name='⭐' id=None> default=False>, <SelectOption label='View' value='view' description='WSehen welcher user und welche Rollen den Command benutzen dürfen' emoji=<PartialEmoji animated=False name='⭐' id=None> default=False>] channel_types=[] disabled=False>:
Traceback (most recent call last):
  File "C:\Users\melvi\PycharmProjects\vindijk_4-bots\.venv\lib\site-packages\discord\ui\view.py", line 414, in _scheduled_task
    await item.callback(interaction)
  File "C:\Users\melvi\PycharmProjects\vindijk_4-bots\cogs\clear\clear_config.py", line 99, in clear_config_dropdown_callback
    await user_hinzufuegen_code.user_hinzufuegen_function(interaction)
  File "C:\Users\melvi\PycharmProjects\vindijk_4-bots\cogs\clear\user_hinzufuegen.py", line 25, in user_hinzufuegen_function
    await interaction.message.edit(view=self)
  File "C:\Users\melvi\PycharmProjects\vindijk_4-bots\.venv\lib\site-packages\discord\message.py", line 1434, in edit
    payload["components"] = view.to_components() if view else []
AttributeError: 'clear_user_hinzufuegen' object has no attribute 'to_components'
ruby sparrow
#

Guck dir nochmal an

fierce dove
#
Traceback (most recent call last):
  File "C:\Users\Schüler\AppData\Local\Programs\Python\Python312\Lib\site-packages\discord\cog.py", line 778, in _load_from_module_spec
    spec.loader.exec_module(lib)  # type: ignore
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "<frozen importlib._bootstrap_external>", line 995, in exec_module
  File "<frozen importlib._bootstrap>", line 488, in _call_with_frames_removed
  File "C:\Users\Schüler\Documents\controll-pc\cogs\notification.py", line 12, in <module>
    elevenlabs.set_api_key("78f1893803190a0bsf2a1d7df7076467c18cx98d28")
    ^^^^^^^^^^^^^^^^^^^^^^
AttributeError: module 'elevenlabs' has no attribute 'set_api_key'

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

Traceback (most recent call last):
  File "C:\Users\Schüler\Documents\controll-pc\bot.py", line 10, in <module>
    bot.load_cogs(
  File "C:\Users\Schüler\AppData\Local\Programs\Python\Python312\Lib\site-packages\ezcord\bot.py", line 318, in load_cogs
    self.load_extension(cog)
  File "C:\Users\Schüler\AppData\Local\Programs\Python\Python312\Lib\site-packages\discord\cog.py", line 912, in load_extension
    self._load_from_module_spec(spec, name)
  File "C:\Users\Schüler\AppData\Local\Programs\Python\Python312\Lib\site-packages\discord\cog.py", line 781, in _load_from_module_spec
    raise errors.ExtensionFailed(key, e) from e
discord.errors.ExtensionFailed: Extension 'cogs.notification' raised an error: AttributeError: module 'elevenlabs' has no attribute 'set_api_key'
fresh flint
#

Hat wer ein bsp. code für Logs?

ruby sparrow
fresh flint
#

muss ja nichts dabei sein vlt. nur ein kommentar wo die logs beginnen

#

oder nur den log code

ruby sparrow
#

GucK doch in #1027677692730036294

fresh flint
#

Ok, und was ist in dem code

    def __init__(self, bot: discord.Bot) -> None:
        self.bot = bot

    @commands.Cog.listener()
    async def on_application_command(self, ctx: discord.ApplicationContext) -> None:
        logs = get_channel(ctx.guild, 'command-logs')
        embed = discord.Embed(
            title=f'/{ctx.command} in {ctx.channel}',
            timestamp=datetime.datetime.now(),
            color=discord.Color.purple()
        )
        embed.add_field(name='User', value=ctx.user.mention)
        embed.add_field(name='Channel', value=ctx.channel.mention)

        command = f'/{ctx.command} '
        if ctx.selected_options:
            command += ' '.join(
                (
                    f'**{option["name"]}**:{option["value"]}'
                    for option
                    in ctx.selected_options
                )
            )
        embed.add_field(name='Command', value=command)
        embed.set_author(name=ctx.user.display_name, icon_url=ctx.user.display_avatar)

        await logs.send(embed=embed)``` mit 

        ```logs = get_channel(ctx.guild, 'command-logs')```
muss dann im server ein channel sein namens "command-logs"
fierce dove
#

???

fresh flint
#

ok, danke

restive herald
#

Jmd ne Idee warum bei dem abschicken des forms das was auf dem screen zu sehen ist erscheint?

#

Code Formular:

    <h2>Kanaleinstellungen</h2>
    <p>Wartebereich: <br>Aktuell: {{ wait }}</p>
    <p>Kanal ändern:
    <form action="/server/{{ id }}/settings/voicesup/wait" method="POST">
        <label for="voice_channel">Wartebereich:</label>
        <select name="voice_channel" id="voice_channel">
            {% for channel in channels %}
                {% set channel_parts = channel.split(' ') %}
                <option value="{{ channel_parts[0] }}">{{ channel_parts[1] }}</option>
            {% endfor %}
        </select>
        <input type="submit" value="Speichern">
    </form>

Code POST Methode:

@app.post("/server/{guild_id}/settings/voicesup/wait")
async def change_wait(guild_id: int, session_id: str = Cookie(None), wait: int = Form(...)):
    user_id = await db.get_user_id(session_id)
    if not session_id or not user_id:
        raise HTTPException(status_code=401, detail="no auth")
    perms = await ipc.request("check_perms", guild_id=guild_id, user_id=user_id)
    if not perms.response["perms"]:
        return {"error": "Du hast keinen Zugriff auf diesen Server"}
    await voicesup_db.update_setting(guild_id, "wait",wait )
    return RedirectResponse(url="/server/" + str(guild_id)+"/settings/voicesup")
restive herald
#

also das kommt wenn abgeschickt wird

silk gulch
restive herald
hard pivot
#

Hi ich habe das Problem das Pylance mir Optains immer untersteicht kann ich das irgendwie fixen?

hard pivot
hard pivot
#

Und das macht es bei jeder Option

restive herald
#

müsste iwo nen button geben womit das script so gemacht wird das diese fehler behebt

hard pivot
restive herald
#

müsste noch nen anderen geben iwo

#

kann dir nur nd sagen wo genau gerade

violet pendant
#

Er will die Videos nicht abspielen

[generic] Extracting URL: Villager - Gangsta's Paradise
[youtube:search] Extracting URL: ytsearch:Villager - Gangsta's Paradise
[download] Downloading playlist: Villager - Gangsta's Paradise
[youtube:search] query "Villager - Gangsta's Paradise": Downloading web client config
[youtube:search] query "Villager - Gangsta's Paradise" page 1: Downloading API JSON
[youtube:search] Playlist Villager - Gangsta's Paradise: Downloading 1 items of 1
[download] Downloading item 1 of 1
[youtube] Extracting URL: https://www.youtube.com/watch?v=pf5RZ0a3qXM
[youtube] pf5RZ0a3qXM: Downloading webpage
[youtube] pf5RZ0a3qXM: Downloading ios player API JSON
[youtube] pf5RZ0a3qXM: Downloading android player API JSON
WARNING: [youtube] Skipping player responses from android clients (got player responses for video "aQvGIIdgFDM" instead of "pf5RZ0a3qXM")
[youtube] pf5RZ0a3qXM: Downloading m3u8 information
Ignoring exception in command play:
Traceback (most recent call last):
  File "C:\Users\tyler\PycharmProjects\MineNoxMusic\venv\Lib\site-packages\discord\commands\core.py", line 131, in wrapped
    ret = await coro(arg)
          ^^^^^^^^^^^^^^^
  File "C:\Users\tyler\PycharmProjects\MineNoxMusic\venv\Lib\site-packages\discord\commands\core.py", line 1009, in _invoke
    await self.callback(self.cog, ctx, **kwargs)
  File "C:\Users\tyler\PycharmProjects\MineNoxMusic\cogs\youtube.py", line 29, in play
    url = info['url']
          ~~~~^^^^^^^
KeyError: 'url'

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

Traceback (most recent call last):
  File "C:\Users\tyler\PycharmProjects\MineNoxMusic\venv\Lib\site-packages\discord\bot.py", line 1130, in invoke_application_command
    await ctx.command.invoke(ctx)
  File "C:\Users\tyler\PycharmProjects\MineNoxMusic\venv\Lib\site-packages\discord\commands\core.py", line 376, in invoke
    await injected(ctx)
  File "C:\Users\tyler\PycharmProjects\MineNoxMusic\venv\Lib\site-packages\discord\commands\core.py", line 139, in wrapped
    raise ApplicationCommandInvokeError(exc) from exc
discord.errors.ApplicationCommandInvokeError: Application Command raised an exception: KeyError: 'url'
[download] Finished downloading playlist: Villager - Gangsta's Paradise```
#

Code:

    @slash_command()
    async def play(self, ctx, musik: discord.Option()):
        await ctx.author.voice.channel.connect()

        FFMPEG_OPTIONS = {
            'before_options': '-reconnect 1 -reconnect_streamed 1 -reconnect_delay_max 5',
            'options': '-vn',
        }
        vc = ctx.voice_client

        YDL_OPTIONS = {'format': 'bestaudio/best', 'noplaylist': True, 'default_search': 'auto'}
        with yt_dlp.YoutubeDL(YDL_OPTIONS) as ydl:
            info = ydl.extract_info(musik, download=False)
            url = info['url']
            source = await discord.FFmpegOpusAudio.from_probe(url, **FFMPEG_OPTIONS)

        vc.play(source)```
ruby sparrow
# violet pendant Code: ```py @slash_command() async def play(self, ctx, musik: discord.Op...
@slash_command()
async def play(self, ctx, musik: discord.Option()):
    await ctx.author.voice.channel.connect()

    FFMPEG_OPTIONS = {
        'before_options': '-reconnect 1 -reconnect_streamed 1 -reconnect_delay_max 5',
        'options': '-vn',
    }
    vc = ctx.voice_client

    YDL_OPTIONS = {'format': 'bestaudio/best', 'noplaylist': True, 'default_search': 'auto'}
    with yt_dlp.YoutubeDL(YDL_OPTIONS) as ydl:
        info = ydl.extract_info(musik, download=False)
        if 'url' in info:
            url = info['url']
            source = await discord.FFmpegOpusAudio.from_probe(url, **FFMPEG_OPTIONS)
            vc.play(source)
        else:
            await ctx.respond("error")```
violet pendant
# ruby sparrow ```py @slash_command() async def play(self, ctx, musik: discord.Option()): a...

WARNING: [youtube] Skipping player responses from android clients (got player responses for video "aQvGIIdgFDM" instead of "pf5RZ0a3qXM")
[youtube] pf5RZ0a3qXM: Downloading m3u8 information
[out#0/opus @ 00000259eb6aeac0] Codec AVOption b (set bitrate (in bits/s)) has not been used for any stream. The most likely reason is either wrong type (e.g. a video option with no video streams) or that it is a private option of some encoder which was not actually used for any stream.

#

Das war ja eig ne such fukntion

ruby sparrow
#

Guck gleich

cloud cedar
#

hi ganz kurz: wie checke ich bei meinem Dropdown View das value?
Also if selectvalue == "delete" so

fierce dove
#

Glaube ja

cloud cedar
#

ich will ja das value vom selectetem checken

#

wieeeeeeeeeee

jaunty jasper
cloud cedar
jaunty jasper
#

Also das 1 Value

cloud cedar
#

ja

#

danke

#

nice funktioniert

fresh flint
#
    def __init__(self):
        super().__init__()

    @discord.ui.button(label="Create Ticket", style=discord.ButtonStyle.primary, emoji="📨")
    async def button_callback(self, button, interaction):
        try:
            user = interaction.user
            role_id = 1234223112355188836  # Hier deine Support ID
            role = interaction.guild.get_role(role_id)

            overwrites = {
                user: discord.PermissionOverwrite(read_messages=True, send_messages=True),
                role: discord.PermissionOverwrite(read_messages=True, send_messages=True),
                interaction.guild.default_role: discord.PermissionOverwrite(read_messages=False)
            }

            channel = await interaction.guild.create_text_channel(f"{user.name}-ticket", overwrites=overwrites)

            try:
                await interaction.response.send_message(f"The channel {channel.mention} got created!", ephemeral=True)
            except:
                print("Error sending message")
                pass

            embed_ticket = discord.Embed(
                title="New Ticket",
                description=f"""Please wait until Support team answer!""",
                color=discord.Color.green()
            )

            await channel.send("<@&1234223112355188836>")
            await channel.send(embed=embed_ticket)


        except Exception as e:
            print(e)
            await interaction.followup.send(f"An error occurred: {e}", ephemeral=True)```

Wie kann ich im embed_ticket eine view classe adden, da ```            await channel.send(embed=embed_ticket, view=viewclass)``` nicht geht
azure jasper
#
await channel.send(embed=embed_ticket, view=TutorialView())```
#

@fresh flint

fresh flint
#

ahh war dumm

#

habe die klammern vergessen😅

azure jasper
#

sie heißt TutorialView

vast cradle
#

gibt es irgendwo mit allen farben die ezcord beim logging so zur verfügung stellt?

old ore
#

wie kann ich diesen fehler beheben?

Error:

Ignoring exception in command claim_owner:
Traceback (most recent call last):
  File "C:\Python310\lib\site-packages\discord\commands\core.py", line 131, in wrapped
    ret = await coro(arg)
  File "C:\Python310\lib\site-packages\discord\commands\core.py", line 1008, in _invoke
    await self.callback(self.cog, ctx, **kwargs)
  File "a:\Coding\Astro_bot\systems\vc_claim_owner.py", line 42, in claim_owner
    async with db.cursor() as cursor:
  File "C:\Python310\lib\site-packages\aiosqlite\context.py", line 46, in __aexit__
    await self._obj.close()
  File "C:\Python310\lib\site-packages\aiosqlite\cursor.py", line 69, in close
    await self._execute(self._cursor.close)
  File "C:\Python310\lib\site-packages\aiosqlite\cursor.py", line 31, in _execute
    return await self._conn._execute(fn, *args, **kwargs)
  File "C:\Python310\lib\site-packages\aiosqlite\core.py", line 122, in _execute
    raise ValueError("Connection closed")
ValueError: Connection closed

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 1130, in invoke_application_command
    await ctx.command.invoke(ctx)
  File "C:\Python310\lib\site-packages\discord\commands\core.py", line 376, in invoke
    await injected(ctx)
  File "C:\Python310\lib\site-packages\discord\commands\core.py", line 139, in wrapped
    raise ApplicationCommandInvokeError(exc) from exc
discord.errors.ApplicationCommandInvokeError: Application Command raised an exception: ValueError: Connection closed    
graceful fiber
#

Und im async kannst du logischerweise keine geschlossene Verbindung aufrufen?

azure jasper
#

Warum ist das in PyCharm immer Gelb?

tawdry leaf
#

vermutlich irgendwas mit einrückung oder so kann man meiens Wissens ausstellen

azure jasper
#

jede klasse ist ja gelb

tawdry leaf
#

hast ein warning

#

ein gelbes warnzeichen oben rechts

azure jasper
#

alles gelb

tawdry leaf
#

Put the caret on a warning you'd like to silence, press Alt-Enter and select the "Ignore errors like this" option.

fierce dove
#

Lucky kann Englisch

tawdry leaf
old ore
ruby sparrow
ruby sparrow
#
error

[ERROR] Error while executing /ticket select 
Traceback (most recent call last):
  File "C:\Users\Dark_Angel\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\commands\core.py", line 131, in wrapped
    ret = await coro(arg)
  File "C:\Users\Dark_Angel\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\commands\core.py", line 1009, in _invoke
    await self.callback(self.cog, ctx, **kwargs)
  File "C:\Users\Dark_Angel\Desktop\Jinx-Bot\cogs\ticket.py", line 166, in select
    await db.set_option(ctx.guild.id, name, emoji)
  File "C:\Users\Dark_Angel\Desktop\Jinx-Bot\cogs\ticket.py", line 78, in set_option
    await self.execute(
  File "C:\Users\Dark_Angel\AppData\Local\Programs\Python\Python310\lib\site-packages\ezcord\sql.py", line 330, in execute
    return await self.exec(sql, *args, end=end, **kwargs)
  File "C:\Users\Dark_Angel\AppData\Local\Programs\Python\Python310\lib\site-packages\ezcord\sql.py", line 324, in exec
    raise e
  File "C:\Users\Dark_Angel\AppData\Local\Programs\Python\Python310\lib\site-packages\ezcord\sql.py", line 321, in exec
    cursor = await db.execute(sql, args)
  File "C:\Users\Dark_Angel\AppData\Local\Programs\Python\Python310\lib\site-packages\aiosqlite\core.py", line 193, in execute
    cursor = await self._execute(self._conn.execute, sql, parameters)
  File "C:\Users\Dark_Angel\AppData\Local\Programs\Python\Python310\lib\site-packages\aiosqlite\core.py", line 132, in _execute
    return await future
  File "C:\Users\Dark_Angel\AppData\Local\Programs\Python\Python310\lib\site-packages\aiosqlite\core.py", line 115, in run
    result = function()
sqlite3.IntegrityError: UNIQUE constraint failed: ticket.guild_id
``` ```py

meine code
@ticket.command()
    async def select(self, ctx, name: str, emoji: str):
        await db.set_option(ctx.guild.id, name, emoji)

        ticket_message = await db.get_message(ctx.guild.id)
        if ticket_message:
            message = await ctx.channel.fetch_message(ticket_message)
            t_options.append(discord.SelectOption(label=name, emoji=emoji))
            view = CreateTicketSelect(t_options)
            await message.edit(view=view)
            await ctx.respond("The option was added successfully.", ephemeral=True)
        else:
            await ctx.respond("The ticket message was not found. Please set it up First!", ephemeral=True)```
#
und meine db 



class TicketDB(ezcord.DBHandler):
    def __init__(self):
        super().__init__("db/ticket.db")

    async def setup(self):
        try:
            await self.execute(
                """CREATE TABLE IF NOT EXISTS ticket(
                guild_id INTEGER PRIMARY KEY,
                category_id INTEGER DEFAULT 0,
                teamrole_id INTEGER DEFAULT 0,
                logs_channel_id INTEGER DEFAULT 0,
                channel_id INTEGER DEFAULT 0,
                message_id INTEGER DEFAULT 0,
                option_name TEXT,
                option_emoji TEXT 
                )"""
            )
        except Exception as e:
            print(f"Error setting up database: {e}")

    async def set_category(self, guild_id, category_id):
        await self.execute(
            "INSERT OR IGNORE INTO ticket  (guild_id, category_id) VALUES (?, ?) ON CONFLICT(guild_id) DO UPDATE SET category_id = ?",
            (guild_id, category_id, category_id)
        )

    async def get_category(self, guild_id):
        return await self.one("SELECT category_id FROM ticket WHERE guild_id = ?", (guild_id,))

    async def set_teamrole(self, guild_id, teamrole_id):
        await self.execute(
            "INSERT OR IGNORE INTO ticket (guild_id, teamrole_id) VALUES (?, ?) ON CONFLICT(guild_id) DO UPDATE SET teamrole_id = ?",
            (guild_id, teamrole_id, teamrole_id)
        )

    async def get_teamrole(self, guild_id):
        return await self.one("SELECT teamrole_id FROM ticket WHERE guild_id = ?", (guild_id,))

    async def set_logs_channel(self, guild_id, logs_channel_id):
        await self.execute(
            "INSERT OR IGNORE INTO ticket (guild_id, logs_channel_id) VALUES (?, ?) ON CONFLICT(guild_id) DO UPDATE SET logs_channel_id = ?",
            (guild_id, logs_channel_id, logs_channel_id)
        )

    async def get_logs_channel(self, guild_id):
        return await self.one("SELECT logs_channel_id FROM ticket WHERE guild_id = ?", (guild_id,))

    async def set_channel(self, guild_id, channel_id):
        await self.execute(
            "INSERT OR IGNORE INTO ticket (guild_id, channel_id) VALUES (?, ?) ON CONFLICT(guild_id) DO UPDATE SET channel_id = ?",
            (guild_id, channel_id, channel_id)
        )

    async def get_channel(self, guild_id):
        return await self.one("SELECT channel_id FROM ticket WHERE guild_id = ?", (guild_id,))

    async def set_message(self, guild_id, message_id):
        await self.execute(
            "INSERT OR IGNORE INTO ticket (guild_id, message_id) VALUES (?, ?) ON CONFLICT(guild_id) DO UPDATE SET message_id = ?",
            (guild_id, message_id, message_id)
        )

    async def get_message(self, guild_id):
        return await self.one("SELECT message_id FROM ticket WHERE guild_id = ?", (guild_id,))

    async def set_option(self, guild_id, option_name, option_emoji):
        await self.execute(
            "INSERT INTO ticket (guild_id, option_name, option_emoji) VALUES (?, ?, ?)",
            (guild_id, option_name, option_emoji)
        )

    async def get_options(self, guild_id):
        return await self.all("SELECT option_name, option_emoji FROM ticket WHERE guild_id = ?", (guild_id,))


db = TicketDB()```
restive herald
#

hast iwo 2x gleichen primary key eingetragen

ruby sparrow
restive herald
#

hast einmal kein OR IGNORE

ruby sparrow
azure jasper
ruby sparrow
azure jasper
#

Wie es ist kein Deutsch? Nachrichten ist kein Deutsch

#

Wer hat dich den Geballert?

ruby sparrow
restive herald
ruby sparrow
#

doch jz

cloud cedar
#

Krieg beim hosting des dashboards diesen error auf die seite - in`s Terminal wird nix geprinted

twilit anvil
#

Tachometer. Habe mir Tobis Video mit den User Apps angesehen.

Problem: SlashCommandGroups funktionieren bei User Installs nicht, kann man das fixxen?

ruby sparrow
#

code

ruby sparrow
cloud cedar
#

#1235642918258081872 kann wer helfen

graceful fiber
cloud cedar
graceful fiber
cloud cedar
#

Also auf Ubuntu seh icke nix
Bzw aufm server

graceful fiber
#

Nginx hat auch logs

#

Nicht nur im Terminal

cloud cedar
graceful fiber
#

Wo auch immer der in deinem Server ist

#

Meistens bei var/Log/nginx

#

@tawdry leaf ?

cloud cedar
cloud cedar
#

In der 2. Dasselbe + Ssl do handshake error

vast cradle
#

das ich in "" ne farbe an geben kann

#

aber weiß nicht was ezcord hat

ruby sparrow
vast cradle
#

nee bei en logs

vast cradle
#

Wo Speichert Pterodactyl die MySQL Login Daten?

odd kiteBOT
ruby sparrow
#

@vast cradle

#

Es gibt kein en logs

vast cradle
#

Wie en

#

Bei den logs

#

Nicht en

ruby sparrow
#

Ich verstehe deine farge nicht

vast cradle
#

Ich rede von allgemein ezcord.log

odd kiteBOT
vast cradle
ruby sparrow
ruby sparrow
vast cradle
#

Ich hab vergessen was ich bei Pterodactyl für nen Passwort vergeben hab und hab das Passwort vom Pterodactyl User geändert

#

Jetzt muss ich in der Pterodactyl Config das ändern

#

Famits wieder Passt

ruby sparrow
#

Von dein oder von @high glen ?

vast cradle
#

Von meinem

ruby sparrow
#

hm da kann ich dir nicht helfen

vast cradle
#

Uff

#

Wurde von den Idioten vom Pterodactyl Panel getimeoutet

#

Für 7 Tage

#

Es klappt aber jetzt wieder

#

War ne .env Datei

#

Dateien die mit . anfangen werden bei meinem FTP Programm Standartmäßig ausgeblendet

fresh flint
#

kNn ich durch embed.set_image(url="pintereest link" angeben oder ein von einem Browser direkt?

fresh flint
vast cradle
#

Kennt jemand ne Alternative zu Pterodactyl/Pelican wenn nicht werde ich nen Docker Container aufsetzen

cloud cedar
#

Kennst du 🫵 dich mit Ubuntu aus?
Ich hab den Perfekten Kanal für dich!
#1235642918258081872

fresh flint
#

Wieso sagt es das ich kein title habe also
File "d:\discord Bots\Exchange Server bot\cogs\ticket.py", line 65, in select_callback
await interaction.response.send_modal(exhange(title="Exchange"))
^^^^^^^^^^^^^^^^^^^^^^^^^
File "d:\discord Bots\Exchange Server bot\cogs\ticket.py", line 77, in init
super().init(
TypeError: Modal.init() missing 1 required keyword-only argument: 'title'

habe es so

            await interaction.response.send_modal(exhange(title="Exchange"))```
restive herald
#

schickmal wie du das modal erstellst

fresh flint
fresh flint
#

wie gebe ich den channel an wo eine embed hingesndet wird?

#

habe es mit ``` channel = guild.get_channel(1235946622782013470)

    await channel.send(embed=embed)```

also das ist in nem modal bei mir

#

und dann kommt NameError: name 'guild' is not defined

fresh flint
#

mit guild = get_guild(id) (so laut den docs)
gehts immernoch ned

violet pendant
#

Ich brauche jemanden der sich mit PC Hardware auskennt

#

Ich habe einen alten PC rumliegen habe die Ram sticks rausgenommen und sie passen nicht wieder rein

#

Und auserdem piept der beim starten einmal (als die sticks drin wahren)

tawdry leaf
#

eventuell post machen

azure jasper
#

Warum löscht er die Mesage nach 10 Sekunden nicht´?

@bot.event
async def on_message(message):
    if message.content.startswith("?play"):
        try:
            if message.author.voice is None:
                await message.reply("Du musst in einem Voice-Channel sein, um Musik abzuspielen.", ephemeral=True)
                return

            voice_client = await message.author.voice.channel.connect()
            voice_clients[voice_client.guild.id] = voice_client
        except Exception as e:
            print(e)

        try:
            url = message.content.split()[1]

            loop = asyncio.get_event_loop()
            data = await loop.run_in_executor(None, lambda: ytdl.extract_info(url, download=False))

            song = data['url']
            player = discord.FFmpegOpusAudio(song, **ffmpeg_options)

            if voice_clients[message.guild.id].is_playing():
                remaining_time_seconds = data.get('duration', 0)

                embed = discord.Embed(
                    description=f"Es wird bereits ein Lied abgespielt. Bitte warte noch **{format_remaining_time(remaining_time_seconds)}**.",
                    color=discord.Color.yellow()
                )
                sent_message = await message.channel.send(embed=embed, content=f"{message.author.mention}")
                await asyncio.sleep(10)
                await sent_message.delete()
            else:
                voice_clients[message.guild.id].play(player)
                embed = discord.Embed(
                    description=f"Es wird jetzt der Song '**{data['title']}**' abgespielt.",
                    color=discord.Color.green()
                )
                sent_message = await message.channel.send(embed=embed, content=f"{message.author.mention}")
                await asyncio.sleep(10)
                await sent_message.delete()
        except Exception as e:
            print(e)

        await message.delete()```
inland cove
#

Mach doch einfach mit
delete _after=10

#

Also message.channel.send(embed=embed, delete_after=10)

#

Natürlich mit dem was du sonst noch dabei brauchst

graceful fiber
azure jasper
#

Wie Geht das das der ephemeral Nach einer zeit weg Geht?

ruby sparrow
azure jasper
#

kuss

ruby sparrow
#

🙂

azure jasper
# ruby sparrow 🙂

Messageable.send() got an unexpected keyword argument 'ephemeral'

@bot.event
async def on_message(message):
    if message.content.startswith("?play"):
        try:
            if message.author.voice is None:
                await message.reply("Du musst in einem Voice-Channel sein, um Musik abzuspielen.", ephemeral=True, delete_after=5)
                return```
azure jasper
#

Kann wer helfen?

violet pendant
#

bei so einem alten code...

azure jasper
ruby sparrow
azure jasper
violet pendant
#

der code

azure jasper
violet pendant
ruby sparrow
fierce dove
#

Sieht man doch nico

#

Der macht das in Ner main

ruby sparrow
#

ja

#

aber timo guck bei mir rein

fierce dove
#

Muss ich

cloud cedar
#

huhu hilfi hilfi #1235642918258081872

ruby sparrow
fierce dove
azure jasper
ruby sparrow
restive herald
graceful fiber
fresh flint
ruby sparrow
#

kann wer helfen ?

#

🥲

restive herald
azure jasper
graceful fiber
fresh flint
azure jasper
fresh flint
#

Kann man den user von einem anderen modal/button in ein anderen modal/button getten, wenn ja wie??

ruby sparrow
fresh flint
#

will den button.authot getten jz z.b und in meinem Modal angeben wie mache ich das?

ruby sparrow
fresh flint
#

interaction.author

#

meinte das

ruby sparrow
#

gibt auch net

fresh flint
#

wie

ruby sparrow
fresh flint
#

warte

#

ahh glaube interaction.user

#

das war es

twin slate
#

Und interaction.user ist richtig wie shemm es gesagt hat

azure jasper
#

Wie macht man soetwas?

ruby sparrow
azure jasper
#

das dann beim richtigen embed weg geht

ruby sparrow
#

Das ist neu von discord

azure jasper
ruby sparrow
#

das hat eigentlich alle

azure jasper
azure jasper
#

Wie erstellt man solche Timestampts in Pycord o. Ezcord?

fierce dove
fresh flint
#

File "/home/ppp/exchangebot/main.py", line 8, in <module>
bot = discord.Bot(command_prefix="!", intents=intents)
AttributeError: module 'discord' has no attribute 'Bot'

wie fixt man das?

odd kiteBOT
ruby sparrow
#

@azure jasper hier

azure jasper
#

danke

ruby sparrow
azure jasper
#

aber das ist nur ein converter

#

@ruby sparrow

ruby sparrow
#

Hm

ruby sparrow
odd kiteBOT
ruby sparrow
#

@azure jasper und hier ist für py-cord

azure jasper
#

aber ich möchte ja in .. Minuten oder Sekunden und Stunden.

ruby sparrow
azure jasper
cloud cedar
#

hilllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllfe
#1235642918258081872

ruby sparrow
# azure jasper Wo da
  embed.add_field(name='Last Reboot', value= discord.utils.format_dt((self.start_time), "R"), inline=True)```
#

```self.start_time = datetime.now()``

azure jasper
#

@solid ingot Wie hast du das gemacht?

solid ingot
#

wo genau ist das?

azure jasper
ruby sparrow
azure jasper
#

das will ich das sind Timestampts aber ich weiß nicht wie da es irgend welche besonderen sind

ruby sparrow
#

Ja da du musst das als cootdown einbauen

azure jasper
#

nah bro

ruby sparrow
#

doch

azure jasper
#

@solid ingot weiß glaube was ich meine

ruby sparrow
inland cove
#

braucht mal da nicht einfach nur einen timestamp der in die Zukunft berechnet ist… und schon wird die Differenz zu der Zeit als „coolup“ angezeigt… 🤷‍♂️ ist jetzt nur ne Vermutung und wie ich es angehen bzw. testen würde 🤷‍♂️

odd kiteBOT
vast cradle
#

@ruby sparrow discord.errors.ApplicationCommandInvokeError: Application Command raised an exception: OperationalError: no such table: ticket

#

dein code bekommt es nicht hin das Table zu erstellen

#

warum auch immer

ruby sparrow
#

Hast du aus Ticket Ordner genommen oder nicht

vast cradle
#

eigendlich sollte ews aber gehen

#
 """CREATE TABLE IF NOT EXISTS ticket(
                server_id INTEGER PRIMARY KEY,
                category_id INTEGER DEFAULT 0,
                teamrole_id INTEGER DEFAULT 0,
                logs_channel_id INTEGER DEFAULT 0
                )"""```
#

hmh

#

warum auch immer

ruby sparrow
#

Zeig mal code

vast cradle
ruby sparrow
#

denn kann ich dir sagen was für db benutzt du

#

Bro ich muss wissen was für ein Part ist der bug ist

#

Eigentlich ist der Part 2 komplett gefixt da kann keine Fehler mit die Datenbank

#

@vast cradle

#

Deswegen schick mir mal den Code welche du benutzt

vast cradle
#

es geht um setup

#

im ordner tickets

#

den code

ruby sparrow
#

Hast du auch ein DB Ordnerpeepothink

vast cradle
#

jep

ruby sparrow
#

Zeig

vast cradle
#

die datei hat er auch erstellt

ruby sparrow
#

lad dir denn die db von github runter

vast cradle
vast cradle
#

so kenne ich es von normalen datenbanken

ruby sparrow
#

Ja aber bei dir macht es nicht

#

Zeig mal dein code

#

Will was gucken

ruby sparrow
#

@vast cradle

cloud cedar
#

Ich hab nen Bestätigen Button, der ne neue Nachricht sendet wenn man ihn drückt
Wie lösche ich die Nachricht mit dem Bestätigen-Button, wenn der button gedrückt wird?

restive herald
#

🙂

tawdry leaf
#

sus

restive herald
#

@cloud cedar

cloud cedar
ruby sparrow
#

Oha ghost ping

restive herald
#

hab dich ausversehen gepingt nico, sry

restive herald
restive herald
ruby sparrow
cloud cedar
restive herald
ruby sparrow
restive herald
restive herald
cloud cedar
odd kiteBOT
#

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

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

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

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

▶ Play video
restive herald
#

schau mal hier

azure jasper
#

Möchte mich mit dem Server verbinden.

cloud cedar
# restive herald <@907619780524134440>

Hey hab das so gemacht aber das löscht nicht die nachricht mit dem Button, sondern die nachricht, die durchs drücken des buttons gesendet wird :(
@discord.ui.button(label = "BESTÄTIGEN", style=discord.ButtonStyle.danger, emoji="🗑")
async def button_callbackdelete(self, button, interaction):
await interaction.response.send_message("Wird gelöscht... :/", ephemeral = True)

    await db.remove_server(interaction.guild.id)
    
    await interaction.delete_original_message()
restive herald
#

ach ja

#

original_response is die antwort die gegeben wird

restive herald
cloud cedar
cloud cedar
restive herald
#

und wenn du original_response machst

#

bin verwirrt

#

moment bitte

#

ok is beides das gleiche, musst also die id der msg bekommen und dann die msg getten und löschen

hard pivot
#

Weiß wer wie ich das so formatieren kann?

#

Weil bei mir ist das garnicht eben

fresh flint
#

kannst du mir das embed schicken?

tawdry leaf
#

meinst du wie links?

#

musst eben den abstand definieren das dann immer der bot da dann den nächsten text erst schreibt

restive herald
#

würde eher sagen, das sind 4 embed felder mit inline=True (oder wars false? idk)

#

und da is dann halt immer nen \n nach dem wert

tawdry leaf
restive herald
restive herald
restive herald
azure jasper
fresh flint
dusty tiger
#

warte ich mach schnell und shcick dir dann

hard pivot
hard pivot
fierce dove
hard pivot
#

Das alles schon untereinander steht

fierce dove
#

Es ist doch alles untereinander

dusty tiger
fierce dove
#

Oky

hard pivot
dusty tiger
#

fertig

#
spaces = "     "
len_spaces = len(spaces)

level = "3033"

len_level = len(level)

print(str(len_level) + " " + str(len_spaces))

spaceee = len_spaces - len_level

spacee = ''.join([' ' for i in range(spaceee)])

print(str(level) + spacee + "|")
#

Kannst du was damit anfangen?

tawdry leaf
dusty tiger
#

||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​||||​|| https://voided.host/sjkpsVvsGecXAbyx

dusty tiger
#

👍

restive herald
# fresh flint achso

außerdem sollte man nicht nach code fragen, dafür gibt es #1027677692730036294

fresh flint
restive herald
#

nen embed is auch code…

hard pivot
azure jasper
#

Kann man das auch irgend wie als bot machen? das der bot die umfrage erstellt

tired hearth
#

Habe jetzt schon seit längerem diesen Fehler:

  Traceback (most recent call last):
  File "/home/container/.local/lib/python3.11/site-packages/discord/client.py", line 400, in _run_event
    await coro(*args, **kwargs)
  File "/home/container/.local/lib/python3.11/site-packages/discord/bot.py", line 1178, in on_connect
    await self.sync_commands()
  File "/home/container/.local/lib/python3.11/site-packages/discord/bot.py", line 754, in sync_commands
    app_cmds = await self.register_commands(
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/container/.local/lib/python3.11/site-packages/discord/bot.py", line 531, in register_commands
    prefetched_commands = await self._bot.http.get_guild_commands(
                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/container/.local/lib/python3.11/site-packages/discord/http.py", line 367, in request
    raise Forbidden(response, data)
discord.errors.Forbidden: 403 Forbidden (error code: 50001): Missing Access``` und weiß nicht woher er kommt.
tired hearth
#

@restive herald ```py

import logging
import os
from dotenv import load_dotenv
from colorama import Fore
import discord
import ezcord
from ezcord import log
import asyncio

load_dotenv() # Laden Sie die .env-Datei zuerst, um auf die Umgebungsvariablen zugreifen zu können

bot = ezcord.Bot(discord.Intents.all(), error_webhook_url=os.getenv("WEBHOOK_URL"), language="de")
bot.add_help_command()

async def get_guild_count():
return len(bot.guilds)

bot.add_status_changer(
[
"Ist auf {guild_count} Servern:tada:",
"Lade mich jetzt ein!:white_check_mark:",
"Join meinem Support Server:slight_smile:"
],
interval=30,
guild_count=get_guild_count,
)

if name == "main":
# Load all cogs with a custom log style
bot.load_cogs("cogs", log=ezcord.CogLog.default, log_color="green")
bot.run(os.getenv("TOKEN"))```

restive herald
#

eif mal kurz die msg edited

restive herald
#

?

tired hearth
#

beim start kommt das immer

odd kiteBOT
restive herald
#

hast du iwo debug guilds festgelegt?

tired hearth
restive herald
#

Strg F hilft 🙂

tired hearth
restive herald
#

damit kannst du etwas schneller suchen 😄

tired hearth
#

ne habe ich nd

#

@restive herald

restive herald
#

auch nd being nen cmd oder so?

tired hearth
odd kiteBOT
restive herald
#

@azure jasper was suchst denn

azure jasper
restive herald
#

ok

odd kiteBOT
azure jasper
#

Brauche Hilfe

tawdry leaf
#

Okay.

fierce dove
fierce dove
#

Bie was Hilfe

azure jasper
#

kann mir wer dort helfen

fierce dove
#

:0

digital crypt
#

Hallo

ruby sparrow
digital crypt
#

Hey

vast cradle
#

Ich bekomme bei meinem Dashboard Teil nen Keyboard interupt error

#

Hat jemand ne Idee warum?

#

Also immer beim Stoppen des Bots

rancid raven
# vast cradle Hat jemand ne Idee warum?

Ist eigentlich nichts aus deinem Code, passiert bei einigen python codes/libs wenn man mit ctrl+c das programm beendet
und das führen zum teil auch die IDE´s aus wenn man Stopp button drückt oder sowas

ruby sparrow
#

hey leute ich hab eine frage zu db

#

wie kann ich name aus er db löschen hier ist code py @ticket.command() async def remove(self, ctx, name: Option(str, autocomplete=basic_autocomplete(get_ticket))): await ctx.defer(ephemeral=True) ticket_message = await db.get_message(ctx.guild.id) if ticket_message: try: message = await ctx.channel.fetch_message(ticket_message) for option in t_options: if option.label == name: t_options.remove(option) view = CreateTicketSelect(t_options) await message.edit(view=view) await ctx.respond("The option was removed successfully.", ephemeral=True) except Exception as e: await ctx.respond(f"An error occurred: {e}", ephemeral=True) else: await ctx.respond("The ticket message was not found. Please set it up First!", ephemeral=True

cloud cedar
#

heyho minecraft freunde :D
was fürn event krieg ich wenn der bot auf einen Server eingeladen wird?

#
  • wie gette ich ne kategorie?
jaunty jasper
cloud cedar
azure jasper
#

wie geht das ?

#

das dort nur 435 Servers steht ohne Spielen oder so

#

@solid ingot

odd kiteBOT
#

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

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

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

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

▶ Play video
azure jasper
#

@solid ingot geht das auch mit dnd? das er dnd ist oder geht nur online?

solid ingot
#

geht auch mit dnd

azure jasper
azure jasper
# solid ingot geht auch mit dnd

activity1 = discord.CustomActivity(type=discord.ActivityType.dnd, name="Test")
^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: type object 'ActivityType' has no attribute 'dnd'

async def update_activity(bot):
    while True:
        activity1 = discord.CustomActivity(type=discord.ActivityType.dnd, name="Text1")

        activity2 = discord.CustomActivity(type=discord.ActivityType.dnd, name="Text2")

        await bot.change_presence(activity=activity1)
        await asyncio.sleep(10)
        await bot.change_presence(activity=activity2)
        await asyncio.sleep(10)

bot.loop.create_task(update_activity(bot))```
ruby sparrow
azure jasper
#

bitte

ruby sparrow
#

hm

azure jasper
#

vanity_invite = await member.guild.fetch_vanity_url()
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'Guild' object has no attribute 'fetch_vanity_url'

            try:
                vanity_invite = await member.guild.fetch_vanity_url()
                server_info += f"\n\n[Server Einladung]({vanity_invite})"
            except discord.NotFound:
                print("Vanity Invite nicht verfügbar.")
                server_info += f"\n\n[Server Einladung]({await self.bot.generate_invite()})"
            except discord.Forbidden:
                print("Zugriff auf Vanity Invite verweigert.")
                server_info += f"\n\n[Server Einladung]({await self.bot.generate_invite()})"
            except discord.HTTPException:
                print("Fehler beim Abrufen des Vanity Invites.")
                server_info += f"\n\n[Server Einladung]({await self.bot.generate_invite()})"```
odd kiteBOT
ruby sparrow
old ore
#

wie kann ich die guild id in so einem autocomplette wie das von templates bekommen

ruby sparrow
old ore
#
async def templates(ctx: discord.AutocompleteContext):
    db = await aiosqlite.connect('data/vc_settings.db')
    async with db.cursor() as cursor:
        await cursor.execute("SELECT * FROM vc_templates WHERE guild_id = ?", (,))
        data = await cursor.fetchall()
    await db.close()
    return [template[2] for template in data] + ["all"]

async def region_finder(ctx: discord.AutocompleteContext):
    return [region for region in discord.VoiceRegion] + ["auto"]


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

    @slash_command(name="vc_template_edit_region", description="Edit the region of a voice channel template")
    async def vc_template_edit_rg(self, ctx: discord.ApplicationContext, template_name: Option(str, "The name of the template", autocomplete=templates), region: Option(str, "The region of the voice channel", autocomplete=region_finder)):
old ore
old ore
#

ich schau mal ob das so geht

old ore
#

was sind die 3 für regionen

ruby sparrow
#

hm gute frage

ruby sparrow
old ore
ruby sparrow
#

bei db

#

komm mal in coding

restive herald
#

@vast cradle der error beim dashboard reloadn is nd schlimm; kannst ignorieren ig

tawdry leaf
#

😮

tawdry leaf
azure jasper
#

Warum ist da keine Description?

    @slash_command(name="play", description="Spielt Musik ab")
    async def play_music(self, ctx, url: str = "Gebe eine YouTube URL an"):```
cloud cedar
#

mach mal in discord strg + r

azure jasper
# cloud cedar angezeigt wird er?

und wie mache ich das das er automatisch alle guild debugt? ich habe multiguild der code geht irgend wie nd


import discord, ezcord, dotenv, os, asyncio

intents = discord.Intents.all()
intents.voice_states = True

dotenv.load_dotenv()
bot = ezcord.Bot(
    intents=intents,
    language="de",
    ready_event=ezcord.ReadyEvent.box_colorful
)

guild_ids = [guild.id for guild in bot.guilds]
print(guild_ids)
bot = ezcord.Bot(
    intents=intents,
    debug_guilds=guild_ids,
    language="de",
    ready_event=ezcord.ReadyEvent.box_colorful,
)
token = str(os.getenv("TOKEN"))

if __name__ == "__main__":
    bot.load_cogs(subdirectories=True)

bot.run(token)```
cloud cedar
azure jasper
cloud cedar
#

versteh ich nicht :(

#

egal

azure jasper
cloud cedar
#

hä?

#

wenn alle server das können sollen brauchst du doch keine debug guilds

cloud cedar
azure jasper
ruby sparrow
azure jasper
#

oder strg + r

ruby sparrow
#

warum zeig es nur eins an aber in db ist 2 code ist hier py @ticket.command() async def remove(self, ctx, name: Option(str, autocomplete=basic_autocomplete(get_ticket))): await ctx.defer(ephemeral=True) ticket_message = await db.get_message(ctx.guild.id) if ticket_message: try: message = await ctx.channel.fetch_message(ticket_message) await db.remove_name(ctx.guild.id, name) for option in t_options: if option.label == name: t_options.remove(option) view = CreateTicketSelect(t_options) await message.edit(view=view) await ctx.respond("The option was removed successfully.", ephemeral=True) except Exception as e: await ctx.respond(f"An error occurred: {e}", ephemeral=True) else: await ctx.respond("The ticket message was not found. Please set it up First!", ephemeral=True) und Autocomplete code ist hier async def get_ticket(ctx: discord.AutocompleteContext): try: active_options = await db.get_name(ctx.interaction.guild.id) if active_options: ticket_options = [discord.OptionChoice(name=active_options, value=active_options)] return ticket_options else: print("Keine Optionen aus der Datenbank abgerufen.") return [] except Exception as e: print(f"Fehler beim Abrufen der Ticket-Optionen: {e}") return []

quasi frost
#

Hey ich bin beim Pterodactyl video und diese pfeile drehen sich immer noch nachdem ich den token eingegeben habe und mit systemctl start wings es gestartet habe
und in termius kam nach dem enter kein fehler

vast cradle
quasi frost
#

aso ja

vast cradle
#

der kan nähmlich scheinbar den node nicht finden

#

oder sich nicht verbinden

quasi frost
#

ich mach nochmal neu und check alles doppelt

vast cradle
#

ls /var/log/pterodactyl*

#

Für den Befehl aus

quasi frost
#

und ich verbind mal meine domains mit cloudflare anstatt von meinen hoster

quasi frost
#

sorry

vast cradle
#

und schau bei /var/log/

vast cradle
quasi frost
#

@vast cradle

vast cradle
#

Den Wings.log brauchte ich

#

@quasi frost

quasi frost
vast cradle
quasi frost
#

will ich jetzt auch :)

vast cradle
#

@quasi frost das ist am besten

quasi frost
#

ja mach ich grad

limpid wolf
#

du könntest auch deine 2 domains benutzen

tawdry leaf
#

Braucht jemand ad Blue

limpid wolf
tawdry leaf
limpid wolf
#

ja meine ich

#

kek

limpid wolf
#

ne ne

#

der typ hat sich für die node und fürs panel ne eigene domain gekauft

#

der ist anscheinend rich

tawdry leaf
#

Das ist einf nur dumm

tawdry leaf
limpid wolf
tawdry leaf
#

Sagen wir unerfahren gigapeepo

limpid wolf
#

er kennt sich nicht so aus und wusste nicht was eine subdomain ist

#

unerfahren trifft es besser

tawdry leaf
#

Wenn man eine Domain hat und die Werbung weg haben mag Subt man seine eigene Domain

quasi frost
limpid wolf
#

xd

quasi frost
#

also bin jetzt wieder beim drehen :)

ruby sparrow
#
wenn man die Tickets setup-command durchgeführt dann werden alle options von jedes Server angezeigt aber ich weiß auch nicht warum kannn wer sagen kann ich es beheben @ticket.command(description="Setup the ticket system")
    @option("category", description="Select a category", type=discord.CategoryChannel)
    @option("ticket_channel", description="Select a ticket_channel", type=discord.TextChannel)
    @option("logs", description="Select a logs Channel", type=discord.TextChannel)
    async def setup(self, ctx, ticket_channel: discord.TextChannel, category: discord.CategoryChannel,
                    logs: discord.TextChannel, hexcode: Option(str)):
        await ctx.defer(ephemeral=True)
        hex_string = f"0x{hexcode}"
        color = int(hex_string, 16)
        guild_id = ctx.guild.id
        category_id = category.id
        logs_channel_id = logs.id
        channel_id = ticket_channel.id
        await db.set_channel(guild_id, channel_id)
        await db.set_logs_channel(guild_id, logs_channel_id)
        await db.set_category(guild_id, category_id)
        category_name = category.name
        logs_channel_name = logs.name
        channel_name = ticket_channel.name

        embed = discord.Embed(
            title="🎫 Ticket System Setup",
            description="Welcome to the ticket system setup. Follow the instructions below to configure your ticket system.",
            color=discord.Color.dark_green()
        )
        embed.add_field(name="🔘 Open Tickets",
                        value=f"``{category_name}``",
                        inline=False)
        embed.add_field(name="🎫 Ticket Channel ", value=f"``{channel_name}``", inline=False)
        embed.add_field(name="📜 Log Channel", value=f"``{logs_channel_name}``", inline=False)
        embed.add_field(name="Great! Now you can select roles that should have access to tickets.",
                        value="Click on Continue afterward.", inline=False)

        setup_message = await ctx.send(embed=embed,
                                       view=TicketRole(channel_name, logs_channel_name, category_name))
        channel_id = await db.get_channel(guild_id)
        if channel_id:
            if ticket_channel:
                embed = discord.Embed(
                    title="Ticket System",
                    description="Choose a category to contact support.",
                    color=color
                )
                message = await ticket_channel.send(embed=embed, view=CreateTicketSelect(t_options))
                await db.set_message(guild_id, message.id)
            else:
                print(f"Channel with ID {channel_id} not found.")
        else:
            print(f"No channel ID found for server {guild_id}.")
        await ctx.respond("The setup was completed successfully", ephemeral=True, delete_after=10)
        print(f"Setting up ticket system for guild: {guild_id}")```  hier ist meine db ```py

    async def add_option(self, guild_id, option_name):
        await self.execute(
            "INSERT INTO ticket_options (guild_id, option_name) VALUES (?, ?)",
            (guild_id, option_name)
        )

    async def get_options(self, guild_id):
        options = await self.all("SELECT option_name FROM ticket_options WHERE guild_id = ?", (guild_id,))
        print(f"Options for guild {guild_id}: {options}")
        return options


    async def remove_option(self, guild_id, option_name):
        await self.execute("DELETE FROM ticket_options WHERE guild_id = ? AND option_name = ?", (guild_id, option_name))```
#

wenn man die Tickets setup-command durchgeführt dann werden alle options von jedes Server angezeigt aber ich weiß auch nicht warum kannn wer sagen kann wie ich es beheben kann

quasi frost
old ore
#

warum printtet es mir nur dieses <generator object get_channel at 0x000001DDFB77FCA0>

limpid wolf
old ore
limpid wolf
#

for video in videos:
    print(video['videoId'])

Wenn du jede VideoId z.b. Printen möchtest geht das glaube ich so. (referenz)

#

Nur get_channel gibt dir nur nen objekt mit den ganzen Values

limpid wolf
old ore
limpid wolf
#

hm was meinst du?

#

Das steht dafür was dir die Funtktion zurück gibt

limpid wolf
#

bzw die ids

#

ich hab keine ahnung was da noch alles mit übergeben wird

#

könntest ja versuchen

for video in videos:
    print(video)

Dann sollte er immer alle daten eines Videos ausgeben

#

aber ich weiß nicht genau ob das so funktioniert hab noch nie mit scrapetube gearbeitet

old ore
limpid wolf
#

was kommt denn?

old ore
#

<generator object get_channel at 0x000001DDFB77FCA0>

old ore
old ore
#

hab ich schon probiert aber diese variable videos gibtt denke ich mal nichts zurück

limpid wolf
#

ja doch

#

sie gibt dir ja das objekt zurück

#

und in dem objekt sind dann ja eig die values

#

aber idk bei scrapetube

limpid wolf
ruby sparrow
#

nikos kannst du vllt mir helfen

limpid wolf
#

warte

limpid wolf
# old ore hab ich schon probiert aber diese variable videos gibtt denke ich mal nichts zur...

Usage: https://github.com/dermasmid/scrapetube?tab=readme-ov-file#usage
Docs: https://scrapetube.readthedocs.io/en/latest/

Sollte eigentlich so mit der VideoID funktionieren. Wenn nichts kommt ist der Channel wahrscheinlich Falsch oder hat einfach keine Videos

GitHub

A YouTube scraper for scraping channels, playlists, and searching 🔎 - dermasmid/scrapetube

old ore
#

jz kommt son error:

Unhandled exception in internal background task 'check_youtube'.
Traceback (most recent call last):
  File "C:\Python310\lib\site-packages\discord\ext\tasks\__init__.py", line 169, in _loop
    await self.coro(*args, **kwargs)
  File "a:\Coding\Astro_bot\systems\youtube_notify_task.py", line 53, in check_youtube
    for video in videos:
  File "C:\Python310\lib\site-packages\scrapetube\scrapetube.py", line 50, in get_channel
    for video in videos:
  File "C:\Python310\lib\site-packages\scrapetube\scrapetube.py", line 150, in get_videos
    client = json.loads(
  File "C:\Python310\lib\json\__init__.py", line 346, in loads
    return _default_decoder.decode(s)
  File "C:\Python310\lib\json\decoder.py", line 337, in decode
    obj, end = self.raw_decode(s, idx=_w(s, 0).end())
  File "C:\Python310\lib\json\decoder.py", line 355, in raw_decode
    raise JSONDecodeError("Expecting value", s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)```
limpid wolf
# ruby sparrow nikos kannst du vllt mir helfen

denk doch grade mal selber drüber nach, du machst wohl an einer stelle eine abfrage ohne eine spezifische guild_id an zu geben. Anders könnte ich mir das nicht erklären. Hab jetzt aber grade auch echt nicht so lust mir deinen ganzen Code an zu schauen

#

mache grade noch was anderes nebenbei

limpid wolf
graceful fiber
#

Perfekt @vast cradle gigapeepo

vast cradle
#

das war etwas dusseligkeit von mir

graceful fiber
vast cradle
#

Pthon ist soo bescheuert in manchen momentewn

#

aber neeeeein

#

ich wkanns nicht importiere ich kenne es nicht

#

bin ja leider zu doof dafür

#

uff wieso auch immer er diese kleine Variable nicht findet

graceful fiber
restive herald
vast cradle
#

Pyhon ist nur die einzige Programmiersprche die ich soweit Behersche

#

das da was sinnvolles rauskommt

vast cradle
#

wenn ich was versuche in ner anderen Sprache zu entwickeln kommt alles bei raus nur nicht das was soll

graceful fiber
#

C soll ganz schön sein 🫣

vast cradle
#

ich hab mir ein mal c angeschaut

#

und habs dann schnell wieder weckgeklickt

#

bloß net

graceful fiber
ruby sparrow
#

wie kann ich die options übersetzen im yaml Datei?

odd kiteBOT
old ore
#

weiß wer wie ich mit scrapetube das tthumbnail von einem yt video bekomme weil wen ich nur den yt link dortt rein mache passiert nichts

inland cove
#

Was passiert, wenn du den yt-link mal direkt als Message nur in den Channel sendest… das mal getestet?

old ore
#

ja dann kommt es schon nur als vorschau img ned

inland cove
# old ore aber des möchte ich ja ned

Wenn ich die Dokumentation richtig in Erinnerung habe, bekommst du aber kein Image, da müsstest du wahrscheinlich mit der API arbeiten.
Weiß ich aber nicht 100-prozentig 🤷‍♂️

old ore
#

ok ich schau mal nach

inland cove
# old ore ok ich schau mal nach

Für mich wäre es aber auch so, da ich es auch lieber wie mit meinem twitch-bot selber mit bestimmten Daten aufbauen wollen würde…
Darum bin ich noch nicht an yt dran…

#

Aber da ist halt die Sache mit den Tokenverbrauch über die yt-api… naja

fresh flint
#

Wie installieren ich node.js auf meinen VPS?

ruby sparrow
#

Wie pyhton

fresh flint
native inlet
# fresh flint Wie installieren ich node.js auf meinen VPS?