#Allgemeine Hilfe
1 messages · Page 15 of 1
@floral monolith @floral monolith @floral monolith

Is ja auch richtig
will ja aber das avatar
Ja damit bekommst du den avatar
im embed sehen
Aber musst es in ein thumbnail oder als image machen 
nee im title
Du kannst es nicht als Titel machen
Wie willst du im Titel den Avatar vom User hinmachen? Tf?
wieso gleich so agro tf
Weil es kein sinn ergibt 
Und is nicht „agro“ 
Alles einfach weiter nach hinten rücken
#📷・media
Is nicht der titel ._.
set_author
Und ich dachte mir schon, was meint er mit avatar im titel? Haha 
ahh ok danke und tut mir leid dass ich nicht alles weiß -_-
@solid ingot ich glaube die leute schauen deine Videos ohne ein wenig Grundwissen von python zu haben
kann man nicht mal was fragen ohne das man gleich beleidigt oder sonstiges wird
Wo wurdest du beleidigt?
„Tf“ is keine Beleidigung, falls du dies meinst
mein ich nicht

und bitte helf mir nicht mehr wenn es dich abnervt
Es nervt mich nicht ab, man soll nur Python Grundwissen haben, bevor man mit discord bots anfängt, das wird dir jeder coder sagen, der erfahren is
woher willst du denn wissen was ich bisher alles gecodet habe
vlt hab ich einfach noch nie author benutzt und was auch immer
lass mich doch einfach fragen
entspannt euch bitte
@urban glen es ist schön dass du hier helfen magst, aber sei bitte auch zu leuten nett die etwas nicht verstehen oder noch nicht gut python können
Naja ich wüsste das du die basics kannst, wenn du nicht gefragt hättest wie man den author macht ._.
Du hast selber in den regeln stehen das man Python Grundlagen wissen sollte
ok is mir jetzt auch egal danke für die Hilfe auf jeden Fall
embed author ist keine python grundlage
Da geht es um pycord basics, aber ich red grad vom allgemeinem, dass gefühlt 80% der Member hier auf dem Server durch deine Videos direkt mit discord bots starten und eig nur alles abschreiben ohne es zu verstehen
ja eben, es ging eben um pycord basics, nicht um python basics
und auch bei python basics sollst du nett bleiben. du kannst dann einfach freundlich auf ein python tutorial verweisen oder gar nicht antworten wenn es dich nervt
ich werde unhöfliche nachrichten mit tf am ende nicht mehr länger dulden
@lofty haven du kannst hier gerne jederzeit sachen fragen, wenn nochmal jemand unhöflich ist mach am besten ein ticket auf
Was ist an tf so schlimm? 
Machst du die Klasse in nem Cog?
Oder woher kommt der bot
Weil sonst müsstest du eigentlich interaction.client machen


Is doch nitro oder nd?
discord nitro basics

normalerweise hab ich kein nitro, aber mir wurde nitro basic geschenkt. diesen channel aber bitte nur für coding fragen nutzen
Haha schick mal Nitro docs xD
Oder du könntest das Geld spenden, anstatt es einem Owner von Discord zu geben ._.
Ah das erklärts
xd
Is das der ganze error?
Oder gibts mehr? Wo auch nh Line steht
Ahh
Du hast klammern vergessen
Also beim Button
Wo du das modal sendest
MyModal()
Und wenns möglich ist, auch als screenshot xD, bin am handy

wenn du die klasse in nem cog machst, dann mach self.bot.get_channel
Und wenn du außerhalb vom Cog machst, dann mach interaction.client.get_channel
ok
xd
Welches hast du denn genommen?
self.bot oder interaction.client
Dann probier das andere
Hm?
Dann idk
Dachte in pycord is es wie in nextcord
Aber du könntest den bot von klasse zu klasse übergeben
ich hab dazu ein video gemacht
Eig nd, beim modal machst du
def __init__(self, bot):
self.bot = bot
Und beim senden vom modal machst du dann nur .send_modal(self.bot)
Und dann kannst du beim modal auch self.bot nutzen
Wollte es schicken, aber bei dem Befehl lädt es nicht, zu schlechtes netz
hm der befehl geht grade nicht
Mit der aussage kann ich dir nicht besonders gut helfen
Eig hab ichs dir grad erklärt und vorgecodet
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
Heute klären wir eine Frage, die ...
@solid ingot hast du bei dem befehl die Links manuell eingefügt?
Oder machst du es mit ner Api oder ähnliches?
Oder ner extra lib
mit der lib die ich auch für die youtube notifications nutze
Mein Discord Server
► https://discord.gg/zfvbjTEzv6
Links aus diesem Video
Python Dictionary ► https://www.w3schools.com/python/python_dictionaries.asp
Gigachad ist traurig ► https://youtu.be/dxzW_sbltgE
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
Mein Hosting* ► https://tidd.ly/3gJufg6
Code auf Github ► https://github.com/tibue99/tutorial-bot
PYCORD
Docs ► https...
Asso
Wieso machst du nicht mit den Youtube Developer shit, damit kann mans glaube auch machen, dann muss man aber mit mehr aiohttp oder requests arbeiten
Ne
ohh
Nutze auch nh Fork
Lmao okay? Gelöscht? xd
nh fork?
da stehe ich aufm schlauch no jk
Forks von discord.py
Also pycord, nextcord, disnake, discord4py und sowas
ahhhhhhhhhhh
okay
jzt check ichs
okk
Steht glaube auch immer auf github xD
Hier auch pycord
Und hier auch von discord4py (also soll dazu umbenannt werden)
C:\Users\Georgi\AppData\Local\Programs\Python\Python310\python.exe "C:\Users\Georgi\Documents\Georgi\Developer stuff\KUNDEN\ZZELA\main.py"
Traceback (most recent call last):
File "C:\Users\Georgi\Documents\Georgi\Developer stuff\KUNDEN\ZZELA\main.py", line 5, in <module>
from discord.commands import Option
File "C:\Users\Georgi\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\commands\__init__.py", line 26, in <module>
from .context import *
File "C:\Users\Georgi\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\commands\context.py", line 29, in <module>
import discord.abc
ModuleNotFoundError: No module named 'discord.abc'
Process finished with exit code 1
code:
Uff will die datei nicht downloaden, jemand anders muss dir helfen
kk
sieht nach einer falschen version aus, schau mal in #🔍・pycord-help
Code?
Aber schick als screenshot pls
Musst halt vom Cog den bot auch an den Button übergeben
Damit es dann zum modal übergeben werden kann
Also das selbe wie oben beim Modal, halt nur beim Button

Dann schick doch nur Code
Screenshot?
Bin am handy
ok
Dann muss dir wer anders helfen
?
?
?
?
Will dich nur verwirren
also wird "geschickt" gesendet, aber das embed nicht?
das embed müsstest du da noch hinzufügen
await interaction.response.send_message(embed=embed, ephemeral=True)
ich denke mit required=False
so denke ich
discord.ui.InputText(
label="Schreibe hier deine Bewerbung",
placeholder="Placeholder",
style=discord.InputTextStyle.long,
required=False
),

