#Allgemeine Hilfe
1 messages · Page 54 of 1
Dein Fehler tritt ja im Button auf, also so
stimmt 😅
Keine Ergebnisse für response.send_messafe gefunden. Meintest du Folgendes?
interaction.respond gibt es nur im pycord master branch
aso
mensch
Ja affe
das hat er doch gesagt das ist schon länger so 🤔
Wo
dann ändere es
was ist Status.py?
@solid ingot cog datei
Loaded Status Cog soll wieder da stehen beim on ready
er meint früher waren alle aufgelistet und jz steht nur noch die zahl an cogs da
achso, den style kannst du beliebig anpassen
naja das beantwortet meine frage nicht aber gut, ich wollte eigentlich wissen wenn ich jetzt noch das icon vom server will ob ich das wegen der for schleife iwi so an das html document übergeben kann. dann warte ich halt ab.
Aber wie
achso, naja eben hast du nur versucht auf einen wert im dictionary zuzugreifen, der nicht existiert hat.
wenn du das guild icon haben willst, musst du den link entweder aus der discord API anfrage generieren, oder ihn manuell in das dictionary tun, den du über IPC übergibst. aber du kannst es halt nur rausholen, wenn du es vorher auch reingetan hast.
die erste variante siehst du mit ein bisschen geduld bald auf youtube. für beide varianten ist die grundlage aber dass du genau weißt, wie dictionaries funktionieren.
?
Ich hab's ja drinnen ich bekomme auch wenn ich die for schleife editiere die angezeigt aber eben dann ohne Server Namen dadurch das die for schleife ja mit namens arbeitet
load_cogs(log=ezcord.CogLog.all_cogs)
wieso kann man da nicht einf log=all_cogs machen 😅
weil du in python nichts nutzen darfst, dass du nicht vorher definiert wurde
du kannst es importieren und dann log=all_cogs schreiben @tawdry leaf
also from ezcord import CogLog 😅
Moin Leute ich habe mal ne frage weiß wer zufällig ob es möglich ist einen check so zu machen das der bot schaut ob ein Prozess mit dem übergebenen name vorhanden ist und wenn ja soll er noch schauen ober er den status online besitzt. Ich habe schon ein bisschen rumprobiert aber finde nichts was funktoniert
Stell keine Fragen wenn du schon dafür ein Post hast #1158399925869092984
Bei mir läd https://discord.com/channels/1010915072694046794/1142428008209195063 nicht also der cog hab nichts geändert außer die id
Dann liegt es an dir zeig dein pycharm und deine Main.py
Benutze vsc und schick ich gleich bin noch auf dem Klo
import discord
import ezcord
import os
from dotenv import load_dotenv
bot = ezcord.Bot(discord.Intents.all()
,language="de")
@bot.event
async def on_ready():
await bot.change_presence(activity=discord.Activity(type=discord.ActivityType.listening, name="Baustelle"))
if __name__ == "__main__":
bot.load_cogs("cogs", subdirectories=True)
load_dotenv()
bot.run(os.getenv("TOKEN"))
import discord
import ezcord
import os
from dotenv import load_dotenv
bot = ezcord.Bot(discord.Intents.all()
,language="de")
@bot.event
async def on_ready():
await bot.change_presence(activity=discord.Activity(type=discord.ActivityType.listening, name="Baustelle"))
def cogs():
for file in os.listdir(r"cpgs"):
if file.endswith(".py"):
extension = file.replace(".py", "")
try:
bot.load_extension(f"cogs.{extension}")
print(f"Load {file[:-3]}.py")
except Exception as error:
print(error)
if __name__ == "__main__":
cogs()
load_dotenv()
bot.run(os.getenv("TOKEN"))
versuchs mal so @viscid lake
habs aber danke
nvm
also cog läd aber channel wird nicht erstellt
zero
ye
database schon drinne?
schaue grad aber eig schon
lösch die database und versuch nochmal zu joinen
ist da lösche den mal fix
File "C:\Users\sebas\AppData\Local\Programs\Python\Python311\Lib\site-packages\aiosqlite\core.py", line 102, in run
result = function()
^^^^^^^^^^
sqlite3.OperationalError: no such table: voice_channels```
ahja
yes
uhm
was
wow
ich hab oben den db namen geändert aber unten nicht 
sag ich sofort
werde gemovt aber button gehe nicht ich schau mal
geht doch die erste nachricht ging nicht wurde nochmal gepingt jetzt geht es
danke 
Kein problem lass eine Reaktion da
gemacht
wie beschränke ich nochmal commands auf bestimmte guilds?
mit debug_guilds
danke!
Hier findest du das Main-Datei Template 🦧
Junge diese Emojis

Du armer
irgendwie wird der command trotzdem auf anderen servern angezeigt
Welcher
meiner
Kann bisschen dauern, bis es richtig aktuallisiert ist, schätze ich mal
Probiers doch mal auf dem Server wo es nicht sein sollte auszuführen
bis globale commands nicht mehr angezeigt werden dauert es ein wenig, funktionieren sollten sie aber nicht mehr
Dann läuft dein Bot vielleicht doppelt?
Ne
Kannst du mir nochmal kurz erklären was das Problem idt
Gibt es irgendeine api wo man Texte übersetzen kann?
Ja klar
Und sowas kann man easy googlen
Browse 33+ Top Translation APIs available on RapidAPI.com. Top Top Translation APIs include Google Translate, Microsoft Translator Text, MyMemory - Translation Memory and more. Sign up today for free!
Danke
hi bin ganz neu beim Bot-programmieren und bin am die Turorial-playlist schauen.
Bin gerade bei Buttons und Dropdowns durch und habe folgende Frage:
- gibt es ne Möglichkeit für author_check für buttons und dropdowns (das nur der, welcher den Befehl gesendet hat die verwenden kann)
- wie kann ich buttons und dropdowns nach einer Verwendung deaktivieren?
- gibt es cooldowns für buttons? also gleich wie bei den slashcommand cooldowns
- kann mann Buttons und Dropdowns auch ephemeral=True verwenden damit nur der author das Element sieht?
ich hoffe es ist nicht unhöflich solch banale fragen zu stellen, sonst einfach melden!!
vielen Dank für die Auskunft
ps als Info: ich nutze pycord, schreibe auf PyCharm in Python
Hey @rustic crest
- eine möglichkeit wäre den user an die view klasse zu übergeben und dann die
interaction_checkmethode zu implementieren. diese gibt true oder false zurück, je nachdem ob ein user den button nutzen darf - je nachdem ob button oder view klasse, kannst du das mit
button.disabled = Trueoderself.disabled = Truemachen. beachte jedoch, dass die nachricht danach bearbeitet werden muss - das ist ein wenig komplexer als bei slash commands, ich empfehle dieses video
- ja das geht, du kannst nachrichten ephemeral machen, egal welche komponenten an der nachricht sind
In this video, we will work on making a button with a cooldown in discord.py with Cooldown Mapping.
If you found this video helpful, please do consider liking the video, subscribing, and sharing it to someone who might find this video helpful (I know a lot of people say this, but it really does help the channel 🙂). If you have any questions, fe...
die prefix commands bei ezcord funktionieren bei mir nicht. wenn ich das prefix auf when_mentioned_or('!') setze dann funktioniert der command wenn man @bot test macht aber nicht wenn man !test macht. hat jemand eine idee wieso? Error gibt es keinen.
nutzt du eczord.PrefixBot? @twin slate
hmm mit prefix commands kenne ich mich nicht wirklich aus, könntest du nachschauen ob es an ezcord liegt? also ob es funktioniert wenn du commands.Bot nutzt?
Ignoring exception in view <CloseTicketView timeout=None children=1> for item <Button style=<ButtonStyle.danger: 4> url=None disabled=False label='Close Ticket' emoji=None row=None>:
Traceback (most recent call last):
File "/data/data/com.termux/files/usr/lib/python3.11/site-packages/discord/ui/view.py", line 421, in _scheduled_task
await item.callback(interaction)
File "/storage/emulated/0/Timo/Dev/Discord/Test/System/cogs/modmail.py", line 103, in close_ticket
user = await interaction.get_user(user_id)
^^^^^^^^^^^^^^^^^^^^
AttributeError: 'Interaction' object has no attribute 'get_user'
code?
#🔰・old-help-rules message 🤦
Warum der link
user = await interaction.get_user(user_id)
if user is None:
user = await self.bot.fetch_user(user_id)
await interaction.response.send_message("Dein Ticket wird geschlossen...")
await user.send("Dein Ticket wurde geschlossen.")
await interaction.message.channel.delete()
@vivid sky
discord.Bot.get_user
discord.Client.get_user
discord.Invite.target_user
discord.sinks.Sink.get_user_audio
discord.ext.commands.Bot.get_user
Warum client
Das war nh Ghost Ping ._. xD
ja sorry hab ausversehen gesendet war aber mit der nachricht noch nicht fertig
Danke hat alles funktioniert ausser den disablen der Dropdowns.
bei der view klasse hab ich folgendes angehängt:
await interaction.response.edit_message(view=self)
await interaction.followup.send_message(f"You have chosen the fallowing:\n{s}")```
es disabled zwar den dropdown aber schickt die Nachricht nicht mehr.
bei der select klasse bekomm ichs gar nicht hin, das der Dropdown disabled wird
btw wie bekomm ich es hin, das der Code den ich hier rein kopiere gleich formatiert ist wie im PyCharm so wie das Felix oben gemacht hat?
await interaction.followup.send(f"You have chosen the fallowing:\n{s}")
.send, nicht .send_message bei followups
discord.Interaction.followup
discord.ApplicationContext.followup
discord.ApplicationContext.send_followup
Keine Ergebnisse für followup.send gefunden. Meintest du Folgendes?
ah danke 🙂
._.
Kann man eine .exe zu .py machen?
Google doch mal
Da findest du schneller nh Antwort, als wenn jemand hier für dich googlet

