#Allgemeine Hilfe
1 messages · Page 47 of 1
ich habe code der soll nur ausgeführt werden wenn es der owner ist aber ich bekomme einen fehler wenn es nicht der owner ist und es wird nicht mein embed geschickt
Timo hat darüber ein video
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...
würde dir empfehlen das video von timo oben an zu schauen, er erklärt es super
wie nennt mann diesen fehler wenn man ihn im try except block einbauen will: in prepare
raise CheckFailure(
discord.errors.CheckFailure: The check functions for the command activity failed
Discord.User.id? Welche lib verwendest du?
pycord
Slash command?
ja aber weißt du wie der fehler heißt
Kannst du mir bitte den ganzen command schicken? Ich denke du hast da was in den params falsch 🙂
Warum baust du den check nicht einfach im command ein?
danke |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| _ _ _ _ _
https://cdn.discordapp.com/emojis/1069324604436398110.gif?size=64&quality=lossless
Kein problem 🙂
Kann wee Designen
Ich kann in Paint ein Emoji malen :D
Ok
Ich meine ein Discord Banner für mein Cousin der ist auf dem server
Wenn ihm ein Smiley als Banner reicht :D
Meine Smileys sind schön
Zeig Mal ein Bild
xD
Hmmmmm
Dazu sage ich nix
Hat wer die Discord Font?
Thanks
Wie kann ich die Activity auf dnd setzten beim bot
Hi, damit discord.abc.GuildChannel kann ja bei slash_command channel asuwählen aber da ist ja alles dabei kate voice und text channel kann man da noch irgentwie sagen nur voice oder text oder kates?
joa
Wo lernt man denn sowas schönes? 😂
Baumschule
Muss ich mal nen crashkurs belegen 😂
Ja kannst die jeweiligen Channel Types als Union angeben.
Beispiel von py-cord
from typing import Union
@bot.slash_command(name="channel")
@option(
"channel",
Union[discord.TextChannel, discord.VoiceChannel],
# You can specify allowed channel types by passing a union of them like this.
description="Select a channel",
)
async def select_channel(
ctx: discord.ApplicationContext,
channel: Union[discord.TextChannel, discord.VoiceChannel],
):
await ctx.respond(f"Hi! You selected {channel.mention} channel.")```
muss ich da was exrtra importne
okay dnaje
Wie kann ich ehrausfinde, wie viele boost ein user genutzt hat also bei einem server
@commands.command()
async def boost_count(self, ctx, member: discord.Member):
boost_count = member.premium_subscription_count
await ctx.send(f"{member.name} hat {boost_count} Boosts für den Server verwendet.")
@thick haven
Ohne cog
@bot.command()
async def boost_count(ctx, member: discord.Member):
boost_count = member.premium_subscription_count
await ctx.send(f"{member.name} hat {boost_count} Boosts für den Server verwendet.")
Ja, das was da steht
Ist aber keine externe lib sondern in Python integriert
Hey, ich will so ein Voice Support bot machen habe aber nun das problem das mein bot nur 1 voicekanal gleichzeitig beitreten kann? weis wer wie man das umgeht?
gar nicht, der bot kann pro server nur in einem voice channel sein
CustomBot
wie hat es dann rhytm gemacht?
mit mehreren bots nehme ich an
nein
Der bot Joint auch nur einem Channel?
nein, also ja aber auf mehrere server
Ja, auf jedem Server nur 1 Channel
ja
weißt du wie das geht?
Ja normal joinen halt
mach einer hier mit was fivem ?
Kommt drauf an, GTA Maps modellieren für FiveM hab ich schonmal gemacht, genauso wie Scripts mit Lua geschrieben
Aber was genau meinst du ?
Scripts schreiben und so
code:
async def callback(self, interaction):
now = datetime.now()
timestamp = now.strftime("%A, %d. %B %Y %H:%M")
abmelde_channel_id = 1112780297138876426
channel_send = discord.Embed(
title=f"Abmeldung - {timestamp}",
description=f"**USER:** {interaction.user.mention}\n"
f"\n**GRUND:** {self.children[0].value}\n"
f"\n"
f"**Für was ist die Abmeldung:** {self.children[2].value}\n"
)
await abmelde_channel_id.send_message(embed=channel_send)
fehlercode:
Ignoring exception in modal <cogs.ab.AbmeldeView object at 0x000001D7A4BF1A10>:
Traceback (most recent call last):
File "C:\Users\melvi\AppData\Local\Programs\Python\Python311\Lib\site-packages\discord\ui\modal.py", line 341, in dispatch
await value.callback(interaction)
File "C:\Users\melvi\PycharmProjects\frakbotprp\cogs\ab.py", line 65, in callback
await abmelde_channel_id.send(embed=channel_send_embed)
^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'int' object has no attribute 'send'
Joa, so das Grundlegende beherrsche ich noch
abmelde_channel_id ist eine Id, und kein Channel
ok habe jetzt geändert aber es geht immer noch nicht
Ignoring exception in modal <cogs.ab.AbmeldeView object at 0x00000246587B86D0>:
Traceback (most recent call last):
File "C:\Users\melvi\AppData\Local\Programs\Python\Python311\Lib\site-packages\discord\ui\modal.py", line 341, in dispatch
await value.callback(interaction)
File "C:\Users\melvi\PycharmProjects\frakbotprp\cogs\ab.py", line 66, in callback
await log_channel.send(embed=channel_send)
^^^^^^^^^^^^^^^^
AttributeError: 'NoneType' object has no attribute 'send'
log_channel = interaction.client.get_channel(123456789012345678)
channel_send = discord.Embed(
title=f"Abmeldung - {timestamp}",
description=f"**USER:** {interaction.user.mention}\n"
f"\n**GRUND:** {self.children[0].value}\n"
f"\n"
f"**Für was ist die Abmeldung:** {self.children[2].value}\n"
)
await log_channel.send(embed=channel_send)
Die id ist nicht richtig
Sieht auch nicht aus, wie eine gültige Id, i mean 1234567890 und dann nochmal 12345678.. hm
für fivem
Für dich?
Ne lass mal
💀

Jetzt Nachricht löschen weil gemerkt das es peinlich geworden ist
@solid ingot 4/4? :D
?
basic
Basic?
4/4?
Ich mein ob du den call um 1 user erhöhen könntest
achsoo bin nicht channel owner, aber dieser kanal ist nur für coding fragen
also ich meine diesen textkanal hier
Kannst es auch nd 🤭
Ernsthaft 😭
Deine Aussage ist nicht ernst zu nehmen 😆
Weiß jmd ob es für Interactions auch sowas wie ctx.defer() gibt? Also das der Bot mehr Zeit zum üverlegen hat?
interaction.defer() glaube
Ja, das ist ja extra für interactions
Ok danke
Stimmt nicht so tief Rüdiger
Nicht so tief rüdiger nicht so tieeef
Nicht so tief
@commands.Cog.listener()
async def on_audit_log_entry(self, entry: discord.AuditLogEntry) -> None:
if (await self.db.antinuke_get(guild_id=entry.guild.id)) == None:
return
if (await self.db.antinuke_get(guild_id=entry.guild.id))[1] == 0:
return
if (await self.db.whitelist_get(guild_id=entry.guild.id)) == None:
return
antinuke_data = await self.db.antinuke_get(entry.guild.id)
if antinuke_data is None:
limit_role_create = antinuke_data[3]
limit_channel_create = antinuke_data[2]
limit_channel_delete = antinuke_data[4]
limit_role_delete = antinuke_data[5]
if entry.action == discord.AuditLogAction.role_create:
if limit_role_create is not None:
if len(entry.guild.roles) > limit_role_create:
await self.db.antinuke_extra_add(
guild_id=entry.guild.id, user_id=entry.user.id
)
elif entry.action == discord.AuditLogAction.channel_create:
if limit_channel_create is not None:
if len(entry.guild.channels) > limit_channel_create:
await self.db.antinuke_extra_add(
guild_id=entry.guild.id, user_id=entry.user.id
)
elif entry.action == discord.AuditLogAction.channel_delete:
if limit_channel_delete is not None:
if len(entry.guild.channels) < limit_channel_delete:
await self.db.antinuke_extra_add(
guild_id=entry.guild.id, user_id=entry.user.id
)
elif entry.action == discord.AuditLogAction.role_delete:
if limit_role_delete is not None:
if len(entry.guild.roles) < limit_role_delete:
await self.db.antinuke_extra_add(
guild_id=entry.guild.id, user_id=entry.user.id
)
wie kann ich sagen if (await self.db.whitelist_get(guild_id=entry.guild.id)) == None:
return
das das alles abrechen soll
wie meinst du das? Und ich denke das () bei der if abfrage kannst du weg lassen
was funktioniert denn nicht? ich empfehle dir erst den wert aus der db zu holen, und dann mit der variable die if bedingungen zu machen. dann kannst du deinen eigenen code besser verstehen
außerdem musst du dann nicht dieselbe DB anfrage 3 mal machen
if (await self.db.whitelist_get(guild_id=entry.guild.id)) == None:
return
ich will nach dieser if bedigungen das der das abricht
ne ist nicht das selber
doch
ich glaube dömö weiß es besser? 
beim ersten fragt der ob das was überhaupt in der db ist beim 2 guckt ob es aktive ist beim dritten will ich gucken ob der user es aktive hat und dann soll das alles abrechen
Ich bin selber nicht der profi sorry 
ja, trotzdem machst du dabei 3 mal dieselbe datenbank abfrage

wenn du meinst 😄
Ich möchte dir helfen Ryzm
aber wie breche diesen ganzen code ab nach der if bedinung?

aber danach macht aber weiter oder 
Ich strenge mich an
du machst halt echt 3x die gleiche db abfrage, Hier: if (await self.db.antinuke_get(guild_id=entry.guild.id)) == None:, if (await self.db.antinuke_get(guild_id=entry.guild.id))[1] == 0: und antinuke_data = await self.db.antinuke_get(entry.guild.id)

einfach einmal am anfang und dann kannst du es ja einfach als variable nutzen

könnte ich machen
aber bin zu faul
Faul 
Deine Sache, mir egal
ok
Meine Sache 
void initialize() {
// Initialisierungscode
displayMessage("Willkommen beim Arcade1337!");
insertCoin();
}
void insertCoin() {
displayMessage("Bitte Münze einwerfen.");
// Code zum Einwerfen der Münze
boolean coinInserted = false;
int coinCount = 0;
while (!coinInserted) {
// Überprüfe, ob eine Münze eingeworfen wurde
// ...
if (coinInserted) {
coinCount++;
displayMessage("Münze eingeworfen (" + coinCount + "/1)");
} else {
// Bitte den Spieler, eine Münze einzulegen
// ...
}
// Überprüfe, ob genügend Münzen eingeworfen wurden
if (coinCount >= 1) {
playGame();
break;
}
}
}
void playGame() {
displayMessage("Spiel gestartet. Viel Spaß!");
// Code für das eigentliche Spiel
boolean gameRunning = true;
while (gameRunning) {
// Spiele das Spiel und aktualisiere den Spielzustand
// ...
// Überprüfe, ob das Spiel beendet ist
if (/* Bedingung, um das Spiel zu beenden */) {
gameRunning = false;
displayMessage("Spiel beendet.");
void checkCode(String userInput) {
String codeToCheck = "";
for (int i = 0; i < userInput.length(); i++) {
char c = userInput.charAt(i);
if (Character.isDigit(c)) {
codeToCheck += code[Character.getNumericValue(c)];
} else if (Character.isLetter(c)) {
codeToCheck += alphabet[(int) c - 97];
} else {
codeToCheck += specialChars[(int) c];
}
}
if (codeToCheck.contains("open_drawer")) {
displayMessage("Code korrekt!");
// Schublade öffnet sich.
// ...
} else {
displayMessage("Falscher Code. Bitte erneut versuchen.");
}
}
}
}
}
weiß jenad wie der code ist der beschrieben wird?
Das sieht mir nicht so nach HTML aus?
stimmmt bin dumm
aber weiß jemad was der code ist?
Du meinst was der Code macht?
Also die Sprache müsste Kotlin sein wenn ich mich nicht irre
die pin die man braucht für den code
hmm
von wo hast du den?
ich soll irgendein code herausfinden bei einer art quiz aus diesem code
Warte ich schau mal aber idk ob ich es schaffe
Gibt es noch mehr Code dazu?
könntest du nicht einfach open_drawer als code benutzen?
Müsste klappen
Ignoring exception in command boost_count:
Traceback (most recent call last):
File "/home/container/.local/lib/python3.10/site-packages/discord/commands/core.py", line 124, in wrapped
ret = await coro(arg)
File "/home/container/.local/lib/python3.10/site-packages/discord/commands/core.py", line 978, in _invoke
await self.callback(self.cog, ctx, **kwargs)
File "/home/container/cogs/commands.py", line 366, in boost_count
boost_count = member.premium_subscription_count
AttributeError: 'Member' object has no attribute 'premium_subscription_count'
The above exception was the direct cause of the following exception:
member.premium_subscription_count gibt es nicht, das geht nur bei guild
also kann ich ned ehrausfinden wie viele boost ein user gegeben hat
nicht wirklich, höchstens indem du die boost nachrichten trackst
aber die kann ein server auch ausschalten
hm okay das doof gut danke
hmm
Man kann auch nd checken ob der einen boost wieder removed hat ig
einf nach rolle mensch timooooo
aber man hat dieselbe rolle egal wie oft man geboostet hat
das weiß ich
Einer hat mal hier so ein link gesendet mit discord farben? hat den noch wer
meinst du den?
https://rebane2001.com/discord-colored-text-generator/
Rebane's Discord Colored Text Generator
danke
Darf man ab 17 ne vape kaufen weil man da doch halb volljährig ist?
Ich denke nicht das dieser Kanal dafür gedacht ist
OK darf man ab 17 ne kaufen
Vapes mit Nikotin erst ab 18, auch Vapes ohne Nikotin werden meist erst ab 18 verkauft
17 und 18 macht kein Unterschied
doch
Kurze frage, wenn ich meinen command ausführe funktioniert er nicht mehr also das 1 mal funktioniert er noch aber beim 2 mal wird er mir gar nicht mehr angezeigt?
stelle sicher dass dein bot nicht mehrmals läuft
ohh
Klar???
Wenn du damit nicht einverstanden bist, dann hast du halt pech
also macht 8 und 18 auch kein unterschied?
danke hat funktioniert
stimmt ist so oder so dumm

Klar hä 😂
weis wer warum der nichts macht? ```py
import discord
from discord.ext import commands
class ChannelManagementCog(commands.Cog):
def init(self, bot):
self.bot = bot
@commands.Cog.listener()
async def on_voice_state_update(self, member, before, after):
target_channel_id = 1144010832125112431
if after.channel and after.channel.id == target_channel_id:
new_channel = await member.guild.create_voice_channel(f'kanal-test')
await new_channel.set_permissions(member, connect=True, move_members=True, manage_channels=True)
await member.move_to(new_channel)
def setup(bot):
bot.add_cog(ChannelManagementCog(bot))
bzw wenn ich in den kanal gehe passiert nichts
habs schon trz danke
xD fühle des so
wos
Mach das after.channel and weg
xDDDD
Hat wer zufällig ein command mit dem ich alle emojis auf meinem server löschen kann
Hab jz keinen code aber mach einfach ne for schleife über alle guild emojis und fürhe die delete async function aus
top danke
Falls es probleme gibt kannst ja nachfragen
Für sowas ist der Kanal nicht da
Heul es hat sich kein teamler beschwert
Also ich zähle das als Hilfe
Und für dumme Kommentare ist der Channel auch nicht
Nikos schreibt bin gespannt 😂
Och ne hab keinen bock auf Kindergarten esse jz was
Guten Appetit
Ah top guten Hunger
@opal basin Fragen nach fertigen Codes ist hier nicht erlaubt, bitte reagiere freundlicher wenn dich jemand darauf hinweist
Hmm joa das nächste Mal vielleicht
Kann mich noch vor 3monaten oder so erinnern da hab ich auch gefragt niemand hat es gejuckt
Jetzt weißt du es ja
@opal basin
import discord
from discord.ext import commands
from discord.commands import slash_command
class EmojiCog(commands.Cog):
def __init__(self, bot):
self.bot = bot
@slash_command()
async def delete_emojis(self, ctx):
guild = ctx.guild
emojis = await guild.fetch_emojis()
for emoji in emojis:
await emoji.delete()
await ctx.send("Alle Emojis wurden gelöscht!")
def setup(bot):
bot.add_cog(EmojiCog(bot))
danke dir hab schon 🙂
gibt doch noch nette leute
Ja aber Invalid Timo nicht 👀
ctx.respond lol
warum 👀
stimmt
😡
Code:
intents = discord.Intents.default()
intents.message_content = True
intents.members = True
bot = discord.Bot(intents=intents)
@bot.command(description="Sends the bot's latency.")
async def ping(ctx):
await ctx.respond(f"Pong! Latency is {bot.latency}")
bot.run("TOKEN")
Error:
Traceback (most recent call last):
File "C:\Users\user\PycharmProjects\test\main.py", line 7, in <module>
bot = discord.Bot(intents=intents)
^^^^^^^^^^^
AttributeError: module 'discord' has no attribute 'Bot'
Und ich habe die neuste Pycordversion installiert
mach from discord.ext import commands
Macht nichts
dieses .Bot bleibt immernoch Gelb untersctrichen
und als Fehler in der Konsole ausgegeben
import discord
from discord.ext import commands
intents = discord.Intents.default()
intents.message_content = True
intents.members = True
bot = commands.Bot(intents=intents, command_prefix="!")
@bot.command(description="Sends the bot's latency.")
async def ping(ctx):
await ctx.send(f"Pong! Latency is {bot.latency}")
bot.run("TOKEN")
Es wird mir leider immernoch nicht, als / Command angezeigt
Du machst es ja nicht als slash command?
@bot.command macht preifx commans, und da du es so geschickt hast, bin ich davon ausgegangen das du Prefix Commands haben willst
Ja dann mach es halt
mache kommt das
Traceback (most recent call last):
File "C:\Users\fabian2\PycharmProjects\ballas\main.py", line 10, in <module>
@bot.slash_command(description="Sends the bot's latency.")
^^^^^^^^^^^^^^^^^
AttributeError: 'Bot' object has no attribute 'slash_command'. Did you mean: 'add_command'?
Kannst du mir funkionierrenden Code für einen Slash COmmand geben
da der nach meinem Wissenstand nicht funkioniert
Soll ich für dich vielleicht den ganzen Bot Code schreiben??
Nein
Es gibt so nh tolle suchmaschine, schau mal hier
Nein, aber mir erklären wie der Slashcommand funktioniert
Da meine Version nicht mehr klappt
Weiß ich selber nd in py-cord
Bruh
Ok
Das ist nicht mehr aktuell
@jaunty jasper klick auf vorschau
Also hatte nicht funktioniert
Weil bei mir funktioniert dieses bot.slash_command net
import discord
from discord.commands import Option
intents = discord.Intents.default()
bot = discord.Bot(
intents=intents
)
@bot.event
async def on_ready():
print(f"{bot.user} ist online")
@bot.slash_command()
async def test(ctx):
await ctx.respond(f"TEST")
bot.run("")
Versuchs so
doch das ist noch aktuell, wenn es bei dir nicht klappt hast du etwas falsch gemacht, schick uns am besten mal den error den du bekommst
Okay, also
- Neues Projekt erstellt
- pip install pycord
- Code eingefügt und ausgeführt
File "C:\Users\user\PycharmProjects\testing\main.py", line 2, in <module>
from discord.commands import Option
File "C:\Users\user\venv\Lib\site-packages\discord\commands\__init__.py", line 27, in <module>
from .core import *
File "C:\Users\user\venv\Lib\site-packages\discord\commands\core.py", line 49, in <module>
from ..enums import MessageType, SlashCommandOptionType, try_enum
ImportError: cannot import name 'SlashCommandOptionType' from 'discord.enums' (C:\Users\user\venv\Lib\site-packages\discord\enums.py)```
Error in der Konsole gesehen
das ist sehr wahrscheinlich ein installationsfehler, weil du evtl noch discord.py installiert hast. eine schritt für schritt anleitung um den error zu beheben findest du in #🔍・pycord-help
Danke, habe vermutlich wie du/sie es gesagt haben, noch discord.py installiert gehabt
pycord auch deinstallieren
rentnerleben 😦
hahaha
brauchst py-cord
ich habe ein view class und in der view class habe ich mehrere buttons mit @discord.ui.button gemacht. aber es werden nur 3 von 6 oder 7 oder so angezeigt. weiß jemand warum das so ist? fehler gibt es keinen code kann ich gleich schicken.
hast du die callback methoden auch unterschiedlich genannt?
Und verschiedene custom ids
ah mist habe am ende nur copy pastet und das vergessen danke
xD
Wie frage ich ab ob mein Bot eine bestimmte Permission hat?
(in einer if abfrage)
serverweit oder für einen channel?
Serverweit
discord.Member.guild_permissions
discord.ext.commands.has_guild_permissions
discord.ext.commands.bot_has_guild_permissions
ich denke mit guild.me.guild_permissions
guild.me ist der bot aber nicht als user sondern als member
also if guild.me.guild_permissions.kick_members
damit schau ich ob der bot member kicken kann also von denn berecchtigungen
Moin hat timo ein video zu random gif generator?
wenn ja könnte es einer hier verlinken oder mal den command benutzen und es anzeigen lassen
Mein Discord Server
► https://discord.gg/zfvbjTEzv6
Links aus dem Video
Tenor API ► https://developers.google.com/tenor/guides/quickstart
Postman ► https://www.postman.com/
Code auf Github ► https://github.com/tibue99/tutorial-bot
Discord Developer Portal ► https://discord.com/developers/applications
Pycord
Docs ► https://docs.pycord.dev/
Gui...
Danke Timo
Ich hatte dir ja schon die Lösung gegeben, ich gehe erstmal davon aus das User basics in python beherrschen und wissen was for-schleifen sind etc
Also erwarten das da fertiger code kommt musst du nicht bei sowas
- Event: on_ready
Traceback (most recent call last):
File "/data/data/com.termux/files/usr/lib/python3.11/site-packages/discord/client.py", line 399, in _run_event
await coro(*args, **kwargs)
File "/storage/emulated/0/Timo/Dev/Discord/Bot/Falci/cogs/Events/OnStatus.py", line 26, in on_ready
await self.bot.loop.create_task(self.on_status())
File "/storage/emulated/0/Timo/Dev/Discord/Bot/Falci/cogs/Events/OnStatus.py", line 19, in on_status
await self.bot.change_presence(status=discord.Status.dnd, activity=discord.CustomActivity(name=f"Cogs {len(self.bot.cogs)}"))
File "/data/data/com.termux/files/usr/lib/python3.11/site-packages/discord/client.py", line 1383, in change_presence
await self.ws.change_presence(activity=activity, status=status_str)
File "/data/data/com.termux/files/usr/lib/python3.11/site-packages/discord/gateway.py", line 682, in change_presence
await self.send(sent)
File "/data/data/com.termux/files/usr/lib/python3.11/site-packages/discord/gateway.py", line 642, in send
await self.socket.send_str(data)
File "/data/data/com.termux/files/usr/lib/python3.11/site-packages/aiohttp/client_ws.py", line 151, in send_str
await self._writer.send(data, binary=False, compress=compress)
File "/data/data/com.termux/files/usr/lib/python3.11/site-packages/aiohttp/http_websocket.py", line 690, in send
await self._send_frame(message, WSMsgType.TEXT, compress)
File "/data/data/com.termux/files/usr/lib/python3.11/site-packages/aiohttp/http_websocket.py", line 601, in _send_frame
raise ConnectionResetError("Cannot write to closing transport")
ConnectionResetError: Cannot write to closing transport
code?
Ja du hast mir geholfen ist ja alles gut danke nur die andern haben direkt Rum gemeckert
Kommt gleich
import discord
import asyncio
from discord.ext import commands
class OnStatus(commands.Cog):
def __init__(self, bot):
self.bot = bot
self.dev = ".InvalidTimo"
async def on_status(self):
while True:
await self.bot.change_presence(status=discord.Status.dnd, activity=discord.CustomActivity(name=f"{len(self.bot.guilds)} Servern"))
await asyncio.sleep(10)
await self.bot.change_presence(status=discord.Status.dnd, activity=discord.CustomActivity(name=f"Developer: {self.dev}"))
await asyncio.sleep(10)
await self.bot.change_presence(status=discord.Status.dnd, activity=discord.CustomActivity(name=f"Made in: ezcord/pycord"))
await asyncio.sleep(10)
await self.bot.change_presence(status=discord.Status.dnd, activity=discord.CustomActivity(name=f"Cogs {len(self.bot.cogs)}"))
await asyncio.sleep(10)
await self.bot.change_presence(status=discord.Status.dnd, activity=discord.CustomActivity(name=f"{len(self.bot.commands)} Commands"))
await asyncio.sleep(10)
@commands.Cog.listener()
async def on_ready(self):
await self.bot.loop.create_task(self.on_status())
def setup(bot):
bot.add_cog(OnStatus(bot))
mach das am besten mit einem task loop
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....
Ok
Muss ich das asyncio raus nehmen
Moin, wann benutze ich @bot.event und wann @commands.Cog.listener ?
Das erste in der Main File, das zweite in einer cog Klasse
Wie schon gesagt, und vom Namen her zu vermuten ist:
commands.Cog.listener
Stimmt, danke
Jungs ich finde selbst den fehler nicht, könnte einer mir helfen
from discord.commands import slash_command, Option
from discord.ext import commands
class Welcome(commands.Cog):
def __int__(self, bot):
self.bot = bot
@commands.Cog.listener()
async def on_member_join(self,
member
):
embed = discord.Embed(
title="Ein neuer Biker!",
description=f"Willkommen {member.mention} auf BikersLife | DE, wir freuen uns das du da bist! Schau gerne in",
color=discord.Color.blue()
)
embed.set_footer("BikersLife Community Bot")
channel = await self.bot.fetch_channel(1141257045413220392, 1137078889244545034)
await channel.send(embed=embed)
def setup(bot):
bot.add_cog(Welcome(bot))```
was geht denn nicht, bzw was ist der error?
Der bot startet ganz normal, nur es schickt die Willkommens nachricht nicht. Ich habe die einrückung etc. nochmal gecheckt, jedoch sendet er die nachricht nicht
member intent aktiviert?
ging doch letzes mal 😐
genau jetzt gehts irgendwie nicht mehr
obwohl ich sowas schon 2-3 mal gecodet habe
Hast du die Klasse in deiner Main.py eingetragen? Damit die Cogs geladen werden ?
was gibts
#🔰・old-help-rules
Irgendwie verbindet es sich nicht
Mit dem panel
Auf handy
Keine Ahnung warum es nicht geht
ist keine valide ip adress
Warum
sftp://node.keksbot.xyz
ist keine ip
die von pterodactyl
Unter der console wo Adresse steht
ja die soweit ich weiß
Ok
for filename in os.listdir("cogs"):
if filename.endswith(".py"):
bot.load_extension(f"cogs.{filename[:-3]}")
load_dotenv()
bot.run(os.getenv("TOKEN"))```
Ich habe nur das bezüglich den Cogs
schick mal deinen code (was welcome angeht)
from discord.commands import slash_command, Option
from discord.ext import commands
class Welcome(commands.Cog):
def __int__(self, bot):
self.bot = bot
@commands.Cog.listener()
async def on_member_join(self,
member
):
embed = discord.Embed(
title="Ein neuer Biker!",
description=f"Willkommen {member.mention} auf BikersLife | DE, wir freuen uns das du da bist! Schau gerne in",
color=discord.Color.blue()
)
embed.set_footer("BikersLife Community Bot")
channel = await self.bot.fetch_channel(1141257045413220392, 1137078889244545034)
await channel.send(embed=embed)
def setup(bot):
bot.add_cog(Welcome(bot))```
Printe mal die Channel
er hatte den member intent nicht an
Wie denn?
Ah xD ok. Hattest du ja auch vorhin gefragt
Ne geht immernoch nicht, member intent hab ich jetzt im code hinzugefügt geht immernoch nicht
Ne hast du es im Discord Developer Portal aktiviert?
Ja
zeig mal wie du den intent im code hinzugefügt hast
okay die intents sind jetzt schonmal richtig, jetzt musst du nur noch init richtig schreiben
hier fehlt ein i
def __int__(self, bot):
uyyy danke
Funktioniert es?
Habs endlich geschafft... da waren mehrere fehler haha
Was ist das den fürn Fehler?
'NoneType' object has no attribute 'sequence'
aiohttp.client_exceptions.ClientOSError: [WinError 64] Der angegebene Netzwerkname ist nicht mehr verfügbar
During handling of the above exception, another exception occurred:
File "C:\Users", line 35, in main
bot.run(bot.config["token"])
File "C:\Users", line 41, in <module>
main()
AttributeError: 'NoneType' object has no attribute 'sequence'
noch nie bekommen
Code?
am besten die Datei, wo dein Fehler auftritt ._.
hä habe token geresetet aufeinmal geht, aber trotzdem danke das du helfen wolltest.
Hey Leute ich krieg bei meinen Buttons diesen Error:
discord.errors.ApplicationCommandInvokeError: Application Command raised an exception: HTTPException: 400 Bad Request (error code: 50035): Invalid Form Body
In data.components.0.components.0.emoji.name: Invalid emoji
Habe beim Emoji Parameter "🙋♂️" benutzt. Ist aber nur bei manchen EMojis. z.B., bei ⛔ funktioniert alles xD
Hier der Code:
class WhiteListButton(discord.ui.View):
def __init__(self):
super().__init__(timeout=None)
@discord.ui.button(label="Join Queue", style=discord.ButtonStyle.blurple, emoji="�", custom_id="joinq")
async def button_callback(self, button, interaction):
Hab eig alles richtig gemacht, also \Emoji und dann schicken und kopieren und einfügen
ja richtig du musst schauen welche discord unterstüzt
Ist auch bei dem 😳 Emoji so also wird auch so geschrieben mit der Raute und dem Fragezeichen
kopierst du des emoji aus discord?
ALso das was TImo benutzt hatte. Bei dem muss ich noch gucken, ob da auch der Fehler kommt
Yes wie gesagt mit \Emoji
\🙋♂️
mach das so rein: �
also mit \ davor dann
Also emoji="\ �" ?
Hatte das ja so schon im code mit dem Fragezeichen
Den siehst du in VSC ?
Meinst du es macht einen UNterschied, dass ich VSC im Browser benutze. Eben um mit Mate an einem Projekt zu coden
sollte es nicht
Nutz halt Live Share, dann musst du es nd im browser machen ._.
Wird halt auch schon wenn ich es kopiere als � gepastet
Ah maybe weil ich Dc Web benutze?
\🙋♂️
Geht
ABer wenn ich wieder paste ist es wieder �
Ich lad mir kurz Dc runter
Nop hilft nichts xD'
Ich raff es nicht
ja deswegen immer custom emojis benutzen xD
wie kann ich das ctx.author an das on_ready event übergeben
Wie sendet man Nachrichten in Threads 
du speicherst die user in einer Datenbank und lädst sie im on ready event
genau wie im normalen Channels im Grunde mit .send
und was kann ich da nehmen als WHERE das ich auch denn passenden User hab
ich würd's ohne Herr machen, du musst ja alle ein Mal durchgehen
also je nachdem wie du das system gemacht hast
wieso wird nicht true geprintet die sind beie 10 in der if abfrage
printe dir doch einfach zahlen und eingabe, dann siehst du ja wieso es nicht true ist
hab ich doch
ist beides 10
vielleicht ist das eine ja ein string und das andere ein integer
Bräuchte mal hilfe bei den fehlercode: Traceback (most recent call last): File "f:\trapster-setupper\self-writer.py", line 46, in <module> code = file.read() ^^^^^^^^^^^ File "C:\Program Files\Python311\Lib\encodings\cp1252.py", line 23, in decode return codecs.charmap_decode(input,self.errors,decoding_table)[0] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ UnicodeDecodeError: 'charmap' codec can't decode byte 0x81 in position 870: character maps to <undefined>
probier mal if int(zahl) == int(eingabe):
will das in einer anderen datei etwas beim code umgeändert wird
zeig mal von “file” wie du das machst
mit dem file.read
import requests
import subprocess
url = input("Enter webhook URL: ")
with open("ttt.py", "r") as file:
code = file.read()
code = code.replace("PLACEHOLDER_WEBHOOK", url)
with open("ttt.py", "w") as file:
file.write(code)
subprocess.call(["pyinstaller", "--onefile", "ttt.py"])
ip = requests.get('https://api.ipify.org').text
bei der ttt.py
webhook_url = "PLACEHOLDER_WEBHOOK"```
Habe ich es so gemacht
mach bei dem with blah blah das r zu einem w
File "f:\trapster-setupper\self-writer.py", line 46, in <module>
code = file.read()
^^^^^^^^^^^
io.UnsupportedOperation: not readable``` neuer fehlercode
not readable
is die ttt.py in einer datei?
Das die Datei geladen wurde oder das ein Command ausgeführt wurde
nein
Zeig mal, wie du deine cogs lädst
Einfach nach bot.load_extension ein Print hinzufügen, wo dann einfach steht das du es geladen hast
ich mein in einem ordner
hmm
Dann keine ahnung, du könntest auch eine json nehmen, da würde ich es wissen
import requests
import subprocess
url = input("Enter webhook URL: ")
with open("ttt.py", "r") as file:
code = file.read()
code = code.replace("PLACEHOLDER_WEBHOOK", url)
with open("ttt.py", "w") as file:
file.write(code)
subprocess.call(["pyinstaller", "--onefile", "ttt.py"])
ip = requests.get('https://api.ipify.org').text
Versuchs so
danke
teste gleich
danke geht
👍🏽
Bei mir findet der bot eine guild nicht. Hat jemand eine idee was ich falsch mache? Ich will das in einer variable speichern abeer die ist die ganze zeit leer. um die guild zu kriegen nehme ich einfach guild = bot.get_guild(id)
Richtige Id?
Schick mal code
ja
async def quests_done(user_id):
guild = bot.get_guild(1100400326240124978)
async with aiosqlite.connect('quests.db') as db:
async with db.execute(
"SELECT user_id, easy_quests, hard_quests, ultimate_quests FROM general_quests WHERE user_id = ?", (user_id,)) as cursor:
result = await cursor.fetchone()
print(result[0])
print(result[1])
print(result[2])
print(result[3])
if '250 Messages' and '2h Voice' and 'Feedback' and '25 Gifs' in str(result[1]):
print('1')
member = await guild.get_member(user_id)
role = await guild.get_role(1144629352261242941)
await member.add_roles(role)
return True
elif '450 Messages' and '6h Voice' and '15 Sticker' and 'Werbung' in str(result[2]):
print('2')
member = await guild.get_member(user_id)
print('2,1')
role = await guild.get_role(1144629610647138436)
print('2,2')
await member.add_roles(role)
print('2,3')
return True
elif '750 Messages' and '12h Voice' and '40 Emojis' and '10 Images' and '30 Zahlen' in str(result[3]):
print('3')
member = await guild.get_member(user_id)
role = await guild.get_role(1144629642444157119)
await member.add_roles(role)
return True
else:
print('4')
return False
ich hab da ein paar print sachen drin um zu gucken was der fehoer ist
printe mal "guild"
Wenns None ist, ist die ID vermutlich falsch
Moin ich habe ein kleines problem beim printen und bei meinem Bot. Undzwar ich habe mir das video von timo bezüglich der APIs geschaut und ich wollte auch die API anfragen jedoch bekomme ich im terminal nur Process finished with exit code 0 und nicht die informationen der API.
Wo könnte der fehler liegen?
startest du auch deine Main Datei?
Wie meinst du?
zeig Mal den Code den du startest
Also ich drücke immer auf den run knopf
yooo nvm hast recht
habs jetzt auch bemerkt, danke
Jetzt führt er den Command nicht aus
"Anwendung reagiert nicht"
from discord.commands import slash_command, Option
from discord.ext import commands
import os
import requests
from pprint import pprint
import random
class Punch(commands.Cog):
def __init__(self, bot):
self.bot = bot
@slash_command(name="punch", description="Schlage einen User!")
async def punch(self,
ctx,
member: Option(discord.Member)
):
key = os.getenv("API_KEY")
result = requests.get("https://tenor.googleapis.com/v2/search?q=motorcycle&key={key}&limit=10")
data = result.json()
pprint(data)
number = random.randint(0, 9)
url = data["results"][number]["media_formats"]["gif"]["url"]
embed = discord.Embed(
title="Wruuum Wruuuuuum",
color=discord.Color.blue()
)
embed.set_image(url=url)
await ctx.respond(embed=embed)
def setup(bot):
bot.add_cog(Punch(bot))
Das ist mein Code
- Command: /docs
- Guild: Test server -
1092452726484508734 - User: .invalidtimo (.InvalidTimo✓) -
1078242409495932969
Traceback (most recent call last):
File "/data/data/com.termux/files/usr/lib/python3.11/site-packages/discord/commands/core.py", line 131, in wrapped
ret = await coro(arg)
^^^^^^^^^^^^^^^
File "/data/data/com.termux/files/usr/lib/python3.11/site-packages/discord/commands/core.py", line 1000, in _invoke
await self.callback(self.cog, ctx, **kwargs)
File "/storage/emulated/0/Timo/Dev/Discord/Bot/Falci/cogs/Owner/falci.py", line 56, in docs
[f"{index}. {value}" for index, value in list(self.targets.keys())]
File "/storage/emulated/0/Timo/Dev/Discord/Bot/Falci/cogs/Owner/falci.py", line 56, in <listcomp>
[f"{index}. {value}" for index, value in list(self.targets.keys())]
^^^^^^^^^^^^
ValueError: too many values to unpack (expected 2)
Wenn mir einer helfen könnte wäre ich dankbar
discord.errors.ApplicationCommandInvokeError: Application Command raised an exception: KeyError: 'results'
import discord
from discord.commands import slash_command, Option
from discord.ext import commands
import os
import requests
from pprint import pprint
import random
class Punch(commands.Cog):
def __init__(self, bot):
self.bot = bot
@slash_command(name="punch", description="Schlage einen User!")
async def punch(self,
ctx,
member: Option(discord.Member)
):
key = os.getenv("API_KEY")
results = requests.get("https://tenor.googleapis.com/v2/search?q=motorcycle&key={key}&limit=10")
data = result.json()
pprint(data)
number = random.randint(0, 9)
url = data["results"][number]["media_formats"]["gif"]["url"]
embed = discord.Embed(
title="Wruuum Wruuuuuum",
color=discord.Color.blue()
)
embed.set_image(url=url)
await ctx.respond(embed=embed)
def setup(bot):
bot.add_cog(Punch(bot))
Probiere Mal das
@jade sapphire
Geht's
Was hast du da denn geändert?
Ich habe das
result = requests.get
Zu
results = requests.get
Nope geht immernoch nicht
Ok
Mein Discord Server
► https://discord.gg/zfvbjTEzv6
Links aus diesem Video
Reddit ► https://www.reddit.com/prefs/apps/
KeksBot ► https://keksbot.xyz
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
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/in...
Dieses Video
Mein Discord Server
► https://discord.gg/zfvbjTEzv6
Links aus dem Video
Tenor API ► https://developers.google.com/tenor/guides/quickstart
Postman ► https://www.postman.com/
Code auf Github ► https://github.com/tibue99/tutorial-bot
Discord Developer Portal ► https://discord.com/developers/applications
Pycord
Docs ► https://docs.pycord.dev/
Gui...
benutze nicht die reddit api, sondern die tenor api. Auch wenn ich hab mit dem video gearbeitet als ich es gecodet habe
Hier
Ok
{'error': {'code': 400,
'details': [{'@type': 'type.googleapis.com/google.rpc.ErrorInfo',
'domain': 'googleapis.com',
'metadata': {'service': 'tenor.googleapis.com'},
'reason': 'API_KEY_INVALID'}],
'message': 'API key not valid. Please pass a valid API key.',
'status': 'INVALID_ARGUMENT'}}```
API Key not valid
Ok
Ich kann mal bei meinen bot schauen
@jade sapphire das ist mein Punch command
@slash_command(description="Schlage einen User")
async def punch(self, ctx, member: Option(discord.Member, "wem möchtest du schlagen?")):
user = member
key = os.getenv("tenor_api")
params = {
"q": "punch",
"key": key,
"limit": "10",
"client_key": "discord_bot",
"media_filter": "gif"
}
async with aiohttp.ClientSession() as cs:
async with cs.get("https://tenor.googleapis.com/v2/search", params=params) as r:
data = await r.json()
number = random.randint(0, 9)
url = data["results"][number]["media_formats"]["gif"]["url"]
embed=discord.Embed(
title=f"<@{ctx.author.id}> hat <@{user.id}> geschlagen!",
color=discord.Color.blue()
)
embed.set_image(url=url)
embed.set_footer(icon_url=self.bot.user.avatar.url)
await ctx.respond(embed=embed)
Du darfst den Benutzen
nö nö alles gut ich code alles lieber selber für meinen bot
OK wenn du willst kannst du den Benutzen weil er geht mein command

Ich habe noch
Imports
import aiohttp
import os
import json
import asyncpraw
Diese imports habe ich
discord.errors.ApplicationCommandInvokeError: Application Command raised an exception: KeyError: 'results'
Immernoch results fehler
Bei welchen Code
Bei dem da oben
Bei meinen
Ne bei meinem
Mache mal pip install requests
@jade sapphire
Nope geht immernoch nicht
Hmmm
'details': [{'@type': 'type.googleapis.com/google.rpc.ErrorInfo',
'domain': 'googleapis.com',
'metadata': {'service': 'tenor.googleapis.com'},
'reason': 'API_KEY_INVALID'}],
'message': 'API key not valid. Please pass a valid API key.',
'status': 'INVALID_ARGUMENT'}}
Ignoring exception in command punch:
Traceback (most recent call last):
File "C:\Users\yildi\PycharmProjects\BikersCommunity\venv\Lib\site-packages\discord\commands\core.py", line 124, in wrapped
ret = await coro(arg)
^^^^^^^^^^^^^^^
File "C:\Users\yildi\PycharmProjects\BikersCommunity\venv\Lib\site-packages\discord\commands\core.py", line 978, in _invoke
await self.callback(self.cog, ctx, **kwargs)
File "C:\Users\yildi\PycharmProjects\BikersCommunity\cogs\punch.py", line 27, in punch
url = data["results"][number]["media_formats"]["gif"]["url"]
~~~~^^^^^^^^^^^
KeyError: 'results'
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "C:\Users\yildi\PycharmProjects\BikersCommunity\venv\Lib\site-packages\discord\bot.py", line 1114, in invoke_application_command
await ctx.command.invoke(ctx)
File "C:\Users\yildi\PycharmProjects\BikersCommunity\venv\Lib\site-packages\discord\commands\core.py", line 375, in invoke
await injected(ctx)
File "C:\Users\yildi\PycharmProjects\BikersCommunity\venv\Lib\site-packages\discord\commands\core.py", line 132, in wrapped
raise ApplicationCommandInvokeError(exc) from exc
discord.errors.ApplicationCommandInvokeError: Application Command raised an exception: KeyError: 'results'```
lass dir data mal ausgeben, dann siehst du ja direkt wieso der fehler auftritt
Moin, was muss ich für pycord installieren? Bin auf Linux und hab keine ahnung wie das da geht haha
hast du nen Linux Server oder was?
ne nen raspberry
python3 -m pip install git+https://github.com/Pycord-Development/pycord
Pycord, a maintained fork of discord.py, is a python wrapper for the Discord API - GitHub - Pycord-Development/pycord: Pycord, a maintained fork of discord.py, is a python wrapper for the Discord API
Das ist für linux
linux ist ne komische sache
@fierce dove hat @cloud cedar gepingt.
Benutz das
python3 -m pip install git+https://github.com/Pycord-Development/pycord
Pycord, a maintained fork of discord.py, is a python wrapper for the Discord API - GitHub - Pycord-Development/pycord: Pycord, a maintained fork of discord.py, is a python wrapper for the Discord API
achso hast du schon, lies dir mal die fehlermeldung durch
Er muss eine andere API key nehmen weil seine Nicht geht
'details': [{'@type': 'type.googleapis.com/google.rpc.ErrorInfo',
'domain': 'googleapis.com',
'metadata': {'service': 'tenor.googleapis.com'},
'reason': 'API_KEY_INVALID'}],
'message': 'API key not valid. Please pass a valid API key.',
'status': 'INVALID_ARGUMENT'}}```
Dein API key geht nicht
Ja ich versuche jetzt mal was
|████████████████████████████████| 953 kB 1.0 MB/s
ERROR: Could not install packages due to an EnvironmentError: [Errno 28] No space left on device
Aber ich hab eigentlich noch genug platz mit ner 16gb karte.
Hatte das auch schon
python3 -m pip install -U py-cord
Musste dann die disk erweitern
Hab nen neuen API Key generated und es geht immernoch nicht
😐
Das steht doch das er kein Speicherplatz hat
Kann dir auch einen von mir geben
Ok
Yibbie, hat geklappt 🦃
Habe genügend
wahrscheinlich wird der API key nicht richtig aus der env datei geladen, prüf das mal
Schick Mal deine env
wie prüf ich es?
zb mit einem print
ja dann siehste mein token und so
man.. hab ich doch schon timo
Wie kann ich code copy pasten wenn ich von vscode zum remotedesktop will? bitte sagt nicht ich muss linux benutzen 😢
naja das ist einfach nur ein string den du printest, das bringt dir nix
print(API_KEY)
```@jade sapphire
ja hab es korriegiert
File "C:\Users\yildi\PycharmProjects\BikersCommunity\venv\Lib\site-packages\discord\bot.py", line 1114, in invoke_application_command
await ctx.command.invoke(ctx)
File "C:\Users\yildi\PycharmProjects\BikersCommunity\venv\Lib\site-packages\discord\commands\core.py", line 375, in invoke
await injected(ctx)
File "C:\Users\yildi\PycharmProjects\BikersCommunity\venv\Lib\site-packages\discord\commands\core.py", line 132, in wrapped
raise ApplicationCommandInvokeError(exc) from exc
discord.errors.ApplicationCommandInvokeError: Application Command raised an exception: KeyError: 'results'
{'error': {'code': 400,
'details': [{'@type': 'type.googleapis.com/google.rpc.ErrorInfo',
'domain': 'googleapis.com',
'metadata': {'service': 'tenor.googleapis.com'},
'reason': 'API_KEY_INVALID'}],
'message': 'API key not valid. Please pass a valid API key.',
'status': 'INVALID_ARGUMENT'}}```
drecks API key wirklich regt mich auf
Hast du es so in der env
API_KEY = dein API key
OK dann bei dein API KEY dein API key einfügen
hab ich ja...
hab da halt nur API KEY geschrieben damit ihr wisst wie ich es da rein getan hab
Ok
lost xD
helf doch statt zu provozieren
meine nd dich
du sollst nicht das ergebnis der API abfrage printen, sondern deinen api key
mach den api key am besten direkt in deine datei statt ihn aus der .env zu laden
ja keine ahnung das ist halt das was raus kommt
ja mach ich mal
Geht immernoch nicht
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "C:\Users\yildi\PycharmProjects\BikersCommunity\venv\Lib\site-packages\discord\bot.py", line 1114, in invoke_application_command
await ctx.command.invoke(ctx)
File "C:\Users\yildi\PycharmProjects\BikersCommunity\venv\Lib\site-packages\discord\commands\core.py", line 375, in invoke
await injected(ctx)
File "C:\Users\yildi\PycharmProjects\BikersCommunity\venv\Lib\site-packages\discord\commands\core.py", line 132, in wrapped
raise ApplicationCommandInvokeError(exc) from exc
discord.errors.ApplicationCommandInvokeError: Application Command raised an exception: KeyError: 'results'
{'error': {'code': 400,
'details': [{'@type': 'type.googleapis.com/google.rpc.ErrorInfo',
'domain': 'googleapis.com',
'metadata': {'service': 'tenor.googleapis.com'},
'reason': 'API_KEY_INVALID'}],
'message': 'API key not valid. Please pass a valid API key.',
'status': 'INVALID_ARGUMENT'}}```
code?
from discord.commands import slash_command, Option
from discord.ext import commands
import os
import requests
from pprint import pprint
import random
class Punch(commands.Cog):
def __init__(self, bot):
self.bot = bot
@slash_command(name="punch", description="Schlage einen User!")
async def punch(self,
ctx,
member: Option(discord.Member)
):
key = os.getenv("hier ist die API Key")
results = requests.get("https://tenor.googleapis.com/v2/search?q=motorcycle&key={key}&limit=10")
data = results.json()
pprint(data)
number = random.randint(0, 9)
url = data["results"][number]["media_formats"]["gif"]["url"]
embed = discord.Embed(
title="Wruuum Wruuuuuum",
color=discord.Color.blue()
)
embed.set_image(url=url)
await ctx.respond(embed=embed)
def setup(bot):
bot.add_cog(Punch(bot))```
from pprint import pprint wozu?
discord.errors.ApplicationCommandInvokeError: Application Command raised an exception: KeyError: 'results' Was ist denn mit Results? Da ist doch ja auch was falsch
import discord
from discord.commands import slash_command, Option
from discord.ext import commands
import os
import requests
import random
class Punch(commands.Cog):
def __init__(self, bot):
self.bot = bot
@slash_command(name="punch", description="Schlage einen User!")
async def punch(self,
ctx,
member: Option(discord.Member)
):
key = os.getenv("hier ist die API Key")
results = requests.get("https://tenor.googleapis.com/v2/search?q=motorcycle&key={key}&limit=10")
data = results.json()
print(data)
number = random.randint(0, 9)
url = data["results"][number]["media_formats"]["gif"]["url"]
embed = discord.Embed(
title="Wruuum Wruuuuuum",
color=discord.Color.blue()
)
embed.set_image(url=url)
await ctx.respond(embed=embed)
def setup(bot):
bot.add_cog(Punch(bot))```
entweder lädst du den key aus der .env datei oder du musst das os.getenv() entfernen
steht bei dir doch in der .env nicht so
bei dir steht in der .env
API_KEY also muss da auch "API_KEY" stehen
Nope geht immernoch nicht
Nope geht immernoch nicht
den key hab ich von der .env entfernt und manuell in den code rein gepastet
code?
ja wenn du was änderst musst es schon sagen 😄
from discord.commands import slash_command, Option
from discord.ext import commands
import os
import requests
import random
class Punch(commands.Cog):
def __init__(self, bot):
self.bot = bot
@slash_command(name="punch", description="Schlage einen User!")
async def punch(self,
ctx,
member: Option(discord.Member)
):
key = ("mein key")
results = requests.get("https://tenor.googleapis.com/v2/search?q=motorcycle&key={key}&limit=10")
data = results.json()
print(data)
number = random.randint(0, 9)
url = data["results"][number]["media_formats"]["gif"]["url"]
embed = discord.Embed(
title="Wruuum Wruuuuuum",
color=discord.Color.blue()
)
embed.set_image(url=url)
await ctx.respond(embed=embed)
def setup(bot):
bot.add_cog(Punch(bot))```
PY```
BikersCommunity#2180 ist online
{'error': {'code': 400, 'message': 'API key not valid. Please pass a valid API key.', 'status': 'INVALID_ARGUMENT', 'details': [{'@type': 'type.googleapis.com/google.rpc.ErrorInfo', 'reason': 'API_KEY_INVALID', 'domain': 'googleapis.com', 'metadata': {'service': 'tenor.googleapis.com'}}]}}
Ignoring exception in command punch:
Traceback (most recent call last):
File "C:\Users\yildi\PycharmProjects\BikersCommunity\venv\Lib\site-packages\discord\commands\core.py", line 124, in wrapped
ret = await coro(arg)
^^^^^^^^^^^^^^^
File "C:\Users\yildi\PycharmProjects\BikersCommunity\venv\Lib\site-packages\discord\commands\core.py", line 978, in _invoke
await self.callback(self.cog, ctx, **kwargs)
File "C:\Users\yildi\PycharmProjects\BikersCommunity\cogs\punch.py", line 25, in punch
url = data["results"][number]["media_formats"]["gif"]["url"]
~~~~^^^^^^^^^^^
KeyError: 'results'
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "C:\Users\yildi\PycharmProjects\BikersCommunity\venv\Lib\site-packages\discord\bot.py", line 1114, in invoke_application_command
await ctx.command.invoke(ctx)
File "C:\Users\yildi\PycharmProjects\BikersCommunity\venv\Lib\site-packages\discord\commands\core.py", line 375, in invoke
await injected(ctx)
File "C:\Users\yildi\PycharmProjects\BikersCommunity\venv\Lib\site-packages\discord\commands\core.py", line 132, in wrapped
raise ApplicationCommandInvokeError(exc) from exc
discord.errors.ApplicationCommandInvokeError: Application Command raised an exception: KeyError: 'results'```
Please pass a valid API key.
Hast du den Key dort eingegeben?
bro das wissen wir ja haha geht aber immernoch nicht
ja habe ich, war erst im .env dann hab ich es manuell in den code rein gepastet
sus
Er hat ein api Key von mir
deine geht irgendwie auch nicht haha
print dir mal key
Muss gehen
geht auch
der api key geht nur results macht jz probleme siehe neusten error oben
File "C:\Users\yildi\PycharmProjects\BikersCommunity\venv\Lib\site-packages\discord\commands\core.py", line 124, in wrapped
ret = await coro(arg)
^^^^^^^^^^^^^^^
File "C:\Users\yildi\PycharmProjects\BikersCommunity\venv\Lib\site-packages\discord\commands\core.py", line 978, in _invoke
await self.callback(self.cog, ctx, **kwargs)
File "C:\Users\yildi\PycharmProjects\BikersCommunity\cogs\punch.py", line 26, in punch
url = data["results"][number]["media_formats"]["gif"]["url"]
~~~~^^^^^^^^^^^
KeyError: 'results'
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "C:\Users\yildi\PycharmProjects\BikersCommunity\venv\Lib\site-packages\discord\bot.py", line 1114, in invoke_application_command
await ctx.command.invoke(ctx)
File "C:\Users\yildi\PycharmProjects\BikersCommunity\venv\Lib\site-packages\discord\commands\core.py", line 375, in invoke
await injected(ctx)
File "C:\Users\yildi\PycharmProjects\BikersCommunity\venv\Lib\site-packages\discord\commands\core.py", line 132, in wrapped
raise ApplicationCommandInvokeError(exc) from exc
discord.errors.ApplicationCommandInvokeError: Application Command raised an exception: KeyError: 'results'```
Mach mal result
discord.errors.ApplicationCommandInvokeError: Application Command raised an exception: KeyError: 'result'```
@solid ingot kannst du mir helfen
wenn du dir data printest kannst du einfach sehen wieso es probleme gibt
Ok
Es geht endlich
👏👏👏👏👏
Sag einfach wenn du API Keys besuchst
Und was
paramter 👀
Da hatte ich in mein code
wo ist denn deiner 👀
@slash_command(description="Schlage einen User")
async def punch(self, ctx, member: Option(discord.Member, "wem möchtest du schlagen?")):
user = member
key = os.getenv("tenor_api")
params = {
"q": "punch",
"key": key,
"limit": "10",
"client_key": "discord_bot",
"media_filter": "gif"
}
async with aiohttp.ClientSession() as cs:
async with cs.get("https://tenor.googleapis.com/v2/search", params=params) as r:
data = await r.json()
number = random.randint(0, 9)
url = data["results"][number]["media_formats"]["gif"]["url"]
embed=discord.Embed(
title=f"<@{ctx.author.id}> hat <@{user.id}> geschlagen!",
color=discord.Color.blue()
)
embed.set_image(url=url)
embed.set_footer(icon_url=self.bot.user.avatar.url)
await ctx.respond(embed=embed)
das ist doch zu 80% von timo xD
Warum 80 %
stimmt sind mehr
💀
Weniger
mehr
Was ich damit sagen wollte ist das ich es lieber eigenständig lernen möchte und keine anderen codes benutzen will...
Ok
Sag einfach wenn du API Keys brauchst
besuchst xD

lass mal deine token api besuchen 😄
xD
@tawdry leaf Wieso bist du raus?
der erdbeben
junge... komm doch wieder rein man ahhaha
Kann mir kurz noch einer erklären was "limit": "10", und number = random.randint(0, 9) bedeutet? Heißt es einfach das 0-9 random gifs ausgewählt werden sollten?
Er kann rechnen 😑😑
du bist noch mit deinen pypi post am antworten seit ein paar tagen also bitte 😄
Also von 0-10 BESTIMMTEN memes wählt er einen aus?
Nr
wieso 0-10 ?
Sorry 0-9
jo
def __init__(self, bot):
self.bot = bot
@slash_command(name="meme", description="Lasse dir Memes anzeigen")
async def meme(self, ctx):
key = os.getenv("API_KEY")
params = {
"q": "meme",
"key": key,
"limit": "10",
"client_key": "discord_bot",
"media_filter": "gif"
}
result = requests.get("https://tenor.googleapis.com/v2/search", params=params)
data = result.json()
# pprint(data)
number = random.randint(0, 10)
url = data['results'][number]['media_formats']['gif']['url']
embed = discord.Embed(
title="Der Meme:",
color=discord.Color.blue()
)
embed.set_image(url=url)
embed.set_footer(text="Offizieller BikersLife Discord Bot")
await ctx.respond(embed=embed)
def setup(bot):
bot.add_cog(memes(bot))``` Wieso funktioniert der Code nicht?
- Command: /docs
- Guild: Test server -
1092452726484508734 - User: .invalidtimo (.InvalidTimo✓) -
1078242409495932969
Traceback (most recent call last):
File "/data/data/com.termux/files/usr/lib/python3.11/site-packages/discord/commands/core.py", line 131, in wrapped
ret = await coro(arg)
^^^^^^^^^^^^^^^
File "/data/data/com.termux/files/usr/lib/python3.11/site-packages/discord/commands/core.py", line 1000, in _invoke
await self.callback(self.cog, ctx, **kwargs)
File "/storage/emulated/0/Timo/Dev/Discord/Bot/Falci/cogs/Owner/falci.py", line 56, in docs
[f"{index}. {value}" for index, value in list(self.targets.keys())]
File "/storage/emulated/0/Timo/Dev/Discord/Bot/Falci/cogs/Owner/falci.py", line 56, in <listcomp>
[f"{index}. {value}" for index, value in list(self.targets.keys())]
^^^^^^^^^^^^
ValueError: too many values to unpack (expected 2)
Bzw. wird der nicht angezeigt
weniger values xD
würde ein limit setzen
ich weiß
Ok
aber wenn du da jz discord suchst bei den docs hast du zu viele ergebnisse
da musst du des eben mit mehreren seiten machen wie hier bei den docs command
Aber wie soll ich es machen
erstmals musst wissen wie viele values in ein embed es sein dürfen
und wenn du des weißt eben abfragen
Also Limits siehst du hier
Aber wie kann ich es festlegen
@tawdry leaf
eine gute Frage 😮
if len(embed) > 5900:
if len(embed.fields) >= 25:
Wo muss ich es dann hin setzen
ich weiß es nd genau vllt antwortet bald jmd der sich da besser auskennt 😄
Ok
Jungs ich möchte als value public_flag bestimmen, hab ich in der dokumentation gefunden. Ist das richtig?
public_flags = discord.user.public_flags
naja... ich weiß es jetzt auch nicht wirklich da mein code schon wieder einmal anwendung reagiert nicht
schickt
xD
Error?
Schick mal Code
dann gibts das wohl nicht beim discord.member
knapp daneben
hmmm....
discord.user ist auch falsch
wasn richtig?
embed.set_thumbnail(discord.display_avatar.url)
Ja falsch
Wieson das...
Von wem willst du denn das avatar anzegen lassen?
discord?
Von dem User
#1019974414487535736 message
#1019974414487535736 message
oyy...
Und wie genau soll ich es bestimmen? bspw?
Kennst du die Dokumentationen?
oder die Suchmaschine google?
nö
Tja, dann haste pech :D
Das fragen wir uns alle hier
ja gut... verständlich haha
@jade sapphire wolltest du nd alleine des versuchen wieso fragst dann bei sowas 🤔
wo hab ich denn gemeint das ich nichts fragen werde?
unterlass mal die anschuldigungen...
@tawdry leaf statement?
Habe wohl seine Nachricht oben mit ich nehm keine Codes von anderen falsch verstanden?
oder ist es Doppelmoral von ihm 🤔
ist keine Anschuldigung meinerseits
Ich sehe eine sache, wo du nh error kriegen könntest
Außer du hast schon code geschrieben um es zu verhindern xD
Keine Berechtigungen zum pingen von Rollen meinst?
Nö, pingen kann man die immer
lol
Wenn man die id hat
Zum beispiel wie bei <@&1018360496396714076>
Kann man sonst eig nd pingen, wenn man @ macht
Aber ich meine, wenn jemand zu viele rollen hat, und dann das embed field zu lang ist, dann kommt ein error
das stimmt
Wäre gut wenn du es mir verraten könntest, falls es das oben genannte error ist was KAR erwähnt hat, das wird nicht erscheinen da die rollen durch das ausführen des commands nicht gepingt werden sondern nur angezeigt werden.
Ich hab doch schon verraten ._.
Internet ist scheiße
Muss ich mal austesten
einf ein extra button nur für userrollen 😮
Verstehe ich nicht so ganz…
schau mal whoami xD
Ich sag mal so die Rollen erscheinen automatisch wenn ein User die Rolle besitzt, falls es das ist was du meinst
ich bevorzuge gamma
ja aber jedes embed hat ein Limit
Naja ich hoffe mal das niemand soviele Rollen besitzen wird das da ein error erscheint xd
Kann mir jemand helfen wegen dem Limit
value
hier
also dein problem is, dass manchmal zu viele felder da sind oder was
Ja aber keine Ahnung wie ich das jetzt weg mache
Timo hatte mal sowas beim Paginator gemacht, dass alle 25 User oder so ne neue Zeile erstellt wird, sowas könntest du auch machen ig
Mein Discord Server
► https://discord.gg/zfvbjTEzv6
Links aus dem Video
Paginator Guide ► https://guide.pycord.dev/extensions/pages/paginator-basics
Paginator Docs ► https://docs.pycord.dev/en/stable/ext/pages/index.html#paginator
Modulo Operator ► https://www.youtube.com/watch?v=rVGrds7AbPw
Code auf Github ► ...
Man kann bei Message Commands keine options verwenden oder?
Aber keine Ahnung wie ich es einbinde
Wie geht das
dieser code ist nicht von mir
Geht das auch
probiers aus
Ok
Timos code ist professioneller 😌
sad, muss ichs doch mit ner wait_for machen
Wie kann man alles beenden was hat man gestartet über #1046779655065174157 Weil ich da ein fivem server gemacht hab es start jetzt nicht mehr neu! @solid ingot
Server Neustarten
Hab schon aber bing nix
Kannst du den FiveM Server nicht irgendwie beenden
help
Jungs
async def on_member_join(self,
member,
button: discord.ui.button(label="Grüße", style=discord.ButtonStyle.green, emoji="✌"),
interaction
):
embed = discord.Embed(
title="Ein neuer Biker!",
description=f"Willkommen {member.mention} auf BikersLife | DE, wir freuen uns das du da bist!",
color=discord.Color.blue()
)
embed.set_footer(text="BikersLife Community Bot")
channel = await self.bot.fetch_channel(1141257045413220392)
await channel.send(embed=embed)```
Ja?
Ich möchte ein Button an mein Welcome Nachricht hängen, aber ich weiß nicht wie es geht. Ich habs mal so probiert. Hab mir mal Timos video angeschaut aber der erklärt es nur mit slash commands
View adden
Es ist genau so wie bei slash Commands
Okay...
Einfach view=dieView() an die Nachricht hängen
Also class ... ?
async def on_member_join(self,
member
):
embed = discord.Embed(
title="Ein neuer Biker!",
description=f"Willkommen {member.mention} auf BikersLife | DE, wir freuen uns das du da bist!",
color=discord.Color.blue()
)
embed.set_footer(text="BikersLife Community Bot")
channel = await self.bot.fetch_channel(1141257045413220392)
await channel.send(embed=embed, view=WillView)
def setup(bot):
bot.add_cog(Welcome(bot))
class WillView(discord.ui.View):
@discord.ui.button(label="Grüße", style=discord.ButtonStyle.green, emoji="✌")
async def button_callback(self, button, interaction):
await interaction.response.send_message("Hey!")```
Also ich hab es jetzt mal so gemacht weiß jedoch nicht ob es richtig ist
view=WillView(self.bot)
def __init__(self, bot):
self.bot = bot
@commands.Cog.listener()
async def on_member_join(self,
member
):
embed = discord.Embed(
title="Ein neuer Biker!",
description=f"Willkommen {member.mention} auf BikersLife | DE, wir freuen uns das du da bist!",
color=discord.Color.blue()
)
embed.set_footer(text="BikersLife Community Bot")
channel = await self.bot.fetch_channel(1141257045413220392)
await channel.send(embed=embed, view=WillView(self.bot))
def setup(bot):
bot.add_cog(Welcome(bot))
class WillView(discord.ui.View):
@discord.ui.button(label="Grüße", style=discord.ButtonStyle.green, emoji="✌")
async def button_callback(self, button, interaction):
await interaction.response.send_message("Hey!")```
Also ich habe es jezzt so, jedoch schickt er die Welcome Nachricht nicht wenn ein neuer User joint.
def __init__(self, bot):
self.bot = bot
@commands.Cog.listener()
async def on_member_join(self,
member
):
embed = discord.Embed(
title="Ein neuer Biker!",
description=f"Willkommen {member.mention} auf BikersLife | DE, wir freuen uns das du da bist!",
color=discord.Color.blue()
)
embed.set_footer(text="BikersLife Community Bot")
channel = await self.bot.get_channel(1141257045413220392)
await channel.send(embed=embed, view=WillView(self.bot))
def setup(bot):
bot.add_cog(Welcome(bot))
class WillView(discord.ui.View):
@discord.ui.button(label="Grüße", style=discord.ButtonStyle.green, emoji="✌")
async def button_callback(self, button, interaction):
await interaction.response.send_message("Hey!")```
Hier
Ist etwas kompliziert mit den Buttons, ich habe nicht wirklich verstanden wie ich buttons zu nachricht hinzufügen sollte, ohne wirklich einen ganzen /slash command zu erstellen...
Was hast du hier denn geändert?
await self.bot.fetch_channel()
Zu
await self.bot.get_channel()
Okay... ich versuchs mal
Ok
buttons kannst du von überall aus verwenden, dabei ist es egal ob das in einem slash command oder in einem event ist
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...
Hab ich mir schon angeguckt
Ok
Naja aber bspw. wenn ich ein Slash Command erstelle, müsste ich ja theoretisch immer wenn ein user joint den befehl ausführen. Das will ich ja nicht, ich will ja das es bei bsp. meiner Welcome nachricht der Button schon "dran" ist.
geht nicht, er schickt die nachricht nicht ab
ich bin mir nicht sicher wie du das meinst, einen slash command musst du nicht erstellen
Ich konnte mich glaube ich nicht ausdrücken... ganz kurz.
Ja das kannst du natürlich machen
Das mit dem Slash command war nur ein beispiel
der button ist unabhängig vom slash command, du kannst immer wenn du eine nachricht sendest den buttons als parameter angeben
Hmm… also in deinem video hab ich es nicht wirklich verstanden wie ich es tun sollte. Ist der Class button die parameter?
Also im prinzip ist ja die Button class unabhängig vom Slash command. Der slash command ist nur nützlich dafür das du den button aufrufst.
@jade sapphire schau dir das hier mal in den docs an, da kannst du auch einen view festlegen
Alles klar danke!
👍
Genau du musst im prinzip wenn du eine view class hast das immer nur als parameter angeben wenn du was sendest
Also kannst du das auch mit interaction.respond machen oder halt auch in einem channel.send
Hallo weiß wer wie ich überprüfen kann ob ein channel in einer spezifischen Kategorie ist?
@hard pivot das geht mit channel.category, also zb if channel.category.id == 123
weiß jmdn wie man blaue schrift in dc auch mit buchstaben machnt? wenn ich des mit css so mache css 1234 text
werden nur zahlen blau
test
wie
- Hi Mentos
ach digga ich geh mich begrabem
Warum
[2;31mWarum [0m[2;34mdenn[0m[2;35m?[0m
☆: .。. o(≧▽≦)o .。.:☆
°°°°°
weiß jemand wie ich das fixxe?
TypeError: informationbuttons.button_callback3.<locals>.dropdown_callback() missing 1 required positional argument: 'selected_values'
°_°
Code?
@discord.ui.button(
label="Partner",
style=discord.ButtonStyle.blurple,
emoji="👑",
custom_id="partner"
)
async def button_callback3(self, button, interaction):
embed = discord.Embed(title=f"RLG's Partners", description="""
Hier findest du unsere Partner im dropdown
""", color=0x5c00c7)
embed.set_thumbnail(url=f"{interaction.guild.icon.url}")
dropdown = discord.ui.Select(placeholder="Wähle einen Partner...", custom_id="partner_dropdown")
dropdown.add_option(label="Moon Family 🌙", description="Mitglieder: 4957", value="partner1")
dropdown.add_option(label="Team Mind", description="Mitglieder: 13044", value="partner2")
view = discord.ui.View()
view.add_item(dropdown)
async def dropdown_callback(dropdown_interaction, selected_values):
selected_partner = selected_values[0]
if selected_partner == "partner1":
embed = discord.Embed(title=f"Moon Family", description="""
➥ *
➥ Kontakt : @MoonLight 🌙
➥ Themen: Freunde finden, zocken, reden und Musik hören*
""", color=0x5c00c7)
await dropdown_interaction.response.send_message(embed=embed, ephemeral=True)
elif selected_partner == "partner2":
embed = discord.Embed(title=f"Team Mind", description="""
Über uns:
:: Wir sind eine Fortnite basierte Organisation, in Zusicht auf ein RL Bereich bei uns!
:: Wir sind ein Server mit fast 13000 stolzen Mitgliedern.
:: Das Management kümmert sich stets um die Probleme und Vorschläge, die hinzugefügt werden.
Was wir bieten:
:: Direkte Arbeit zwischen unserem Management und unseren Spielern
:: Direkter Support Kontakt
:: Eigene Team Erstellungen
:: Coachings/Spieler Förderung, 2x wöchentliches Training, jeder im Team kann mitmachen
:: Spieler mit viel Interesse
:: Aktive Mitglieder
:: Teilnahme bei E-Sport Events z.B. Nitro League
Was wir von euch erwarten:
:: Kompetenter Umgang miteinander
:: Einen Rang von mindestens Champion 2 für CW Team, ab GC1 CW Main Team
:: Ein Mindestalter von 14
:: Geistige Reife
:: Absagen und Zusagen bei Besprechungen
:: Zusammenhalt und Loyalität
:: Aktives Verhalten
Wir freuen uns auf dich und wünschen dir einen schönen Aufenthalt bei uns!
""", color=0x5c00c7)
await dropdown_interaction.response.send_message(embed=embed, ephemeral=True)
dropdown.callback = dropdown_callback
await interaction.response.send_message(embed=embed, view=view, ephemeral=True)
Hääää, warum machst du ein dropdown in einem Button?
Mach doch eine View klasse, mit dem Dropdown und danns schick es einfach beim button drücken ab
ok srry abi
async def on_member_join(self,
member
):
embed = discord.Embed(
title="Ein neuer Biker!",
description=f"Willkommen {member.mention} auf BikersLife | DE, wir freuen uns das du da bist!",
color=discord.Color.blue()
)
embed.set_footer(text="BikersLife Community Bot")
channel = await self.bot.get_channel(1141257045413220392)
await channel.send(embed=embed, view=WillView(self.bot))
def setup(bot):
bot.add_cog(Welcome(bot))
class WillView(discord.ui.View):
@discord.ui.button(label="Grüße", style=discord.ButtonStyle.green, emoji="✌")
async def button_callback(self, button, interaction):
await interaction.response.send_message("Hey!")```
Also sollte es so aussehen?
try it and see
def __init__(self):
super().__init__()
self.add_item(discord.ui.button(label="Klick mich!", custom_id="welcome_button"))
@discord.ui.button(label="Klick mich!", custom_id="welcome_button")
async def welcome_button(self, button, interaction, member):
await interaction.response.send_message(f"{interaction.user} grüßt {member.mention}!")```
Unresolved reference 'View'
@commands.Cog.listener()
async def on_member_join(self, member: discord.Member):
embed = discord.Embed(
title="Ein neuer Biker!",
description=f"Willkommen {member.mention} auf BikersLife | DE, wir freuen uns das du da bist!",
color=discord.Color.blue()
)
embed.set_footer(text="BikersLife Community Bot")
channel = self.bot.get_channel(1141257045413220392)
await channel.send(embed=embed, view=WillView(member))
def setup(bot):
bot.add_cog(Welcome(bot))
class WillView(discord.ui.View):
def __init__(self, member):
self.member = member
@discord.ui.button(label="Klick mich!", custom_id="welcome_button")
async def welcome_button(self, button, interaction):
await interaction.response.send_message(f"{interaction.user.mention} begrüßt {self.member.mention}")
@jade sapphire
Versuchs so
discord.errors.ExtensionFailed: Extension 'cogs.welcome' raised an error: TypeError: module() takes at most 2 arguments (3 given)
Traceback (most recent call last):
File "C:\Users\yildi\PycharmProjects\BikersCommunity\venv\Lib\site-packages\discord\client.py", line 378, in _run_event
await coro(*args, **kwargs)
File "C:\Users\yildi\PycharmProjects\BikersCommunity\cogs\welcome.py", line 20, in on_member_join
channel = await self.bot.get_channel(1141257045413220392)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
TypeError: object TextChannel can't be used in 'await' expression```
ohne await
def __init__(self, member):
super().__init__()
self.member = member
@discord.ui.button(label="Grüße", custom_id="welcome_button")
async def welcome_button(self, button, interaction, member):
await interaction.message.edit(view=self)
await interaction.response.edit_message(f"{interaction.member.mention} grüßt {self.member.mention}!")```
class WillView(discord.ui.View):
def __init__(self, member):
super().__init__(timeout=None)
self.member = member
@discord.ui.button(label="Grüße", custom_id="welcome_button")
async def welcome_button(self, button, interaction):
button.disabled = True
await interaction.message.edit(view=self)
await interaction.response.send_message(f"{interaction.user.mention} grüßt {self.member.mention}!")
for check_channel in check_channel_blacklist:
if check_channel[1]:
channel = bot.get_channel(check_channel[1])
if channel.category.id == category.id:
channel_list = [f"{Emojis.dot_emoji} <#{channel.id}>" if bot.get_channel(channel).category.id == category.id else None for channel in check_channel[1]]
channels = "\n".join(channel_list)```
Error:
Traceback (most recent call last):
File "C:\Users\larsl\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\LocalCache\local-packages\Python39\site-packages\discord\bot.py", line 1114, in invoke_application_command
await ctx.command.invoke(ctx)
File "C:\Users\larsl\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\LocalCache\local-packages\Python39\site-packages\discord\commands\core.py", line 375, in invoke
await injected(ctx)
File "C:\Users\larsl\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\LocalCache\local-packages\Python39\site-packages\discord\commands\core.py", line 132, in wrapped
raise ApplicationCommandInvokeError(exc) from exc
discord.errors.ApplicationCommandInvokeError: Application Command raised an exception: TypeError: 'int' object is not iterable
Exception ignored in: <function _ProactorBasePipeTransport.del at 0x000002B4C3C4C1F0>```
weiß wer was das Problem ist
Traceback (most recent call last):
File "c:\Users\felix\Desktop\Ticket Bot Felix\main.py", line 58, in <module>
bot.load_cogs("cogs")
File "C:\Users\felix\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\site-packages\ezcord\bot.py", line 213, in load_cogs
self.load_extension(f"{'.'.join(path.parts)}.{name}")
File "C:\Users\felix\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\site-packages\discord\cog.py", line 910, in load_extension
self._load_from_module_spec(spec, name)
File "C:\Users\felix\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\site-packages\discord\cog.py", line 783, in _load_from_module_spec
raise errors.NoEntryPointError(key)
discord.errors.NoEntryPointError: Extension 'cogs.ticket' has no 'setup' function.
was heißt das ?
Extension 'cogs.ticket' has no 'setup' function.
ja verstehe das nicht weil ich habe doch ein cog geamcht?
Du hast keine setup function in deinem cog wie es aussieht
du probierst durch ein int zu loopen, printe dir mal check_channel_blacklist
@slash_command(guild_ids = servers, name="ticket-sendembed", description="🎫 Ticket Command | Sends the ticket embed")
@commands.has_permissions(administrator=True)
async def ticketsend(ctx, channel: Option(discord.TextChannel, description="In which channel should the embed be send?", required=False)):
if channel is None:
channel = ctx.channel
embed = discord.Embed(title="\🎫 Create ticket", description="Here you can create an ticket and get support.", color=0x1067a3)
embed.set_author(name="Side Roleplay", icon_url="https://cdn.discordapp.com/avatars/1132346221827194920/d54f7d70d2302e49278219c214554950.png?size=1024")
embed.set_footer(text="Made by Felix", icon_url="https://cdn.discordapp.com/avatars/1132346221827194920/d54f7d70d2302e49278219c214554950.png?size=1024")
embed.set_thumbnail(url="https://cdn.discordapp.com/avatars/1132346221827194920/d54f7d70d2302e49278219c214554950.png?size=1024")
embed.set_image(url="https://cdn.discordapp.com/attachments/1132436690955403425/1132748384726437978/Side_Crimelife_Tickets_Banner.png")
await channel.send(embed=embed, view=TicketOptions())
await ctx.respond(f"> The ticket embed was successfully sent in {channel.mention}", ephemeral=True)
@ticketsend.error
async def error(ctx, error):
if isinstance(error, MissingPermissions):
await ctx.respond(f"> You don't have the perms for that! Missing Permissions: ``Administrator``", ephemeral=True)
else:
await ctx.respond("There was an error. Please contact the server owner!", ephemeral=True)
raise error
der slash command wird nicht angezeigt
ist er richtig eingerückt?
Boys brauche dringend Hilfe. Kann keine Slash commands mehr verwenden. Ganz normale Prefix commands gehen. Ich konnte sie bis eben problem frei benutzen, aber jetzt eben nicht mehr
gehen die prefix commands auch in den cogs?
Hostest du den doppelt? Also lässt du ihn doppelt laufen
aber Slash commands gehen sowie in der Main als auch in cogs nicht..
hast du schon nach dem fehler gegoogelt?
gibt eben kein Fehler.
Also ja natürlich aber nur im Discord. ("Die Anwendung reagiert nicht")
Ich habe einen Command, in dem etwas in eine Json datei geschrieben wird. (Slash Command) Aber selbst da , schreibt er garnicht in die Json was... Also ich weiß wirklich nicht wo das Problem liegt
Danke Timo es geht 
Habb ihm gemacht🫂
Jungs eine frage undzwar mein Code erkennt nicht mehr die random XP die man durch 1 nachricht bekommt
def get_level(xp):
lvl = 1
while True:
xp -=100
if xp < 0:
return lvl
lvl += 1
@commands.Cog.listener()
async def on_ready(self):
async with aiosqlite.connect(self.DB) as db:
await db.execute(
"""
CREATE TABLE IF NOT EXISTS users (
user_id INTEGER PRIMARY KEY,
msg_count INTEGER DEFAULT 0,
xp INTEGER DEFAULT 0
)
"""
)
@commands.Cog.listener()
async def on_message(self, message):
xp = random.randint(10, 20)
async with aiosqlite.connect(self.DB) as db:
await db.execute(
"INSERT OR IGNORE INTO users (user_id) VALUES (?)", (message.author.id,)
)
await db.execute(
"UPDATE users SET msg_count = msg_count + 1,xp = xp + ? WHERE user_id = ?", (xp, message.author.id,)
)
await db.commit()
@slash_command()
async def rang(self, ctx):
async with aiosqlite.connect(self.DB) as db:
async with db.execute("SELECT msg_count, xp FROM users WHERE user_id = ?", (ctx.author.id,)) as cursor:
result = await cursor.fetchone()
if result is None:
await ctx.respond("Du bist noch nicht im System", ephemeral=True)
return
msg_count, xp = result
xp = result[0]
lvl = self.get_level(xp)
await ctx.respond(f"Du hast {msg_count} Nachrichten verschickt und hast {xp} XP gesamt. Du bist zurzeit Level {lvl}")
Das ist mein code
was meinst du mit "nicht erkennen"? schick den code am besten als python codeblock
Es gibt nun nurnoch 1 XP pro nachricht
Ja
@staticmethod
def get_level(xp):
lvl = 1
while True:
xp -=100
if xp < 0:
return lvl
lvl += 1
@commands.Cog.listener()
async def on_ready(self):
async with aiosqlite.connect(self.DB) as db:
await db.execute(
"""
CREATE TABLE IF NOT EXISTS users (
user_id INTEGER PRIMARY KEY,
msg_count INTEGER DEFAULT 0,
xp INTEGER DEFAULT 0
)
"""
)
@commands.Cog.listener()
async def on_message(self, message):
xp = random.randint(10, 20)
async with aiosqlite.connect(self.DB) as db:
await db.execute(
"INSERT OR IGNORE INTO users (user_id) VALUES (?)", (message.author.id,)
)
await db.execute(
"UPDATE users SET msg_count = msg_count + 1,xp = xp + ? WHERE user_id = ?", (xp, message.author.id,)
)
await db.commit()
@slash_command()
async def rang(self, ctx):
async with aiosqlite.connect(self.DB) as db:
async with db.execute("SELECT msg_count, xp FROM users WHERE user_id = ?", (ctx.author.id,)) as cursor:
result = await cursor.fetchone()
if result is None:
await ctx.respond("Du bist noch nicht im System", ephemeral=True)
return
msg_count, xp = result
xp = result[0]
lvl = self.get_level(xp)
await ctx.respond(f"Du hast {msg_count} Nachrichten verschickt und hast {xp} XP gesamt. Du bist zurzeit Level {lvl}")
Bevor ich die @staticmethod angewendet habe gab der bot für jede nachricht 10-20 XP. Nachdem @staticmethod gibt der nur noch 1 XP pro nachricht
das mit der staticmethod hat gar nichts mit den XP zu tun
die XP werden bei on_message berechnet
eine kurze frage was bedeutet das
Ignoring exception in view <TicketOptions timeout=None children=1> for item <Ticket type=<ComponentType.string_select: 3> placeholder='Choose your ticket reason here.' min_values=1 max_values=1 options=[<SelectOption label='Teambewerbung' value='Teambewerbung' description='Open an Teambewerbungs ticket here.' emoji=<PartialEmoji animated=False name='ps_support' id=1120008742256251051> default=False>, <SelectOption label='Support' value='Support' description='Open an support ticket here' emoji=<PartialEmoji animated=False name='ps_buy' id=1120009767272845323> default=False>, <SelectOption label='Fraktionsantrag' value='Fraktionsantrag' description='Open an fraktionsantrag ticket here' emoji=<PartialEmoji animated=False name='ps_ipchange' id=1120009768757637183> default=False>] channel_types=[] disabled=False>:
Traceback (most recent call last):
File "C:\Users\felix\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\site-packages\discord\ui\view.py", line 414, in _scheduled_task
await item.callback(interaction)
File "c:\Users\felix\Desktop\Ticket Bot Felix\cogs\ticket.py", line 90, in callback
category = self.get_channel(int(get_config("Buy_Category")))
AttributeError: 'Ticket' object has no attribute 'get_channel'
hmm
self ist immer die aktuelle klasse, in der du dich befindet. diese klasse hat aber keine get_channel methode. du möchtest wahrscheinlich sowas wie bot.get_channel. in einem cog geht das zb mit self.bot.get_channel
abow timo oder was
Ignoring exception in view <TicketOptions timeout=None children=1> for item <Ticket type=<ComponentType.string_select: 3> placeholder='Choose your ticket reason here.' min_values=1 max_values=1 options=[<SelectOption label='Teambewerbung' value='Teambewerbung' description='Open an Teambewerbungs ticket here.' emoji=<PartialEmoji animated=False name='ps_support' id=1120008742256251051> default=False>, <SelectOption label='Support' value='Support' description='Open an support ticket here' emoji=<PartialEmoji animated=False name='ps_buy' id=1120009767272845323> default=False>, <SelectOption label='Fraktionsantrag' value='Fraktionsantrag' description='Open an fraktionsantrag ticket here' emoji=<PartialEmoji animated=False name='ps_ipchange' id=1120009768757637183> default=False>] channel_types=[] disabled=False>:
Traceback (most recent call last):
File "C:\Users\felix\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\site-packages\discord\ui\view.py", line 414, in _scheduled_task
await item.callback(interaction)
File "c:\Users\felix\Desktop\Ticket Bot Felix\cogs\ticket.py", line 127, in callback
category = self.bot.get_channel(int(get_config("Support_Category")))
AttributeError: 'Ticket' object has no attribute 'bot'
jz kommt das
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...
@last depot
interaction.client.get_channel
soll ich ersetzten mit den self.bot.get_channel?
Was denkst du denn?
wenn du self.bot nutzen willst, musst du den bot erst an die klasse übergeben. ansonsten kannst du interaction.client nutzen
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 ...
ja aber unnötig den bot zu übergeben, wenn man interaction.client nutzen kann
in den meisten fällen ist interaction.client ausreichend, ja
danke es geht
Wieso gibt er denn dann bei jeder gesendeten nachricht nur 1 XP?
Hast du self.bot definiert
Hm?
Schick mal deinen Code#
oben in der init Methode
self.bot = bot
from pydoc import describe
import discord
import asyncio
import json
import os
from discord.ext import commands
from discord.commands import Option
from discord.ext.commands import MissingAnyRole
from discord.ext.commands import MissingPermissions
from discord.commands import slash_command, Option
import io
import requests
import chat_exporter
def get_config(name):
with open("config.json", "r") as f:
json_file = json.load(f)
return json_file[name]
intents = discord.Intents.all()
intents.members = True
intents.messages = True
servers = [int(get_config("Guild_ID"))]
class TicketDropCommand(commands.Cog):
def init(self, bot):
self.bot = bot
self.bot.add_view(TicketOptions(self))
self.bot.add_view(CloseButton(self))
self.bot.add_view(ReopenButton(self))
self.bot.add_view(SelectView(self))
#----------------------------------------------TICKET SYSTEM----------------------------------------------#
@slash_command(
name="ticket-sendembed",
description="🎫 Ticket Command | Sends the ticket embed",
)
@commands.has_permissions(administrator=True)
async def ticketsend(ctx, channel: Option(discord.TextChannel, description="In which channel should the embed be send?", required=False)):
if channel is None:
channel = ctx.channel
embed = discord.Embed(
title="\🎫 Create ticket",
description="Here you can create a ticket and get support.",
color=0x1067a3
)
embed.set_author(name="Side Crimelife", icon_url="https://example.com/your_icon.png")
embed.set_footer(text="Made by Felix", icon_url="https://example.com/your_footer_icon.png")
embed.set_thumbnail(url=self.bot.user.display_avatar.url)
embed.set_image(url=self.bot.user.display_avatar.url)
await channel.respond(embed=embed, view=TicketOptions())
@ticketsend.error
async def ticketsend_error(self, ctx, error):
if isinstance(error, MissingPermissions):
await ctx.send(f"> You don't have the permissions for that! Missing Permissions: ``Administrator``", ephemeral=True)
else:
await ctx.send("There was an error. Please contact the server owner!", ephemeral=True)
raise error
Du hast das self in der ticketsend function vergessen
@staticmethod
def get_level(xp):
lvl = 1
amount = 100
while True:
xp -= amount
if xp < 0:
return lvl
lvl += 1
amount += 100
@commands.Cog.listener()
async def on_ready(self):
async with aiosqlite.connect(self.DB) as db:
await db.execute(
"""
CREATE TABLE IF NOT EXISTS users (
user_id INTEGER PRIMARY KEY,
msg_count INTEGER DEFAULT 0,
xp INTEGER DEFAULT 0
)
"""
)
@commands.Cog.listener()
async def on_message(self, message):
xp = random.randint(10, 20)
async with aiosqlite.connect(self.DB) as db:
await db.execute(
"INSERT OR IGNORE INTO users (user_id) VALUES (?)", (message.author.id,)
)
await db.execute(
"UPDATE users SET msg_count = msg_count + 1 WHERE user_id = ?", (message.author.id,)
)
await db.execute(
"UPDATE users SET xp = xp + ? WHERE user_id = ?",(xp, message.author.id)
)
await db.commit()
@slash_command()
async def rang(self, ctx):
async with aiosqlite.connect(self.DB) as db:
async with db.execute("SELECT msg_count, xp FROM users WHERE user_id = ?", (ctx.author.id,)) as cursor:
result = await cursor.fetchone()
if result is None:
await ctx.respond("Du bist noch nicht im System", ephemeral=True)
return
msg_count, xp = result
xp = result[0]
lvl = self.get_level(xp)
await ctx.respond(f"Du hast {msg_count} Nachrichten verschickt und hast {xp} XP gesamt. Du bist zurzeit Level {lvl}")
def setup(bot):
bot.add_cog(Levelsystem(bot))```
Leute ich habe ein kleines problem undzwar im code habe ich bestimmt das pro nachricht der User immer 10-20 XP bekommen sollte. Das klappt auch wenn ich im Datenbank nachschaue, jedoch zeigt mir Discord an, wenn ich /rang ausführe, dass der User pro nachricht immer nur 1 XP bekommt. Hier ist mein Code: Woran kann es liegen?
Bin mir nicht sicher glaub aber bei XP = result[0] muss result[1]
höö ich hab doch da {xp} stehen
@staticmethod
def get_level(xp):
lvl = 1
amount = 100
while xp >= amount:
xp -= amount
lvl += 1
amount += 100
return lvl
@commands.Cog.listener()
async def on_ready(self):
async with aiosqlite.connect(self.DB) as db:
await db.execute(
"""
CREATE TABLE IF NOT EXISTS users (
user_id INTEGER PRIMARY KEY,
msg_count INTEGER DEFAULT 0,
xp INTEGER DEFAULT 0
)
"""
)
@commands.Cog.listener()
async def on_message(self, message):
if message.author.bot:
return
xp = random.randint(10, 20)
async with aiosqlite.connect(self.DB) as db:
await db.execute(
"INSERT OR IGNORE INTO users (user_id) VALUES (?)", (message.author.id,)
)
await db.execute(
"UPDATE users SET msg_count = msg_count + 1 WHERE user_id = ?", (message.author.id,)
)
await db.execute(
"UPDATE users SET xp = xp + ? WHERE user_id = ?", (xp, message.author.id)
)
await db.commit()
@commands.slash_command()
async def rang(self, ctx):
async with aiosqlite.connect(self.DB) as db:
async with db.execute("SELECT msg_count, xp FROM users WHERE user_id = ?", (ctx.author.id,)) as cursor:
result = await cursor.fetchone()
if result is None:
await ctx.respond("Du bist noch nicht im System", ephemeral=True)
return
msg_count, xp = result
lvl = self.get_level(xp)
await ctx.respond(f"Du hast {msg_count} Nachrichten verschickt und hast {xp} XP gesamt. Du bist zurzeit Level {lvl}")
def setup(bot):
bot.add_cog(Levelsystem(bot))
Hier
nur weil deine variable XP heißt ist es trotzdem der message count
du solltest auf @novel ore hören
Jaja immer auf mich hören
Basti was hast du denn beim code verändert?
In der Metode get_level() habe ich die Bedingung in der Schleife geändert um sicherzustellen das das XP-Threshold richtig berechet wird
In der Methode on_message() habe ich ein Überprüfung hinzugefügt um sicherzustellen dass die XP nicht für Nachrichten von Bots gezählt werden
In der Methode rang() habe ich den Variablennamen xp korrigiert um auf das XP-Attribut aus der datenbank zuzugreifen
!
!
Jo hast recht, danke
!
wo rein?
Was denkst du denn?
ich weiß nd
Du brauchst self als ersten parameter in deiner ticketsend function
Nein
async def ticketsend(self, ctx, channel: Option(discord.TextChannel, description="In which channel should the embed be send?", required=False)):
So schwer is es nicht
ahhhhhhhhhhhh
Wie heißt nochmal die "sprache" beim Codeblock womit die schrift in hellblau ist?
lua`?
💀
ka
dkjsdik
Ich weiß durch text kopieren yk
@slash_command(
name="ticket-sendembed",
description="🎫 Ticket Command | Sends the ticket embed",
)
@commands.has_permissions(administrator=True)
async def ticketsend(self, ctx, channel: Option(discord.TextChannel, description="In which channel should the embed be send?", required=False)):
if channel is None:
channel = ctx.channel
embed = discord.Embed(
title="\🎫 Create ticket",
description="Here you can create a ticket and get support.",
color=0x1067a3
)
embed.set_author(name="Side Crimelife", icon_url="https://example.com/your_icon.png")
embed.set_footer(text="Made by Kawi", icon_url="https://example.com/your_footer_icon.png")
embed.set_thumbnail(url=self.bot.user.display_avatar.url)
embed.set_image(url=self.bot.user.display_avatar.url)
await channel.respond(embed=embed, view=TicketOptions(), ephemeral=True)
Traceback (most recent call last):
File "C:\Users\felix\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\site-packages\discord\client.py", line 378, in _run_event
await coro(*args, **kwargs)
File "C:\Users\felix\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\site-packages\discord\bot.py", line 1167, in on_interaction
await self.process_application_commands(interaction)
File "C:\Users\felix\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\site-packages\discord\bot.py", line 848, in process_application_commands
await self.invoke_application_command(ctx)
File "C:\Users\felix\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\site-packages\discord\bot.py", line 1118, in invoke_application_command
await ctx.command.dispatch_error(ctx, exc)
File "C:\Users\felix\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\site-packages\discord\commands\core.py", line 412, in dispatch_error
await injected(cog, ctx, error)
File "C:\Users\felix\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\site-packages\discord\commands\core.py", line 112, in wrapped
raise ApplicationCommandInvokeError(exc) from exc
discord.errors.ApplicationCommandInvokeError: Application Command raised an exception: TypeError: Messageable.send() got an unexpected keyword argument 'ephemeral'
was ist das problem ?
Das ephemeral=True
dachte du bist discord bot developer
Und du kannst in einen channel nix responden
wenn nur senden. und wenn du was in einen channel schickst kann es nd ephemeral sein nur wenn du respondest
wenn du mich fragst wie dann ist mein kopf kaputt 💀
stimmt ich responde eine andere nachricht
Einfach das channel mit ctx austauschen dann geht es
nicht jeder ist perfekt beruhig dich mal
bist auch nicht der beste, ich auch nicht andere auch nicht. Manchmal hat man schon fragen also chill dich mal, er hat nur was gefragt egal ob dev, anfänger oder profi
- Ich war nie agressiv
- Das sind Basics
- Es ist nicht schlimm
- Falls was ist komm privat chat
ja kam provokant rüber
weis wer welches modul ich dazu benötige? util.plugins.common
könntest du genauer werden ist das für mc oder wofür?
python
für discord
@solid ingot Gibt es ein Tutorial für KeksHosting? Und nh frage, ist es kostenlos?
eine anleitung findest du in #💻・cookie-hosting
@slash_command(
name="ticket-sendembed",
description="🎫 Ticket Command | Sends the ticket embed",
)
@commands.has_permissions(administrator=True)
async def ticketsend(self, ctx, channel: Option(discord.TextChannel, description="In which channel should the embed be send?", required=False)):
if channel is None:
channel = ctx.channel
embed = discord.Embed(
title="\🎫 Create ticket",
description="Here you can create a ticket and get support.",
color=0x1067a3
)
embed.set_author(name="Side Crimelife", icon_url="https://example.com/your_icon.png")
embed.set_footer(text="Made by Kawi", icon_url="https://example.com/your_footer_icon.png")
embed.set_thumbnail(url=self.bot.user.display_avatar.url)
embed.set_image(url=self.bot.user.display_avatar.url)
erfolg = discord.Embed(
title="Ticket System erfolgreich erstellt!"
)
await channel.send(embed=embed, view=TicketOptions())
await ctx.respond(embed=erfolg, ephemeral=True)
was ist da falsch
Traceback (most recent call last):
File "C:\Users\felix\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\site-packages\discord\client.py", line 378, in _run_event
await coro(*args, **kwargs)
File "C:\Users\felix\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\site-packages\discord\bot.py", line 1167, in on_interaction
await self.process_application_commands(interaction)
File "C:\Users\felix\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\site-packages\discord\bot.py", line 848, in process_application_commands
await self.invoke_application_command(ctx)
File "C:\Users\felix\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\site-packages\discord\bot.py", line 1118, in invoke_application_command
await ctx.command.dispatch_error(ctx, exc)
File "C:\Users\felix\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\site-packages\discord\commands\core.py", line 412, in dispatch_error
await injected(cog, ctx, error)
File "C:\Users\felix\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\site-packages\discord\commands\core.py", line 112, in wrapped
raise ApplicationCommandInvokeError(exc) from exc
discord.errors.ApplicationCommandInvokeError: Application Command raised an exception: TypeError: Messageable.send() got an unexpected keyword argument 'ephemeral'
bekomm eimmer noch den error
Ich verstehe nicht wirklich Schritt 4
Soll ich meinen ganzen Code da rein tun? Oder wie
Ja
Hab ich auch
ja dann muss ich jedes mal wenn ich etwas verbessere oder code es in die webseite eintragen?
kannst du talk denn erklär ich es
kann grad nicht
ok
kannste später?
muss schauen
ja sonst kann er es ja nd ändern
wasn?
Also der bot läuft über das panel da auf der website dann und da musst du eveb deb code immer aktualisieren
?
Wie kann man ein choice setzen in ezcord bin gerade dumm
Keine Ergebnisse für choice gefunden. Meintest du Folgendes?
kriege den gleichen error höö
Traceback (most recent call last):
File "C:\Users\felix\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\site-packages\discord\client.py", line 378, in _run_event
await coro(*args, **kwargs)
File "C:\Users\felix\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\site-packages\discord\bot.py", line 1167, in on_interaction
await self.process_application_commands(interaction)
File "C:\Users\felix\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\site-packages\discord\bot.py", line 848, in process_application_commands
await self.invoke_application_command(ctx)
File "C:\Users\felix\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\site-packages\discord\bot.py", line 1118, in invoke_application_command
await ctx.command.dispatch_error(ctx, exc)
File "C:\Users\felix\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\site-packages\discord\commands\core.py", line 412, in dispatch_error
await injected(cog, ctx, error)
File "C:\Users\felix\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\site-packages\discord\commands\core.py", line 112, in wrapped
raise ApplicationCommandInvokeError(exc) from exc
discord.errors.ApplicationCommandInvokeError: Application Command raised an exception: TypeError: Messageable.send() got an unexpected keyword argument 'ephemeral'
@Option("timee", description="gebe die zeit an", choices["60 Sekunden", "5 Minuten", "1 Stunde", "1 Tag", "1 Woche", "14 Tage"])
^
SyntaxError: positional argument follows keyword argument
The above exception was the direct cause of the following exception:
@slash_command()
@Option("grund", description="Warum wird der User getimeoutet")
@Option("user", description="Warum wird der User getimeoutet")
@Option("timee", description="gebe die zeit an", choices["60 Sekunden", "5 Minuten", "1 Stunde", "1 Tag", "1 Woche", "14 Tage"],)
async def timeout(self, ctx, member: discord.Member, grund: str, timee: str):
choices=["60 Sekunden", "5 Minuten", "1 Stunde", "1 Tag", "1 Woche", "14 Tage"] Du hast das = vergessen