ich seh da kein fehler aktuell, hast du den message content intent an?
bzw. mach daraus nen slash command @urban glen
und nutzt du discord.Bot oder commands.Bot 🤔
oder bridge.Bot
und wenn du !bewerbun..... sendet kommt da was?
oder nichts
ist theoretisch egal
äh ich sehe was da
du hast im Button class den Parameter self.bot übergeben
hast es aber nicht im Code davor nicht gemacht
wo das View gesendet wird
müsstest dann in den () noch self.bot einfügen
beim modal auch
und wieso interaction._client_.get_channel?
mach das Client da raus
kannst auch self.bot.get_channel machen da du den Parameter bot übergehen hast
und beim command unter ansyc alles ein Tab nach links
nicht richtig eingerückt
dafür brauchst du subcommand groups
nein noch nicht
machst du das nicht schon?
also entweder kann man das direkt in der SQL abfrage machen oder du erstellst eine if abfrage in python
== heißt ob es 1zu1 steht
!= halt das Gegenteil
genau
@solid ingot er nimmt deine Regeln ernst
Worum gehts?
Hast du da noch nh problem?
Könnte helfen, aber bin am Handy
Also bräuchte Screenshot
Nvm doch nd
Setz mich grad an meinen Pc
Channel getten und reinschicken
channel = ctx.guild.get_channel(ID)
await channel.send(embed=embed)```
Und halt wenn es ein channel ist, der auf einem bestimmten server ist, dann einfach
guild = self.bot.get_guild(ServerID)
channel = guild.get_channel(ChannelID)
await channel.send(embed=embed)```
bewerbungsmsg?
self.bot
Wenn es in nem Cog is
Was meinst du?
await self.bot.send_message(f"{interaction.user.mention} Bewerbung wurde ans Team gesendet!", ephemeral=True) was wird das?
So:
await interaction.response.send_message(f"{interaction.user.mention} Bewerbung wurde ans Team gesendet!", ephemeral=True)
Bisschen mehr error wäre besser
Hm?
Wieso hast du nen eigenen Error Handler 
Wie soll man dir dann helfen
Ohne mehr details?
Jemand nh Idee was ich in meinen Bot einbauen könnte?
Zum 3. mal, ich brauch was schwereres
Nein. Du kannst halt einfach kein Python (nicht böse gemeint)
Wie gesagt, könnte dir mit Live Share helfen, aber du nutzt ja nh IDE
Und ich kann über VSCode nicht mit Liveshare auf Pycharm zugreifen, falls es die extension da überhaupt gibt
Hab grad in Pycord help geschaut kriegs aber nicht hin. Hab glaube alles richtig installiert, aber "no module named 'discord'" kommt sobald ich import discord schreib
Wie fix ich das
Lade den pycord runter
hab ich
Dan normales discors
Nein seh ich nicht? ._.
Das wird da nicht stehen, kannst es deaktivieren
Man kann auswählen ob ich dann Terminal sehe oder nd
Mein VSC Background, so sexy
Visual Studio Ohio? tf wie ändert man den hintergrund

Gibt extensions dafür
ol´ksfsdiuhbfuid
was für basic
Naja das ist weniger was was man braucht, son hintergrund
Nutze keine IDE, also idk
Also es gibt nh Extension
Für den Hintergrund
Gibt viele
Weiß grad nd wie die heißt
hab kb vsc zu öffnen
bot = discord.Bot()
AttributeError: module 'discord' has no attribute 'Bot'
import discord
bot = discord.Bot()
bot.run()
Was zum
Discord hat kein Attribute bot
Was meinst du?
Da steht ..
Running] python -u "c:\Programieren\pythonProject\test.py"
Hello
[Done] exited with code=0 in 0.451 seconds
is er printet "hello"?
Is doch richtig
Cool! Den error vorlesen!
Wie ich den error fixxe ist was anderes..
Ja aber manchmal Krieg ich kein oitput
Du hast die ganze Zeit gesagt das du den Modul discord nicht hast
Aber benutzt Mal bot.Client
Und da. Sag .Al den theme
?
Mein Background ist ein eigenes, is nicht in Doki Theme enthalten
Is nh Lokales Bild
bot = discord.bot.Client
AttributeError: module 'discord' has no attribute 'bot'
Das ich transparentiert habe
._.
Was wird das wenn es fertig is?
bot = discord.Client()
Nein sorry discord.Client
Klappt genauso wenig
Mit klammern
bot = discord.Client()
AttributeError: module 'discord' has no attribute 'Client'
Dann mach from discord.ext import commands und dann mach bot = commands.Bot(commands_prefix="!")
ok
Den prefix kannst du zu irgendwas machen
from discord.ext import commands
ImportError: cannot import name 'commands' from 'discord.ext' (unknown location)
Weiß ich, ich programmier schon länger, nur halt mit discord.py
Ja dann idk, nutz kein pycord
Huhu,
könnte mir jemand helfen, ich verstehe nicht so ganz, warum der Bot keine Reaktion zeigt.
Code: https://max1385.needs.rest/aufnahme_120.png
hast du den message content intent aktiviert?
https://max1385.needs.rest/aufnahme_121.png
ja, alles an
auch im code?
okay gut
lass dir vielleicht mal den message content ausprinten
evtl liegt es am ausrufezeichen
das muss nicht zwangsläufig immer mit drin sein
ich weiß, habe es weggemacht und es erscheint aber trotzdem nichts
hast du dir die nachricht mal ausprinten lassen?
genau, also print(message.content), damit du siehst wo der fehler ist
hm
schick mal den ganzen code
@bot.event
async def on_message(message):
max = '@tough thicket'
print("1")
print(message.content)
if max in message.content:
print(message.content)
print("2")
await message.channel.send("Max ist gleich da!")
print("3")
schick mal den ganzen oberen teil wo du dein bot definierst
import discord
import asyncio
import os
intents = discord.Intents.default()
intents.members = True
intents.message_content = True
from dotenv import load_dotenv
import json
# Message-Counter
from discord.ext import commands
from discord.ext import tasks
import sqlite3
intents = discord.Intents.default()
bot = discord.Bot(command_prefix='.', intents=intents)
Sieht halt aktuell so aus
würden dann aber nicht mehr die Funktionen mit dem presence intent gehen?
ah ne, passt
klappt schon, danke dir sehr! 
freut mich!
nein

schreib immer dazu was genau nicht geht oder welchen Error du bekommst
message content intent an?
Hey, wie fixe ich
In emoji_id: Value "" is not snowflake.```
der error kommt von:
await message.add_reaction(':max1385:')
in einem cog
Custom Emojis gibt man nicht mit :max1385: an
Musst es so machen
Was hat das mit max zutun?
jo dange
?
Hab ich schon
Weißt du doch, hast ja selber meinen Code
bist so Lustig
Hab den Code nur für dich bisschen überarbeitet
Wie gesagt, habs für dich überarbeitet
Hab ja eig auch, dass man mit Buttons Skippen kann und sowas
Welchen Server?
Hab ich
hab schon einiges
Auch so News Kram, also aus städten oder Ukraine news oder sport news
Brauch ich nicht
wofür?
nein?
Weil es kein öffentlicher Bot sein soll
Nein.
Das Music System beim Bot läuft mit Youtube und wenn er auf nem anderen Server is, dann zählt er als Öffentlich und das verstößt gegen die ToS
Der ist auf meinem privaten Server
Wo nur ich drauf bin
Wie gesagt, nicht öffentlich
Hä?
Wie "ist ja ned lustig"
Ja? ist ja auch richtig so?
Ich code ja nicht um es zu veröffentlichen oder so, sondern nur weil ich Aufgaben brauche
Also wofür sollten den mehr leute benutzen?
nein?
Dann wäre er ja "öffentlich"
Wenn mehr als der Bot Owner auf dem Server sind
.
mach nur deathrun um xp zu bekommen
hä nein wtf
was laberst du für ein Shit
Es ist erst gegen die ToS von YouTube wenn du dafür Geld verlangst z.b. Premium und co.
Du kannst es natürlich in öffentlichen Bots tun solange man an den Angaben von YouTube hält und wie gesagt kein Geld verlangst o.ä.
hatte vor paar tagen nachgelesen, Bot's die von youtube aus streamen sind untersagt
Deshalb wechseln die meisten ja zu soundcloud
Ja und Nein, Ja es stimmt und Nein man kannst umgehen wenn keine lisenzierte Videos abspielt
Aber bei /play <music> befehlen kann man ja nicht beeinflussen, was der Member für Musik spielen lässt
if abfragen ._.
work = discord.SlashCommandGroup("work", "test")
@work.command(name='legal')
@work.command(name='illegal')
Wenn ich bot = discord.Bot nehme, habe ich ja nur Slash Befehle aber wie pack ich das in meine Group? Ich hab keinen Error nix aber der Befehl ist auch nicht da 
War für die Formatierung ._.
Weil du nicht richtig geschickt hast
Kann man Slash Commands Groups nicht im Cog benutzen?

Ich verstehe sowieso nicht wieso das ein Prefix ist. Das soll ja immer in einem Channel bleiben. 
Moment ...
@commands.command()
@commands.is_owner()
async def bewerbungsmsg(self, ctx):
embed = discord.Embed(
title="A",
description="A",
color=0x2f3136
)
await ctx.send(embed=embed, view=bewerbungsviewer(self.bot))```
änder den Befehl zu das
Den kannst du ausblenden?
Das Thema hatten wir schonmal