How to Convert Exe To Python | Decompile or Convert Exe to Python Source Code.
🌐 Website: https://www.boteaz.com/
📂 GitHub: https://github.com/AliToori
⭕ Social Media:
📸 Instagram: https://www.instagram.com/alitooriali
📱 Facebook: https://web.facebook.com/AliTooriAli
📱 Twitter: https://twitter.com/AliTooriAli
📱 Telegram: https://t.me/Ali...
Da kommen websites
In this video, you'll learn how to retrieve source code and decompile a python EXE made with PyInstaller.
If this is helpful, please leave a like and subscribe!
DISCLAIMER: This is NOT my project. I did not make any programs featured in the video, I simply am sharing my knowledge on how to use them.
My Discord: https://discord.gg/FJePEQHxXz
Py...
Natürlich kommen Websites wenn du googlest, was soll sonst auftauchen?
Also converter websiten
Ja und?
Teste sie halt aus
Du suchst ja nach nem .exe to .py converter
Error:
Ignoring exception in view <View timeout=180.0 children=2> for item <ClaimButtonView style=<ButtonStyle.success: 3> url=None disabled=True label='Claim' emoji=None row=None>:
Traceback (most recent call last):
File "C:\Users\Lib\site-packages\discord\ui\view.py", line 414, in _scheduled_task
await item.callback(interaction)
File "C:", line 71, in callback
await interaction.message.edit(view=self)
File "C:\Lib\site-packages\discord\message.py", line 1434, in edit
payload["components"] = view.to_components() if view else []
^^^^^^^^^^^^^^^^^^
AttributeError: 'ClaimButtonView' object has no attribute 'to_components'
kannst du maybe mal den code auschnitt davon senden und nicht den ganzen code
class ClaimButtonView(discord.ui.Button):
def __init__(self, user):
super().__init__(style=discord.ButtonStyle.success, label="Claim", custom_id="claim_ticket", disabled=False)
self.user = user
self.disabled = False
async def callback(self, interaction: discord.Interaction):
member_user = interaction.user
user_avatar_url = member_user.avatar.url
self.disabled = True
await interaction.message.edit(view=self)
if member_user == self.user and member_user.guild_permissions.kick_members:
embed = discord.Embed(title="Ticket wurde geclaimt",
description=f"Das Ticket wurde von {member_user.mention} geclaimt",
colour=0x00ff2a)
embed.set_thumbnail(url=user_avatar_url)
embed.set_footer(text=member_user.name, icon_url=user_avatar_url)
await interaction.response.send_message(embed=embed)
else:
await interaction.response.send_message("Du hast keine Berechtigung, dieses Ticket zu claimen.", ephemeral=True)```
welche version von pycord hast du? wenn du die dev version davon hast knast glaube ich direkt interaction.edit schreiben
Hab dev version Probier ich gleich aus
falls du hilfe brauchen solltest ich bin im Coding channel
jo mach ich danke aber meinst du das ich es so schreiben soll?
await interaction.edit(view=self)```
hmm dann kommt
AttributeError: 'Interaction' object has no attribute 'edit'```
await interaction.message.edit(view=None)
dann hast du nicht die dev version
das geht auch
ich denke aber mal das er einfach das deaktiviert anzeigen möchte
Da verschwinden die buttons einfach
komm mal zu mir in den talk dann helf ich dir
jo okay danke
@old ore wait muss mein mic einstellen
Hier findest du das Bot-Klasse Template 😄
ich finde den Code für den Guild Icon nicht und ich weiß nicht wie der heißt
display_icon
heißt das nur display_icon?
ne warte bin lost
Keine Ergebnisse für guild.cion gefunden. Meintest du Folgendes?
ja guild.icon
embed.set_thumbnail(url=guild.icon.url)
``` was ist daran falsch?
wenne es False ist kannst es doch weg lassen
wenn du davor ctx.guild = guild hast geht es ansonsten musst du ctx.guild.icon benutzen
also ich habe es ohne
achsoooo
so
ich teste es nochmal
AttributeError: 'Guild' object has no attribute 'region'
sagt mein Bot 😦
discord.VoiceRegion
discord.VoiceRegion.amsterdam
discord.VoiceRegion.brazil
discord.VoiceRegion.dubai
discord.VoiceRegion.eu_central
discord.VoiceRegion.eu_west
discord.VoiceRegion.europe
discord.VoiceRegion.frankfurt
discord.VoiceRegion.hongkong
discord.VoiceRegion.india
discord.VoiceRegion.japan
discord.VoiceRegion.london
discord.VoiceRegion.russia
discord.VoiceRegion.singapore
discord.VoiceRegion.south_korea
discord.VoiceRegion.southafrica
discord.VoiceRegion.sydney
discord.VoiceRegion.us_central
discord.VoiceRegion.us_east
discord.VoiceRegion.us_south
Keine Ergebnisse für guild.region gefunden. Meintest du Folgendes?
Gibts wohl nd
discord.Guild.filesize_limit
discord.Guild.forum_channels
discord.Guild.get_channel
discord.Guild.get_channel_or_thread
discord.Guild.get_member
discord.Guild.get_member_named
discord.Guild.get_role
discord.Guild.get_scheduled_event
discord.Guild.get_stage_instance
discord.Guild.get_thread
discord.Guild.icon
discord.Guild.id
discord.Guild.integrations
discord.Guild.invites
discord.Guild.invites_disabled
discord.Guild.jump_url
discord.Guild.kick
discord.Guild.large
discord.Guild.leave
discord.Guild.max_members
soll ich mal den code senden?
Wie du willst
@slash_command()
async def serverinfo(self, ctx):
guild = ctx.guild
embed = discord.Embed(title="Server Info", color=discord.Color.blue())
embed.set_thumbnail(url=ctx.guild.icon)
embed.add_field(name="Name", value=guild.name, inline=True)
embed.add_field(name="ID", value=guild.id, inline=True)
embed.add_field(name="Owner", value=guild.owner, inline=True)
embed.add_field(name="Region", value=guild.region, inline=True)
embed.add_field(name="Members", value=guild.member_count, inline=True)
embed.add_field(name="Creation Date", value=guild.created_at.strftime("%Y-%m-%d"), inline=True)
await ctx.send(embed=embed)
was hab ich denn falsch gemacht?
richtig seit ca. ein jahr
@raven lotus
XD
Is nur nh Vermutung von mir
welcher seite 🤔
was ist daran nd zu verstehen 🤔
was ich aus preffered_locale verstehen soll
Steht doch da
Musst halt Englisch können
nicht mal
kannst auf de stellen
es zeigt einf an was hier ausgewählt ist xD
ich meinte damit, falls ich das als code verwenden möchte
ich hasse mein Deutsch manchmal
dann schaue dir timos video an vllt hilft das dir die docs zu verstehen 🤔
schau mal das ist eine hierachie
das was?
du bist in der Kategorie discord.Guild also brauchst du um alles in der Kategorie benutzen zu können erstmal ctx.guild
was genau verstehst du nicht ?
ne andersrum
wie ich das icon ins embed bekomme XD
hast du doch?
ne
er sagt er erkennt guild net
oder so
AttributeError: 'Guild' object has no attribute 'region'
das sagt der Bot
das ist halt der Code:
@slash_command()
async def serverinfo(self, ctx):
guild = ctx.guild
embed = discord.Embed(title="Server Info", color=discord.Color.blue())
embed.set_thumbnail(url=guild.icon.url)
embed.add_field(name="Name", value=guild.name, inline=True)
embed.add_field(name="ID", value=guild.id, inline=True)
embed.add_field(name="Owner", value=guild.owner, inline=True)
embed.add_field(name="Region", value=guild.region, inline=True)
embed.add_field(name="Members", value=guild.member_count, inline=True)
embed.add_field(name="Creation Date", value=guild.created_at.strftime("%Y-%m-%d"), inline=True)
await ctx.send(embed=embed)
@slash_command()
async def serverinfo(self, ctx):
guild = ctx.guild
embed = discord.Embed(title="Server Info", color=discord.Color.blue())
embed.set_thumbnail(url=ctx.guild.icon)
embed.add_field(name="Name", value=guild.name, inline=True)
embed.add_field(name="ID", value=guild.id, inline=True)
embed.add_field(name="Owner", value=guild.owner, inline=True)
embed.add_field(name="Region", value=guild.preferred_locale, inline=True)
embed.add_field(name="Members", value=guild.member_count, inline=True)
embed.add_field(name="Creation Date", value=guild.created_at.strftime("%Y-%m-%d"), inline=True)
await ctx.respond(embed=embed)```
ja haben doch gesagt mehrfach das es region nicht mehr gibt
den code den du hast ist veraltet
der macht das bild vom bot als icon 😦
was machst du denn 🤔
ich wollte, dass das icon vom server das thumbnail ist
achsoooo Region
boah bin ich dumm XD
hab erstmal net gecheckt
Da widerspricht dir keiner
Dann sollte Quark wohl während er Wütend ist lernen Dokumentationen zu lesen und zu verstehen

du Quarkst zu viel ^^
geht nicht ctx.guild.icon
ne
wieso nicht
macht keinen unterschied irgendwie
@slash_command()
async def serverinfo(self, ctx):
guild = ctx.guild
embed = discord.Embed(title="Server Info", color=discord.Color.blue())
embed.set_thumbnail(url=ctx.guild.icon)
embed.add_field(name="Name", value=guild.name, inline=True)
embed.add_field(name="ID", value=guild.id, inline=True)
embed.add_field(name="Owner", value=guild.owner, inline=True)
embed.add_field(name="Region", value=guild.preferred_locale, inline=True)
embed.add_field(name="Members", value=guild.member_count, inline=True)
embed.add_field(name="Creation Date", value=guild.created_at.strftime("%Y-%m-%d"), inline=True)
await ctx.respond(embed=embed)
mach mal guild.icon
hat der server denn ein pb
warte mal
ICH HASSE MICH
das ist das gleiche
sry sry sry
Tut mir sooooooooooooooooooooooo leid!
XD
Broooooooooooo, ich hab das net bemerkt ich baum
jetzt muss ich einstellen, dass wenn der server kein icon hat, dass das dann nicht gemacht wird
oder, dass der Bot icon benutzt wird
Ist easy
Ist nur eine Zeile
@slash_command()
async def serverinfo(self, ctx):
guild = ctx.guild
embed = discord.Embed(title="Server Info", color=discord.Color.blue())
if ctx.guild.icon:
embed.set_thumbnail(url=ctx.guild.icon.url)
embed.add_field(name="Name", value=guild.name, inline=True)
embed.add_field(name="ID", value=guild.id, inline=True)
embed.add_field(name="Owner", value=guild.owner, inline=True)
embed.add_field(name="Region", value=guild.preferred_locale, inline=True)
embed.add_field(name="Members", value=guild.member_count, inline=True)
embed.add_field(name="Creation Date", value=guild.created_at.strftime("%Y-%m-%d"), inline=True)
await ctx.respond(embed=embed)
oha einf das default icon nicht akzeptieren
danke!!!!!
Ich bin Rassistisch gegenüber Default Icons
ich sehe es

bestimmt auch bei userinfo
Weg mit dem Dreck
kann ich das machen:
if ctx.user.icon:
also bei userinfo
what the
nein 🙂
oder halt if user.icon:
.icon is bei guilds
ein user möchte nicht wie ein server icon behandelt werden
User / Member haben Avatar
und noch was
Also ich als User identifiziere mich als Discord Server
ich bin fassungslos, was du hier für sachen sagst...

haha
discord forbidded es dir
if user.display_avatar:
klag mal discord an 😄
hahahaha
geht das?????????
es geht nicht wenn du nur fragst 😄
Ne das macht keinen Sinn, display_avatar wird nie False
stimmt ich kleiner
Das kannst du nutzen, ohne if abfrage
sicher xD
Ja xD
broooo daran hab ich net gedacht
Is uns bewusst
Wie bei allen anderen sachen die du fragst xD
ich wollte nur einmal was richtig machen haha
wollte schon was fragen aber das wäre nicht so gut gekommen 😄
hau raus XD
ne ne 🙂
Du zerstörst dich mit deinen Fragen schon selbst :D
Das muss er nicht machen
haha
Code
async def kont(ctx: discord.AutocompleteContext):
options = []
async with aiosqlite.connect("economy.db") as db:
async with db.cursor() as cursor:
await cursor.execute('SELECT * FROM economy')
rows = await cursor.fetchall()
for row in rows:
# Access columns by index (replace 0 and 1 with the actual indices)
column1_value = row[0]
column2_value = row[1]
# Append data to options
options.append(discord.OptionChoice(name=column1_value, value=column2_value))
@slash_command()
@discord.option('dauer', int, description='Wie lange soll der User timeouted sein?', autocomplete=kont, required=True)
async def all(self, ctx: discord.AutocompleteContext, dauer: int):
embed = discord.Embed(description="test")
await ctx.respond(embed=embed)```
Error
```py
Command: all dauer | User: luuuccckkkyyy#0 | Server: Gaming-room | Zeitstempel: 1696362084.377513
Task exception was never retrieved
future: <Task finished name='Task-33' coro=<ApplicationCommandMixin.on_application_command_auto_complete.<locals>.callback() done, defined at D:\py\lib\site-packages\discord\bot.py:872> exception=TypeError("'NoneType' object is not iterable")>
Traceback (most recent call last):
File "D:\py\lib\site-packages\discord\bot.py", line 875, in callback
return await command.invoke_autocomplete_callback(ctx)
File "D:\py\lib\site-packages\discord\commands\core.py", line 1029, in invoke_autocomplete_callback
choices = [
TypeError: 'NoneType' object is not iterable
Weiß jemand wie ich den error behebe
Du vergisst beim autocomplete die options liste zu returnen
async def kont(ctx: discord.AutocompleteContext):
options = []
async with aiosqlite.connect("economy.db") as db:
async with db.cursor() as cursor:
await cursor.execute('SELECT * FROM economy')
rows = await cursor.fetchall()
for row in rows:
# Access columns by index (replace 0 and 1 with the actual indices)
column1_value = row[0]
column2_value = row[1]
# Append data to options
options.append(discord.OptionChoice(name=column1_value, value=column2_value))
return options
@slash_command()
@discord.option('dauer', int, description='Wie lange soll der User timeouted sein?', autocomplete=kont, required=True)
async def all(self, ctx: discord.AutocompleteContext, dauer: int):
embed = discord.Embed(description="test")
await ctx.respond(embed=embed)
ah okay ich probier es mal
Jo, is aber nur nh vermutung von mir das es daran liegt
ja geht
Nice
habe jz da dann lauter ids 😄
Kann ich command groups auch in andere cog klassen übergeben
Ja
Hast du may be n Beispiel
Einfach importieren
Hat bei mir nicht funkoniert die haben ja in dem Sinne keine namen
hm?
Wie definierst du sie denn?
Ich zeig dir gleich
Kann man das einstellen bei Ein Forum Kanal das nur die admins des Server ein Post erstellen kann
ja
Aber wie ist die Frage?
Was?
Hier
So wie bei Channel
Ja so wie du halt permissions einstellst
Perms ändern in den Einstellungen
@fierce dove ich habe mehrere Codes, musst konkreter sein
Doch der geht.
Du hast halt mal wieder probleme damit Codes zu verstehen/selber zu fixxen vermutlich
War beim flagquiz genauso
😮
🙂
[ERROR] Error while executing /trivia
Traceback (most recent call last):
File "/data/data/com.termux/files/usr/lib/python3.11/site-packages/discord/commands/core.py", line 131, in wrapped
ret = await coro(arg)
^^^^^^^^^^^^^^^
File "/data/data/com.termux/files/usr/lib/python3.11/site-packages/discord/commands/core.py", line 1358, in _invoke
option = ctx.interaction.data["options"][0]
~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^
KeyError: 'options'
ist eben nicht clean xD
Das is der ganze Error?
Ja
Hallo Leute, wisst ihr wie man Buttons dauerhaft aktiv halten kann das sie nicht nach 2 min inaktiv gehen?
und was kannst du mit dem error nicht anfangen 😮
Liegt an dir, bei mir funktionierts
timeout=None
ja woran sonst 😄
Hilfe diese einrückung bei dem
den relevanten code schicken ist da mal gut ausgeschmückt xD
Junge wenn du umschreibst, dann richtig
@discord.ui.button(emoji="🔈", style=discord.ButtonStyle.grey, row=2)```
einfach rein schreiben als parmeter?
nein
@trivia_cmd.command
super().__init__(timeout=None)```
wie den? hast du ein example
Bei buttons das interaction und button tauschen
achso vielen dank
@fierce dove
-
#1019974414487535736 message
-
#1019974414487535736 message
Warum das tauchen
Den rest schaffst du Hoffentlich selber
oha
hat er keine Zeit er muss noch englisch lernen
Und während des Englisch lernen dann noch Codes kopieren und falsch umschreiben?
Dafür hat er zeit? hmm
Mein Discord Server
► https://discord.gg/zfvbjTEzv6
Code auf Github ► https://github.com/tibue99/tutorial-bot
Discord Developer Portal ► https://discord.com/developers/applications
Tutorial Playlist ► https://youtube.com/playlist?list=PLwRWzD1Sw5lXZApchxorxeBQ_P_Fjdsj1
Pycord
Docs ► https://docs.pycord.dev/
Guide ► https://guide.pycord.dev/int...
ja eig sollte er schlafen 🤔
Stimmt, sandmann schon vorbei
Ab ins bett
Und nächstes mal nicht sagen, dass mein Code nicht geht.
Denn du hast es umgeschrieben, somit geht dein Code nicht.
hast du eine idee wie ich da die user ids so umformiere das da beim autocomplete die discord namen stehen

Timo möchte gerne aus dem Bällebad abgeholt werden
Bekommst du aus der Db die user ids?
Du könntest den Member getten und dann halt die Namen in die Liste hinzufügen
Ja 
ja aber des geht nicht so warte
future: <Task finished name='Task-33' coro=<ApplicationCommandMixin.on_application_command_auto_complete.<locals>.callback() done, defined at D:\py\lib\site-packages\discord\bot.py:872> exception=HTTPException('400 Bad Request (error code: 50035): Invalid Form Body\nIn data.choices.0.value: int53 value should be less than or equal to 9007199254740991.\nIn data.choices.1.value: int53 value should be less than or equal to 9007199254740991.\nIn data.choices.2.value: int53 value should be less than or equal to 9007199254740991.\nIn data.choices.3.value: int53 value should be less than or equal to 9007199254740991.\nIn data.choices.4.value: int53 value should be less than or equal to 9007199254740991.\nIn data.choices.5.value: int53 value should be less than or equal to 9007199254740991.')>
Traceback (most recent call last):
File "D:\py\lib\site-packages\discord\bot.py", line 875, in callback
return await command.invoke_autocomplete_callback(ctx)
File "D:\py\lib\site-packages\discord\commands\core.py", line 1033, in invoke_autocomplete_callback
return await ctx.interaction.response.send_autocomplete_result(
File "D:\py\lib\site-packages\discord\interactions.py", line 1125, in send_autocomplete_result
await self._locked_response(
File "D:\py\lib\site-packages\discord\interactions.py", line 1198, in _locked_response
await coro
File "D:\py\lib\site-packages\discord\webhook\async_.py", line 222, in request
raise HTTPException(response, data)
discord.errors.HTTPException: 400 Bad Request (error code: 50035): Invalid Form Body
In data.choices.0.value: int53 value should be less than or equal to 9007199254740991.
In data.choices.1.value: int53 value should be less than or equal to 9007199254740991.
In data.choices.2.value: int53 value should be less than or equal to 9007199254740991.
In data.choices.3.value: int53 value should be less than or equal to 9007199254740991.
In data.choices.4.value: int53 value should be less than or equal to 9007199254740991.
In data.choices.5.value: int53 value should be less than or equal to 9007199254740991.```
async def kont(self, ctx: discord.AutocompleteContext):
options = []
async with aiosqlite.connect("economy.db") as db:
async with db.cursor() as cursor:
await cursor.execute('SELECT user FROM economy')
rows = await cursor.fetchall()
for row in rows:
user_id = row[0]
# Benutzernamen aus der Discord API abrufen
warner = await self.bot.fetch_user(user_id)
if warner:
options.append(discord.OptionChoice(name=warner.name, value=user_id))
return options```
ja
Versuch bei der value die user_id als string zu übergeben
async def kont(self, ctx: discord.AutocompleteContext):
options = []
async with aiosqlite.connect("economy.db") as db:
async with db.cursor() as cursor:
await cursor.execute('SELECT user FROM economy')
rows = await cursor.fetchall()
for row in rows:
user_id = row[0]
# Benutzernamen aus der Discord API abrufen
warner = await self.bot.fetch_user(user_id)
if warner:
options.append(discord.OptionChoice(name=warner.name, value=str(user_id)))
return options
Weil der Error tritt ja auf, weil die ID wohl höher als 9007199254740991 is
ne selber error
ne
ich habe was probiert mit guilds, aber es wird immer noch auf anderen servern angezeigt
🤔
ja xD
bot = discord.Bot(
intents=intents,
debug_guilds=[weg zeig ich net, das auch]
)
ich benutze eh keine debug_guilds
@solid ingot kannst du helfen 😄
habe des Problem das ich in der datenbank userids habe und die unterschiedlich viele stellen haben
wo ist das problem
bruuuuuuuuuuuuuuuuuuh
Error: #1019974414487535736 message
Code: #1019974414487535736 message
machs vlt als string
habe das versucht #1019974414487535736 message aber selber error
wegen den integer da 😐
Yep
Ich bekomme immer einen Fehler beim Hoster des bots könnt ihr mir da helfen?
Wo bleibt der Error?
Ehm
Ja?
Und wo bleibt der Error?
Im Bild
Sehe keinen Error
Was bedeutet das in dem roten Kreis?
Bin ich dumm oder ist das kein error 
Da is kein Error
Ignoring exception in view <TriviaButtons timeout=900.0 children=4> for item <Button style=<ButtonStyle.primary: 1> url=None disabled=False label='1' emoji=None row=None>:
Traceback (most recent call last):
File "/data/data/com.termux/files/usr/lib/python3.11/site-packages/discord/ui/view.py", line 421, in _scheduled_task
await item.callback(interaction)
File "/storage/emulated/0/Timo/Dev/Discord/Test/Fun/cogs/trivia.py", line 58, in one
selected = int(button.label)
^^^^^^^^^^^^
AttributeError: 'Interaction' object has no attribute 'label'
Er reicht, wenn du es in deinem Post hast
Ok
Hab ich
okay cool
Was bedeutet das in dem roten Kreis?
Hab's geschafft
du hast zu viel memory verbraucht. das is eif ne meldung von pterodactyl und daran erkennst teilweise warums nd geht
in dem fall is die memory bei deinem hoster zu tief

CodingKeks ist der Hoster. Ist der bot von wem anders wo wir zssm dran arbeiten
kannst timo fragen ob er sie kurz erhöht
Per dm oder wie ?
Oder Pings spammen
Nee lieber nicht
haha
Er hat sich wohl für das Ticket entschieden
aha wo siehst du das denn 😮
stramm
in vencord 😄

die dose mit den zähnen wichtig
Xd
kann ich meinem command in einer slash comamnd group noch einen extra namen geben?
na bein einem normalen slash command kann man ja oben auch noch name und description hinzufügen kann man des bei der cmd group auch machen?
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...
in dem video is alles zu slash command groups 
jo
ich habe es mir angeschaut habe aber keinen cmd mit namen gesehen nur die group hatte einen namen meines wissen nach

Hey Ich Probiere mich gerade an eine Login page mit fastapi heran und habe auch schon ein html form was funktioniert und möchte nun die dazugehörige python funktion schreiben. DAfür habe ich eine post methode für die Verifizierung des Passworts und möchte nun zu einer andern Seite umleiten wenn das passwort stimmt. Das Problem das ich mit diesem code habe ist das ich es nicht hinkriege von einer post request zu einer get zu Redirecten kann mir da wer helfen ? py @app.post("/auth") async def auth(request: Request): from_data = await request.form() username = from_data["username"] password = from_data["password"] print(username, password) response = RedirectResponse(url="/dashboard", status_code=307) response.set_cookie(key="session", value=str("Test2"), httponly=True) return response
bekommst du einen Error?
Ich bekomme nur diese Info: INFO: 127.0.0.1:50600 - "GET / HTTP/1.1" 200 OK INFO: 127.0.0.1:50600 - "POST /auth HTTP/1.1" 307 Temporary Redirect INFO: 127.0.0.1:50600 - "POST /dashboard HTTP/1.1" 405 Method Not Allowed
Jo
Im Grunde genau wie du andere Docs anzeigen lässt
ok
kannst aber auch im Browser anschauen
@solid ingot gibt es ein plugin in pcharm discord rich presence
ja
ok
es kommt immer Invalid Package
bei mir wird:
import os
from datetime import datetime
from random import *
import requests
import io
from apscheduler.schedulers.asyncio import AsyncIOScheduler
from apscheduler.triggers.cron import CronTrigger
import discord
from discord import *
from discord.ext.commands import *
from discord import app_commands
from discord.ui import *
from discord.ext import commands, tasks
from discord.utils import get
import datetime
from datetime import datetime
import random
from random import randint
import time as tm
import asyncio
import math
import configparser
import sqlite3
import sys
from discord.ext.commands import CommandNotFound
import io
import chat_exporter```
nicht als requierments datei erkannt bei @odd kite kann mir wer helfen?
das ist keine requirements datei, das Sind Imports
wie krieg ich die requierments raus?
also was ich downloaden muss
Hat jmd ne Idee wie ich das fixen kann?
mit pip freeze siehst du die installieren packages, aber was du in deinem projekt nutzt, solltest du selbst wissen
Mir ist aufgefallen das ist n error gewesen hat nix mit den Librarys zutun
:/home/container$ if [[ -d .git ]] && [[ ${AUTO_UPDATE} == "1" ]]; then git pull; fi; if [[ ! -z ${NODE_PACKAGES} ]]; then /usr/local/bin/npm install ${NODE_PACKAGES}; fi; if [[ ! -z ${UNNODE_PACKAGES} ]]; then /usr/local/bin/npm uninstall ${UNNODE_PACKAGES}; fi; if [ -f /home/container/package.json ]; then /usr/local/bin/npm install; fi; /usr/local/bin/node /home/container/${JS_FILE}
up to date, audited 179 packages in 1s
21 packages are looking for funding
run `npm fund` for details
6 moderate severity vulnerabilities
To address all issues possible (including breaking changes), run:
npm audit fix --force
Some issues need review, and may require choosing
a different dependency.
Run `npm audit` for details.
node:internal/modules/cjs/loader:1080
throw err;
^
Error: Cannot find module '/home/container/main.js'
at Module._resolveFilename (node:internal/modules/cjs/loader:1077:15)
at Module._load (node:internal/modules/cjs/loader:922:27)
at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:86:12)
at node:internal/main/run_main_module:23:47 {
code: 'MODULE_NOT_FOUND',
requireStack: []
}
Node.js v18.18.0```
weiss wer woran das liegt?
Module Not found 😂
requireStack
Dann erstmal mit Grundlagen beginnen und googlen nh xD
nee arbeite ja nicht mit js
Und warum kriegst du dann nen Js fehler? ._.
weil ich einen bot in JS hab
Naja nur bot runnen
wie krieg ich das da rein?
Ka kenne mich mit js nicht aus
Nein???
ich mich auch nicht
Was dann kannst du mir helfen?
Beim hosting hast du vermutlich falsche datei ausgewählt, die ausgeführt werden soll.
Nenn deine Bot Datei um in "main.js"
Daran müsste es liegen
Teste es
Schick mal den Code deiner main.js
Ahhh
Du bist im src ordner
Dann musst du das ja auch so angeben
src/main.js
@lofty rock
im startup?
Da wo du die start datei angibst
Wie hier beim ersten bild
Teste ich gleich danke
/home/container/node_modules/sharp/lib/sharp.js:34
throw new Error(help.join('\n'));
^
Error:
Something went wrong installing the "sharp" module
Cannot find module '../build/Release/sharp-linux-x64.node'
Require stack:
- /home/container/node_modules/sharp/lib/sharp.js
- /home/container/node_modules/sharp/lib/constructor.js
- /home/container/node_modules/sharp/lib/index.js
- /home/container/node_modules/fast-average-color-node/dist/index.js
- /home/container/node_modules/lixqajsutilities/src/module.js
- /home/container/src/handlers/handleIntervals.js
- /home/container/src/main.js
Possible solutions:
- Install with verbose logging and look for errors: "npm install --ignore-scripts=false --foreground-scripts --verbose sharp"
- Install for the current linux-x64 runtime: "npm install --platform=linux --arch=x64 sharp"
- Consult the installation documentation: https://sharp.pixelplumbing.com/install
at Object.<anonymous> (/home/container/node_modules/sharp/lib/sharp.js:34:9)
at Module._compile (node:internal/modules/cjs/loader:1256:14)
at Module._extensions..js (node:internal/modules/cjs/loader:1310:10)
at Module.load (node:internal/modules/cjs/loader:1119:32)
at Module._load (node:internal/modules/cjs/loader:960:12)
at Module.require (node:internal/modules/cjs/loader:1143:19)
at require (node:internal/modules/cjs/helpers:119:18)
at Object.<anonymous> (/home/container/node_modules/sharp/lib/constructor.js:8:1)
at Module._compile (node:internal/modules/cjs/loader:1256:14)
at Module._extensions..js (node:internal/modules/cjs/loader:1310:10)
Node.js v18.18.0```
Das erste Problem ist somit gelöst xD
ich schaus mir gleich an
npm cache clean -f
npm i --verbose sharp@latest
wo soll ich das pasten im hosting?
Ich vermute ins Terminal
da passiert nix
Dann musst du einen script schreiben, der das ausführt
Ich kann kein JS
?
Dann kopier auch keine Js codes
Hab auch das problem mit terminal gehabt, ich gebe dir meinen Code, wait
Noch schlimmer

