#Allgemeine Hilfe
1 messages · Page 83 of 1
bro was is tmux was labberst du hier gehts um python
python codes etc
keine ahnung lol
Mein Discord Server
► https://discord.gg/zfvbjTEzv6
Links aus diesem Video
Contabo Hosting* ► https://tidd.ly/3gJufg6
Termius ► https://termius.com/download/windows
MobaXterm ► https://mobaxterm.mobatek.net/download.html
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
Commands aus dem Video
adduser tutorial
usermod -aG sudo tutorial
sudo apt update
sudo apt upgrade
...
Bei den Hoster
guck nach und mach ein screenshot können wir den error riechen?
Es ist auch besser das du uns ein code senden kannst und ein ein error 🥺
Gucke ich später bin gerade unterwegs
#1261351977556639838 hab daraus das System rein gemacht
aber den code für aiomysql umgeschrieben
jezt will er aber nicht das lifetime anerkennen
code kommt sofort
der blacklist-info befehl geht net
Ignoring exception in command blacklist-info:
Traceback (most recent call last):
File "C:\Users\leonf\AppData\Local\pypoetry\Cache\virtualenvs\planetbot-1aVSNs0I-py3.12\Lib\site-packages\discord\commands\core.py", line 138, in wrapped
ret = await coro(arg)
^^^^^^^^^^^^^^^
File "C:\Users\leonf\AppData\Local\pypoetry\Cache\virtualenvs\planetbot-1aVSNs0I-py3.12\Lib\site-packages\discord\commands\core.py", line 1078, in _invoke
await self.callback(self.cog, ctx, **kwargs)
File "C:\Users\leonf\PycharmProjects\PlanetBot\cogs\Botverwaltung.py", line 106, in blacklist_info
formatted_time = datetime.strptime(row[3], "%Y-%m-%d %H:%M:%S")
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
TypeError: strptime() argument 1 must be str, not None
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "C:\Users\leonf\AppData\Local\pypoetry\Cache\virtualenvs\planetbot-1aVSNs0I-py3.12\Lib\site-packages\discord\bot.py", line 1137, in invoke_application_command
await ctx.command.invoke(ctx)
File "C:\Users\leonf\AppData\Local\pypoetry\Cache\virtualenvs\planetbot-1aVSNs0I-py3.12\Lib\site-packages\discord\commands\core.py", line 435, in invoke
await injected(ctx)
File "C:\Users\leonf\AppData\Local\pypoetry\Cache\virtualenvs\planetbot-1aVSNs0I-py3.12\Lib\site-packages\discord\commands\core.py", line 146, in wrapped
raise ApplicationCommandInvokeError(exc) from exc
discord.errors.ApplicationCommandInvokeError: Application Command raised an exception: TypeError: strptime() argument 1 must be str, not None```
("SELECT balance FROM giftcards WHERE code = ?", (code,))
Also ich weiß nicht wo ich den parameter Balance hinmachen soll
Servus weiß jemand woran das liegt?
code ausschnitt
@commands.Cog.listener()
async def on_message(self, message: discord.Message):
if message.channel.is_news():
self.cursor.execute("SELECT id FROM channels WHERE id = ?", (message.channel.id,))
result = self.cursor.fetchone()
if result:
await message.publish()
Der code funktioniert ohne probleme nur der error stört
Ok fixxed
@commands.cog.listener()
async def on_message(self, message: discord.Message):
if message.channel.is_news() and message.type == discord.MessageType.default:
self.cursor.execute("SELECT id FROM channels WHERE id =?", (message.channel.id,))
result = self.cursor.fetchone()
if result:
await message.publish()
Vllt so
Habs jz so gelöst:
@commands.Cog.listener()
async def on_message(self, message: discord.Message):
if isinstance(message.channel, discord.TextChannel) and message.channel.is_news():
self.cursor.execute("SELECT id FROM channels WHERE id = ?", (message.channel.id,))
result = self.cursor.fetchone()
if result:
await message.publish()
Wenn es so geht denn ist alles gut
Hey mal so ne frage 😅 ich habe mich mal mit ein Bot client in mein Bot eingeloggt und wollte gucken ob der Bot ein Server erstellen kann und scheinbar ging das und jetzt weiß ich nicht wie ich den Bot von den Server kriege weil verlassen kann er nicht da er der Eigentümer ist und löschen des Servers geht auch nicht weil der Bot 2fa hat und ich nicht an den 2fa code komme. Weiß wer wie ich es schaffe das der Bot irgendwie nicht mehr auf diesen Server ist 😅?
serverowner übertragen
Ja brauch man
Hast dein 2 fa noch
Ne du muss über dein discrod Account machen
aber der Bot hat doch nicht das selbe 2fa
was wenn du über code probierst?
Bro er bot geht über dein discrod Account discord.dev geht über dein bot es ist alles er gleich 2 fa code
@next echo
discord.Guild.delete
discord.Guild.delete_auto_moderation_rule
discord.Guild.delete_emoji
discord.Guild.delete_sticker
Hat da jemand ne Idee?
Str ist none
Ja soll ja auch
Wenn der Ban lifetime ist
Ist der ja permanent
Also soll da keine Zeit rein
Er bot kann nur lifetime ban
So
Das wenn man versucht den Befehl auszuführen nen Error komnt
Der blacklist-info command geht als einziger Befehl net
Mach doch einfach von ezcord
Das hat schon ezcord (:
pleasure doing business
und wie speicher ich das
kann ich da auch in aiomysql speichern
Kann mir einer Helfen ?
Was denn
verstehe legit nd was du meinst
("SELECT balance FROM giftcards WHERE code = ?", (code,))
Also ich weiß nicht wo ich den parameter Balance hinmachen soll
Ich verstehe nicht was du meinst
da ist nur ne lokale DB
Ja
och neee ey
async def check_giftcard(self, ctx, code: int):
async with aiosqlite.connect(self.DB) as db:
cursor = await db.execute("SELECT balance FROM giftcards WHERE code = ?", (code,))
row = await cursor.fetchone()
embed=discord.Embed(
title="Guthaben überprüft!",
description=f"Geschenkkarte mit dem Code {code}, mit {balance}€.",
color=discord.Color.blue()
)
embed1=discord.Embed(
title="Guthaben überprüft!",
description=f"Geschenkkarte mit dem Code {code} Gibt es keine Karte.",
color=discord.Color.blue()
)
if row:
balance = row[0]
await ctx.respond(embed=embed)
else:
await ctx.respond(embed=embed1)```
Bro ich versteh deine frage nicht
Muss man eigentlich cogs erstellen?
nein aber wäre besser und ordentlicher
success_count = 1 if member.ban(reason=reason) else 0
error_count = 1 if not member.ban(reason=reason) else 0
vllt so
Servus ich habe ein Code der eigentlich aus einem channel alle nachrichten zählen soll und dann denn kategorie namen bearbeiten soll aber er bearbeitet nicht und ich habe auch prints eingebaut er kommt bis print 7 und print 8 printet er nicht mehr.
Code Auschnit:
@tasks.loop(seconds=30)
async def update_leak_name(self):
print(2)
await self.bot.wait_until_ready()
guild = self.bot.get_guild(1261718952825061447)
print(3)
if guild is None:
print(f"Guild with ID {1261718952825061447} not found.")
return
category = discord.utils.get(guild.categories, id=CATEGORY_ID)
print(4)
if category:
print(5)
leaks_channel = guild.get_channel(CHANNEL_ID)
if leaks_channel:
print(6)
new_total = await self.count_messages(leaks_channel)
print(7)
if new_total != self.total_messages:
self.total_messages = new_total
print(8)
self.save_total_messages()
new_name = f"▪ 📚 | Information (Leaks: {self.total_messages})"
await category.edit(name=new_name)
CHANNEL_ID und CATEGORY_ID sind oben in der datei angegeben
dann wird die if bedingung halt nd ausgeführt
Ja aber warum genau
Ich habe so nen gleichen code schon nür für eine ganzekategorie
if new_total!= self.total_messages:
self.total_messages = new_total
print(8)
self.save_total_messages()
new_name = f"▪ 📚 | Information (Leaks: {self.total_messages})"
try:
await category.edit(name=new_name)
print("Category name updated successfully!")
except discord.Forbidden:
print("Error: Bot does not have permission to edit category name.")
except discord.HTTPException as e:
print(f"Error: Failed to edit category name. ({e.status} {e.text})")
except Exception as e:
print(f"Error: Failed to count messages. ({e})")
else:
print("No changes to category name needed.")
@cursive moss test mal so
Omg es geht
Danke
ban vom server?
will ich doch net
Ne von dem bot ban
Kekse?
Warteee
hallo wenn ich mein bot starte "File "/home/container/.local/lib/python3.11/site-packages/discord/cog.py", line 787, in _load_from_module_spec
raise errors.ExtensionFailed(key, e) from e
discord.errors.ExtensionFailed: Extension 'cogs.Embed' raised an error: ModuleNotFoundError: No module named 'commands'" kommt der error wie kann man den beheben?
Wie kann ich bei
discord.TextChannel das nur Ankündigungs Channels angezeigt werden
Vllt ein code dazu
Das ist bei ein command dem error
das ist der code wo ich was geändert habe dan gestartet dann kam der error
@ruby sparrow
if type(i) == discord.NewsChannel:
iwie so
Danke
vllt das from premiumsystem import Premium as premium_commands
wie meint?
als import
File "/home/container/.local/lib/python3.11/site-packages/discord/cog.py", line 787, in _load_from_module_spec
raise errors.ExtensionFailed(key, e) from e
discord.errors.ExtensionFailed: Extension 'cogs.Embed' raised an error: SyntaxError: invalid syntax (Embed.py, line 4) jtzt kommt der error
@ruby sparrow
C:\Users\Leander\Desktop\testpy env>.\venv\Scripts\python.exe "W:\sussy fortnite balls\synapse\__src__\main.py"
File "W:\sussy fortnite balls\synapse\__src__\main.py", line 17
with open(f'C:\Users\{os.getlogin()}\synapse-config.json', 'r') as file:
SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes in position 2-3: truncated \UXXXXXXXX escape```
nicht wundern warum nix bei steht
code & error
hast du deine cogs genannt
wie Premium Datei?
was meinst du jtzt mit premium datei?
du hast noch eine datei oder
ja die premium.py datei
from cogs import premium denn muss heißen deine import
denn komm
ääahm kann ich mit dem SELECT befehl mehrere selecten?
was ?

also:
await cur.execute(f"SELECT userid reason moderator expire_at FROM `{DB_ECO_NAME}` WHERE user_id = %s", (ctx.author.id,))```
musst durch kommata trennen
so etwar
ah aber dann kann ich die einzelnt holen
werde das so versuchen
das wenn in expire_at None ist
bei expire_at ist bei mir NULL
vieleicht musds ich nach NULL fragen
hey, ich hab mir grade das tuto zu den slashcommands angeschaut (teil 3).
ich mache alles nach, aber bei der ausführung kommt:
bot = discord.Bot(intents=intents, debug_guilds=[XXX])
module 'Discord' has no attribute 'Bot'
Mache ich was falsch?
Zeig mal deine pip freeze
Bitte nicht replit
replit 💀
oh. was ist falsch damit? 0.o
Benutzt lieber visual Studio Code
als ob es an der Website liegt...
ok, ich schaus mir mal an
jo aber was ist denn jetzt falsch an replit?
is richtig böse
Ach xD
nene is eif nur bad
Den Eindruck hab ich bei euren Reaktionen auch...
wenn du was zum hosten brauchst kannste den codingkeks hoster nehmen, vsc oder pycharm is zum coden besser
jo, ich werds mir gelegentlich mal anschauen, aber darf ich wissen warum alle gegen replit haten?
es is keine ordentliche ide halt
inwiefern?
Repl.it kann man maybe usen um kleine Projekte zu teilen/auszuprobieren. Ein Problem is da zum Beispiel das es online is, also die Scripte schnell mal geklaut werden können/allgemein Daten unsicher sind. VSCode ist halt allgemein gut, da es sehr viele Programmiersprachen unterstützt mit Highlighting, guten Extensions etc.
und vsc is bissl einfacher zu bedienen ig xd
ok...
Hey und hallo allesamt,
ich habe eine kurze Frage zum Keks-Hosting...
Nämlich habe ich den Bot bereits erstellt und dem Server hinzugefügt, jedoch muss ich beim Keks-Hosting einen neuen Server erstellen? LG
?
schick mal nen screen was du meinst
du musst den befehl /server nutzen um einen Server zu erstellen bei keks hosting
aber voher mit /account einen acxcount erstellen
siehe #💻・cookie-hosting
Passt, danke
Traceback (most recent call last):
File "/data/data/com.termux/files/usr/lib/python3.11/site-packages/discord/commands/core.py", line 138, in wrapped
ret = await coro(arg)
^^^^^^^^^^^^^^^
File "/data/data/com.termux/files/usr/lib/python3.11/site-packages/discord/commands/core.py", line 1078, in _invoke
await self.callback(self.cog, ctx, **kwargs)
File "/storage/emulated/0/Documents/Botify/cogs/Auto Actions/AutoPublish.py", line 47, in show
[self.bot.get_channel(channel_id[0]).mention for channel_id in channels if self.bot.get_channel(channel_id[0])]
File "/storage/emulated/0/Documents/Botify/cogs/Auto Actions/AutoPublish.py", line 47, in <listcomp>
[self.bot.get_channel(channel_id[0]).mention for channel_id in channels if self.bot.get_channel(channel_id[0])]
~~~~~~~~~~^^^
TypeError: 'int' object is not subscriptable
@autopublish.command(description='Zeigt die aktuell aktivierten AutoPublisher-Kanäle an.')
async def show(self, ctx: discord.ApplicationContext):
channels = await db.get_all_channels()
guild_name = ctx.guild.name
embed = discord.Embed(
title=f"📣 〢 AutoPublish [0] - {guild_name}",
color=discord.Color.blue()
)
if not channels:
embed.description = f"No channels in auto publish.\nTo edit the auto publish channels use, {self.bot.get_cmd('autopublish edit)}"
else:
description = "\n".join(
[self.bot.get_channel(channel_id[0]).mention for channel_id in channels if self.bot.get_channel(channel_id[0])]
)
embed.description = (
f"> {description }\n"
f"Um die Kanäle für die automatische Veröffentlichung zu bearbeiten, verwenden Sie, {self.bot.get_cmd('autopublish edit)}"
)
await ctx.respond(embed=embed)
Also wenn man mehrere Autopublish Channel hat dann soll das untereinander sein aber irgendwie geht das nicht
ich hab ein problem
bei meinem remove blacklist command kann ich den nur ein mal ausführen
dann kommt unknow interaction
@slash_command(name='remove-blacklist',)
async def remove_blacklist(self, ctx, user: discord.User):
async with connect() as (con, cur):
await cur.execute(f"SELECT user_id FROM `{DB_BLACKLIST_NAME}` WHERE user_id = %s", (user.id,))
result = await cur.fetchone()
if result:
await cur.execute('DELETE FROM blacklist WHERE user_id = %s', (user.id,))
await ctx.respond(f"{user.name}#{user.discriminator} has been removed from the blacklist.")
else:
await ctx.respond(f"{user.name}#{user.discriminator} is not on the blacklist.")```
mein ihr es iost ok user ids permanent zu speichern um dise zu sperren
und kann ich die löschung der id aus der blacklist wenn von user angefordert verweigern?
Yes
@fierce dove hast du ne idee
Bedenke aber das wenn der user alle Information haben möchte was von ihm gespeichert wurde musst du die rausgeben
klar
ist ja net viel was ich in die blacklist speicher
und die econemy sachen kann der user selbst löschen
das kommt
warum?
Discord new Starten
hab immer strg+r benuzt
Weiß jemand wie man Musik von YT abspielen kann auf den bot mir commands
warte einfach mal 30 Minuten
Pycord hat bei sowas immer probleme wieso auch immer
@tasks.loop(seconds=60)
async def check_new_orders():
global last_order_id
channel_id = 1248689892435689512 # Specify the channel ID directly
channel = bot.get_channel(channel_id)
if channel is None:
print(f"Channel with ID {channel_id} not found.")
return
url = "https://dev.sellix.io/v1/orders" # Ensure this is the correct endpoint
try:
response = requests.get(url, headers=headers)
response.raise_for_status()
data = response.json()
if data['status'] == 200 and 'data' in data and 'orders' in data['data']:
orders = data['data']['orders']
if orders:
latest_order = orders[0]
if last_order_id is None or latest_order['uniqid'] != last_order_id:
last_order_id = latest_order['uniqid']
description = f"""
# New Order
`🧾` Order ID: {latest_order['uniqid']}
`💸` Total: {latest_order['total']}
`📩` Customer Email: {latest_order['customer_email']}
`📦` Product Title: {latest_order['product_title']}
`📊` Status: {latest_order['status']}
"""
embed = discord.Embed(description=description, color=0x000000)
await channel.send(embed=embed)
except requests.RequestException as e:
print(f"Error fetching orders: {e}")```
weiß jmd wie man macht das nur alle neuen Orders gesendet werden?
es ging wieder ein mal und wieder ist der fehler
xD
was ist das für nen mist
was meinst du denn mit allen neuen
egal
Wie kann man ctx.defer bei button einbauen wo man nur interaction hat
nutz den interaction.response.defer()
danke
jap
Geht wieder?
Nee
wie kann ich bei meinem Bot den Knopf hinzufügen im Profil das man ihn auf sein Server hinzufüge kann?
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...
danke dir
restart dein discord
Bei mir gibt es default authorization link nicht
@vast cradle hat @ruby sparrow gepingt.
C:\Users\leonf\AppData\Local\pypoetry\Cache\virtualenvs\planetbot-1aVSNs0I-py3.12\Lib\site-packages\aiomysql\cursors.py:239: Warning: Table 'blacklist' already exists
await self._query(query)
ne db tabelle existiert bereits
unnötig sende doch einf 😂
ist zu lang
schick es als datei xD
discord schränkt ein
wechsel einfach zu discord.py
oder du schränkst discord ein
den benötigten code?
mit emojis programmieren wäre doch einfacher