@discord.slash_command(description="Leere einen Channel")
@default_permissions(manage_messages=True)```
Den Befehl sieht nur der der die permission `manage_messages` hat
Andere sehen ihn nicht
administrator
Für gewöhnlich gibt man niemandem administrator. Die permission hat man aber immer als besitzer
f string vergessen
!bewerbung /bewerbung
?!
Da hab ich lieber eine Liste, die mir zeigt was mein Bot kann 
Wenn du 582375890273890 Commands hast, die über Prefix laufen
Viel Spaß sich das alles zu merken
Unnötig in meinen Augen. Aber jeder, wie er möchte.
Ja, der funktioniert nichtmehr, weil der Bot den alten Button nichtmehr kennt
kann man glaube ich mit nem on ready event fixen oder ?
Ja, irgendwie ging das. Damit hab ich mich aber noch nicht komplett auseinandergesetzt
@commands.Cog.listener()
async def on_ready(self):
self.bot.add_view(SelectUI())
so glaube ich
also so in etwa wenn man eine view classe nutzt ^^
war bei mir in einem cog deswegen das self

wie hast du den cog denn geladen wenn ich mal so fragen darf ? ^^
self.bot.add_view
du bist in einer cog
Dazu kannst du, wenn du nur ein embed schickst, einfach embed=embed benutzen. embeds=[] benutzt du wenn du mehr als eins schicken willst
bewerbungsviewer(self.bot)
Fehler lesen


und was kommt für ein fehler ?
(bewerbungsviewer(self.bot)) ohne self.bot
ne
du musst dem view eine custom id geben
wies auch im error steht
Damit du einen view persistent machen kannst musst du dem Button eine Custom ID geben
@discord.ui.button(label="Bewerben!", style=discord.ButtonStyle.grey, emoji="📝", custom_id="DEINECUSTOMID")```
ca so
vollkommen egal
In welchem?
Was willst du da denn machen?
Nein du musst das auch da eintragen wo du den Button erstellst
Und du musst bei View noch timeout=none machen
Kann dir später zeigen wie des geht Handy ist schlecht grad
-> None
ist doch der Timeout? 
Ah nvm
class bewerbungsviewer(discord.ui.View):
def __init__(self, bot, *items: Item):
super().__init__(*items, timeout=None)
self.bot = bot```
@urban glen
Ja sowas
@tawdry leaf ^
Ja sag ich doch sowas 😅
discord.errors.ApplicationCommandInvokeError: Application Command raised an exception: ValueError: could not find open space for item
Code:
from discord.ext import commands
from discord.commands import slash_command
from Config.Views.emmodal import *
class Sayembed(commands.Cog):
def __init__(self, client):
self.client = client
@slash_command(description="Erstelle dein Embed")
@commands.has_permissions(administrator=True)
async def embed(self, ctx):
modal = emModal(title="Erstelle ein Embed")
await ctx.send_modal(modal)
def setup(client):
client.add_cog(Sayembed(client))
slash command group importieren wie bei slash_command
und das discord da entfernen
und debug guilds nutzen sollte dann gehen
Ja danke aber ich hab jetzt einfach 2 Befehle gemacht... War mir zu doof xD
wenn ich eine Option mit ein ein slash command mit rein machen will konnte man das nicht so machen das der user sich aus suchen konnte ob er die option benutzt oder nicht
ja mit required=False
achso danke
Es ist falsch ein gerückt die class
@cloud cedar schreibt...
await value.callback(interaction)
TypeError: meinmodal.callback() missing 1 required positional argument: 'bot'
Was da los? Was hab ich falsch gemacht
embed = discord.Embed(title=self.children[0].value, description=self.children[1].value)
channel = await self.bot.fetch_channel(18718718718718718769420)
await channel.send(embed = embed)
class TestView(discord.ui.View):
@discord.ui.button(label="Mal was testen")
async def button_callback(self, button, interaction):
await interaction.response.send_modal(meinmodal(title = "Funzt ned"))```
@urban glen schreibt
await interaction.response.send_modal(meinmodal(bot))
Aber dafür musst du halt auch den Bot von wo anders in die View übergeben
Also ausm Cog oder so
Wie mach ich das?
Hab das in nem Cog
Check Dms
Du musst halt, da wo du den Button sendest auch TestView(self.bot) machen
Und beim View musst du den Bot hinzufügen
Ja kp
class bewerben(commands.Cog):
def __init__(self, bot):
self.bot = bot
@slash_command()
async def bewerben(self, ctx):
await ctx.respond("Bewerbe dich hier als Mod.", view=BewerberView(bot=self.bot))
class bewerbemodal(discord.ui.Modal):
bot = None
def __init__(self, *args, **kwargs):
super().__init__(discord.ui.InputText(label="Embed Titel", placeholder="Platzhalter"), discord.ui.InputText(
label="Beschreibung", placeholder="Platzhalter", style=discord.InputTextStyle.long), *args, **kwargs)
async def callback(self, interaction):
embed = discord.Embed(
title=self.values[0], description=self.values[1])
channel = await self.bot.fetch_channel(channelid lol)
await channel.send(embed=embed)
class BewerberView(discord.ui.View):
def __init__(self, bot):
self.bot = bot
@discord.ui.button(label="Als Moderator Bewerben")
async def button_callback(self, button, interaction):
await interaction.response.send_modal(bewerbemodal(bot=self.bot, title="Test"))
def setup(bot):
bot.add_cog(bewerben(bot))
Kommt nen error
Guten Morgen,
ich wollte einen command schreiben mit dem ich Infos über User in eine Datenbank eintragen und diese auch wieder abrufen kann leider hab ich null Ahnung wie das geht deswegen wollte ich fragen ob sich damit jemand auskennt oder jemand weiß wo ich mir ein tutorial oder sowas davon anschauen kann.
Danke