Für sowas würde ich nie im leben geld ausgeben
exec('npm install express', (error, stdout, stderr) => {
if (error) {
console.error(`Fehler beim Installieren von Express: ${error.message}`);
return;
}
console.log('Express wurde erfolgreich installiert.');
});
@lofty rock mehr als das bekommst du von mir nicht
Vorallem verstehst du ja nicht mal den Code dann
ja py hätte mehr gekostet
Oder einfach selber programmieren
im code sind logger drinne also wenn man startet kommen die logs ip und device weisst du ob der dev die logs auch bekommt?
Ich kenne die Codes nicht, woher soll ich das wissen
Als ob ich hellsehen könnte
also das sind module ja halt soll ich sie dir dm?
nein.
Okay
Du hast die Codes gekauft
Also musst du dich selber damit auseinandersetzten
ich kauf nie mehr JS codes
Du solltest garkeine Codes kaufen
Der Typ hat dich safe über's ohr gehauen
keine ahnung war halt custom code
hab 30 euro gezahlt
Der hat dich mies abgezogen HAHAHA
Woher weisst du das
Bruder 30€ für nen Discord Bot Code? hahahaha
ist halt nen auto payment system
Einloggen -> Auf dein Namen oben klicken -> "My Collection" -> "Submit Pack"
Da kann man selbst drauf kommen
soll ich einfach eine js datei erstellen und sie als startup nutzen oder wie?
Danke
Mehr als das helfe ich dir nicht.
jetzt musst du selber versuchen damit klar zu kommen
Schau Tutorials oder lies nach
ach man
kann man ctx.respond im nachhinein bearbeiten?
bot = discord.Bot(intents=intents, status=status, activity=activity)
AttributeError: module 'discord' has no attribute 'Bot'```
was mach ich falsch?
Code
commands.Bot
import discord
import os
intents = discord.Intents.all()
status = discord.Status.dnd
activity = discord.Activity(type=discord.ActivityType.playing, name="Code")
bot = discord.Bot(intents=intents, status=status, activity=activity)
@bot.event
async def on_ready():
print(f"{bot.user} is Ready")
if __name__ == "__main__":
for filename in os.listdir("cogs"):
if filename.endswith(".py"):
bot.load_extension(f"cogs.{filename[:-3]}")
bot.run("tkn")```
versuch mal das
import discord
from discord.ext import commands
import os
intents = discord.Intents.all()
status = discord.Status.dnd
activity = discord.Activity(type=discord.ActivityType.playing, name="Code")
bot = commands.Bot(command_prefix='?', intents=intents, status=status, activity=activity)
@bot.event
async def on_ready():
print(f"{bot.user} is Ready")
if __name__ == "__main__":
for filename in os.listdir("cogs"):
if filename.endswith(".py"):
bot.load_extension(f"cogs.{filename[:-3]}")
bot.run("tkn")
bot = commands.Bot(intents=intents, status=status, activity=activity)
TypeError: BotBase.__init__() missing 1 required positional argument: 'command_prefix'```
zählt er die cogs nicht? davor ging es auch ohne prefix ist ja nur `@slash_command`
Weil ich kein ezcord kann
hat nichts damit zutuhen ist nur eine erweiterung für py-cord
Kann ich trotzdem nicht
🤔🤨
Kurze Frage, verlieren Dropdown-Menus nach einer bestimmten Zeit ihre Funktion?
Inwiefern?
könntest du mir dabei jetzt helfen?
habe ich schon
.
Nein die verlieren nicht ihre Funktion nach einer Zeit
ich meine bei dem
ja?
habe es bearbeitet
Also wenn man nach einer bestimmten Zeit versucht das Dropdown-Menu zu nutzen kommt ein error: "Diese interaktion ist fehlgeschlagen"
Hast du deine view in einem on_ready?
das kannst du einstellen. standardmäßig verlieren sie nach 180 sekunden ihre funktion
RuntimeWarning: coroutine 'BotBase.load_extension' was never awaited```
Mein Discord Server
► https://discord.gg/zfvbjTEzv6
Code auf Github ► https://github.com/tibue99/tutorial-bot
Discord Developer Portal ► https://discord.com/developers/applications
Pycord
Docs ► https://docs.pycord.dev/
Guide ► https://guide.pycord.dev/introduction/
Discord Server ► https://discord.gg/pycord
In diesem Video stelle ich euch S...
achte darauf, welche packages du installierst
Ich schaue mir mal schnell das Video an!
yo
und welchen Interpreter 🤠
jo danke
Hallo, ich mache grad ein programm mit keyauth und wollte fragen wie ich eine aktion machen kann damit es die datei START.bat und danach schließt und nicht das macht:
print("\nExiting in five seconds..")
sleep(5)
os._exit(1)
das exiting kann bleiben aber der rest nicht
weiß nicht ob das hilfen würde wird es auch nicht aber hier nochmal der github dazu:
ist gelöst
Es klappt glaube ich 😄
supi
Kann dir gar nicht genug danken
wie könnte ich eine website umsonst hosten mit custom domain?
Bei endelon.gg
Oder netflify
Klar
Du kannst da Websites kostenfrei hosten
Eine Domain musst du dir schon kaufen
bin da gebannt ig 😄
Ohje
Was hast du für scheiße gebaut
wurde gehackt
Ok
Code:
async def get_plat(ctx: discord.AutocompleteContext):
List = ["Youtube Music", "[PREMIUM] Spotify", "Soundcloud"]
return List
async def get_plst(ctx: discord.AutocompleteContext):
with open(f"{getcwd()}/Files/config.json", "r") as f:
data = json.load(f)
owner = int(data["ownerId"])
db = await aiosqlite.connect("queue.db")
async with db.cursor() as cursor:
await cursor.execute("SELECT name FROM queue WHERE owner = ?", (owner,))
res = await cursor.fetchall()
if len(res) == 0:
return ["Sorry you don't have any playlists"]
else:
# Wandele die Liste von Tupeln in eine Liste von Zeichenfolgen um
playlist_names = [row[0] for row in res]
return playlist_names
@bot.slash_command(name="play-all", description="Play a song from different platforms")
async def play(ctx: commands.Context, platform: Option("Select the Platform you want to play music from", autocomplete=get_plat), search: Option(str, "The song name you want to play", required=False), playlist: Option("The playlist you want to play", required=False, autocomplete=get_plst)):
vc = ctx.voice_client```
Error:
```Traceback (most recent call last):
File "a:\Coding\Music bot\main.py", line 3983, in <module>
async def play(ctx: commands.Context, platform: Option("Select the Platform you want to play music from", autocomplete=get_plat), search: Option(str, "The song name you want to play", required=False), playlist: Option("The playlist you want to play", required=False, autocomplete=get_plst)):
File "C:\Python310\lib\site-packages\discord\commands\options.py", line 226, in __init__
self.input_type = SlashCommandOptionType.from_datatype(input_type)
File "C:\Python310\lib\site-packages\discord\enums.py", line 779, in from_datatype
if datatype.__name__ in ["Member", "User"]:
AttributeError: 'str' object has no attribute '__name__'. Did you mean: '__ne__'?```
AttributeError: 'str' object has no attribute 'name'. Did you mean: 'ne'?
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...
wie geht das mit @is_owner?
dann kann der command nur vom bot owner benutzt werden, andere user sehen den command aber trotzdem
das will ich aber wie wird das genau geschrieben?
Mein Discord Server
► https://discord.gg/zfvbjTEzv6
Code auf Github
► https://github.com/tibue99/tutorial-bot
Command Checks für Variante 2
► https://gist.github.com/Painezor/eb2519022cd2c907b56624105f94b190
Tutorial Playlist
► https://youtube.com/playlist?list=PLwRWzD1Sw5lXZApchxorxeBQ_P_Fjdsj1
Discord Developer Portal
► https://discord.com...
danke
was bedeutet: TypeError: 'int' object is not iterable
achso ja genau so
da musste die range funktion nehmen ig
Wir hat Timo das gemacht
Muss der Bot verifiziert sein soweit ich weiß
Dann kommt das automatisch
Also Ich möchte aus einem Select Menu ein Modal senden lassen bekomme aber den Error Ich habe jetzt vieles Probiert aber ich kriege es einfach nicht hin
Der Error ist bischen verschwommen
@mystic flower aktuell übergibst du den title zwar an die modal klasse, aber nicht an die super init methode. die einfachste lösung wäre den titel so festzulegen:
super().__init__(
discord.ui.InputText(
...
),
title="Apply"
)
Danke
warum höre ich nix in discord?
falsche lautsprecher ausgewählt?
entweder hast du es bei windows oder bei discord falsch eingestellt
Ok
oder in reallife
Warum höre ich euch durch mein Laptop aber nicht durch die Kopfhörer
hörst du sonst was
Ja

Hi, wie geht das nochmal das wenn mein bot lange brauch um eine msg zu schicken das ich das der bot denkt nach amchen kann
im slash command await ctx.defer(), beim button interaction.response.defer()
Okay, muss ich das am enede machen oder am anfang eines commands?
am anfang
import discord
from discord.ext import commands
import os
import ezcord
intents = discord.Intents.all()
activity = discord.CustomActivity("in development")
bot = ezcord.PrefixBot(command_prefix='!', intents=intents, activity=activity, status=discord.Status.idle)
@bot.event
async def on_ready():
print(f"{bot.user} is Ready")
if __name__ == "__main__":
for filename in os.listdir("cogs"):
if filename.endswith(".py"):
bot.load_extension(f"cogs.{filename[:-3]}")```
kann mir wer das ezcord freundlich machen? :D
also das cogs funktioniert
klar
import discord
from discord.ext import commands
import ezcord
intents = discord.Intents.all()
activity = discord.CustomActivity("in development")
bot = ezcord.PrefixBot(command_prefix='!', intents=intents, activity=activity, status=discord.Status.idle)
if __name__ == "__main__":
bot.load_cogs()
ezcord voll gut
stimmt
RuntimeWarning: coroutine 'BotBase.load_extension' was never awaited
self.load_extension(f"{'.'.join(path.parts)}.{name}")
RuntimeWarning: Enable tracemalloc to get the object allocation traceback```
ja
aber du nutzt doch pycord
aiohttp==3.8.5
aiosignal==1.3.1
async-timeout==4.0.3
attrs==23.1.0
charset-normalizer==3.2.0
discord==2.3.2
discord.py==2.3.2
frozenlist==1.4.0
idna==3.4
multidict==6.0.4
py-cord==2.4.1
typing-extensions==4.7.1
yarl==1.9.2
das geht nicht zusammen mit discord.py
stimmt
@lofty rock
⚠️ Es sollte nur eine Discord Library installiert sein
discord==2.3.2
discord.py==2.3.2
py-cord==2.4.1```
*Ich habe [diese Nachricht](#1019974414487535736 message) geprüft.*
wie öffne ich nen folder in pycharm
also das ich nen in einen bestimmten folder arbeiten kann
import discord
ModuleNotFoundError: No module named 'discord'
ich hab doch discord
deinstallier nochmal py-cord und installier es wieder
hab auf den code gewechselt ```py
import discord
from discord.ext import commands
import os
intents = discord.Intents.all()
status = discord.Status.dnd
activity = discord.Activity(type=discord.ActivityType.playing, name="Code")
bot = commands.Bot(command_prefix='?', intents=intents, status=status, activity=activity)
@bot.event
async def on_ready():
print(f"{bot.user} is Ready")
if name == "main":
for filename in os.listdir("cogs"):
if filename.endswith(".py"):
bot.load_extension(f"cogs.{filename[:-3]}")```
immernoch das gleiche
okay, es liegt aber gar nicht am code, sondern daran, dass du die packages falsch installiert hast
was soll ich machen
hab jetzt discord, discord.py und py-cord gelöscht
Okay
hab jetzt nur py-cord kein discord oder discord.py
immernoch kommt das
dann hast du das ganze wahrscheinlich für eine andere python version installiert, als du gerade für deinen bot nutzt
Python 3.11.3
hatte sowas noch nie
@solid ingot kann man cogs mit @bot.command machen?
keine Ahnung ich kann nur Slash commands
joa geht nd hab error
joa das hilft mir jetztnicht so viel, ich kenne deinen genauen error nicht
ist egal slash ist auch gut
joa kann ich nur nicht
das ding ist das ist halt ein embed mit tausend texten aber in @bot.command
Code -> message.txt
Error: Keiner
Problem :
Wenn ich die Buttons benutze kommt Diese Interaktion ist fehlgeschlagen.
Hab ich auch immer wenn ich Ticket System probiere
Im cog geht nur
@commands.command()
Hier ein Beispiel command
import random
from discord.ext import commands
class Fun(commands.Cog):
def __init__(self, bot):
self.bot = bot
@commands.command(name="roll_dice", aliases=["dice"])
async def roll_dice(self, ctx):
dice_result = random.randint(1, 6)
await ctx.send(f"You rolled a {dice_result} on the dice!")
def setup(bot):
bot.add_cog(Fun(bot))
Welches meinst du jetzt genau? Falsch eingerückt sagst du?
Ja alles gut
@commands.Cog.listener()
async def on_interaction(self, interaction):
if isinstance(interaction, discord.Interaction):
if interaction.custom_id == "claim_ticket":
member_user = interaction.user
user_avatar_url = member_user.avatar.url
self.disabled = True
await interaction.message.edit(view=self.view)
view = discord.ui.View()
view.add_item(self)
if member_user == self.user and member_user.guild_permissions.kick_members:
embed = discord.Embed(title="Ticket wurde geclaimt",
description=f"Das Ticket wurde von {member_user.mention} geclaimt",
colour=0x00ff2a)
embed.set_thumbnail(url=user_avatar_url)
embed.set_footer(text=member_user.name, icon_url=user_avatar_url)
await interaction.response.send_message(embed=embed)
else:
await interaction.response.send_message("Du hast keine Berechtigung, dieses Ticket zu claimen.",
ephemeral=True)
elif interaction.custom_id == "close_ticket":
if self.bot is None:
raise ValueError("//// SELF.BOT SET OFF NONE///")
try:
await interaction.response.send_message("Dein Ticket wird in 5 Sekunden geschlossen...",
ephemeral=True)
await asyncio.sleep(5)
channel = discord.utils.get(interaction.guild.text_channels, id=self.ticket_id)
if channel:
transcript = await self.generate_transcript(channel)
transcript_channel_id = 1147167739723657216
transcript_channel = interaction.guild.get_channel(transcript_channel_id)
if transcript_channel:
file = discord.File(
io.BytesIO(transcript.encode("utf-8")),
filename="transcript.txt"
)
await transcript_channel.send(file=file)
await channel.delete()
except discord.errors.NotFound:
pass
async def generate_transcript(self, channel):
messages = await channel.history(limit=None).flatten()
transcript = ""
for message in messages:
transcript += f"{message.author.display_name}: {message.content}\n"
return transcript
Das muss in die classe:
Dropdown
Stimmt das @solid ingot
Teste den Code mal
@wind finch
Kann ich morgen mal machen
kennt sich wer mit nextguild aus habe da ein problem mit reaction (ich frage erst weil ich müde bin und nicht extra ein fetten text schreibe wenn es hier keiner kennt)
Is das ein lib? Oder von nextcord.Guild
Lib
Wobei genau brauchst du denn Hilfe. Vielleicht können wir dir ja trzdm helfen
ticket has no attribute interaction
Ich will das wenn man auf die Reaktion drück man eine Rolle bekommt aber irgendwie klappt das nicht so
wie kann man Prefix commads in cogs machen ?
Hier ein Beispiel command
import random
from discord.ext import commands
class Fun(commands.Cog):
def __init__(self, bot):
self.bot = bot
@commands.command(name="roll_dice", aliases=["dice"])
async def roll_dice(self, ctx):
dice_result = random.randint(1, 6)
await ctx.send(f"You rolled a {dice_result} on the dice!")
def setup(bot):
bot.add_cog(Fun(bot))
@ruby sparrow
wie mache ich das Avatar vom Bot in einem Embed teil?
Als cog?
embed.set_footer(text=f"Test", icon_url=)
Mit
self.bot.user.avatar.url
async def avatar(self, ctx, member: discord.Member):
await ctx.defer()
avatar_user = await self.bot.fetch_user(member.id)
user = discord.Embed(description=f"`{member}`")
try:
user.set_image(url=avatar_user.avatar.url)
except AttributeError:
return await ctx.respond(
embed=discord.Embed(description="Dieser Nutzer sehr cooler avatar.", color=0xff1414))
await ctx.respond(embed=user, ephemeral=True)
Mit
self.bot.user.avatar_url
@raven lotus
ging nicht
Ja was ist damit
Mit dem _
ich will das als Footer
das ist ein zb
Das ist ein slash_command
Du möchtest aber ein prefix command
Probiere des nochmal
das ist auch für ihm
@raven lotus
AttributeError: 'ClientUser' object has no attribute 'avatar_url'
Man kann kein bot Bild als Footer nutzen wenn ich mich nicht täusche
async def avatar(self, ctx, member: discord.Member):
await ctx.defer()
avatar_user = await self.bot.fetch_user(member.id)
user = discord.Embed(description=f"`{member}`")
try:
user.set_image(url=avatar_user.avatar.url)
except AttributeError:
return await ctx.respond(
embed=discord.Embed(description="Dieser Nutzer sehr cooler avatar.", color=0xff1414))
await ctx.respond(embed=user, ephemeral=True)
``` kannst das mal test @raven lotus
wie macht man ein bestimmtes bild als Icon_url? also hochgeladen natürlich
Es gibt das nicht für den footer
Keine Ergebnisse für pictures gefunden. Meintest du Folgendes?
nah
Keine Ergebnisse für bild gefunden. Meintest du Folgendes?
auch net
Some classes are just there to be data containers, this lists them. Unlike models you are allowed to create most of these yourself, even if they can also be used to hold attributes. Nearly all clas...
Nvm hab nichts gesagt wusste das gar nicht 
Was wusstest du nicht
ich glaube nicht das das damit zu tun hat
Kann man url im footer rein packen
Naja du sagtest du dich eine andere Methode
ich will eig gerade ein hochgeladenes bild, also in das Projekt, benutzen, aber ich muss erstmal das bekommen, nur wie weiß ich nicht
@viscid lake
icon_url (str) – The URL of the footer icon. Only HTTP(S) is supported.
Steht in den docs
Ist mir bewusst ich habe es gelesen
Muss schlafen
Da ich grade mit pycord bzw. dc nichts am coden bin ka
Mache nextguild grad
Gute Nacht
@raven lotus so was?
nah
Footer
bild unten im Footer meinte ich
sowas
also ein in das Projekt hochgeladene Bild da bei Footer rein
komm mal coding
ne, nicht um diese Zeit
warte guck mal ab ich hin komme
ich will nur ein Bild in das Footer reinmachen, mehr nicht
user.set_footer(icon_url="DEINE_BILD_URL_HIER")```
so was meiste du ?
HTTPException: 400 Bad Request (error code: 50035): Invalid Form Body
In embeds.0.footer.icon_url: Not a well formed URL.
.png
jaaaaa, genau so
Muss sein
import discord
from discord.ext import commands
from discord.commands import slash_command
class avatar(commands.Cog):
def __init__(self, bot):
self.bot = bot
@slash_command()
async def avatar(self, ctx, member: discord.Member):
await ctx.defer()
avatar_user = await self.bot.fetch_user(member.id)
user = discord.Embed(description=f"`{member}`")
try:
user.set_image(url=avatar_user.avatar.url)
except AttributeError:
return await ctx.respond(
embed=discord.Embed(description="Dieser Nutzer hat einen sehr coolen Avatar.", color=0xff1414))
user.set_footer(text="Vielen Dank an invalidace für die Programmierung!", icon_url="https://media.discordapp.net/attachments/1158159425207541892/1159620082712989796/P-Logo-Gelb-fertig.png?ex=6531af5c&is=651f3a5c&hm=fafc5dc87a0097d6fff0411a576bb3dac457f1162ac1f9cb618e53fc2906e41f&=&width=701&height=701")
await ctx.respond(embed=user, ephemeral=True)
def setup(bot):
bot.add_cog(avatar(bot))
``` so
muss sein @raven lotus
bruh
wieso bruh?
bitte
ich habe mich übelst verbessert
Warum
habe heute 2 neue Commands gemacht
Ok
XD
Fällt euch paar fun commands ein
Hab ich schon
mmmh
"Fake" kicken oder bannen
wenn du verstehst
also so etwa als Embed
User wurde gekickt
Grund: Weil
Hab ich schon
XD
FUN FACT!
jo, das muss ich auch machen
jo
OK kommt auf meine liste
👍
Noch paar commands
hab einen command mit merkwürdigen sprüchen
also facts
leider nur auf englisch
also mit englischer api
wie mesie du das ?
hi, hab nen Kleines Problem mit meinem Bot :C
ich versuche eine Funktion einzubinden die es unterbindet das usern mit einer Bestimmten rolle weitere rollen zugewiesen werden aber immer wenn ich das tue sagt er mir: "Uknown role" Problem dabei ist das ich auch andere Commands habe um rollen zuzuweisen oder zu entfernen und die laufen reibungslos.
code?
kommt sofort sry xD
import discord
from discord.ext import commands
class PrideCog(commands.Cog):
def __init__(self, bot):
self.bot = bot
self.unverified_role_id = 1158595066177261598
self.pride_role_id = 1157430587355832402
@commands.Cog.listener()
async def on_member_update(self, before, after):
has_pride_role = discord.utils.get(after.roles, id=self.pride_role_id) is not None
if not has_pride_role:
for role in after.roles:
if role.id != self.unverified_role_id:
await after.remove_roles(role)
def setup(bot):
bot.add_cog(PrideCog(bot))
in welcher zeile tritt der error auf, bzw schick mal den kompletten error
Ignoring exception in on_member_update
Traceback (most recent call last):
File "C:\Users\rense\AppData\Local\Programs\Python\Python311\Lib\site-packages\discord\client.py", line 378, in _run_event
await coro(*args, **kwargs)
File "C:\Users\rense\PycharmProjects\Rainbow\Cogs\Anti Role.py", line 17, in on_member_update
await after.remove_roles(role)
File "C:\Users\rense\AppData\Local\Programs\Python\Python311\Lib\site-packages\discord\member.py", line 1054, in remove_roles
await req(guild_id, user_id, role.id, reason=reason)
File "C:\Users\rense\AppData\Local\Programs\Python\Python311\Lib\site-packages\discord\http.py", line 367, in request
raise NotFound(response, data)
discord.errors.NotFound: 404 Not Found (error code: 10011): Unknown Role
import discord
from discord.ext import commands
class PrideCog(commands.Cog):
def __init__(self, bot):
self.bot = bot
self.unverified_role_id = 1158595066177261598
self.pride_role_id = 1157430587355832402
@commands.Cog.listener()
async def on_member_update(self, before, after):
has_pride_role = discord.utils.get(after.roles, id=self.pride_role_id) is not None
if not has_pride_role:
roles_to_remove = []
for role in after.roles:
if role.id != self.unverified_role_id:
roles_to_remove.append(role)
await after.remove_roles(*roles_to_remove)
def setup(bot):
bot.add_cog(PrideCog(bot))``` test mal so
Gleicher Fehler Weiterhin 
ist er bot auch über die rolen ?
Jawohl
mach mal das zu print
es läuft bis zum Letzten Await dann tritt der Error auf
bei komm kein error
intents an?
jawohl
es ist auch weird weil alle anderen Funktionen um rollen auf diesem Server zu geben und zu nehmen funktionieren nur diese nicht
mhm komisch
ich versuchs mal weiter Trotzdem Danke!
komm mal call
Kann leider grade nicht in einen call fam schläft
@raw olive hab dein code gefix
import discord
from discord.ext import commands
class Pride(commands.Cog):
def __init__(self, bot):
self.bot = bot
self.pride_role_id = 1158159492110893078
self.unverified_role_id = 1158159492110893078
@commands.Cog.listener()
async def on_member_update(self, before, after):
has_pride_role = discord.utils.get(after.roles, id=self.pride_role_id) is not None
print("role is back")
if not has_pride_role:
roles_to_remove = []
for role in after.roles:
if role.id != self.unverified_role_id:
roles_to_remove.append(role)
try:
await after.remove_roles(*roles_to_remove)
except discord.errors.NotFound:
pass
def setup(bot):
bot.add_cog(Pride(bot))
``` @raw olive hier ist er gefix code
warum spiel er kein music ab ```py
import discord
from discord.ext import commands
class Support(commands.Cog):
def init(self, bot):
self.bot = bot
@commands.Cog.listener()
async def on_voice_state_update(self, member, before, after):
if member.bot:
return
support_channel_name = 'Support'
if before.channel is None and after.channel is not None and after.channel.name == support_channel_name:
voice_channel = after.channel
voice_client = await voice_channel.connect()
audio_source_link = "https://www.youtube.com/watch?v=0thPZsssZe0"
try:
audio_source = discord.FFmpegPCMAudio(executable="ffmpeg", source=audio_source_link)
voice_client.play(audio_source, after=lambda e: print('Player error: %s' % e) if e else None)
except Exception as e:
print(f"An error occurred: {e}")
def setup(bot):
bot.add_cog(Support(bot))```
es kommt kein eroor
Hast du das hier installiert
youtube_dl
Brauchst du noch Hilfe?
Jo
Ja
Wie kann ich die id der rolle bekommen weil .id geht nicht
for member in ctx.guild.members:
booster_role = discord.utils.get(member.roles, name="Booster-Rolle")
if booster_role:
print(f"{member.name} --> <@&{booster_role}>")```
was genau geht daran nicht?
oh jetzt geht es hab was vergessen tzd danke
Also Syntax wäre folgende:
Du erstellst einen .listener() / event()
(In Pycord ist es ein @commands.Cog.listener() )
Du nennst diesen Listener on_reaction_add()
^ das da macht das der Bot es merkt wenn jmd reagiert.
Nun musst du noch gucken ob es die Reaction ist die du haben willst. —> also if statement wo 1. der Channel oder die MSGID überprüft wird UND 2. das ReactionEmoji das emoji ist bei dem du möchtest das eine Rolle vergeben wird.
Fazit. Du hast die richtige Reaction.
Also du holst dir den User über reacter = reaction.user.
Dann die Rolle geben:
reacter.add_roles(ROLLENID)
So das war es schon
Danke ich teste mal
Bitte
Bei dem gehen cogs nicht da es nicht von dc ist
geht immer doch nicht
Hmmm
hab euch
Ok
?
Ich brauche eine wert mit Ner json
es nix
Zb quiz JSON
Cogs sind nur umlagernden von Code. Das geht nicht von Discord aus
Das ist pycord richtig?
ja...
Die Syntax bleibt die gleiche
Du musst es nur auf deine Lib übertragen
Dann klapp das nicht benutze nextguild für eine andere Plattform
send mal dein code
Lies dir die Message doch einfach mal durch. Ich schreibe dir wie du es machen musst. Ich kenne nextguild nicht. Aber ich kenne Discord und das ist die Syntax
Wie kannst du das machen? Er ist die ganze Zeit auf Abruf und wenn ein neuer Benutzer dem Kanal beitritt, spielt er die Musik erneut ab?
Kommt ein Fehler? Wenn nein, dann Probiere doch einfach mal ein try/except:
Printe dann die Exception und wenn du willst, kannst du auch noch traceback importieren, damit der Fehler noch genauer beschrieben wird!
Kann dir nur das schicken grade
async def on_channel_message_reaction_create(reaction): if reaction.author == bot.user: return # Hier kannst du die Emoji-ID oder den Namen des Emojis setzen, auf das du reagieren möchtest. target_emoji = '??????' # Setze das richtige Emoji hier ein if reaction.emoji.name == target_emoji: # Hole die Rolle, die du hinzufügen möchtest role = reaction.message.guild.get_role(role_id) # Ersetze 'role_id' durch die tatsächliche Rollen-ID if role: try: await reaction.message.author.add_roles(role) await reaction.message.channel.send(f'{reaction.message.author.name} hat die Rolle {role.name} erhalten.') except Exception as e: print(f'Fehler beim Hinzufügen der Rolle: {e}') ```
@commands.Cog.listener()
async def on_raw_reaction_add(self, payload):
if payload.message_id == DEINE_NACHRICHT_ID and payload.emoji.name == "dein emoji":
guild = self.bot.get_guild(payload.guild_id)
member = guild.get_member(payload.user_id)
role = discord.utils.get(guild.roles, name="Die gewünschte Rolle")
if role and member:
await member.add_roles(role)
await member.send(f"Du hast die Rolle {role.name} erhalten!")``` @viscid lake test mal
Py geht s. Handy nicht
hab schon hin kommen
Fehler?
Was meinst du?
Gleich
test mal was rein geschreib hab
alleine wegen dem @commands.Cog.listener() geht es nicht
bei mir heißt das
@events.on_channel_message_reaction_create
Dann nenn es doch um?
es heißt so....
ich habe zb
bot = Client(token=token
events = Evebts(bot)```
error
File "C:\Users\sebas\Desktop\guilded\main.py", line 127, in on_channel_message_reaction_create
if event_data.emoji_text == '👧🏼':
^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'Data' object has no attribute 'emoji_text'
code
@events.on_message
async def reaction_roles(message):
if message.created_by == bot_id:
return
if message.content == '!reactionroles':
reaction_embed_id = Data(
bot.send_message(channel_id=message.channel_id, embed=reaction_embed())).id
bot.create_message_reaction(message.channel_id, reaction_embed_id,
emotess['male_red_haired'])
bot.create_message_reaction(message.channel_id, reaction_embed_id,
emotess['girl'])
bot.create_message_reaction(message.channel_id, reaction_embed_id,
emotess['ninja'])
@events.on_channel_message_reaction_create
async def on_channel_message_reaction_create(event_data):
if event_data.created_by == bot_id:
return
if event_data.emoji_text == '👧🏼':
message = await bot.get_message(event_data.channel_id, event_data.message_id)
if message:
role = message.guild.get_role(29844451) # Ersetzen Sie 'role_id' durch die tatsächliche Rollen-ID
if role:
try:
await message.author.add_roles(role)
await message.channel.send(
f'{message.author.name} hat die Rolle {role.name} erhalten.')
except Exception as e:
print(f'Fehler beim Hinzufügen der Rolle: {e}')
Leider unterstützt die Bibliothek "nextguild" keine Cogs wie Discord.py. "Cogs" sind ein Feature in Discord.py, das es Ihnen ermöglicht, Ihren Bot-Code in modulare und wiederverwendbare Einheiten aufzuteilen. "nextguild" ist eine separate Bibliothek und verfügt nicht über dieses spezielle Feature. 
Und warum benutzt du sie dann?
Und pycord hat das auch. Das ist nicht nur dc.py xD
wiel ich das brauche immer noch...
Was brauchst du?
ich habe doch gesagt das ist für eine andere plattform?
Cogs
@events.on_message
async def reaction_roles(message):
if message.author.id == bot_id:
return
if message.content == '!reactionroles':
reaction_embed_id = (await bot.send_message(channel_id=message.channel_id, embed=reaction_embed())).id
await bot.create_reaction(message.channel_id, reaction_embed_id, emotess['male_red_haired'])
await bot.create_reaction(message.channel_id, reaction_embed_id, emotess['girl'])
await bot.create_reaction(message.channel_id, reaction_embed_id, emotess['ninja'])
@events.on_channel_message_reaction_add
async def on_channel_message_reaction_add(event_data):
if event_data.user_id == bot_id:
return
if event_data.emoji == emotess['girl']:
message = await bot.get_message(event_data.channel_id, event_data.message_id)
if message:
role = message.guild.get_role(role_id)
if role:
try:
member = await bot.get_member(event_data.guild_id, event_data.user_id)
await member.add_role(role)
await bot.send_message(
event_data.channel_id,
f'{member.username} hat die Rolle {role.name} erhalten.'
)
except Exception as e:
print(f'Fehler beim Hinzufügen der Rolle: {e}')```
@viscid lake test
muss das ändern
AttributeError: 'Events' object has no attribute 'on_channel_message_reaction_add'. Did you mean: 'on_channel_message_reaction_create'?****
@events.on_message
async def reaction_roles(message):
if message.author.id == bot_id:
return
if message.content == '!reactionroles':
reaction_embed_id = (await bot.send_message(channel_id=message.channel_id, embed=reaction_embed())).id
await bot.create_reaction(message.channel_id, reaction_embed_id, emotess['male_red_haired'])
await bot.create_reaction(message.channel_id, reaction_embed_id, emotess['girl'])
await bot.create_reaction(message.channel_id, reaction_embed_id, emotess['ninja'])
@events.on_channel_message_reaction_create
async def on_channel_message_reaction_create(event_data):
if event_data.user_id == bot_id:
return
if event_data.emoji == emotess['girl']:
message = await bot.get_message(event_data.channel_id, event_data.message_id)
if message:
role = message.guild.get_role(role_id)
if role:
try:
member = await bot.get_member(event_data.guild_id, event_data.user_id)
await member.add_role(role)
await bot.send_message(
event_data.channel_id,
f'{member.username} hat die Rolle {role.name} erhalten.'
)
except Exception as e:
print(f'Fehler beim Hinzufügen der Rolle: {e}')```
hab das schon geändert aber ich nutze deins
jo mach das
jetzt werden keine emojis hinzugefügt und es kommt ein error
File "C:\Users\sebas\Desktop\guilded\main.py", line 113, in reaction_roles
reaction_embed_id = (await bot.send_message(channel_id=message.channel_id, embed=reaction_embed())).id
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
TypeError: object dict can't be used in 'await' expression```
emotess = {
'male_red_haired': '👨🦰',
'girl': '👧🏼',
'ninja': '🥷'
}
@events.on_message
async def reaction_roles(message):
if message.author.id == bot_id:
return
if message.content == '!reactionroles':
reaction_embed_dict = reaction_embed()
reaction_embed_id = (await bot.send_message(channel_id=message.channel_id, embed=reaction_embed_dict)).id
await bot.create_reaction(message.channel_id, reaction_embed_id, emotess['male_red_haired'])
await bot.create_reaction(message.channel_id, reaction_embed_id, emotess['girl'])
await bot.create_reaction(message.channel_id, reaction_embed_id, emotess['ninja'])
@events.on_channel_message_reaction_create
async def on_channel_message_reaction_create(event_data):
if event_data.user_id == bot_id:
return
if event_data.emoji == emotess['girl']:
message = await bot.get_message(event_data.channel_id, event_data.message_id)
if message:
role = message.guild.get_role(role_id)
if role:
try:
member = await bot.get_member(event_data.guild_id, event_data.user_id)
await member.add_role(role)
await bot.send_message(
event_data.channel_id,
f'{member.username} hat die Rolle {role.name} erhalten.'
)
except Exception as e:
print(f'Fehler beim Hinzufügen der Rolle: {e}')```
File "C:\Users\sebas\Desktop\guilded\main.py", line 117, in reaction_roles
if message.author.id == bot_id:
^^^^^^^^^^^^^^
AttributeError: 'Data' object has no attribute 'author'```
das ist nicht wie pycord oder dc.py
Hat jmd ne Idee, warum ich kein Github Copilot mehr nutzen kann?
Bin eigtl. schon für Education Version registriert.
schon mal probiert zu realoaden
also die exstention
thx
hat geklappt?
ich probier gerade
ok sag wenns ned geht
hey kurze frage bekomme nach dem heutigen video diesen traceback:
Traceback (most recent call last):
File "C:\Users\Angel\AppData\Local\Programs\Python\Python310\lib\site-packages\uvicorn\protocols\http\h11_impl.py", line 408, in run_asgi
result = await app( # type: ignore[func-returns-value]
File "C:\Users\Angel\AppData\Local\Programs\Python\Python310\lib\site-packages\uvicorn\middleware\proxy_headers.py", line 84, in __call__
return await self.app(scope, receive, send)
File "C:\Users\Angel\AppData\Local\Programs\Python\Python310\lib\site-packages\fastapi\applications.py", line 292, in __call__
await super().__call__(scope, receive, send)
File "C:\Users\Angel\AppData\Local\Programs\Python\Python310\lib\site-packages\starlette\applications.py", line 122, in __call__
await self.middleware_stack(scope, receive, send)
File "C:\Users\Angel\AppData\Local\Programs\Python\Python310\lib\site-packages\starlette\middleware\errors.py", line 184, in __call__
raise exc
File "C:\Users\Angel\AppData\Local\Programs\Python\Python310\lib\site-packages\starlette\middleware\errors.py", line 162, in __call__
await self.app(scope, receive, _send)
File "C:\Users\Angel\AppData\Local\Programs\Python\Python310\lib\site-packages\starlette\middleware\exceptions.py", line 79, in __call__
raise exc
File "C:\Users\Angel\AppData\Local\Programs\Python\Python310\lib\site-packages\starlette\middleware\exceptions.py", line 68, in __call__
await self.app(scope, receive, sender)
File "C:\Users\Angel\AppData\Local\Programs\Python\Python310\lib\site-packages\fastapi\middleware\asyncexitstack.py", line 20, in __call__
raise e
File "C:\Users\Angel\AppData\Local\Programs\Python\Python310\lib\site-packages\fastapi\middleware\asyncexitstack.py", line 17, in __call__
await self.app(scope, receive, send)
File "C:\Users\Angel\AppData\Local\Programs\Python\Python310\lib\site-packages\starlette\routing.py", line 718, in __call__
await route.handle(scope, receive, send)
File "C:\Users\Angel\AppData\Local\Programs\Python\Python310\lib\site-packages\starlette\routing.py", line 276, in handle
await self.app(scope, receive, send)
File "C:\Users\Angel\AppData\Local\Programs\Python\Python310\lib\site-packages\starlette\routing.py", line 66, in app
response = await func(request)
File "C:\Users\Angel\AppData\Local\Programs\Python\Python310\lib\site-packages\fastapi\routing.py", line 273, in app
raw_response = await run_endpoint_function(
File "C:\Users\Angel\AppData\Local\Programs\Python\Python310\lib\site-packages\fastapi\routing.py", line 190, in run_endpoint_function
return await dependant.call(**values)
File "c:\Users\Angel\Desktop\dashboard test\main.py", line 119, in server
"name": stats.response["name"],
TypeError: 'NoneType' object is not subscriptable
ich verstehe aber nicht woher das kommt hab eigentlich alles gleich wie im video kann mir schnell wer helfen?
@app.get("/server/{guild_id}")
async def server(request: Request, guild_id: int):
session_id = request.cookies.get("session_id")
if not session_id or not await db.get_session(session_id):
raise HTTPException(status_code=401, detail="no auth")
stats = await ipc.request("guild_stats", guild_id=guild_id)
return templates.TemplateResponse(
"server.html",
{
"request": request,
"name": stats.response["name"],
"count": stats.response["member_count"],
"id": guild_id,
}
)
das ist die main
@Server.route()
async def guild_stats(self, data: ClientPayload):
guild = self.get_guild(data.guild_id)
if not guild:
return {
"member_count": 69,
"name": "Unbekannt"
}
return {
"member_count": guild.member_count,
"name": guild.name,
}
das die bot.py
Code -> message.txt
Error: Keiner
Problem :
Wenn ich die Buttons benutze kommt Diese Interaktion ist fehlgeschlagen.
hast doch gar keinen callback dafür oder?
also für die buttons
oder is das dieses on_interaction
versuchs doch eif mal mit nem normalen button
Ja will ja extra so das du Buttons nicht nach paar Minuten nicht mehr gehen.
kannste doch auch machen mit normalen buttons
weiß jmd wie man ne msg gettet? bin gerade zu brain afk
also mit id
Wie soll das gehen?
eif im cmd oder wo auch immer die buttons gesendet werden ne asynio.sleep machen mit ner msg bearbeitung danach
Hmmm muss ich gucken wie ich das anstelle.
soll ich eif helfen dabei? xd
Wenn du möchtest gerne
schick ma den code
Ist hier in einer Message.txt
Willst du auch gleich Call oder eher nicht?
muss schauen internet is nd so gut
Aso kk
jmd ne idee warum das nd geht?
user = interaction.client.get_user(self.id)
print(user)
await user.add_roles(discord.utils.get(interaction.guild.roles, name=f"Shop Punkte: {points - price}"))```
was versuchst du
nem user ne rolle zu adden.
in einen event oder wie xD
button
isses ok wenn die uttons eif verschwinden
naja wie soll man da die idee haben wenn du nur ein schnipsel schickst 😅
Also ich meine wie du den user übergeben hast
hab die user id halt übergeben
class TicketButtons(discord.ui.View):
def __init__(self, id, item):
super().__init__(timeout=None)
self.id = id
embed.set_footer(text="Kauf-Ticket System")
await c.send(embed=embed, view=TicketButtons(id=interaction.user.id, item=self.item))
doch
await user.add_roles(discord.utils.get(interaction.guild.roles, name=f"Shop Punkte: {points - price}"))
AttributeError: 'User' object has no attribute 'add_roles'
das wundert mich ja
und wenn du:
user = interaction.client.get_user(id)```
aber wenn du user übergibst musst den doch gar nd getten?
ich übergebe ja die id
hm verstehe nd ganz wie du des meinst
class TicketButtons(discord.ui.View):
def __init__(self, id, item):
super().__init__(timeout=None)
self.id = id
self.item = item
@discord.ui.button(label="Kauf akzeptieren", style=discord.ButtonStyle.green, emoji="✅", custom_id="button1")
async def button_callback1(self, button, interaction):
async with aiosqlite.connect("p.db") as db:
async with db.execute("SELECT points FROM points WHERE user_id = ?", (self.id,)) as cursor:
points = await cursor.fetchone()
points = points[0]
async with db.execute("SELECT ausgegeben FROM points WHERE user_id = ?", (self.id,)) as cursor:
ausgegeben = await cursor.fetchone()
ausgegeben = ausgegeben[0]
async with db.execute("SELECT buys FROM points WHERE user_id = ?", (self.id,)) as cursor:
buys = await cursor.fetchone()
buys = buys[0]
async with db.execute("SELECT xp FROM points WHERE user_id = ?", (self.id,)) as cursor:
lifetime_points = await cursor.fetchone()
lifetime_points = lifetime_points[0]
async with aiosqlite.connect("p.db") as db:
async with db.execute("SELECT prize FROM prize WHERE item = ?", (self.item,)) as cursor:
price = await cursor.fetchone()
price = price[0]
async with aiosqlite.connect("p.db") as db:
await db.execute("UPDATE points SET points = ? WHERE user_id = ?", (points - price, self.id))
await db.execute("UPDATE points SET ausgegeben = ? WHERE user_id = ?", (ausgegeben + price, self.id))
await db.execute("UPDATE points SET buys = buys + 1 WHERE user_id = ?", (self.id,))
await db.commit()
user = interaction.client.get_user(self.id)
print(user)
await user.add_roles(discord.utils.get(interaction.guild.roles, name=f"Shop Punkte: {points - price}"))
await user.remove_roles(discord.utils.get(interaction.guild.roles, name=f"Shop Punkte: {points}"))
```
das is btw der error
hey ich habe den member count benutzt.
bei mir funktioniert das guild nicht ka why