blitzreaktion
der code ixst lenger als ich schreiben darf
datei
schlagt mal was vor was man für code austausch programmieren könnte
ich schreibe grade mit jemanden
etwas nützliches
irgendwas mit fußball finde da gibt es zu wenig 🙂
maybe google maps in discord xD
Fußball ist zwar 0 mein Gebiet aber sag mir was genau
keine lust für die Google api zu zahlen
für code austausch reicht doch die free version
Buchen die trotzdem 10 Cent von meiner Kreditkarte ab
tabelle und verein infos
bei mir nd xD
Tabelle von?
alle?
Ja wollte ich gerade fragen
also kenne keine gute
hab eine gefunden
Aber muss mich da erstmal reinlesen
bundesliga ist leauge oder
kommt drauf an was für league du meinst
discord in discord
wir bestimmt dabei sein wenn man die richtige id hat
hab da nix mit germany gefunden
ne
yes
Giveaway system
Ka
such mal
bastel grade 2 shops
einen für server selber
und einen für global
Ich weiß nur nicht wie ich am besten die gekauften items Speicher
hat jemand ne idee
Hallo ich wollte mal fragen warum ich diesen Slash Command per dm nutzen kann:
import discord
from discord.ext import commands
from discord.commands import slash_command
class map(commands.Cog):
def __init__(self, bot):
self.bot = bot
@slash_command(description="Displays the latest map available in the files (Free)")
async def map(self, ctx):
url = "url"
await ctx.respond(f"[Map]({url})", ephemeral=True)
def setup(bot):
bot.add_cog(map(bot))
aber diesen Slash Command nicht:
import discord
from discord.ext import commands
from discord.commands import slash_command
class premium_message(commands.Cog):
def __init__(self, bot):
self.bot = bot
@slash_command(description="Explanation of the premium role")
async def premium(self, ctx):
embed = discord.Embed(
title="**💎 Premium**",
description=f"> test",
color=0x660000,
)
embed.set_thumbnail(url="https://s12.gifyu.com/images/Sa8NR.webp")
await ctx.respond(embed=embed, ephemeral=True)
def setup(bot):
bot.add_cog(premium_message(bot))
@next echo https://youtu.be/2PBvsuCDt8k
Unser Discord Server
► https://discord.gg/zfvbjTEzv6
Mein eigener Discord Bot (CookieBot)
► https://cookie-bot.xyz
Installations-Befehl
► pip install git+https://github.com/Pycord-Development/pycord
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
Inhalt 📚
Heute implementieren wir ein neues Discord Feature: User Apps! Damit können wir Bots nicht nur zu Discord Servern...
das beantwortet meine Frage auch nicht
Starte mal Discord neu.
... danke
hätte ich eigentlich selbst drauf kommen müssen
Kein Problem
Kann mir bitte jemand helfen
Ignoring exception in modal <cogs.Moderation.EmbedBuilder.SaveTemplateModal object at 0x7574834790>: Traceback (most recent call last): File "/data/data/com.termux/files/usr/lib/python3.11/site-packages/discord/ui/modal.py", line 341, in dispatch await value.callback(interaction) File "/storage/emulated/0/Documents/Botify/cogs/Moderation/EmbedBuilder.py", line 236, in callback await db.save_template(interaction.guild_id, interaction.user.id, template_name, self.embed) File "/storage/emulated/0/Documents/Botify/utils/db/database.py", line 191, in save_template embed_id_row = await cursor.fetchone() ^^^^^^^^^^^^^^^ AttributeError: 'EmbedBuilderDB' object has no attribute 'fetchone'
kennt sich wer mit git und github aus und weiß ob es möglich istt das man mit 2 leuten gleichzeit an einem reposittory arbeitet und wenn der eine etwas commited das das bei dem anderen auch direkt mit auf dem pc ist
Immer noch das Problem?
Ja
async def save_template(self, guild_id: int, user_id: int, name: str, embed: discord.Embed):
"""Save the embed as a template."""
async with self.start() as cursor:
# Insert the embed
await cursor.execute(
"""INSERT INTO embeds (guild_id, user_id, title, description, color)
VALUES (?, ?, ?, ?, ?)""",
(guild_id, user_id, embed.title, embed.description, embed.color.value if embed.color else None)
)
# Get the embed ID
await cursor.execute("SELECT last_insert_rowid()")
embed_id_row = await cursor.fetchone()
embed_id = embed_id_row[0] if embed_id_row else None
if embed_id is None:
raise RuntimeError("Failed to retrieve the embed ID after insertion.")
# Insert embed fields
for field in embed.fields:
await cursor.execute(
"""INSERT INTO embed_fields (embed_id, name, value, inline)
VALUES (?, ?, ?, ?)""",
(embed_id, field.name, field.value, field.inline)
)
# Insert template
await cursor.execute(
"""INSERT INTO templates (guild_id, user_id, name, embed_id)
VALUES (?, ?, ?, ?)""",
(guild_id, user_id, name, embed_id)
)
await self.commit()
``` @fierce dove
Ignoring exception in modal <cogs.Moderation.EmbedBuilder.SaveTemplateModal object at 0x7027037c10>: Traceback (most recent call last):
File "/data/data/com.termux/files/usr/lib/python3.11/site-packages/discord/ui/modal.py", line 341, in dispatch
await value.callback(interaction) File "/storage/emulated/0/Documents/Botify/cogs/Moderation/EmbedBuilder.py", line 236, in callback await db.save_template(interaction.guild_id, interaction.user.id, template_name, self.embed) File "/storage/emulated/0/Documents/Botify/utils/db/database.py", line 191, in save_template
embed_id_row = await cursor.fetchone()
^^^^^^^^^^^^^^^ AttributeError: 'EmbedBuilderDB' object has no attribute 'fetchone'
Zeig mal dein ganzes Code auf dm @fierce dove
Wenn du denn klaust
Ne
@fierce dove schau dir mal an wie man ne abfrage macht lol
Ich wollte mal fragen wie sowas geht wenn das jemand weiß?
so weit ich weiß es geht wenn du verifizierst bist
Mein Bot ist verifizierst
ja
aber wie soll das jetzt gehen finde das bei Dev Seite nicht
Meinst du doch oder?
ja
Unser Discord Server
► https://discord.gg/zfvbjTEzv6
Mein eigener Discord Bot (CookieBot)
► https://cookie-bot.xyz
Links aus diesem Video
Discord Dev Portal ► https://discord.dev/
GitBook ► https://www.gitbook.com/
❤️ Danke an tobfd für die Bereitstellung des Videomaterials zur Verifikation
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
Inhalt 📚
Heute zeige ich, wi...
ist er schon
und denn hier
Hab Tags drinne aber das ja nicht das
oder werden bei dir bei dein Bot auf dem Profile die Commands angezeigt?
Die haben meine anfrage nicht angenommen
ohh okay aber hab grad geguckt Tag ist es nicht und eigentlich passiert es automatisch sobald der bot verifiziert ist und der command global ist aber bei mir wird es trotzdem nicht angezeigt
Kannst du mir später helfen? Mit bot verifizieren?
jo
Danke🫶🏽
Bist du Alt genug?
haben wir schon
Weiß wer wie man ein Slash Command global macht?
Ne
keine debug guilds setzen
was genau ist das?
das sind guilds, für die der command erstellt werden soll. Die kann man direkt beim Bot einstellen oder per command
meinst bei slash command guild_ids?
ja genau
wenn du die nicht setzt sollte der command global verfügbar sein
außer du hast beim bot debug_guilds aktiviert
@slash_command(description="..", guild_ids=None)
so?
ne einfach gar nicht angeben
okay
hast du debug_guilds direkt beim Bot objekt gesetzt?
wait
meinst guild_ids? (Sry bin grad bischen lost)
weil will das bei mir auch steht wie bei @burnt prairie "Meine Befehle ausprobieren" aber ka why hab gehört geht automatisch
nein, da wo du dein Bot objekt erstellst wahrscheinlich in deiner main.py
hast du da debug_guilds gesetzt?
ich guck kurz nach
aber sonst sollten die global sein
ne einfach nur die Zeile wo du dein Bot objekt erstellst
hast du eine Bot klasse oder erstellst du den bot so z.b. bot = discord.Bot(intents=intents)?
bot = discord.Bot(
intents=intents,
status=status,
activity=activity
)
meinst du das?
ja genau, du hast dort keine debug guilds also sollten alle comands global sein
verstehe jetzt nicht was dein problem damit war :o sollte doch klappen
ja aber warum steht dann bei mein Bot nicht "Meine Befehle ausprobieren"?
das haben nur verifizierte Bots meine ich
hab ich
das hat absolut nichts miteinander zu tun
dann warten oder so idk das kommt automatisch
mhh okay aber trotzdem danke jetzt weiß ich wenigstens das meine Commands global sind :)
Die Registrierung kann halt bis zu einem Tag dauern
Das bekommt der Bot automatisch
Kann ich irgendwie eine Guild aus dem Cache löschen?
kann man auch selber
Nicht das ich wüsste
ich vermute mal sonst wäre das einheitlicher nicht das jeder bot unterschiedlich viele commands da stehen hat
Ne weil da werden halt die angezeigt die mindestens x mal genutzt wurden. Und bei manchen gibt es halt nur einen command der oft genutzt wird
Ich habe volgendes Problem
Ich habe einen Shop Co.mand erstelltwo User items kaufen können diese sind aber nur für die jewalige guild
Wie Speicher ich die items am besten auch wenn der User mehrere kauft
Nutze Pycord und aiomysql
ich habe ein Problem wegen meiner Ticket System
- kommt das hier in discord
und hier isr der Error
Traceback (most recent call last):
File "C:\Users\Lenni\PycharmProjects\DiscordBot\.venv\Lib\site-packages\discord\ui\view.py", line 426, in _scheduled_task
await item.callback(interaction)
File "C:\Users\Lenni\PycharmProjects\DiscordBot\cogs\ticketsystem.py", line 23, in create_ticket
ticket_channel = await guild.create_text_channel("new-ticket", category=self.category, overwrites=overwrites)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Lenni\PycharmProjects\DiscordBot\.venv\Lib\site-packages\discord\guild.py", line 1217, in create_text_channel
data = await self._create_channel(
^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Lenni\PycharmProjects\DiscordBot\.venv\Lib\site-packages\discord\guild.py", line 1096, in _create_channel
"id": target.id,
^^^^^^^^^
AttributeError: 'NoneType' object has no attribute 'id'```
Hier der Code
kannst du mal dem ganze code senden auf dm
wo benutzt du die ticket view? wo bekommst du die category her die du der view gibst? scheinst so als wäre self.category None anstatt eine category
von da
schick mal mehr code von dem command wie du die view benutzt
achso sehe die bilder oben
hm oder ist der 3. overwrite vielleicht None weil es die "Administrator" rolle nicht gibt
die muss genau so heißen ohne emojis oder so
finds bissl weird das du self.bot übergibst
vlt brauch er das woanders in der view
Keine Ergebnisse für category.create_text_channel gefunden. Meintest du Folgendes?
du könntest auch mal await self.category.create_text_channel("new-ticket", overwrites=overwrites) probieren
und das entfernen
admins sehen eh alle channels
man muss self.bot nd übergeben wenn man interaction.client haz
Ist nicht das gleiche
aber es macht so ziemlich das gleiche
Naja die meisten Sachen kann der Client auch aber halt nicht alles
Okay teste mal
Jetzt gehts
wie kann ich den Namen von den username in den Channelname ist?
Können user bei dir überhaupt ein Ticket erstellen?
Oder geht das nur mit dem Command der nur für admins ist
der command geht für Admins weil dann ein Panel gesendet wird
achso dann gehts auch nach bot restart nicht mehr oder+
naja egal
dann ist interaction.user also der der den knopf drückt der user halt
Gute Nacht
😂
....
ist halt aber so
Wieso wird das unterstrichen? Es funktioniert zwar aber das nervt.
Hover mal drüber dann solltest du es sehen
thx
Noch ne Frage wie kann ich SlashCommand Groups über mehrere Datein verwenden?
also kann ja machen ``test = discord.SlashCommandGroup("test", "test2")`
Kannst dir das in anderen Dateien importieren
Also kommt drauf an wo du es festlegst
Sonst Probier mal aus einfach die Gruppe noch einmal zu erstellen, das könnte auch funktionieren. Bin mir nicht sicher wie Pycord das handelt
Kann mir wer helfen?
Error:
Ignoring exception in view <DropDownView timeout=None children=1> for item <PanelDropdown type=<ComponentType.string_select: 3> placeholder='Choose the Reset your requesting.' min_values=1 max_values=1 options=[<SelectOption label='Token checker' value='Token checker' description=None emoji=None default=False>, <SelectOption label='Pass Changer' value='Pass Changer' description=None emoji=None default=False>, <SelectOption label='Gift checker' value='Gift checker' description=None emoji=None default=False>] channel_types=[] disabled=False>:
Traceback (most recent call last):
File "c:\Users\david\AppData\Local\Programs\Python\Python311\Lib\site-packages\discord\ui\view.py", line 426, in _scheduled_task
await item.callback(interaction)
File "d:\discord Bots\Lukus-Helper\main.py", line 118, in callback
await interaction.response.send_modal(Modal(title="LOL"))
File "c:\Users\david\AppData\Local\Programs\Python\Python311\Lib\site-packages\discord\interactions.py", line 1217, in send_modal
await self._locked_response(
File "c:\Users\david\AppData\Local\Programs\Python\Python311\Lib\site-packages\discord\interactions.py", line 1288, in locked_response
await coro
File "c:\Users\david\AppData\Local\Programs\Python\Python311\Lib\site-packages\discord\webhook\async.py", line 224, in request
raise HTTPException(response, data)
discord.errors.HTTPException: 400 Bad Request (error code: 50035): Invalid Form Body
In data.components: Must be between 1 and 5 in length.
Code:
class PanelDropdown(Select):
def __init__(self):
super().__init__(placeholder="Choose the Reset your requesting.", min_values=1, max_values=1, options=options)
async def callback(self, interaction: discord.Interaction):
global toolSelected
toolSelected = interaction.data["values"][0]
await interaction.response.send_modal(Modal(title="LOL"))
class DropDownView(discord.ui.View):
def __init__(self, timeout=None):
super().__init__(timeout=timeout)
self.add_item(PanelDropdown())
@commands.cooldown(1, settings["resetCooldown"] * 86400, commands.BucketType.user)
async def on_timeout(self):
await super().on_timeout()
zeig mal dein modal
Kann jemand schauen wo das Problem liegt? Der Bot ändert sein Status zu Live auf Twitch, jedoch funktioniert es nicht mit dem Link
async def activity(
self, ctx,
typ: Option(str, choices=["game", "stream"]),
name: Option(str)
):
if typ == "game":
act = discord.Game(name=name)
else:
act = discord.Streaming(
name=name,
url="https://openai.com/chatgpt/"
)
await self.bot.change_presence(activity=act, status=discord.Status.online)
await ctx.respond("Status wurde geändert!")```
ich glaub es muss einen gültigen twitch link sein oder streaming link
Hatte YT vorhin drin gehabt und es ging auch nicht
versuch es mal mit twitch
ok
und ?
@commands.slash_command wie kann ich das ändern will nicht das es ein slash command ist ich will das es & ist
Wie meinst
was
also ich will nicht das der command ein shlash command ist ich will das der command mit & präfix gemacht wird
mit @commands.command
und da mus ich nix mehr ändern?
du kannst beides bei dein bot machen
k
du kannst immer noch deine slash_command machen
ezcord oder ?
ja habe ichä
ok
also discord.Bot command_prefix="!",
bot = ezcord.Bot(
intents=intents,
debug_guilds=[1259840038955515914],
command_prefix="!",
)```
bei mir kommt error
File "/home/container/main.py", line 17, in <module>
intents=intents,
^^^^^^^
NameError: name 'intents' is not defined
bei mir kommt jtzt dieser error
import discord
import os
from dotenv import load_dotenv
from ezcord import i18n
import asyncio
import re
import colorama
from discord.commands import Option
from colorama import Fore
import ezcord
from discord import Color
import random
import logging
bot = ezcord.Bot(
intents=intents,
debug_guilds=[1259840038955515914],
command_prefix="!",
)
intents = discord.Intents.all()
bot = ezcord.Bot(
intents=intents,
error_handler=(os.getenv("ERROR_WEBHOOK_URL")),
)
bot.add_blacklist([1238601098843914331], owner_only=True)
logger = logging.getLogger('discord')
logger.setLevel(logging.INFO)
handler = logging.FileHandler(
filename='logs/discord.log',
encoding='utf-8'
)
dt_fmt = '%Y-%m-%d %H:%M:%S'
formatter = logging.Formatter('[{asctime}] [{levelname:<8}] {name}: {message}', dt_fmt, style='{')
handler.setFormatter(formatter)
logger.addHandler(handler)
if name == "main":
bot.load_cogs(log_color=Color.random())
bot.run()
HIER
bro was machst du
import discord
import os
from dotenv import load_dotenv
from ezcord import i18n
import asyncio
import re
import colorama
from discord.commands import Option
from colorama import Fore
import ezcord
from discord import Color
import random
import logging
intents = discord.Intents.all()
bot = ezcord.Bot(
intents=intents,
commandprefix="!",
errorhandler=(os.getenv("ERROR_WEBHOOK_URL")),
)
bot.add_blacklist([1238601098843914331], owner_only=True)
logger = logging.getLogger('discord')
logger.setLevel(logging.INFO)
handler = logging.FileHandler(
filename='logs/discord.log',
encoding='utf-8'
)
dt_fmt = '%Y-%m-%d %H:%M:%S'
formatter = logging.Formatter('[{asctime}] [{levelname:<8}] {name}: {message}', dt_fmt, style='{')
handler.setFormatter(formatter)
logger.addHandler(handler)
if __name == "__main":
bot.load_cogs(log_color=Color.random())
bot.run()```
Ach du scheiße
aber die / befehler funktonieren jtzt immernoch?
ja...
das ist nicht meine
Weiß ich
File "/home/container/main.py", line 3, in <module>
from dotenv import loaddotenv
ImportError: cannot import name 'loaddotenv' from 'dotenv' (/home/container/.local/lib/python3.11/site-packages/dotenv/init.py)
jtzt kommt der error
mach die
hab ich
Wo sind die _
import discord
import os
from dotenv import load_dotenv
from ezcord import i18n
import asyncio
import re
import colorama
from discord.commands import Option
from colorama import Fore
import ezcord
from discord import Color
import random
import logging
intents = discord.Intents.all()
bot = ezcord.Bot(
intents=intents,
command_prefix="!",
errorhandler=(os.getenv("ERROR_WEBHOOK_URL")),
)
bot.add_blacklist([1238601098843914331], owner_only=True)
logger = logging.getLogger('discord')
logger.setLevel(logging.INFO)
handler = logging.FileHandler(
filename='logs/discord.log',
encoding='utf-8'
)
dt_fmt = '%Y-%m-%d %H:%M:%S'
formatter = logging.Formatter('[{asctime}] [{levelname:<8}] {name}: {message}', dt_fmt, style='{')
handler.setFormatter(formatter)
logger.addHandler(handler)
if __name == "__main":
bot.load_cogs(log_color=Color.random())
bot.run()```
So besse
File "/home/container/main.py", line 42, in <module>
if __name == "__main":
^^^^^^
NameError: name '__name' is not defined. Did you mean: 'name'?
Kein ding
__main__```
deswegen soll man immer codeblöcke benutzen und er macht es nicht 💀
if __name__ == "__main__":
So
import discord
import os
from dotenv import load_dotenv
from ezcord import i18n
import asyncio
import re
import colorama
from discord.commands import Option
from colorama import Fore
import ezcord
from discord import Color
import random
import logging
intents = discord.Intents.all()
bot = ezcord.Bot(
intents=intents,
command_prefix="!",
errorhandler=(os.getenv("ERROR_WEBHOOK_URL")),
)
bot.add_blacklist([1238601098843914331], owner_only=True)
logger = logging.getLogger('discord')
logger.setLevel(logging.INFO)
handler = logging.FileHandler(
filename='logs/discord.log',
encoding='utf-8'
)
dt_fmt = '%Y-%m-%d %H:%M:%S'
formatter = logging.Formatter('[{asctime}] [{levelname:<8}] {name}: {message}', dt_fmt, style='{')
handler.setFormatter(formatter)
logger.addHandler(handler)
if __name__ == "__main__":
bot.load_cogs(log_color=Color.random())
bot.run()```
Benutzt doch mal codeblöcke
das ist einfacher dann dir zu helfen
File "/home/container/.local/lib/python3.11/site-packages/discord/cog.py", line 801, in _load_from_module_spec
raise errors.ExtensionFailed(key, e) from e
discord.errors.ExtensionFailed: Extension 'cogs.premium' raised an error: AttributeError: 'Bot' object has no attribute 'add_command jtzt komm der error
Code
ja
den premium code?
Ja
wo auch er error ist XD
Ohje der code ist aber kompliziert gemacht
ist hier vom dc
hab keine lust auf nach zu sehen wo er error ist
Schick mal ganzen error
das ist der error
[2024-07-18 20:07:43] [INFO ] discord.gateway: Shard ID None has connected to Gateway: ["gateway-prd-us-east1-c-khms",{"micros":65169,"calls":["id_created",{"micros":1303,"calls":[]},"session_lookup_time",{"micros":359,"calls":[]},"session_lookup_finished",{"micros":14,"calls":[]},"discord-sessions-prd-1-128",{"micros":62439,"calls":["start_session",{"micros":39423,"calls":["discord-api-rpc-56f547c996-lj8x6",{"micros":35881,"calls":["get_user",{"micros":4958},"get_guilds",{"micros":2938},"send_scheduled_deletion_message",{"micros":8},"guild_join_requests",{"micros":1},"authorized_ip_coro",{"micros":8}]}]},"starting_guild_connect",{"micros":66,"calls":[]},"presence_started",{"micros":291,"calls":[]},"guilds_started",{"micros":178,"calls":[]},"guilds_connect",{"micros":2,"calls":[]},"presence_connect",{"micros":22450,"calls":[]},"connect_finished",{"micros":22457,"calls":[]},"build_ready",{"micros":19,"calls":[]},"clean_ready",{"micros":1,"calls":[]},"optimize_ready",{"micros":0,"calls":[]},"split_ready",{"micros":1,"calls":[]}]}]}] (Session ID: cec85039b42626e63d7c3cd466750487).
sonst ist hier noch der error aus dem error log
welche libarie nutzt du
welche requierments?
py-cord
chat_exporter
ezcord
asyncio
captcha
aiosqlite
requests
colorama
das sind die requierments
oder was meinst du mit libarie?
ich nutze py-cord
aber warum präfix command
weil ich einen bestimmten command zu ! haben will
welchen denn
wait
@commands.slash_command(name="create-premium-code", description="Create a premium code/s (Admin only)")
@commands.has_permissions(administrator=True)
async def create_code(self, ctx, count: int, duration: int, duration_type: discord.Option(str, choices=["Seconds", "Minutes", "Hours", "Days", "Weeks", "Months", "Years", "Lifetime"])):
async with aiosqlite.connect(self.db) as db:
embed = discord.Embed(title="Creating Premium Codes", color=0x0083FF)
embed.set_author(name=ctx.author.display_name, icon_url=ctx.author.avatar.url)
also denn will ich als ! command haben
dann mach ihn zu @commands.command
ok warte ich guck kurz
ok
. das ist die main py die überarbeitet wurde von nico
versuch mal ezcord.Bot mit ezcord.BridgeBot zu tauschen
ich änder jtzt einfach so das nur der owner des bots das kann
File "/home/container/main.py", line 17, in <module>
intents=intents,
^^^^^^^
NameError: name 'intents' is not defined
jtzt kommt der error mit meiner alten main.py
Ne Frage gild Cookie bot Premium 30 Tage einmalig in #🚀・partner-info
Ich nehme es stark an
Ja
Wie kann ich den Amount in die .json eintragen
with open('tickets.json', 'r', encoding='utf-8') as f:
tickets = json.load(f)
tickets[channel.id] = {"owner": user.id}
with open('tickets.json', 'w', encoding='utf-8') as f:
json.dump(tickets, f, indent=4)
Traceback (most recent call last):
File "c:\Users\HP EliteDesk G3\Desktop\coding\discord bot\test bot\main.py", line 6, in <module>
bot = discord.Bot(intents=intents)
^^^^^^^^^^^
AttributeError: module 'discord' has no attribute 'Bot'
Mach mal pip freeze
@uneven hedge
Traceback (most recent call last):
File "c:\Users\HP EliteDesk G3\Desktop\coding\discord bot\test bot\main.py", line 15, in <module>
bot.load_extension("cogs.Wilkommen")
File "C:\Users\HP EliteDesk G3\AppData\Local\Programs\Python\Python312\Lib\site-packages\discord\cog.py", line 905, in load_extension
elif (spec := importlib.util.find_spec(name)) is None:
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "<frozen importlib.util>", line 91, in find_spec
ModuleNotFoundError: No module named 'cogs'
import discord
intents = discord.Intents.default()
intents.message_content = True # wird für msg.content benötigt
bot = discord.Bot(intents=intents)
@bot.event
async def on_ready():
print(f"{bot.user} ist online")
bot.load_extension("cogs.Wilkommen")
bot.run("mein token")```
Hier findest du das Main-Datei Template 🦧
File "c:\Users\HP EliteDesk G3\Desktop\coding\discord bot\test bot\main.py", line 16, in <module>
for filename in os.listdir("cogs"):
^^^^^^^^^^^^^^^^^^
FileNotFoundError: [WinError 3] Das System kann den angegebenen Pfad nicht finden: 'cogs'
@uneven hedge https://youtu.be/TRJsc6VmkDs
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...
Ja gut viel glück noch bei coden
@ruby sparrow ok
danke
?
Kann ich auch die hochgeladenen emojis nutzen oder nur der bot
"" Der Knopf funktioniert nach 10 Minuten nicht mehr "' Ich habe das Problem das der Knopf nach ca. 10 Minuten nicht mehr geht. Hier ein paar Daten über den bot :
- Wird mit einen V Server gehostet
- die sprach ist .py
- Es kommt auch keine Fehler in der Konsole
- es werde keine cogs benutzt
Bei antwortet gerne mich anpingen
Wurde der Bot neugestartet?
Hat die View ein Timeout?
Ist das eine persistent View?
Was genau meinst du? Wo hochgeladen?
Egal ich meinte das neue feature von bots wo do emojis an dein bot hochladen kannst
Hm? Das kenn ich gar nicht 😅
Gibt's da nen Artikel zu?
Ne alles gut 😅 , hab schon heraus gefunden
mhh weiss nd
Kannste mal nen Bild senden pls? Würd gern wissen was du meinst:)
Weißt du noch wann?
Ah okay das ist cool
Und was ist die Antwort? I guess man kann die als User dann nicht nutzen?
Würde zumindest Sinn machen
Danke
ne
nur der bot
Was heißt das View ?
das wo der button drin is
Darf ich den Code teil schicken ?
ja
kann mir wer helfen
File "/home/container/cogs/verify.py", line 10
embed = discord.Embed(
^
IndentationError: expected an indented block after function definition on line 9```
hallo leute hätte ein frage wie kann man ein ephemeral message fetchen
wieso sollte man dies
Geht nicht direkt
Nur wenn du sie selbst gesendet hast in derselben Interaktion
nein braucht man nicht genauso wie bei view etc
nur wenn du was übertragen magst
hat timo alles im video von ezcord gezeigt
ah
Mein Discord Server
► https://discord.gg/zfvbjTEzv6
Links aus diesem Video
EzCord Docs ► https://ezcord.readthedocs.io/
EzCord GitHub ► https://github.com/tibue99/ezcord
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
Mein Hosting* ► https://tidd.ly/3gJufg6
Code auf Github ► https://github.com/tibue99/tutorial-bot
PYCORD
Docs ► https://docs.pycord.dev/
Guide ► https:...
thx
ja des
hab nur aufm github geschaut ,_,
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...
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...
Kek
vllt ein code
Soll man denn code sich telepathisch raus suchen??
Zeig mal deine pip freeze
PS C:\Users\flugm\Desktop\cloud bots\bots\cb_fraktion> pip freeze
aiohttp==3.9.5
aiosignal==1.3.1
aiosqlite==0.20.0
altgraph==0.17.4
async-timeout==4.0.3
asyncpg==0.29.0
attrs==23.1.0
certifi==2024.6.2
charset-normalizer==3.3.2
click==8.1.3
colorama==0.4.6
discord==2.3.2
discord.py==2.4.0
dotenv-python==0.0.1
ezcord==0.6.4
ffmpeg-python==0.2.0
frozenlist==1.4.1
future==1.0.0
idna==3.7
imageio-ffmpeg==0.5.1
inquirerpy==0.3.4
markdown-it-py==2.2.0
mdurl==0.1.2
multidict==6.0.5
numpy==2.0.0
packaging==24.0
pefile==2023.2.7
pfzy==0.3.4
Pillow==9.5.0
prompt_toolkit==3.0.45
psutil==5.9.5
py-cord==2.5.0
pycord==0.1.1
pycryptodome==3.17
pyfiglet==0.8.post1
Pygments==2.18.0
pyinstaller @ file:///C:/Users/flugm/Desktop/empyrean-main/build/pyinstaller-5.1
pyinstaller-hooks-contrib==2024.6
pyobf2==1.2.0
python-dotenv==1.0.1
pywin32==306
pywin32-ctypes==0.2.2
requests==2.31.0
rich==13.3.5
tomlkit==0.11.8
typing_extensions==4.12.2
urllib3==2.0.2
wcwidth==0.2.13
WMI==1.5.1
yarl==1.9.4
hier
aiosignal==1.3.1
aiosqlite==0.20.0
altgraph==0.17.4
async-timeout==4.0.3
asyncpg==0.29.0
attrs==23.1.0
certifi==2024.6.2
charset-normalizer==3.3.2
click==8.1.3
colorama==0.4.6
dotenv-python==0.0.1
ezcord==0.6.4
ffmpeg-python==0.2.0
frozenlist==1.4.1
future==1.0.0
idna==3.7
imageio-ffmpeg==0.5.1
inquirerpy==0.3.4
markdown-it-py==2.2.0
mdurl==0.1.2
multidict==6.0.5
numpy==2.0.0
packaging==24.0
pefile==2023.2.7
pfzy==0.3.4
Pillow==9.5.0
prompt_toolkit==3.0.45
psutil==5.9.5
py-cord==2.6.0
pycord==0.1.1
pycryptodome==3.17
pyfiglet==0.8.post1
Pygments==2.18.0
pyinstaller @ file:///C:/Users/flugm/Desktop/empyrean-main/build/pyinstaller-5.1
pyinstaller-hooks-contrib==2024.6
pyobf2==1.2.0
python-dotenv==1.0.1
pywin32==306
pywin32-ctypes==0.2.2
requests==2.31.0
rich==13.3.5
tomlkit==0.11.8
typing_extensions==4.12.2
urllib3==2.0.2
wcwidth==0.2.13
WMI==1.5.1
yarl==1.9.4
@misty vale
⚠️ Eventuell hast du falsche Packages installiert
pycord==0.1.1 -> py-cord```
*Ich habe [diese Nachricht](#1019974414487535736 message) geprüft.*
@misty vale
@vivid sky habe bei dein blacklist system den error:
Traceback (most recent call last):
File "c:\Users\felix\Desktop\Discord Bot\main.py", line 50, in <module>
bot.load_cogs("./cogs/commands", subdirectories=True, custom_log_level="commands")
File "C:\Users\felix\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.11_qbz5n2kfra8p0\LocalCache\local-packages\Python311\site-packages\ezcord\bot.py", line 327, in load_cogs
self.load_extension(cog)
File "C:\Users\felix\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.11_qbz5n2kfra8p0\LocalCache\local-packages\Python311\site-packages\discord\cog.py", line 912, in load_extension
self._load_from_module_spec(spec, name)
File "C:\Users\felix\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.11_qbz5n2kfra8p0\LocalCache\local-packages\Python311\site-packages\discord\cog.py", line 781, in _load_from_module_spec
raise errors.ExtensionFailed(key, e) from e
discord.errors.ExtensionFailed: Extension 'cogs.commands.giveaway' raised an error: ModuleNotFoundError: No module named 'commands'
PS C:\Users\felix\Desktop\Discord Bot>
code?
kp
ich hätte eine frage ich habe so ein anti invite system aus #1027677692730036294
und normal muss man eine channel id angeben in dem code und danach nochmal den command machen mit den channel kann man das auch weglassen das man mehrere channel anggeben kann für verschiedene server ?
code:
import discord
from discord.commands import slash_command, Option
from discord.ext import commands
from datetime import timedelta
import json
import os
default_invite_links = ["*CUSTOMLINK1/*", "*CUSTOMLINK2*", "*CUSTOMLINK3*"]
class AutomodV2(commands.Cog):
def __init__(self, bot):
self.bot = bot
self.load_invite_links()
def load_invite_links(self):
if os.path.exists('invite_links.json'):
try:
with open('invite_links.json', 'r') as f:
self.invite_links = json.load(f)
except json.JSONDecodeError:
self.invite_links = default_invite_links
else:
self.invite_links = default_invite_links
def save_invite_links(self):
with open('invite_links.json', 'w') as f:
json.dump(self.invite_links, f)
async def update_auto_mod_rule(self, guild):
actions = [
discord.AutoModAction(
action_type=discord.AutoModActionType.block_message,
metadata=discord.AutoModActionMetadata(),
),
discord.AutoModAction(
action_type=discord.AutoModActionType.send_alert_message,
metadata=discord.AutoModActionMetadata(),
),
discord.AutoModAction(
action_type=discord.AutoModActionType.timeout,
metadata=discord.AutoModActionMetadata(timeout_duration=timedelta(hours=1)),
),
]
# Löschen der vorhandenen AutoMod-Regel
existing_rule = discord.utils.get(await guild.fetch_auto_moderation_rules(), name="SpamInviteLinks")
if existing_rule:
await existing_rule.delete()
# Erstellen der neuen AutoMod-Regel mit den aktuellen Einladungslinks
await guild.create_auto_moderation_rule(
name="SpamInviteLinks",
event_type=discord.AutoModEventType.message_send,
trigger_type=discord.AutoModTriggerType.keyword,
trigger_metadata=discord.AutoModTriggerMetadata(keyword_filter=self.invite_links),
enabled=True,
actions=actions,
)
@slash_command(name="addinvitelink", description="Füge einen benutzerdefinierten Einladungslink hinzu")
async def add_invite_link(self, ctx, link: str):
self.invite_links.append(link)
self.save_invite_links()
await self.update_auto_mod_rule(ctx.guild)
await ctx.respond(f"✅ Der Einladungslink `{link}` wurde erfolgreich hinzugefügt.")
@slash_command()
@commands.guild_only()
async def automod(self, ctx, log_channel: discord.TextChannel):
await self.update_auto_mod_rule(ctx.guild)
await ctx.respond("✅ Erfolgreich eingerichtet.")
def setup(bot):
bot.add_cog(AutomodV2(bot))
errror:
Traceback (most recent call last):
File "C:\Users\felix\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.11_qbz5n2kfra8p0\LocalCache\local-packages\Python311\site-packages\discord\commands\core.py", line 131, in wrapped
ret = await coro(arg)
^^^^^^^^^^^^^^^
File "C:\Users\felix\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.11_qbz5n2kfra8p0\LocalCache\local-packages\Python311\site-packages\discord\commands\core.py", line 1009, in _invoke
await self.callback(self.cog, ctx, **kwargs)
File "c:\Users\felix\Desktop\Discord Bot\cogs\commands\antiinvite.py", line 71, in automod
await self.update_auto_mod_rule(ctx.guild)
File "c:\Users\felix\Desktop\Discord Bot\cogs\commands\antiinvite.py", line 52, in update_auto_mod_rule
await guild.create_auto_moderation_rule(
File "C:\Users\felix\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.11_qbz5n2kfra8p0\LocalCache\local-packages\Python311\site-packages\discord\guild.py", line 3839, in create_auto_moderation_rule
data = await self._state.http.create_auto_moderation_rule(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\felix\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.11_qbz5n2kfra8p0\LocalCache\local-packages\Python311\site-packages\discord\http.py", line 373, in request
raise HTTPException(re
Geht's es überhaupt ein self.Update
na die frage ist ja kann man das für jeden server beliebig machen oder geht das nur für ein auch mit invites
import discord
from discord.commands import slash_command, Option
from discord.ext import commands
from datetime import timedelta
import json
import os
default_invite_links = ["*CUSTOMLINK1/*", "*CUSTOMLINK2*", "*CUSTOMLINK3*"]
class AutomodV2(commands.Cog):
def __init__(self, bot):
self.bot = bot
self.load_invite_links()
def load_invite_links(self):
if os.path.exists('invite_links.json'):
try:
with open('invite_links.json', 'r') as f:
self.invite_links = json.load(f)
except json.JSONDecodeError:
self.invite_links = {}
else:
self.invite_links = {}
def save_invite_links(self):
with open('invite_links.json', 'w') as f:
json.dump(self.invite_links, f)
async def update_auto_mod_rule(self, guild):
guild_id = str(guild.id)
actions = [
discord.AutoModAction(
action_type=discord.AutoModActionType.block_message,
metadata=discord.AutoModActionMetadata(),
),
discord.AutoModAction(
action_type=discord.AutoModActionType.send_alert_message,
metadata=discord.AutoModActionMetadata(),
),
discord.AutoModAction(
action_type=discord.AutoModActionType.timeout,
metadata=discord.AutoModActionMetadata(timeout_duration=timedelta(hours=1)),
),
]
existing_rule = discord.utils.get(await guild.fetch_auto_moderation_rules(), name="SpamInviteLinks")
if existing_rule:
await existing_rule.delete()
invite_links = self.invite_links.get(guild_id, default_invite_links)
await guild.create_auto_moderation_rule(
name="SpamInviteLinks",
event_type=discord.AutoModEventType.message_send,
trigger_type=discord.AutoModTriggerType.keyword,
trigger_metadata=discord.AutoModTriggerMetadata(keyword_filter=invite_links),
enabled=True,
actions=actions,
)
@slash_command(name="addinvitelink", description="Füge einen benutzerdefinierten Einladungslink hinzu")
async def add_invite_link(self, ctx, link: str):
guild_id = str(ctx.guild.id)
if guild_id not in self.invite_links:
self.invite_links[guild_id] = []
self.invite_links[guild_id].append(link)
self.save_invite_links()
await self.update_auto_mod_rule(ctx.guild)
await ctx.respond(f"✅ Der Einladungslink `{link}` wurde erfolgreich hinzugefügt.")
@slash_command()
@commands.guild_only()
async def automod(self, ctx):
await self.update_auto_mod_rule(ctx.guild)
await ctx.respond("✅ Erfolgreich eingerichtet.")
def setup(bot):
bot.add_cog(AutomodV2(bot))```
@last depot
Ka
Ist automatisch
und wan kommt das
Bis das discord annehmen
Geht es ?
Denn warten
n ekann kein channel angeben
TextChannel
Hallo, ich habe ein Problem:
Ich versuche via Pycord mir die Zeit in einem Channel anzeigen zu lassen.
Da dies leider nicht funktioniert hat, habe ich versucht sie zu printen.
Da auch das nicht klappt stehe ich vor einem Rätsel - was mache ich falsch?
Danke im vorraus!
Code:
@tasks.loop(
time=time(16, 20)
)
async def time_task(self):
channel = await self.bot.fetch_channel(1264586511601635360)
await channel.send("Es ist 16:25 Uhr")
print("Es ist 16:25 Uhr")
Startest du den Task auch?
Ja via
self.time_task.start()
from discord.ext import commands, tasks
from datetime import time
class Task(commands.Cog):
def __init__(self, bot):
self.bot = bot
@commands.Cog.listener()
async def on_ready(self):
self.time_task.start()
@tasks.loop(
time=time(16, 20)
)
async def time_task(self):
channel = await self.bot.fetch_channel(1234567890) #ID geändert
await channel.send("Es ist 16:25 Uhr")
print("Es ist 16:25 Uhr")
def setup(bot):
bot.add_cog(Task(bot))
Das ist der Code für die Task
Der Task loop wird immer um 16:20 ausgeführt
Sollte ja
Moin, ich habe ein reaktionsrollen system und wen ich den bot neu starte klappt es nicht mehr das die rollen hinzugefügt werden .
Aber irgendwie sendet er die Zeit weder in den Channel noch ins Terminal
Oh
Jetzt hab ich es gecheckt
Ich wusste es ist ein Flüchtigkeitsfehler
Hab jetzt mal auf 17.05 gestellt
Gebe dir dann Bescheid
Danke schonmal
Hmm funktioniert irgendwie immer noch nicht
Print dir vielleicht mal time
Wait
@tasks.loop(
time=time(16, 20)
)
async def time_task(self):
print(time)
channel = await self.bot.fetch_channel(1234567890) #ID geändert
await channel.send("Es ist 16:25 Uhr")
print("Es ist 16:25 Uhr")
So?
zeitzone beachten
Mein Discord Server
► https://discord.gg/zfvbjTEzv6
UTC Zeitzone
► https://time.is/de/UTC
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....
Ahhhh
Aber ich will ja anstatt utc die mez haben
Also die deutsche weil ist nur ein deutscher Server
Geht das automatisch oder wie mach ich das?
Weil timezone hat das Attribut mez nicht
Hab es jetzt mit UTC probiert, das hat funktioniert.
Aber finde es irgendwie blöd immer 2 Stunden abzuziehen.
Wie stelle ich die deutsche Zeitzone ein?
Mein Discord Server
► https://discord.gg/zfvbjTEzv6
Links aus diesem Video
► https://www.w3schools.com/python/python_datetime.asp
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
Inhalt 📚
Heute stelle ich euch das Datetime Module von Python vor, damit ihr wisst, wie ihr mit verschiedenen Zeitformen in Python umgehen und rechnen könnt.
Timestamps 🕑
0:00 | Begrüßung
0:4...
Danke
kd kannst ja mit den cmd schauen ob ein video dir hilft 😉
....
Da bin ich leider raus
k
printe doch mal wie weit es dann geht bis es stoppt
Kannst du mir bitte nochmal helfen
Irgendwie will das nicht so
from discord.ext import commands, tasks
from datetime import time
import pytz
class Task(commands.Cog):
def __init__(self, bot):
self.bot = bot
@commands.Cog.listener()
async def on_ready(self):
self.time_task.start()
tzone = pytz.timezone("Europe/Berlin")
@tasks.loop(
time = time(17, 55, tzinfo=tzone)
)
async def time_task(self):
channel = await self.bot.fetch_channel(1264586511601635360)
await channel.send("Es ist 17:55Uhr")
print("Es ist 17:55 Uhr")
def setup(bot):
bot.add_cog(Task(bot))
Also ich habe die Zeitzone ausgewählt ("Europe/Berlin") und in einer Variable gespeichert (tzone)
Dann habe ich in tasks.loop()
time = time(17, 55, tzinfo=tzone)
eingetragen
Nun schickt er wieder nichts rein in den Discord Channel und printed auch nicht
Die Zeitzone läuft über pytz
wie füge ich zu usern rollen hinzu?
zeig mir mal deine main.py
Brd wie oft willst du noch fragen?
ja bro wenn es nicht hilft
Zeig doch mal deine pip freeze
denke du hast discord und py-cord installiert
#🔍・pycord-help message
pip freeze bitte, wie @tawdry leaf meinte das dene ich auch
hab ich jetzt gemaacht geht immernoch nicht
aiohttp==3.9.5
aiosignal==1.3.1
aiosqlite==0.20.0
anyio==4.4.0
async-timeout==4.0.3
asyncpg==0.29.0
attrs==23.2.0
capmonster_python==3.2.0
certifi==2024.6.2
charset-normalizer==3.3.2
colorama==0.4.6
discord.js==1.0.7
ffmpeg-python==0.2.0
frozenlist==1.4.1
future==1.0.0
h11==0.14.0
httpcore==1.0.5
httpx==0.27.0
idna==3.7
imageio-ffmpeg==0.5.1
javascriptpy==1.1.6
multidict==6.0.5
numpy==2.0.0
py-cord==2.5.0
python-dotenv==1.0.1
PyYAML==6.0.1
requests==2.32.3
six==1.16.0
sniffio==1.3.1
tls-client==1.0.1
typing_extensions==4.12.2
urllib3==2.2.2
yarl==1.9.4
@misty vale
⚠️ Es sollte nur eine Discord Library installiert sein
discord.js==1.0.7
py-cord==2.5.0```
*Ich habe [diese Nachricht](#1019974414487535736 message) geprüft.*
Deinstallier beides und installier py-cord dann neu
Wie in #🔍・pycord-help beschrieben
discord.js in python 

kann man eigtl was gegen interaction not found tun?
wie meinst
egal, hat sich geklärt
ctx.defer oder dafür sorgen, dass die interaktion nicht länger als 3 sekunden dauert
hab ich dann auch gedacht. hatte gedacht wäre schon drinnen, hatte mich geirrt ;-;
wie kann man custom Emojis im Satus von Bot nutzrn
Geht nicht
Mach prefix weg und den geht's
Es gibt kein davon kein prefix
?
es gibt nur ein /
Manö
Hat jemand eine Idee, warum der Command nicht angezeigt wird, wenn ich ihn mit der Command Group nutze?
@snack.command(description="Hol dir einen leckeren zufälligen Snack",name="collect")
@commands.cooldown(1,300,commands.BucketType.user)
wenn ich @slash_command mache geht es
nah bro
@indigo sleet wenn du PrefixBot nutzt sollte man automatisch mit prefixhelp den bekommen
kann doch mal passiert
kenn ich das problem
from discord.ext import commands
from discord.ext.commands import SlashCommandGroup
class test(commands.Cog):
def __init__(self, bot):
self.bot = bot
snack = SlashCommandGroup("snack", description="Fetz dir ein paar Snacks")
@snack.command(description="Hol dir einen leckeren zufälligen Snack", name="collect")
@commands.cooldown(1, 300, commands.BucketType.user)
bot.add_cog(test(bot))```
@restive herald
haste mal ne lösung gefunden?
is ja nd so, dass ich das nd so hab lol
Du soll es ja auch testen lol
bro
ich hab legit gesagt das ich das so hab
...
is ja legit das was ich da habe
Vllt wegen ("eat") es muss immer das erste heißen
aso, hatte es falsch übernommen. hatte bei mir in den klammern snack stehen
also nein klappt damit auch nd, ich lass die cmd group erstmal raus
Aso denn sorry
Wird der cog geladen
ja
Ok
Dann starte Mal dein duschte neu
Und schaue ob der command dann angezeigt wird
warum wird die message nicht angezeigt
?
warum die message die gelöscht wurde nicht angezeigt wird
Einrückung ist falsch
Wie checke ich ob der View vom nutzer erzeugt wurde, der ihn benutzt?
Wie beim cookiebot ofen
hä was ist daran falsch
wieso hast du channel eins weiter rechts?
achso
halt user übergeben
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 ...
na gut
wie kann ich den author von den slash command callen?
was ist das
damit kansnst du eigene emojis für deinen bot usen ohne das die auf einem server sein müssen
okay?
ja?
aber 2.000 ist einfach nur krank
Braucht halt keiner
whyä
Wurde irgendwas bei dem Discord Acitivities SDK geändert oder warum kann man sich nicht mehr authorizen?
kann mir jemand helfen
Ja.
"
Activities CSP Update
We will be making updates to our Content Security Policy (CSP) on <t:1724828400:d> for the Activities Domain (https://<application_id>.discordsays.com).
⚠️ This represents a breaking change for all Activities, and as such we have a migration plan in order.
Our CSP will be updated as follows:
- All requests must be made through
https://<application_id>.discordsays.com/.proxy/, and requests to other paths on thediscordsays.comdomain will be blocked. - Requests to
https://discord.com/api/will be permitted, but other paths on thediscord.comdomain will be blocked. - Only allowed paths on
cdn.discordapp.comandmedia.discordapp.netwill be permitted such as/attachments/,/icons/, and/avatars/. - Nested child iframes must also mount paths prepended by
/.proxy/
As of embedded-app-sdk v1.4.0 we have updated patchUrlMappings to automatically route requests through /.proxy/, so updating your SDK version and calling patchUrlMappings is a good first step. If you are unfamiliar with patchUrlMappings, please consult the documentation.
All Application IDs created after <t:1721217600:F> (applicationID greater than 1263102905548800000) will also automatically have the new CSP applied. Testing your production code on a new application created after this date is a suggested way for developers to test compliance with this new CSP.
For existing applications, we will be deploying this update to the CSP on <t:1724828400:d>.
✍️ Read more about this update in the change log"
Quelle (Discord Developers Server)
Printe dir mal msg.contet und vielleicht hast du den intent nicht aktiviert?
Danke! Wurde bei meiner nämlich blockiert
Weißt du vielleicht wie man das in der Activity ändern kann?
Ne leider nicht hab noch nie was mit activities gemacht
intent ist aktiviert warte teste mal das printen
so?
warte teste
hab await weggemacht aber es printent garnix
Wird das Event überhaupt ausgeführt?
Und hast du den intent auch im code aktiviert?
reicht das nicht?
ne
oh
da muss noch intents.message_content = True hin
nict so
ne
intents = discord.Intents.default()
intents.message_content = True # wird für msg.content benötigt```
@deep coyote halt so wie ich dir geschreiben
hab gesehen danke nochmal
@ruby sparrow weißt du vielleicht wie der author von slash commands gecalled wird will die id callen
Für sowas sind docs echt klasse
:)
kann mir jemn sagen warum das if rot ist
Zeig mal deine main
import discord
from discord.ext import commands
import os
intents = discord.Intents.default()
intents.messages = True
bot = commands.Bot(command_prefix='!', intents=intents)
@bot.event
async def on_ready():
print(f'Logged in as {bot.user}!')
if __name__ == "__main__":
for filename in os.listdir("ticket"):
if filename.endswith(".py"):
bot.load_extension(f"ticket.{filename[:-3]}")```
Ka
gefixxt
Und was war das Problem
kann es dir selber nicht sagen habe einfach den code gestartet
doch nicht gefixxt
Kommt da ein error
jz nicht mehr hehehe
Jetzt müssten wir noch wissen was genau Emojis.py ist ...
Weiß jmd, wie man bei einem Ezcord Cog self sachen übergeben kann? weil man ja kein def __init__(self) hat
Zeig mal deinen Code bitte
wofür braucht man da code? man hat den normalen code von nem ezcord cog
hab jtzt nichts allgemeines was mir da vorschwebt
Hier findest du das Cog Template 🤨
Da kannst du ganz einfach eine init hinzufügen und dann sachen übergeben
Versteh ich nicht ganz das Problem
is in fact ja das nur ohne init und damit ezcord
wenn ich bei nem ezcord Cog ne init hinzufüge mit nem self.test dann kommt da nen error.
deswegen die frage, wo man das einstellen kann/wie man das macht
Emojis?
Kannst ja auch soweit ich weiß nur einen Bot übergeben
Hä du hast doch geschrieben: "wie kann ich meine Emojis aus emojis.py laden?" Also wir müssten halt wissen was diese Datei genau ist um dir zu helfen
Verstehe ich nicht, wenn du es gecodet hast solltest du es doch wissen hä xd?
ich weiß wie man das nutzt will aber nur wissen wie ich dinger Lade
@solid ingot ist das ein ezcord Fehler
Traceback (most recent call last):
File "/data/data/com.termux/files/usr/lib/python3.11/site-packages/discord/commands/core.py", line 138, in wrapped
ret = await coro(arg)
^^^^^^^^^^^^^^^
File "/data/data/com.termux/files/usr/lib/python3.11/site-packages/discord/commands/core.py", line 1078, in _invoke
await self.callback(self.cog, ctx, **kwargs)
File "/data/data/com.termux/files/usr/lib/python3.11/site-packages/ezcord/cogs/help.py", line 175, in help
field_name = replace_placeholders(self.bot.help.title, name=name, emoji=emoji)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/data/data/com.termux/files/usr/lib/python3.11/site-packages/ezcord/cogs/help.py", line 51, in replace_placeholders
s = s.replace(f"{{{key}}}", value)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
TypeError: replace() argument 2 must be str, not SlashCommandGroup
kommt drauf an welche ezcord version du hast und wie dein code aussieht
Habe die neue
import discord
import ezcord
import asyncio
import logging
import random
import datetime
import colorlog
from discord.ext import tasks
from datetime import datetime
from colorama import Fore, Style, init
# Setup logging
logger = logging.getLogger('discord')
logger.setLevel(logging.INFO)
# File handler for logging to a file (unchanged)
file_handler = logging.FileHandler(
filename='utils/logs/Botify.log',
encoding='utf-8'
)
file_formatter = logging.Formatter('[{asctime}] [{levelname:<8}] {name}: {message}', '%Y-%m-%d %H:%M:%S', style='{')
file_handler.setFormatter(file_formatter)
logger.addHandler(file_handler)
# Custom formatter for console output
class ColoredFormatter(logging.Formatter):
def format(self, record):
timestamp = self.formatTime(record, self.datefmt)
colored_timestamp = f"{Fore.CYAN}[{timestamp}]{Style.RESET_ALL}"
colored_level = f"{Fore.MAGENTA }[{record.levelname:<8}]{Style.RESET_ALL}"
return f"{colored_timestamp} {colored_level} {record.name}: {record.getMessage()}"
# Console handler for logging to the terminal
console_handler = logging.StreamHandler()
console_formatter = ColoredFormatter(datefmt='%Y-%m-%d %H:%M:%S')
console_handler.setFormatter(console_formatter)
logger.addHandler(console_handler)
# Initialize the bot
intents = discord.Intents.all()
bot = ezcord.Bot(
intents=intents,
language="de",
debug=True,
ready_event=None
)
bot.add_help_command()
if __name__ == "__main__":
bot.load_cogs(
"cogs",
custom_log_level="CMD",
subdirectories=True
)
bot.run()
version?
0.6.5
bist du dir da auch ganz sicher?
Hoffe es kennt sich jemand etwas mit plesk aus wie füge ich das bei nginx in plesk ein:
location ~ /(node|socket.io) {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $host;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}```
Ja
[INFO] Bot is online with EzCord 0.6.5
der code vom error zeigt jedenfalls eine veraltete ezcord version
Ich deinstalliere mal ezcord
Stimmt nicht
Führe den folgenden Befehl aus, um den Ezcord Master-Branch zu installieren.
pip install git+https://github.com/tibue99/ezcord```
**Hinweis:** [Git](https://git-scm.com/downloads) muss bei dir installiert sein.
installiere jz denn Master-Branch
Muss ich ezcord.Cog hinschreiben?
Das es geht
noob
war auch nd schwer
lern lesen
Kommt auf die Datei an, wie sie halt angelegt ist, aber wenn du das gemacht hast musst du es doch wissen?
Kann mir jemand helfen wie ich ein Selectmenu zu einem embed Hinzufüge?
warum kann ich bei @discord.ui.Button meber_count nicht als label setzen?
weil du member falsch scheribst
bro keine ahnung
aber auch kurzr frage wenn ich nen command mach wo mit nem embed responsed wird
kann ich an das mebed ein selectmenu dranhängen?
self.add_item(discord.ui.Button(label=f"Mitglieder: {}", style=discord.ButtonStyle.grey, disabled=True))```
voher habe ich das so gemacht
wie meinst
jezt will ich es aber als
@discord.ui.Button(label=member_count, style=discord.ButtonStyle.gray)
bro keine ahnung
class VerifyView(discord.ui.View):
def __init__(self, member_count):
super().__init__(timeout=None)
self.add_item(discord.ui.Button(label=f"Mitglieder: {member_count}", style=discord.ButtonStyle.grey, disabled=True))```
das kist die klasse
@solid ingot hast du ne idee?
bin grade am verzweifeln
vorallem muss der verify button auch nach nem botneustart gehen
Wie hänge ich an einen command mit embed replay ein select menu dran?
Warum geht pillow und easy pil nicht mit
Python 3.11.9
wieso geht es nicht?
Kommt ein Installations Fehler
und welcher?
Aber warum
python 3.11.9 nicht
Wie hänge ich an einen command mit embed replay ein select menu dran?
Guten Morgen,
Ich habe folgendes Problem:
Ich kann keine Member entbannen. Bannen klappt. Wo liegt mein Fehler?
Code:
@slash_command(description="Entbanne einen Member")
@discord.default_permissions(administrator=True, ban_members=True)
@discord.guild_only()
async def unban(self, ctx, member: Option(discord.Member, "Wähle einen Member")):
try:
await member.unban()
except discord.Forbidden:
await ctx.respond("Ich habe keine Berechtigung, um diesen Member zu entbannen", ephemeral=True)
return
await ctx.respond(f"{member.mention} wurde entbannt!")
@slash_command(description="Entbanne einen Member")
@discord.default_permissions(administrator=True, ban_members=True)
@discord.guild_only()
async def unban(self, ctx, member: Option(discord.Member, "Wähle einen Member")):
guild = ctx.guild
try:
bans = await guild.bans()
banned_user = next((ban_entry for ban_entry in bans if ban_entry.member.id == member.id), None)
if banned_user is None:
await ctx.respond("Dieser User ist nicht gebannt.", ephemeral=True)
return
await guild.unban(banned_user.user)
await ctx.respond(f"{user.mention} wurde entbannt!")
except discord.Forbidden:
await ctx.respond("Ich habe keine Berechtigung, um diesen User zu entbannen", ephemeral=True)```
@wraith garden
Ohh danke
Unf gehts?
Irgendwie ist da noch ein Fehler drin..
Extension 'cogs.admin' raised an error: TabError: inconsistent use of tabs and spaces in indentation (admin.py, line 33)
Das sagt es mir die ganze Zeit
Beim starten
das bedeutet das du den code nicht korrekt formatieet hast :)
sprich ein space zu viel an einer stelle wo es nicht sein soll
Aber eigentlich müsste es passen wait
schick mal ein screenshot
@slash_command(description="Banne einen Member")
@discord.default_permissions(administrator=True, ban_members=True)
@discord.guild_only()
async def ban(self, ctx, member: Option(discord.Member, "Wähle einen Member"), reason: str = None):
try:
await member.ban(reason=reason)
except discord.Forbidden:
await ctx.respond("Ich habe keine Berechtigung, um diesen Member zu bannen", ephemeral=True)
return
await ctx.respond(f"{member.mention} wurde gebannt!")
@slash_command(description="Entbanne einen Member")
@discord.default_permissions(administrator=True, ban_members=True)
@discord.guild_only()
async def unban(self, ctx, member: Option(discord.Member, "Wähle einen Member")):
guild = ctx.guild
try:
bans = await guild.bans()
banned_user = next((ban_entry for ban_entry in bans if ban_entry.member.id == member.id), None)
if banned_user is None:
await ctx.respond("Dieser User ist nicht gebannt.", ephemeral=True)
return
await guild.unban(banned_user.user)
await ctx.respond(f"{user.mention} wurde entbannt!")
except discord.Forbidden:
await ctx.respond("Ich habe keine Berechtigung, um diesen User zu entbannen", ephemeral=True)
Das sind der Ban und der Entbann Code, den Ban mochte er vorher erst seit unban motzt er..
Ah
Ok habs gesehen
Danke trotzdem
Ne passt doch nicht
nicht
?
@slash_command(description="Banne einen Member")
@discord.default_permissions(administrator=True, ban_members=True)
@discord.guild_only()
async def ban(self, ctx, member: Option(discord.Member, "Wähle einen Member"), reason: str = None):
try:
await member.ban(reason=reason)
except discord.Forbidden:
await ctx.respond("Ich habe keine Berechtigung, um diesen Member zu bannen", ephemeral=True)
return
await ctx.respond(f"{member.mention} wurde gebannt!")
@slash_command(description="Entbanne einen Member")
@discord.default_permissions(administrator=True, ban_members=True)
@discord.guild_only()
async def unban(self, ctx, member: Option(discord.Member, "Wähle einen Member")):
guild = ctx.guild
try:
bans = await guild.bans()
banned_user = next((ban_entry for ban_entry in bans if ban_entry.member.id == member.id), None)
if banned_user is None:
await ctx.respond("Dieser User ist nicht gebannt.", ephemeral=True)
return
await guild.unban(banned_user.user)
await ctx.respond(f"{user.mention} wurde entbannt!")
except discord.Forbidden:
await ctx.respond("Ich habe keine Berechtigung, um diesen User zu entbannen", ephemeral=True)
Die erste Zeile ist auch in der richtigen Reihe eigentlich
Discord schiebt es nur nach vorne
hm komisch
aber leider bin ich nicht zuhause und bei mir sieht es richtig weird aus auf. habdy
Bei Line 33
Haha glaub ich
lass mal jmd rüber schauen der aufm pc ist, da is es deutlich leichter😂😂
Ja hoffe Nico kommt gleich wieder on
sicherlich
Aber trotzdem danke dir
:)
@ruby sparrow kannst du mir bitte nochmal helfen?
Irgendwie motzt der mich an in der Line die ich angekreist habe.
Irgendwas mit Indent?
Normalerweise müsste doch alles richtig sein oder bin ich zu blöd um es zu sehen 😦
Extension 'cogs.admin' raised an error: TabError: inconsistent use of tabs and spaces in indentation (admin.py, line 33)
@slash_command(description="Banne einen Member")
@discord.default_permissions(administrator=True, ban_members=True)
@discord.guild_only()
async def ban(self, ctx, member: Option(discord.Member, "Wähle einen Member"), reason: str = None):
try:
await member.ban(reason=reason)
except discord.Forbidden:
await ctx.respond("Ich habe keine Berechtigung, um diesen Member zu bannen", ephemeral=True)
return
await ctx.respond(f"{member.mention} wurde gebannt!")
@slash_command(description="Entbanne einen Member")
@discord.default_permissions(administrator=True, ban_members=True)
@discord.guild_only()
async def unban(self, ctx, member: Option(discord.Member, "Wähle einen Member")):
guild = ctx.guild
try:
bans = await guild.bans()
banned_user = next((ban_entry for ban_entry in bans if ban_entry.member.id == member.id), None)
if banned_user is None:
await ctx.respond("Dieser User ist nicht gebannt.", ephemeral=True)
return
await guild.unban(banned_user.user)
await ctx.respond(f"{banned_user.user.mention} wurde entbannt!")
except discord.Forbidden:
await ctx.respond("Ich habe keine Berechtigung, um diesen User zu entbannen", ephemeral=True)
@wraith garden
Mag er immernoch nicht
ich versteh es nicht
Ah jetzt
warte
Jetzt beschwert er sich bei Line 22
Warum zur Hölle
Send mal deine ganzen code auf dm @wraith garden
ok
Hab dir geschrieben
das liegt daran, dass dein Hoster nur Tabs ODER Leerzeichen für die Einrückung akzeptiert, du nutzt beides.
Du musst den Code halt untersuchen und schauen, wo du Leerzeichen im zwecke der Einrückung nutzt,t und diese dann ersetzen.
So hab ich das immer gemacht
Danke, irgendwie hat der Server von CodingKeks das nicht richtig formatiert aber richtig formatiert angezeigt
Sobald ich es in Pycharm eingefügt habe hat man es direkt gesehen
@slash_command(description="Entbanne einen Member")
@discord.default_permissions(administrator=True, ban_members=True)
@discord.guild_only()
async def unban(self, ctx, member: Option(discord.Member, "Wähle einen Member")):
guild = ctx.guild
try:
bans = await guild.bans()
banned_user = next((ban_entry for ban_entry in bans if ban_entry.member.id == member.id), None)
if banned_user is None:
await ctx.respond("Dieser User ist nicht gebannt.", ephemeral=True)
return
await guild.unban(banned_user.user)
await ctx.respond(f"{banned_user.user.mention} wurde entbannt!")
except discord.Forbidden:
await ctx.respond("Ich habe keine Berechtigung, um diesen User zu entbannen", ephemeral=True)
Hey bräuchte nochmal Hilfe irgendwie mag er den Command immernoch nicht
Kommt keine fehlermeldung
Nur das
Wie kann ich mir die Anzahl der Nutzer anzeigen lassen, die meinen Bot als UserApp installiert haben?
-# Bitte antwort mit Ping 
@wraith garden hat @twilit anvil gepingt.
evtl braucht dieser code zu lange, der code den du ganz am anfang reingeschickt hast sah eigentlich gut aus
was hat daran am anfang nicht geklappt?
Gar nichts, hat nicht unbanned
Geht das überhaupt?
Weiß ich nicht. Deswegen frage ich 
Also das war der Anfangscode
was kam denn als antwort?
dann prüf mal mit prints, ob der code überhaupt ausgeführt wird bzw bis wohin er ausgeführt wird
Okay mach ich
Ich will jetzt nichts fals Heß sagen, glaub aber das es soetwas nicht gibt
wo ist hier ein tab error ? 
Naja es fehlt halt der Code, was passieren soll wenn der Command ausgeführt wird
Aber wenn du was findest dann sag es mir gerne
import discord
from discord.ext import commands
from discord.commands import slash_command, Option
class Ticket(commands.Cog):
def __init__(self, bot):
self.bot = bot
@bot.slash_command(description="Ticket Panel")
async def tpanel(ctx, title: Option(str, "Title of the ticket panel")):
embed = discord.Embed(
title=f"{title}",
description="Open a ticket by pressing 📩",
color=discord.Color.green()
)
embed.set_thumbnail(url="https://cdn.discordapp.com/attachments/1259484831272927242/1265596031869911051/D69A99FF-9D84-4D2D-930C-BE7EBE63AAB8.gif?ex=66a215a7&is=66a0c427&hm=17a12fed2f1518a1c8c7f4d7b7594fd28c9f5ff7ae0ca8fa64edb9c1713d53cd&")
embed.set_footer(text="/Painful | Ticket System")
await ctx.respond(embed=embed)
# mache buttons usw später drauf
def setup(bot):
bot.add_cog(Ticket(bot))
Line 10 ist da wo der slash command erzeugt wird (bot.slash_command
Mach das Bot. Mal weg
daran liegt das nd, der error ist, dass du Tabs und Leerzeichen gemischt hast
Codest du in pycharm oder vsc?
So?
Mach mal noch unter member.unban ein prinz unf eins über czx.respond
Okay und was soll es printen
Ahhh ok