bin in die richtung gegangen ja?
self.bot = bot
und der Parameter bot fehlt im super init
wo
das hier oben auch falsch?
def __init__(self, bot):
self.bot = bot
?
das richtig so
nur bei der View class
schau die Tutorials nochmal an
venv Datei wird nicht gefunden
müsstsst einfach nur neuen Projekt erstellt ansonsten neu setupen
okay
import asyncio
import discord
from discord.ext import commands
import aiosqlite
settings = discord.SlashCommandGroup("settings")
class Settings(commands.Cog):
def __init__(self, bot):
self.bot = bot
@settings.command()
async def welcome(self, ctx):
if ctx.message.author.bot:
return
await ctx.respond("Wähle deinen Channel")
def check(m):
return m.author == ctx.author and m.channel == ctx.channel
try:
message = await self.bot.wait_for('message', check=check, timeout=60.0)
except asyncio.TimeoutError:
await ctx.send('Du hast leider zu lange gebraucht.')
return
channel = message.channel
if channel.type == discord.ChannelType.text:
db = await aiosqlite.connect('guilds.db')
cursor = await db.cursor()
await cursor.execute(
"CREATE TABLE IF NOT EXISTS guild_settings (guild_id INTEGER PRIMARY KEY, welcome_channel_id INTEGER)")
await cursor.execute("INSERT INTO guild_settings (guild_id, welcome_channel_id) VALUES (?,?)",
(ctx.guild.id, channel.id))
await db.commit()
await ctx.respond(f'Willkommenschannel gesetzt: {channel.mention}')
else:
await ctx.respond("Ungültiger Channel. Bitte wähle einen Textchannel aus")
def setup(bot):
bot.add_cog(Settings(bot))
bot.add_application_command(settings)
Ich versuche mich grade an diesen Commands Groups 
Hab jetzt auch mal geschaut aber irgendwie finde ich darüber nichts innerhalb von Cogs ...
Mein Problem : Der will immer nen Context.. Liegt wohl daran async def welcome(self, ctx): Aber wie kann ich das anders machen? 
funkt nicht
warum fragst du eig?
haben die projekte davor gefunzt?
was soll die letze Zeile 🤔
Ich versuche mich grade an diesen Commands Groups
Soooo @brazen scarab, die settings Variable unter def __init__ (Siehe Anhang) und bot.add_application_command(settings) entfernen 😄
Also:
class Settings(commands.Cog):
def __init__(self, bot):
self.bot = bot
settings = discord.SlashCommandGroup("settings")
discord.errors.ApplicationCommandInvokeError: Application Command raised an exception: AttributeError: 'Member' object has no attribute 'avatar_url'```
was kann ich stattdessen nutzen?
member.avatar.url
danke
Wie mach ich ne Beschreibung für einen Slash_Command
mit description="..." vermutlich
ok
in die klammern bei @slash_command(hier)?
ja
danke
@cloud cedar in #🔗・bots
Sagt man dort danke?
Wollt ja aber nicht großartig befehle ausführen sondern euch nen Keks geben
Wofür brauch ich die?
Wie kann ich alle meine Kekse weg geben?
das is jetzt aber wirklich spammen kollege
1. @stuck drift - 126 Tage geboostet
2. @frail loom - 122 Tage geboostet
3. @jagged wolf - 94 Tage geboostet
4. @icy jungle - 94 Tage geboostet
5. @astral saffron - 94 Tage geboostet
6. @iron apex - 86 Tage geboostet
7. @craggy yew - 77 Tage geboostet
8. @limpid wolf - 65 Tage geboostet
9. @floral monolith - 64 Tage geboostet
10. @narrow dune - 51 Tage geboostet
11. @fossil vortex - 46 Tage geboostet
12. @obtuse estuary - 33 Tage geboostet
13. @cloud garden - 30 Tage geboostet
14. @umbral goblet - 30 Tage geboostet
15. @obsidian steeple - 19 Tage geboostet
die brauch man nicht
du brauchst auch kein danke
ist trotzdem nice
bitte in #🔗・bots @urban glen
Wie krieg ich nochmal die url vom guild icon
guild.icon.url
Achso, aber wenn Kospingtan das macht, is es euch egal?
wenn jemand anders was falsch macht, heißt das nicht dass es dann für dich erlaubt ist. außerdem kann man gerne mal kekse als dankeschön verteilen, das booster leaderboard gehört aber nicht in den help kanal
Wofür brauch ich die kekse?
Sind unnötig für mich
das ist kein grund bot commands in den help kanal zu spammen
Ich hab außerdem nich gespammt sondern mich bedankt
anyways braucht irgendwer hilfe beim coden
weil ich nämlich nicht helfen kann weil ich lost bin
"guild is not defined"
naja also du brauchst halt das server objekt wenn du von einem server das icon haben willst
Wie?
in einem slash command zb mit ctx.guild
Ignoring exception in command home:
Traceback (most recent call last):
File "C:\Python310\lib\site-packages\discord\commands\core.py", line 124, in wrapped
ret = await coro(arg)
File "C:\Python310\lib\site-packages\discord\commands\core.py", line 970, in _invoke
await self.callback(self.cog, ctx, **kwargs)
File "e:\bot\cogs\home.py", line 46, in home
await ctx.respond(embed=embed, file=file, view=view, ephemeral=True)
File "C:\Python310\lib\site-packages\discord\commands\context.py", line 282, in respond
return await self.interaction.response.send_message(
File "C:\Python310\lib\site-packages\discord\interactions.py", line 825, in send_message
await self._locked_response(
File "C:\Python310\lib\site-packages\discord\interactions.py", line 1090, in _locked_response
await coro
File "C:\Python310\lib\site-packages\discord\webhook\async_.py", line 213, in request
raise NotFound(response, data)
discord.errors.NotFound: 404 Not Found (error code: 10062): Unknown interaction
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "C:\Python310\lib\site-packages\discord\bot.py", line 1088, in invoke_application_command
await ctx.command.invoke(ctx)
File "C:\Python310\lib\site-packages\discord\commands\core.py", line 374, in invoke
await injected(ctx)
File "C:\Python310\lib\site-packages\discord\commands\core.py", line 132, in wrapped
raise ApplicationCommandInvokeError(exc) from exc
discord.errors.ApplicationCommandInvokeError: Application Command raised an exception: NotFound: 404 Not Found (error code: 10062): Unknown interaction
@slash_command(description="Zeige dein Zuhause")
async def home(self, ctx):
await check_user_home(ctx.author.id)
lager = await lager_raum_len(ctx.author.id)
home_id = await get_home(ctx.author.id)
bar_geld= await get_money(ctx.author.id)
bank_konto = await get_bankkonto(ctx.author.id)
ges_geld = bar_geld + bank_konto
hausnummer = await get_hausnummer(ctx.author.id)
bages= await get_bages(user_id=ctx.author.id)
embed = discord.Embed(title=f"Zuhause von {ctx.author}", description=f"**Hausnummer: {hausnummer}**", color=discord.Color.yellow())
embed.add_field(name="Inventar",value=f"Abstellraum: {lager}/20")
embed.add_field(name="Geld", value=f"Bankkonto: {bank_konto}$\nBargeld: {bar_geld}$\nGesammtes Geld: {ges_geld}$", inline=False)
embed.add_field(name="Bages", value=bages)
file = discord.File("home.jpg", filename="image.png")
embed.set_image(url="attachment://image.png")
select=home_select()
view=discord.ui.View(timeout=None)
view.add_item(select)
await ctx.respond(embed=embed, file=file, view=view, ephemeral=True)
Wie konnte man nochmal checken ob ein User eine Rolle hat?
irgendwas mit role = idvonderrolle
und dann
if role in ???
dann mach was
Nen bewerbungscommand, mit dem man sich nur mit der Levelrolle 5 bewerben kann
ja
wohin mach ich das
if ctx.guild.get_role(ROLEID) in ctx.author.roles
Danke
gern
Kommt auf die class an
da isses interaction.user
ich versteh garnix mehr
Das btw sowieso nicht
?
Wo muss ich ctx als parameter hinzufügen?
bot_has_role überprüft die rollen vom Bot User nicht von dem User der anfragt
Das Ctx is ja nicht defined
Ist das denn ein command?
Du benutzt ctx nur bei commands
Bei Interactions bzw views nutzt du interaction
Ne, der Command ist das hier nur andersrum
also machst du statt ctx interaction
.
Ja
Und wo check ich dann ob der User die Role hat
ctx.guild -> interaction.guild; ctx.author -> interaction.user
Danke, glaub es is echt schwer jemanden mit meinem iq (2) das zu erklären,
darf ich dir einen Keks überreichen?
alles super xd
Wie kann ich ne Rolle mit der Id pingen? Also mit den <> dingern
<@&ID>
Wollts grade löschen, aber danke
Kann ich mehrere Buttons in einer Nachricht haben, die verschiedene Modals aufrufen?
Ja.
Muss ich da irgendwas beachten z.B. beim benennen der callbacks
Ja, jedes muss nen einzigartigen namen haben
ok
Hab aktuell das Problem dass das Modal nicht gesendet wird, aber ich auch keinen Error krieg
Code?
wäre nett es einfach hier so zu senden
@cloud cedar die class müssen außerhalb der cog class sein
Wie mach ich das
einfach die class runter schieben -_-
class KIntConverter(commands.Converter):
async def convert(self, ctx, argument):
match = re.match(r"(\d+(?:[.,]\d+)?)(k|m|b|t)?", argument.lower())
if match:
number = Decimal(match.group(1).replace(",", "."))
if match.group(2) == "k":
number *= 1000
elif match.group(2) == "m":
number *= 1000000
elif match.group(2) == "b":
number *= 1000000000
elif match.group(2) == "t":
number *= 1000000000000
return int(number)
raise commands.BadArgument("This is not a valid number.")```
wie kann ich hier einfügen dass ich bei "all" all das geld es users nehme
def format_money(self, amount: int) -> str:
return "{:,}".format(amount).replace(",", " ")
async def check_user(self, user_id):
async with aiosqlite.connect(self.DB) as db:
await db.execute("INSERT OR IGNORE INTO economy (user_id) VALUES (?)", (user_id,))
await db.commit()
async def get_money(self, user_id):
await self.check_user(user_id)
async with aiosqlite.connect(self.DB) as db:
async with db.execute("SELECT money FROM economy WHERE user_id = ?", (user_id,)) as cursor:
result = await cursor.fetchone()
return self.format_money(result[0])```
falls das hilft
hey hätte jemand eine ahnung ob so ein premission gibt wenn jemand die rechte bzw nicht in der datenbank eingetragen wurde den befehl zb nicht sehen kann?
Man kann Custom Checks machen, aber grad idk
Bin noch Dosiert mit paar Tabletten, also helf ich lieber nicht lmao
Sonst kommt nur shit bei rum
schade
Kann mir grade ma einer sagen, wie ich den Avatar vom Bot rausfinde im cog? self.bot.display_avatar.url war es scheinbar nicht 
self.bot.user.display_avatar.url
nein das geht nicht. du kannst das zwar machen, aber die Befehle bleiben trotzdem für alle sichtbar
🤦♂️ Danke
?
Fühl ich
Ah schade
So bezogen
Habs hier abgeschickt xD
Es sind die kleinen Dinge, die ich mir nicht merken kann... ABER ich hatte es fast richtig, ohne zu googln 
Das „wie random“ war garnicht hier gedacht xD, wollte oben bei Notifications jemandem antworten (halt iphone xD)
Joa
Frag ich jetzt nochmal? 
{len(ctx.bot.users)} (Das gibt mir alle User.. Ich will aber nur die Bots haben)
Die bots von was?
Von nem server?
Ja
len(ctx.guild.members) damit bekommst du die member
Nein, keine Ahnung sonst würde ich nicht fragen.
Wait ich code für dich aufm handy kurz nh bsp lmao
count = 0
for member in ctx.guild.members:
if member.bot:
count += 1
Ungefähr so
Sorry falls es falsch eingerückt is, habs aufm handy gemacht
So anstatt mit len(..)
Ja ne dann lass ich das weg, das macht meinen schönen Code kaputt lol
Dumm das es nicht einfach nen ctx.bots_count gibt
Es gibt ctx.guild.member_count, dann brauchst du auch nd diesen len(..)
Sieht aber schön aus 🙂
Also wenn es um schönheit geht, dann würde es viele Bots nicht geben
Man sollte nicht auf schönheit achten, was ich empfehlen kann, is nur sich an pep8 zu halten.
Nagut, sieht auch so gut aus. Danke ^^
Das gibt ja auch wieder die Member aus. Aber sowas halt einfach für Bots
#💬・chat message
bots = len([i.name for i in ctx.guild.members if i.bot])
Hätte auch gereicht 
Wofür dann das i.name
i for i in ctx.guild.members if i.bot müsste auch gehen
Frag mich nicht, das hat mir Lara grade gegeben damit mein Code wieder hübsch ist 
...
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...
@mystic flower schau dir das an, da zeige ich genau das mit den rollen
okay
Hey, ich habe hier seit mehreren Tagen einen Error der immer häufiger Auftritt obwohl die Commands früher immer funktioniert haben.
Hab das Problem schon behoben aber trotzdem Danke
jo
https://discord.com/channels/1010915072694046794/1059632568158400592 wie kann ich hier diesen Error fixen:
Traceback (most recent call last):
File "/home/container/.local/lib/python3.9/site-packages/discord/ext/tasks/__init__.py", line 169, in _loop
await self.coro(*args, **kwargs)
File "/home/container/main.py", line 97, in vanity_task
vanity = await has_vanity(member)
File "/home/container/main.py", line 78, in has_vanity
if STATUS_TEXT in i.name or STATUS_TEXT == i.name:
TypeError: argument of type 'NoneType' is not iterable
Schick mal den code
ist der von dem post
Traceback (most recent call last):
File "C:\Users\admin\AppData\Local\Programs\Python\Python311\Lib\site-packages\discord\cog.py", line 774, in _load_from_module_spec
spec.loader.exec_module(lib) # type: ignore
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "<frozen importlib._bootstrap_external>", line 936, in exec_module
File "<frozen importlib._bootstrap_external>", line 1074, in get_code
File "<frozen importlib._bootstrap_external>", line 1004, in source_to_code
File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
File "C:\Users\admin\PycharmProjects\Discord_bot\cogs\rep.py", line 17
channel = await self.bot.fetch_channel(1064581390961754173)
^
IndentationError: expected an indented block after function definition on line 13
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "C:\Users\admin\PycharmProjects\Discord_bot\main.py", line 138, in <module>
bot.load_extension(f"cogs.{filename[:-3]}")
File "C:\Users\admin\AppData\Local\Programs\Python\Python311\Lib\site-packages\discord\cog.py", line 910, in load_extension
self._load_from_module_spec(spec, name)
File "C:\Users\admin\AppData\Local\Programs\Python\Python311\Lib\site-packages\discord\cog.py", line 777, in _load_from_module_spec
raise errors.ExtensionFailed(key, e) from e
discord.errors.ExtensionFailed: Extension 'cogs.rep' raised an error: IndentationError: expected an indented block after function definition on line 13 (rep.py, line 17)
Kann mir jemand verraten was das Problem ist
du hast eine mothode rep, jedoch ist diese leer, deswegen wird der error angezeigt
außerdem ist das @slash_command zu weit nach rechts eingerückt
Wie meinst du das verstehe gerade nicht
stelle am besten erstmal sicher, dass deine einrückung richtig ist
bei dir ist das zu weit rechts eingerückt
so passt das doch oder?
hier ist ein beispiel, wie ein slash command in einem cog aussehen kann: https://github.com/tibue99/tutorial-bot/blob/main/Tutorialreihe/part05_cogs.py
ja genau fast, allerdings muss der code darunter jetzt auch noch angepasst werden
Ja stimmt habe ich jetzt gemacht wo ist das Problem bei author.member.mention ich glaube ich habe den author garnicht erfasst oder wenn nein wie geht das nochmal
das author muss weg
Aber ich möchte doch den user den man auswählt und der jenige der den befehl ausfürht pingen
okay Danke
@commands.cooldown(86400s, commands.BucketType.user)
wenn ich einen 24 stunden cooldown auf den befehl haben möchte muss ich ich das eingeben oder?
das s brauchst du nicht, aber ja
und ich denke die rate fehlt noch
@commands.cooldown(1, 86400, commands.BucketType.user)
Danke
Letzte Frage wie werte ich den cool down aus also das es keinen error gibt wenn der cooldown anschlägt
dafür brauchst du ein error event
Mein Discord Server
► https://discord.gg/zfvbjTEzv6
Code auf Github
► https://github.com/tibue99/tutorial-bot
Tutorial Playlist
► https://youtube.com/playlist?list=PLwRWzD1Sw5lXZApchxorxeBQ_P_Fjdsj1
Discord Developer Portal
► https://discord.com/developers/applications
Pycord
Docs ► https://docs.pycord.dev/
Guide ► https://guide.pycord.dev/i...
danke
einfach beim Event ein try und except NoneType hinzufügen @tough thicket
der Error kommt weil manche User kein Status haben deswegen
Wo meinst du jetzt?
async def has_vanity(member: discord.Member):
if not len(member.activities) == 0:
for i in member.activities:
if isinstance(i, discord.CustomActivity):
try:
if STATUS_TEXT in i.name or STATUS_TEXT == i.name:
return True
except NoneType:
return "was du halt sagen willst"
else:
return False```
oder so
okay, schaue gleich mal
Unhandled exception in internal background task 'vanity_task'.
Traceback (most recent call last):
File "/home/container/main.py", line 79, in has_vanity
if STATUS_TEXT in i.name or STATUS_TEXT == i.name:
TypeError: argument of type 'NoneType' is not iterable
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/container/.local/lib/python3.9/site-packages/discord/ext/tasks/__init__.py", line 169, in _loop
await self.coro(*args, **kwargs)
File "/home/container/main.py", line 99, in vanity_task
vanity = await has_vanity(member)
File "/home/container/main.py", line 81, in has_vanity
except NoneType:
NameError: name 'NoneType' is not defined
@wise stone
@tough thicket dann nur except
nein, geht nicht
async def has_vanity(member: discord.Member):
if not len(member.activities) == 0:
for i in member.activities:
if isinstance(i, discord.CustomActivity):
try:
if STATUS_TEXT in i.name or STATUS_TEXT == i.name:
return True
except:
return "Mitglied hat keinen Status."
else:
return False
jetzt vergibt er die Rolle, obwohl leute nicht mal den link im status haben
bruh what
gang falsch
async def has_vanity(member: discord.Member):
try:
if not len(member.activities) == 0:
for i in member.activities:
if isinstance(i, discord.CustomActivity):
if STATUS_TEXT in i.name or STATUS_TEXT == i.name:
return True
except NoneType:
pass
es nruckung ist bissl falsch
einrückung*
bin am Handy deswegen
Unhandled exception in internal background task 'vanity_task'.
Traceback (most recent call last):
File "/home/container/main.py", line 79, in has_vanity
if STATUS_TEXT in i.name or STATUS_TEXT == i.name:
TypeError: argument of type 'NoneType' is not iterable
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/container/.local/lib/python3.9/site-packages/discord/ext/tasks/__init__.py", line 169, in _loop
await self.coro(*args, **kwargs)
File "/home/container/main.py", line 99, in vanity_task
vanity = await has_vanity(member)
File "/home/container/main.py", line 81, in has_vanity
except NoneType:
NameError: name 'NoneType' is not defined
jetzt kommt wieder derselbe error wie eben
dann nur except
sollte dann zu 100% gehen
Habe ich ja dort oben gemacht.
#1019974414487535736 message
@tough thicket kopier den Code von dir oben nochmal
und tu den try und except raus
weil der Code schon so geht
und dein Return erigbt null sinn
ja, aber dann bin ich ja wieder beim selben Error wie heute um 4Uhr
#1019974414487535736 message
Hattest mir ja gesagt, dass ich das hinzufügen sollte
Ist es möglich einem Command einen Cooldown zu geben, der sich aber nur auf die Eingabe bezieht die der user eingibt.
Zum Beispiel:
/vote user
dann kannst du so oft voten wie du willst aber jeden user nur alle 24 stunden.
hm, ich denke das müsstest du dann selbst prüfen, indem du zb in einer datenbank speicherst, für wen ein user schon gevotet hat
okay Danke das ist mir leider zu Kompliziert
So kompliziert ist das nicht. Du speicherst einfach nur die Zeit wann der User gevoted wurde und überprüfst bei dem nächsten aufrufen ob diese Zeit länger als 24h her ist. Wenn du deinen Bot nicht oft neu startest kannst du das auch ihm cache speichern also zb in einer Liste und den User dann nach 24h wieder entfernen aber das wäre unpraktisch weil nach einem Neustart die Liste resettet wäre
Kann mir jmd helfen ich versuche in dem folgenden code die user in in einem dic zu vergleichen also wenn sie drinne ist dann print eins und wenn nicht das print 2 aber er printet mir imemr print 2
CODE
print(voice_state_times.items())
print(user_id)
if str(user_id) in voice_state_times.items():
print(f'User {user_id} is in the list')
else:
print(f'User {user_id} is not in the list')```
**PRINT**
dict_items([])
416015508303904779
User 416015508303904779 is not in the list
dict_items([(416015508303904779, datetime.datetime(2023, 1, 17, 0, 3, 57, 392702))])
416015508303904779
User 416015508303904779 is not in the list
Du musst immer await interaction.user.remove_roles machen, also mit await
ja aber halt was wenn er dir rolle nicht hatt dann kommt ein error oder ?
Kannst einfach überprüfen, ob er die rolle nicht hat
if dieRolle not in interaction.user.roles:
Wie bekomme ich den den aktuellen Timestamp damit man sowas hier machen kann?
current_time = time.time()
timebl = discord.utils.format_dt(current_time, 'R')
await ctx.respond(timebl)```
So geht es ja schonmal nicht.
current_time = int(time.time())
await ctx.respond(f"<t:{current_time}:R")
Machs doch so
Is easier
Also so mach ich's
Danke 🙂
Bedank dich erst, wenn's funktioniert xD
Funktioniert es denn? 
Ja hab's schon getestet. Habe mich danach bedankt. 😄
Oke gut 
@wise stone wie sollte ich das denn hinzufügen?
Der Code ist ja das hier:
@bot.event
async def on_ready():
print(f"{bot.user} is ready")
vanity_task.start()
async def has_vanity(member: discord.Member):
if not len(member.activities) == 0:
for i in member.activities:
if isinstance(i, discord.CustomActivity):
if STATUS_TEXT in i.name or STATUS_TEXT == i.name:
return True
else:
return False
Kann man irgendwie Abfragen ob ein Benutzer auf dem Discord Server ist wo der Befehl ausgeführt wird?
ja das geht mit einer einfachen if abfrage. auf die server member kannst du mit ctx.guild.members zugreifen
vergiss nicht den server member intent anzuschalten
^^
Und wie würde die if-Abfrage aussehen?
kommt drauf an wie du den user finden willst. willst du ihn über die ID finden oder anders?
formuliere deine Frage anders...
was meinst du?
Ist egal. Will nur checken ob der Benutzer drauf ist.
Wenn ja: Mention
Wenn nicht: Username + Diskriminator
zB if member in ctx.guild.members
jop, klappt nun. Vielen Dank!
aso und: Der Bot kann dem user, der neu beigetreten ist keine DM senden ...
Denke es liegt daran, dass der User seine DMs nicht an hat.
Wie kann ich nun in Py-Cord ein try oder so hinzufügen, dass der sonstige Code nicht crasht?
Code:
await member.send(embed=embed2)
Probier es mal so vielleicht:
try:
await member.send(embed=embed2)
except discord.Forbiden:
print('Nöööööö!')
https://max1385.needs.rest/aufnahme_137.png
Top, klappt auch. 😄
(Denke, dass der Error davon kam)
np
kann mir da jemand helfen?
for index, unit, in enumerate(units):
description += f'{unit}\n'
print(description)
if (index+1) % 25 == 0:
embed = discord.Embed(
title='Unit List',
description=description,
color=discord.Color.green()
)
pages.append(Page(embeds=[embed]))
description=''
await Paginator(pages=pages).respond(interaction)
ich möchte das es message edit machen anstatt respond
ich frag mal anders wie kann ich in Paginator noch mein eigene view hinzufügen, und den variable von index beim view vererbt?
mein code:
# variable settings
pages = []
description=''
indexs=[]
async with aiosqlite.connect(os.getenv('Shiro7DSGCSQL')) as db:
async with db.execute("SELECT Unit_Title_Name FROM SevenDSGC_Unit",) as cursor:
unit_title = await cursor.fetchall()
async with db.execute("SELECT Unit_Name FROM SevenDSGC_Unit") as cursor:
units = await cursor.fetchall()
for index, unit, in enumerate(units):
description += f'{unit}\n'
indexs.append(int(index))
if (index+1) % 25 == 0:
embed = discord.Embed(
title='Unit List',
description=description,
color=discord.Color.green()
)
pages.append(Page(embeds=[embed]))
description=''
print(indexs)
await Paginator(pages=pages).respond(interaction)
await interaction.response.edit_message(view=Views(
[
SevenDSGCSelectUnit(
options=SevenDSGC_SQL_List_All_From_rowID(
rowID=(tuple(indexs))
),
search='all'
),
UnitButtonSearch()
]
)
)
du hast komplett anderen code geschickt
hä?
what you mean?
hier ist ein andere code als unten
kannst du in #1020759567421931620 ?
starte doch einfach so
hier geht es doch auch?
über text ist ein bisschen kompliziert
Welche Unterschied?
ich hab noch nie was mit paginator gemacht aber geht Paginator().edit()?
Nope
über sprechen kann ich schneller erklären
du kannst ja bei der init funktion in der klasse: self.msg = ""
?
Was brauchst du den?
Beim view kannst du einfach ignorieren

Wichtig ist nur rowID da sollen Zahlen rein Bzw liste
Ich möchte einfach den Index rein tun
Custom view yk?
Für paginator
wie meinst du das?
Hi, hab nen ordentlichen Batzen code geschrieben, krieg keinen Error aber das Modal wird nicht versendet.
Würde den erst schicken, wenn irgendwer sich dazu mal bisschen Zeit nimmt, keine Ahnung wie groß das Problem ist.
Bitte melden wenn wer kann
kannst den gerne schicken, für größere probleme mach am besten einen neuen post auf
Kann mir da jemand helfen?
wäre noch gut mit Edit bei paginator
das View beim send einfügen 🤔
Es ist mit paginator wie soll das gehen?
Stimmt, hab einfach komplett vergessen das man nen Post erstellen kann bruh
Und wie bekomme ich den Index vom nächsten Eintrag?
das embed wird editiert nicht die view
try and see
Hä wie soll ich versuchen wenn ich nicht weiss wie man es versucht?
na einfach kurz ne View erstellen und hinzufügen
der kommt auch 
Hä?
expermiere doch einfach ._.
kenne mich nicht mit paginator so gut aus daher dieser Rat
Hä hab ich doch es gibt auch nichts wirklich dazu
Denkst du hab es nicht probiert???
Anscheinend nicht?
auch einfach ne View geaddet?
du kannst ja save nen Button nh
...machst ne Button class fügst es im Code hinzu und glotz rein
Ähm hast du den Code angeschaut?
Wie soll ich bitte schön mit paginator machen?
Es soll einfach eine Liste machen danach mit view auswählen den Text der user ausgeben quasi

Ich denke nur wir reden aneinander vorbei
Um es verständlich für dich zu machen. Was du schreibst hilft mir nicht weiter und macht mich noch agression. Den vorherigen Helfer hat es schon noch mehr Benzin ins Feuer reingetan und du auch noch?
Wenn du nicht helfen kannst dann lass es.

Wenn du keine Ahnung von paginator hast dann lass es einfach

kriech Mal in deine nerd Ecke zurück 
Ich möchte es verstehen und nicht idk von irgend random Typ der selbst keine Ahnung hat mir zu versuchen es zu helfen.
Du doch auch Helper
Geholfen hat es nicht

hmm wie kann ich das fixen?
os raus tun
wie es da steht
und nur main.py
nicht Home Dings da bumfs
Kann mir jemand sagen warum die rolle nicht vergeben wird? Es kommt kein Fehler code.
die ID kannst du so nicht direkt in die add_roles methode einfügen. zuerst müsstest du die rolle mit guild.get_role bekommen, und diese dann in add_roles einfügen
allerdings sollte in diesem fall eigentlich ein error kommen
Achso okay danke also muss ich
guild.get_role(role_id)
und dann?
role = ctx.guild.get_role(1065213506661662741)
await ctx.author.add_roles(role)
Danke
@solid ingot kannst du mir helfen mit paginator?
möchte zusätlich mein eigene view hinzufügen
schau dir mal das hier an: https://guide.pycord.dev/extensions/pages/paginator-basics#paginatorbutton
es kommen keine runden klammern hinter den hexcode
das kann mehrere gründe haben, vielleicht ist er falsch eingerückt?
möchte select menü hinzufügen von mir
wie kann ich sagen, dass der Bot nicht reagieren soll, wenn der User ein Bot ist?
Code:
@commands.Cog.listener()
async def on_message(self, message):
test = '@swift pendant'
if test in message.content:
await message.channel.send(
'test',
delete_after=3)
if message.author.bot:
return
Am besten tust du das über test = '@swift pendant'
/usr/local/bin/python: can't open file '/home/container/main.py': [Errno 2] No such file or directory``` hmmm ich habe eine main.py datei
zahl gleich was?
vll hast du main.py in einem ordner oder so
ja
ja, das kannst du mit if machen
nur main.py zum 2ten mal
beim Panel brauchst du nicht das Home/container
nie
@wise stone kann dein Feedback Code vom GitHub nicht verwenden 
da scheint pycord nicht richtig installiert zu sein, schau evtl nochmal bei #🔍・pycord-help
DB wird nicht gefunden
hast es nicht richtig rein gecopy
wo?
Der Server wird "guild" genannt
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...
@rose epoch
Moin, kurze Frage aktuell hab ich ctx.author in meiner Embed Nachricht (@commands.command)damit der Bot dem Author antwortet. Kann ich auch nur den Nickname anzeigen lassen, also das er nicht auf den richtigen User-Name sondern auf den Nickname antwortet?
ja das müsste mit ctx.author.display_name gehen
klappt 100% dankeschön 
Moin.
Habe ein Welcome-Event & nen' Button. Wie kann ich an die andere Klasse (Button-Klasse) den User weitergeben, der gejoint ist?
||PS: Bevor ihr mir hier jetzt Timo's Video schickt: Möchte es für einen Button haben, der kein Timeout hat
||
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
Heute klären wir eine Frage, die ...
:D
timeout=None
warte
class GiveawayEnter(discord.ui.View):
def __init__(self):
super().__init__(timeout=None)
dazu müsstest du die werte in einer datenbank zwischenspeichern, und dann wieder laden wenn der bot startet
@wise stone machst du das auch so?
ne es geht einfacher und man braucht eigentlich keine db
die Werte einfach in die Buttons Reinspeichern also werte in die class übergeben
@tough thicket
so mache ich es
ich habs wie im Video den member Übergeben
Achsoo
Okay, probiere mal morgen
wenn du einen default wert setzt ist es automatisch nicht required
Wenn ich das Profilbild von meinem Bot auf der Discord-Developer Seite ändere wie lange dauert es bis das auf dem Server angezeigt wird oder muss ich dafür den Bot neu auf den Server holen. Die Beschreibung hat er sofort geändert 😮
Yes! Jetzt komme ich mir blöd vor XD
Weiß jemand wie ich in einem Cog definierten Listener (nicht von py-cord) die ctx-Variable reinbekomme?
gar nicht?
Ja habs beheben können schon.
ok
Weiß wer mögliche Fehler, warum er den Song nicht in die Queue packt?
Der Print wird auch ausgeführt.
vc.queue.put(song)
print(f'Queued song "{song}"')
embed.add_field(name=translate(ctx.guild.id, 'Play', 'PLAY_SUCCESS_WORD_POSITION_IN_QUEUE'), value=f"{vc.queue.count + 1}", inline=True)
embed.fields[0].name = translate(ctx.guild.id, 'Play', 'PLAY_SUCCESS_WORD_ADDED_TO_QUEUE').replace('{ü}', 'ü')
await ctx.respond(embed=embed)```
kommt ein error?
Angeblich keine items in der queue.
Intents hat er auch.
Der kann die Datenbank nicht öffnen 👀
Wie kann man da ein besseres feedback machen?
Das zB Berechtigung fehlen?
würde gerne nur wissen welche premssission man braucht
bzw angezeigt werden welche fehlen um den befehl zu nutzen
@command.command()
async def blacklist(self, ctx: discord.ApplicationContext, user: discord.User, grund: str):
"""Füge einen Benutzer zur Blacklist hinzu"""
if WAS KOMMT DA HIN == 306429712828334091:```
Wie kann ich festlegen, das **nur** ich den Befehl nutzen kann? Ich hab jetzt die kompletten docs auseinander genommen und bekomme ständig :
`'NoneType' object has no attribute 'author'` oder `'NoneType' object has no attribute 'id'` oder was weiß ich 
if ctx.author.id == 306429712828334091```
Hab ich auch schon versucht 
Testen.. Ab und an zeigt er das so an..
Ansonsten mal
if ctx.author.user.id == 306429712828334091```
testen
Danke 
Klappt?
Ja 
Aber wieso gibt PyCharm mir ne Warnung? 
Wird manchmal nicht auto-completed. Wenn PyCharm etwas nicht auto-completen kann, gibt er dir ne Warning.
Interessant. Danke
Bei IntelliJ IDEA wäre das wieder was anderes. Da klappt iwie alles.
und ich suche ne Stunde in den Docs (die mal super geil sind ... nicht ) und finde nix ...
Ja die Docs von pycord sind wirklich super. 
Haben die auch das neue Design? 
Dann könnte ich wechseln. Habe PyCharm eig nur wegen dem Design
IntelliJ ist für Java geeignet.
Aber sehe gerade man könnte Python hinzufügen.
Schau mal ob du das hast 
bitte*
IntelliJ hat auch das neue Design, ja.
Ich schau mir das mal an. Danke
Erwarte dir aber nicht zu viel. 😄
Jap IntelliJ ist definitiv nicht für Python geeignet 
Ich nutze IntelliJ an sich nur für meine Java-Projekte. Sonst würde es ja nicht PyCharm für Python geben. 😄
VSC gefällt mir xD
Jedem seins. Meins ist es nicht. lel.
Ja ich mag das Design irgendwie nicht... Vielleicht kann man da noch dran rum fummeln. Ich guck mal ^^
Danke dir nochmal!
du meinst den titel neben den inhalt?
@indigo sapphire kannst dazu gerne den Error handler von meine GitHub Projekt nehmen
hab da eigentlich jedes Error drinnen

geht
Wo?
Echt hilfreich wenn ich es gefunden hab
In #1027677692730036294 ?
Wird mal anpassen mit Datenbank Text SQlite oder JSON. Werd das bei dir senden als eine Art Update
Hey, weiß jemand, warum der Bot keine Nachricht schickt?
@commands.Cog.listener()
async def on_member_join(self, member):
channel = self.bot.get_channel(1039573169968787567)
background = Editor(Canvas((900, 280), color='#23272A'))
profile = Editor('assets/avatar.png')
# To use users profile picture load it from url using the `load_image` function
await profile.resize((200, 200))
await profile.circle_image()
font_regular = Font.montserrat(variant='italic', size=30)
font_thin = Font.montserrat(variant='light', size=18)
font_medium = Font.poppins(variant='bold', size=40)
font_big = Font.poppins(variant='bold', size=50)
card_left_shape = [(0, 0), (0, 270), (330, 270), (260, 0)]
await background.polygon(card_left_shape, '#2C2F33')
await background.paste(profile, (40, 35))
await background.ellipse((40, 35), 200, 200, outline='white', stroke_width=3)
await background.text((600, 20), 'WELCOME', font=font_big, color='white', align='center')
await background.text((600, 70), data['name'], font=font_regular, color='#5865f2', align='center')
await background.text((600, 130), 'YOU ARE MEMBER', font=font_medium, color='white', align='center')
await background.text((600, 175), data['member'], font=font_regular, color='#5865f2', align='center')
await background.text(
(620, 245), 'THANK YOU FOR JOINING. WE HOPE YOU LIKE IT!',
font=font_thin,
color='white',
align='center'
)
await channel.send(file=background, view=WelcomeButton())
await background.show()
Versuch es mal ohne View.
ne, klappt auch nicht
Und wenn du anstelle der file nen String mit 'Test' senden tust?
das ist die ganz normale embed beschreibung, keine embed felder
nope
Selbst ohne passiert nichts
@commands.Cog.listener()
async def on_member_join(self, member):
channel = await self.bot.fetch_channel(1039573169968787567)
await channel.send('test', view=WelcomeButton())
Wenn du möchtest kannst Du auch mal #1020760853634633879 kommen, dann schauen wir beide mal live drüber.
schick mal deinen code
du hast es mit fields gemacht. du musst es in die description machen
Wie send ich von aus einem callback raus nen Embed in nen anderen kanal
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...
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
Heute klären wir eine Frage, die ...
habe noch probiert, klappt nun.
Erhalte aber jetzt diesen Error:
raise InvalidArgument("file parameter must be File") discord.errors.InvalidArgument: file parameter must be File
Habe es schon 😄
await db.execute("DELETE FROM blacklist WHERE user_id, grund")
Wie setzt man das korrekt um?
Bin grade zu blöd
await db.execute("DELETE FROM blacklist WHERE user_id = ? AND grund = ?")
So ungefähr
Oder was meinst du?
Will halt einfach den Detanbank Eintrag löschen von user_id bla bla. (das der Grund halt auch weg ist)
Achso, ja dann halt einfach
await db.execute("DELETE FROM blacklist WHERE user_id = {dieUserID}")
Wobei ich dabei statt {...} lieber prepared statements verwenden würde
await db.execute("DELETE FROM blacklist WHERE user_id = ?", (user.id,)) Also bei mir müsste es dann so aussehen 🙂
Probiers aus
query = """DELETE FROM blacklist WHERE user_id = ?"""
value = (user.id,)
await db.execute(query, value)
Sowas ist ein prepared statement
Oder ungefähr so
Ja alles gut, ich habe bei SQlite noch keine DELETE function nutzen müssen. Den rest weiß ich aber danke ^^ Funktioniert
wie ist das gemeint?
also wie kann ich nun das Profilbild des Users laden?
dazu musst du die load_image funktion benutzen von easypil
jo, habe
await profile.resize((200, 200))
TypeError: object Image can't be used in 'await' expression
denke da muss dann das await weg nh?
ja
Wieso klappt der Uptime-Timestamp hier nicht?
current_time = int(time.time())
<t:{current_time}:R>
Kann mir wer bei ein error helfen?
Du musst von der interaction einfach nur einen Inhalt abfragen. Zb fragst du das label ab oder addest values und vergleichst diese
Dann if {dein value} in interaction.data["values"]:
await …
Jo
Wie hast du das denn? py await ctx.respond(f„<t:{current_time}:R>“
current_time = int(time.time())
await ctx.respond(f'<t:{current_time}:R>')```
jo, so habe ich das auch
Dann sollte es ja gehen
Bei mir geht es ja auch
Hey wie bekomm ich das deinstalliert?
Was ist das?
Ich weiß es nicht hab das nie installiert
Was is das denn überhaupt genau?
Wo is das?
Bei meinem Python Interpreter
kannst du auf das minus symbol klicken?
hm keine ahnung
vlt nochmal komplett python mit allen modulen löschen und neu installieren
wie kann ich das fixen?
Eine welcome Message, habe ich erst danach rein gemacht, damit ich in Zukunft die ID's habe. Ist es aber möglich, von der Person noch die ID irgendwie rauszufinden?
aiohttp/_websocket.c(198): fatal error C1083: Datei (Include) kann nicht ge”ffnet werden: "longintrepr.h": No such file or directory
error: command 'C:\\Program Files\\Microsoft Visual Studio\\2022\\Professional\\VC\\Tools\\MSVC\\14.34.31933\\bin\\HostX86\\x64\\cl.exe' failed with exit code 2
[end of output]
note: This error originates from a subprocess, and is likely not a problem with pip.
ERROR: Failed building wheel for aiohttp
Failed to build aiohttp
ERROR: Could not build wheels for aiohttp, which is required to install pyproject.toml-based projects
PS C:\Users\Georgi\PycharmProjects\pythonProject>
das ist der error








