#Allgemeine Hilfe

1 messages · Page 21 of 1

urban glen
#

Da hast du eins

visual swallow
#

Ja habe ich versucht ist nicht so leicht wie ich dachte

visual swallow
urban glen
lucid furnace
#

Traceback (most recent call last): File "C:\Programieren\Neuer Ordner\main.py", line 5, in <module> intents = discord.Intents.default() ^^^^^^^^^^^^^^^ AttributeError: module 'discord' has no attribute 'Intents'

urban glen
#

Mach mal pip freeze

lucid furnace
urban glen
urban glen
lucid furnace
#

xlwings @ file:///C:/b/abs_41rmpiyy58/croots/recipe/xlwings_1664932818417/work
yapf @ file:///tmp/build/80754af9/yapf_1615749224965/work
yarl==1.8.2
youtube-dl==2021.12.17
zict==2.1.0
zipp @ file:///C:/ci/zipp_1652273994994/work
zope.interface @ file:///C:/ci/zope.interface_1625036252485/work

C:\Programieren\Neuer Ordner>pip freezy | copy
Syntaxfehler.
ERROR: unknown command "freezy" - maybe you meant "freeze"

C:\Programieren\Neuer Ordner>pip freeze | copy
Syntaxfehler.
Exception ignored in: <_io.TextIOWrapper name='<stdout>' mode='w' encoding='cp1252'>
OSError: [Errno 22] Invalid argument

C:\Programieren\Neuer Ordner>pip freeze
aiohttp==3.8.4
aiosignal==1.3.1
async-timeout==4.0.2
attrs==22.2.0
cffi==1.15.1
charset-normalizer==3.0.1
frozenlist==1.3.3
idna==3.4
llvmlite==0.38.0
locket @ file:///C:/ci/locket_1652904031364/work
lxml @ file:///C:/ci/lxml_1657527445690/work
lz4 @ file:///C:/ci/lz4_1619516674350/work
Markdown @ file:///C:/ci/markdown_1614364082838/work
MarkupSafe @ file:///C:/ci/markupsafe_1621528502553/work
matplotlib @ file:///C:/ci/matplotlib-suite_1660169687702/work
matplotlib-inline @ file:///C:/ci/matplotlib-inline_1661915841596/work
mccabe==0.6.1
menuinst @ file:///C:/Users/BUILDE~1/AppData/Local/Temp/abs_455sf5o0ct/croots/recipe/menuinst_1661805970842/work
mistune @ file:///C:/ci/mistune_1607359457024/work
mkl-fft==1.3.1
mkl-random @ file:///C:/ci/mkl_random_1626186184308/work
mkl-service==2.4.0
mock @ file:///tmp/build/80754af9/mock_1607622725907/work
mpmath==1.2.1
msgpack @ file:///C:/ci/msgpack-python_1652329316214/work
multidict==6.0.4
multipledispatch @ file:///C:/ci/multipledispatch_1607574329826/work
munkres==1.1.4
mypy-extensions==0.4.3
navigator-updater==0.3.0
nbclassic @ file:///opt/conda/conda-bld/nbclassic_1644943264176/work
nbclient @ file:///C:/ci/nbclient_1650290387259/work
nbconvert @ file:///C:/ci/nbconvert_1649741016669/work```
#

nbformat @ file:///C:/b/abs_1dw90o2uqb/croots/recipe/nbformat_1663744957967/work
nest-asyncio @ file:///C:/ci/nest-asyncio_1649829929390/work
networkx @ file:///C:/ci/networkx_1657716998256/work
nltk @ file:///opt/conda/conda-bld/nltk_1645628263994/work
nose @ file:///opt/conda/conda-bld/nose_1642704612149/work
notebook @ file:///C:/Windows/TEMP/abs_79abr1_60s/croots/recipe/notebook_1659083661851/work
numba @ file:///C:/ci/numba_1650394399948/work
numexpr @ file:///C:/Windows/Temp/abs_e2036a32-9fe9-47f3-a04c-dbb1c232ba4b334exiur/croots/recipe/numexpr_1656940304835/work
numpy @ file:///C:/ci/numpy_and_numpy_base_1653574844560/work
numpydoc @ file:///C:/Windows/TEMP/abs_30799058-86dd-4401-b621-d172137a4d87_ra3twm7/croots/recipe/numpydoc_1657529873713/work
olefile @ file:///Users/ktietz/demo/mc3/conda-bld/olefile_1629805411829/work
openpyxl==3.0.10
packaging==23.0
pandas @ file:///C:/b/abs_cdcgk91igc/croots/recipe/pandas_1663772960432/work
pandocfilters @ file:///opt/conda/conda-bld/pandocfilters_1643405455980/work
panel @ file:///C:/ci/panel_1657899702145/work
param @ file:///tmp/build/80754af9/param_1636647414893/work
paramiko @ file:///opt/conda/conda-bld/paramiko_1640109032755/work
parsel @ file:///C:/ci/parsel_1646740216444/work
parso @ file:///opt/conda/conda-bld/parso_1641458642106/work
partd @ file:///opt/conda/conda-bld/partd_1647245470509/work
pathlib @ file:///Users/ktietz/demo/mc3/conda-bld/pathlib_1629713961906/work
pathspec @ file:///C:/Windows/TEMP/abs_581d0u45mh/croots/recipe/pathspec_1659627132171/work
patsy==0.5.2
pep8==1.7.1
pexpect @ file:///tmp/build/80754af9/pexpect_1605563209008/work
pickleshare @ file:///tmp/build/80754af9/pickleshare_1606932040724/work
Pillow==8.4.0
pkginfo @ file:///tmp/build/80754af9/pkginfo_1643162084911/work
platformdirs @ file:///C:/b/abs_73cc5cz_1u/croots/recipe/platformdirs_1662711386458/work
plotly @ file:///C:/ci/plotly_1658142442431/work```
#

pluggy @ file:///C:/ci/pluggy_1648024580010/work
poyo @ file:///tmp/build/80754af9/poyo_1617751526755/work
prometheus-client @ file:///C:/Windows/TEMP/abs_ab9nx8qb08/croots/recipe/prometheus_client_1659455104602/work
prompt-toolkit @ file:///tmp/build/80754af9/prompt-toolkit_1633440160888/work
Protego @ file:///tmp/build/80754af9/protego_1598657180827/work
psutil @ file:///C:/Windows/Temp/abs_b2c2fd7f-9fd5-4756-95ea-8aed74d0039flsd9qufz/croots/recipe/psutil_1656431277748/work
ptyprocess @ file:///tmp/build/80754af9/ptyprocess_1609355006118/work/dist/ptyprocess-0.7.0-py2.py3-none-any.whl
py @ file:///opt/conda/conda-bld/py_1644396412707/work
py-cord==2.4.0
pyasn1 @ file:///Users/ktietz/demo/mc3/conda-bld/pyasn1_1629708007385/work
pyasn1-modules==0.2.8
pycodestyle @ file:///tmp/build/80754af9/pycodestyle_1636635402688/work
pycosat==0.6.3
pycparser @ file:///tmp/build/80754af9/pycparser_1636541352034/work
pyct @ file:///C:/ci/pyct_1658488033428/work
pycurl==7.45.1
PyDispatcher==2.0.5
pydocstyle @ file:///tmp/build/80754af9/pydocstyle_1621600989141/work
pyerfa @ file:///C:/ci/pyerfa_1621560974055/work
pyflakes @ file:///tmp/build/80754af9/pyflakes_1636644436481/work
Pygments @ file:///opt/conda/conda-bld/pygments_1644249106324/work
PyHamcrest @ file:///tmp/build/80754af9/pyhamcrest_1615748656804/work
PyJWT @ file:///C:/ci/pyjwt_1657511236979/work
pylint @ file:///C:/Windows/TEMP/abs_518eqlbmoo/croots/recipe/pylint_1659110354241/work
pyls-spyder==0.4.0
PyNaCl==1.4.0
pyodbc @ file:///C:/Windows/Temp/abs_61e3jz3u05/croots/recipe/pyodbc_1659513801402/work
pyOpenSSL @ file:///opt/conda/conda-bld/pyopenssl_1643788558760/work
pyparsing @ file:///C:/Users/BUILDE~1/AppData/Local/Temp/abs_7f_7lba6rl/croots/recipe/pyparsing_1661452540662/work
pyrsistent @ file:///C:/ci/pyrsistent_1636093225342/work
PySocks @ file:///C:/ci/pysocks_1605307512533/work
pytest==7.1.2```
#

python-dateutil @ file:///tmp/build/80754af9/python-dateutil_1626374649649/work
python-lsp-black @ file:///tmp/build/80754af9/python-lsp-black_1634232156041/work
python-lsp-jsonrpc==1.0.0
python-lsp-server @ file:///tmp/build/80754af9/python-lsp-server_1648176833691/work
python-slugify @ file:///tmp/build/80754af9/python-slugify_1620405669636/work
python-snappy @ file:///C:/ci/python-snappy_1610133405910/work
pytz @ file:///C:/Windows/TEMP/abs_90eacd4e-8eff-491e-b26e-f707eba2cbe1ujvbhqz1/croots/recipe/pytz_1654762631027/work
pyviz-comms @ file:///tmp/build/80754af9/pyviz_comms_1623747165329/work
PyWavelets @ file:///C:/ci/pywavelets_1648728084106/work
pywin32==302
pywin32-ctypes @ file:///C:/ci/pywin32-ctypes_1607553594546/work
pywinpty @ file:///C:/ci_310/pywinpty_1644230983541/work/target/wheels/pywinpty-2.0.2-cp39-none-win_amd64.whl
PyYAML==6.0
pyzmq @ file:///C:/ci/pyzmq_1657615952984/work
QDarkStyle @ file:///tmp/build/80754af9/qdarkstyle_1617386714626/work
qstylizer @ file:///tmp/build/80754af9/qstylizer_1617713584600/work/dist/qstylizer-0.1.10-py2.py3-none-any.whl
QtAwesome @ file:///tmp/build/80754af9/qtawesome_1637160816833/work
qtconsole @ file:///opt/conda/conda-bld/qtconsole_1643819126524/work
QtPy @ file:///C:/ci/qtpy_1662015096047/work
queuelib==1.5.0
regex @ file:///C:/ci/regex_1658258307256/work
requests @ file:///C:/ci/requests_1657735342357/work
requests-file @ file:///Users/ktietz/demo/mc3/conda-bld/requests-file_1629455781986/work
rope @ file:///opt/conda/conda-bld/rope_1643788605236/work
Rtree @ file:///C:/ci/rtree_1618421015405/work
ruamel-yaml-conda @ file:///C:/ci/ruamel_yaml_1616016898638/work
s3transfer @ file:///C:/ci/s3transfer_1654512518418/work
scikit-image @ file:///C:/ci/scikit-image_1648214340990/work
scikit-learn @ file:///C:/ci/scikit-learn_1642617276183/work
scikit-learn-intelex==2021.20221004.171935
scipy==1.9.1```
#

Scrapy @ file:///C:/Windows/TEMP/abs_f50e21j997/croots/recipe/scrapy_1659598707153/work
seaborn @ file:///tmp/build/80754af9/seaborn_1629307859561/work
Send2Trash @ file:///tmp/build/80754af9/send2trash_1632406701022/work
service-identity @ file:///Users/ktietz/demo/mc3/conda-bld/service_identity_1629460757137/work
sip==4.19.13
six @ file:///tmp/build/80754af9/six_1644875935023/work
smart-open @ file:///C:/ci/smart_open_1651235069716/work
sniffio @ file:///C:/ci/sniffio_1614030527509/work
snowballstemmer @ file:///tmp/build/80754af9/snowballstemmer_1637937080595/work
sortedcollections @ file:///tmp/build/80754af9/sortedcollections_1611172717284/work
sortedcontainers @ file:///tmp/build/80754af9/sortedcontainers_1623949099177/work
soupsieve @ file:///tmp/build/80754af9/soupsieve_1636706018808/work
Sphinx @ file:///C:/ci/sphinx_1657617205740/work
sphinxcontrib-applehelp @ file:///home/ktietz/src/ci/sphinxcontrib-applehelp_1611920841464/work
sphinxcontrib-devhelp @ file:///home/ktietz/src/ci/sphinxcontrib-devhelp_1611920923094/work
sphinxcontrib-htmlhelp @ file:///tmp/build/80754af9/sphinxcontrib-htmlhelp_1623945626792/work
sphinxcontrib-jsmath @ file:///home/ktietz/src/ci/sphinxcontrib-jsmath_1611920942228/work
sphinxcontrib-qthelp @ file:///home/ktietz/src/ci/sphinxcontrib-qthelp_1611921055322/work
sphinxcontrib-serializinghtml @ file:///tmp/build/80754af9/sphinxcontrib-serializinghtml_1624451540180/work
spyder @ file:///C:/Windows/TEMP/abs_66k5aq_mkw/croots/recipe/spyder_1659599805372/work
spyder-kernels @ file:///C:/ci/spyder-kernels_1647011408404/work
SQLAlchemy @ file:///C:/Windows/Temp/abs_f8661157-660b-49bb-a790-69ab9f3b8f7c8a8s2psb/croots/recipe/sqlalchemy_1657867864564/work
statsmodels==0.13.2
sympy @ file:///C:/ci/sympy_1647853873858/work
tables==3.6.1
tabulate @ file:///C:/ci/tabulate_1657619055201/work
TBB==0.2
tblib @ file:///Users/ktietz/demo/mc3/conda-bld/tblib_1629402031467/work```
mystic flower
#

ehhhm

#

jaa

solid ingot
#

bitte nicht spammen @lucid furnace

lucid furnace
#

das sind alle meine installs

lucid furnace
#

das waren 12 nachrichten

#

huch

solid ingot
lucid furnace
#

ja sorry mach ich beim nöchsten mal

urban glen
#

Kommt davon, wenn man keine venv nutzt ._.

#

xD

lucid furnace
#

tue ich

#

also hatte ich

urban glen
#

Einfach den Path dazu angeben

#
from easy_pil import Font
font = Font("./fonts/deineFont.ttf")
editor.text("Hallo", (50, 50), font=font, color="white")
#

?

#

font = Font(...)

#

Da is doch font definiert

#

Da wo du es brauchst

#

In deinem text

urban glen
#

Ich glaub, du weißt nur nicht wie man es richtig nutzt

#

Bei mir läuft es perfekt

urban glen
lucid furnace
#

wie niemst du solceh ss

urban glen
#

Dann mach es 100 weiter links

frail loom
#

kennt sich jemand mit webservern aus ?

lucid furnace
#

einwinig*

urban glen
#

ein wenig*

lucid furnace
#

dan halt ein wenig*

urban glen
#

dann*

frail loom
# lucid furnace einwining

ich habe 2 subdomains auf eine ip laufen
nextcloud und Gitea

und immer wenn ich auf gitea zugreifen will muss ich den port mit hinter machen ohne das ich auf meine nextcloud stoße

lucid furnace
#

mit dem kenn ich mich nicht aus sorry

burnt prairieBOT
#
Level Up!

Herzlichen Glückwunsch @lucid furnace, du bist jetzt Level 6 🎉

Du hast insgesamt 125 Nachrichten geschrieben.

graceful steppe
#

Ich mache gerade das Tutorial zu den Bots Part8 und habe das problem das mein code den error schmeißt User hätte kein Attribut kick. Verstehe nicht ganz woher er den User auf einmal nimt weil ich mir meinbes Wissens eig den Member geben lasse.
Mein Code:
'''python

frail loom
#

+error

graceful steppe
#
import discord
from discord.ext import commands
from discord.commands import slash_command, Option

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

    @slash_command(description="Kicke einen Member")
    async def kick(self, context, member: Option(discord.Member, "Wähle einen Member")):
        try:
            await member.kick()
        except discord.Forbidden as e: #except Exception as e
            print(e)
            await context.respond("ich habe keine Berechtigung diesen Member zu kicken")
            return
        await context.respond(f"{member.metion} wurde gekickt!")

    @commands.Cog.listener()
    async def on_application_command_error(self, context, error):
        await context.respond(f"Es ist ein Fehler aufgetreten: ```{error}```")
        raise error #damit auch in der Konsole

def setup(bot):
    bot.add_cog(Admin(bot))```
#

AttributeError: 'User' object has no attribute 'kick'

solid ingot
#

wenn der User zB nicht mehr auf dem Server ist, kann es passieren, dass du ein User Objekt bekommst, obwohl du "discord.Member" angegeben hast

graceful steppe
#

in zeile 12 was nach dem try wäre

#

oh wow danke ja stimmt meinen Testuser hatte ich vorhin gekickt ohne ihn danach wieder zu joinen ups. Vielen Dank 😅

urban glen
#

@urban glen schau Dm's!

vivid sky
#

kann man per command von einem discord bot das endelon hosting py run vom bot restarten lassen?

wise stone
#

kommt darauf an wie viel Access du auf dem Server hast

vivid sky
urban glen
#

Oder was meinst du?

lucid furnace
#
  bot.load_extension(f"cogs.{filename[:-3]}")
RuntimeWarning: Enable tracemalloc to get the object allocation traceback```
urban glen
#

Schick ganzen Error

#

Der ganze Error is nie so klein

lucid furnace
#

ist der ganze error

urban glen
#

Der Komplette?

#

Dann musst du wohl bot.load_extension awaiten

lucid furnace
lucid furnace
#

hier ist der code wo der error auftritt

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

ne

urban glen
lucid furnace
#

seitdem ich zu pycharm gewechselt habe

lucid furnace
urban glen
lucid furnace
#

1

urban glen
#

Meist liegt es am Cog

#

Wenn der Fehler auftaucht

lucid furnace
urban glen
#

Vom Cog ._.

lucid furnace
#

ist zu lang

urban glen
#

FFmpeg Panda_Cry

#

sowas wie vc.stop() oder vc.start() muss awaitet werden

#

Meines wissens nach

lucid furnace
#

ich hab das von github

urban glen
#

Noch schlimmer 😭

limpid wolf
lucid furnace
#

ja aber jeder ffmpeg tut ist so scheisse

limpid wolf
#

Dann nimm was anderes shrug

lucid furnace
#

wie meint du

urban glen
urban glen
#

Obwohl ich in allem Scheiße bin xD

#

Also für 5€ Amazon Card, würde ich es für dich machen @lucid furnace

urban glen
limpid wolf
#

Versuch es erstmal selber xd @lucid furnace

limpid wolf
urban glen
#

Und Geld ist Alles

#

Und Alles kostet Geld

limpid wolf
#

Xd

lucid furnace
#

ich mach es nicht für geld

urban glen
#

Ja, ich mach es aber für geld ._.

lucid furnace
#

und ich gebe kein geld für etwas das ich selber machen kann aus

urban glen
#

Aber "selber machen", heißt auch "selber machen", also nix Copy & Paste

lucid furnace
#

hab ich doch-_-

urban glen
#

Da hast du doch zugegeben das es copy & paste is

lucid furnace
#

-_-

#

ja "das"

#

also wie fix ich jetzt das problem

urban glen
#

kein FFmpeg nutzen

lucid furnace
#

._.

urban glen
#

@safe tendon

#

Wie in deinem Beispiel

#

@safe tendon was mach ich falsch 😭

#

xD

safe tendon
#

If name könnte srin

urban glen
safe tendon
#

Die Version ist noch nd stable

urban glen
#

Is genau wie in deinem Beispiel

safe tendon
#

Muss noch mich noch dran kümmern

#

Bald kommt noch eine custom gui

urban glen
# urban glen Is genau wie in deinem Beispiel

Laut deinem Code, müsste channels=1, rate=44100, record_time=10 eigentlich in audio.start_recording rein, also -> audio.start_recording(channels=1, rate=44100, record_time=10)
Und beim AudStreamer muss der file name rein

#

Aber danach passiert nix mehr

safe tendon
#

Ka was da gerade los ist kümmere mich morgen darum

urban glen
#

Hab das weg gemacht, jetzt wird wenigstens "Recording..." geprintet xD

safe tendon
#

Wie gesagt der code ist nd stable und ist gerade erst gemacht wurden aber wird noch verbessert

urban glen
#

Kann dir den Code geben

#

Wenn du willst

#

@safe tendon soll ich dir schicken?

#

Dann kannst du den so übernehmen, und der funktioniert auch

lucid furnace
#

ich krieg diesen error jedes mal wenn ich !play {url} mache

urban glen
#

Da möchte wohl jemand nen Ban von Discord

lucid furnace
#

hääää

#

also dieser acc juckt nd

urban glen
#

Musik Bot's mit YouTube zu machen, ist gegen die Terms of Service

urban glen
#

Es is aber verboten

#

Steht in den YouTube Terms und Discord Terms

#

Deshalb steigen alle auch auf SoundCloud um ._.

lucid furnace
#

hilfst du mir aber

urban glen
lucid furnace
#

wow ok ist ok wie wechsel ich mein code zu sound cloud

urban glen
lucid furnace
#

wie geht wavelink kannst du mir die docs senden wens welche gibt

urban glen
#

Aber erstmal solltest du dir nen lavalink server holen doggosmile

#

Oder hosten

#

oder du nimmst welche von dieser Seite :D

#

Müsste genauso in pycord gehen

safe tendon
urban glen
thick haven
urban glen
thick haven
#

Wenn es dir nicht passt melde mich doch

urban glen
thick haven
#

ist doch egal?

indigo sapphire
#

hallo leute hätte fragen zu button.

kann man mit button drücken den label name (text) ändern?

urban glen
#

Wie wärs mit mehr code und error?

#

Und hast du die Klammer geschlossen?

#

Als screenshot?

#

Bin handy, weil schule

urban glen
#

Musst du im font angeben

#

font = Font('…', size=22)

vivid sky
# urban glen

wie macht man diese Hintergründe sieht voll geil aus

urban glen
vivid sky
urban glen
#

Xshare

old ore
#

kann mir jemand helfen?

urban glen
#

Aktivier case_insensitive, da wo du deinen Bot definiert hast

#
bot = commands.Bot(case_insensitive=True)
#

So z.B.

#

Aber halt mir prefix

#

Weil du führst den Command aus, schreibst T aber klein, aber in deinem Code steht das T groß

#

Und wenn du case_insensitive=True machst, dann is es egal ob groß oder klein

old ore
#

kann mir dabei wer helfen bzw was muss ich vor load config schreiben mir ist nichtts weiter als das eingefallen

urban glen
#

In den docs steht nix von _load_config

old ore
urban glen
#

Wie kommst du da drauf, dass sowas existiert?

#

Erstell ein Post

#

Dann sehen die Leute das eher und können dir helfen

old ore
old ore
urban glen
#

Schick doch mal code von _load_config

#

Als screenshot

urban glen
urban glen
old ore
urban glen
old ore
urban glen
#

Junge…

#

Schick doch mal code von _load_config

#

Was is denn _load_config

#

Zeig mir den code mal davon

old ore
#
@bot.command()
async def add_Twitch(ctx, *channels: str):
        """
        Add Twitch channels to the notification list.
        """
        if not channels:
            embed = discord.Embed(
                title=":error: Error",
                description="you didn't send me a twitch channel",
                color=0x9461cb
            )
            await ctx.send(embed=embed)
            return

        config = _load_config(bot)

        if "twitch_channels" not in config:
            config["twitch_channels"] = []

        for channel in channels:
            if channel not in config["twitch_channels"]:
                config["twitch_channels"].append(channel)

        _save_config(config)

        embed2 = discord.Embed(
            title="Successfull",
            description="Your Twitch name was saved successfull!",
            color=0x9461cb
        )

        await ctx.send(embed = embed2)

def _load_config(bot):
        """
        Load the bot configuration from the config.json file.
        """
        if not os.path.exists("config.json"):
            return {}

        with open("config.json", "r") as f:
            return json.load(f)

def _save_config(bot, config):
        """
        Save the bot configuration to the config.json file.
        """
        with open("config.json", "w") as f:
            json.dump(config, f, indent=4)

@staticmethod
def get_twitch_channels() -> List[str]:
        """
        Get the list of Twitch channels to be notified.
        """
        config = _load_config(bot)

        if "twitch_channels" not in config:
            return []

        return config["twitch_channels"]```
old ore
urban glen
#

Als screenshot

urban glen
#

Nicht vom command

#

Sondern dein _load_config

old ore
urban glen
#

Ey du machst mich grad sauer

#

Dein _load_config Code Abschnitt

old ore
#

es ist das erste mal das ich mit json arbeite und da ich keine anhalte punkte habe habe ich keine wirkliche ahnung davon

old ore
#

oder das

indigo sapphire
indigo sapphire
#

Wie denn?

#

Sogar ChatGPT ist lost

old ore
solid ingot
old ore
#

nachdem er gedrückt hat

solid ingot
#

ja

indigo sapphire
solid ingot
#

hast du eine button klasse oder eine view klasse?

indigo sapphire
#

Hab es self.button.label("hello") gemacht

indigo sapphire
solid ingot
#

async def klasse?

solid ingot
indigo sapphire
#

Joa um dann mit diese classe zum Beispiel über eine andere Button den label zu ändern wie zB #1074816451426394236

indigo sapphire
#

Self.label = "hello"

#

Self.label("hello")?

solid ingot
#

eins davon ist richtig

#

überleg mal welches davon ein attribut ist und welches eine klasse

indigo sapphire
indigo sapphire
#

Muss ich da noch awaiten?

old ore
#

Könnte mir jmd helfen

indigo sapphire
solid ingot
#

schick doch mal die save_config methode

old ore
solid ingot
#

die die du in deinen Code aufrufst

urban glen
#

ChatGPT kann nicht die Lösung für alles sein

tawdry leaf
old ore
#

das?

solid ingot
#

ja

#

du hast da bot und config als parameter, aber du übergibst nur eine sache

burnt prairieBOT
#
Level Up!

Herzlichen Glückwunsch @old ore, du bist jetzt Level 10 🎉

Du hast insgesamt 289 Nachrichten geschrieben.

Du hast <@&1032921984612433952> erhalten!

old ore
graceful steppe
#

Was mache ich Falsch?

import discord
from discord.ext import commands
from discord.commands import Option, slash_command

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

    @slash_command()
    async def wait(self, context):
        await context.respond("Gib eine Zahl ein!")

        answer = self.bot.wait_for("message")

        await answer.reply(f"Du hast die Zahl {answer.content} eingegeben.")

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

Error: Application Command raised an exception: AttributeError: 'coroutine' object has no attribute 'reply'

burnt prairieBOT
#
Level Up!

Herzlichen Glückwunsch @graceful steppe, du bist jetzt Level 2 🎉

Du hast insgesamt 9 Nachrichten geschrieben.

Du hast <@&1042123300970696705> erhalten!

mystic flower
#

Wie kann ich loggen wenn ein member den server boostet ?

solid ingot
graceful steppe
#

habe ich in der doku auch gerade gefunden. (in deinem Tutorial dazu "fehlt" es aber oder wurde damals nicht benötigt)

solid ingot
mystic flower
graceful steppe
mystic flower
solid ingot
graceful steppe
mental hamlet
solid ingot
mystic flower
#

okay

mental hamlet
#

timo hat nen loop gemacht

solid ingot
#

ne

#

ohne loop

mental hamlet
wise stone
#

hab ich so gemacht kekw

#

ist mein code

mystic flower
mental hamlet
wise stone
#

nvm

solid ingot
#

bruh

mental hamlet
#

ah btw. noch ne Möglichkeit:

for guild in self.bot.guilds:
    for member in guild.premium_subscribers:
                ...
mystic flower
#

Danke

#

in was für nen event soll das ?

mental hamlet
#

kein event

mystic flower
#

wie denn xD

mental hamlet
#

dein cmd / da wo du es haben willst

mystic flower
#

ich will die ja nicht abfragen sondern abfragen wenn einer boostet also in ein event

#

also wenn einer den server boostet das der ne nachricht bekommt

mental hamlet
#

aso dann das wo ich dir gesagt habe

mystic flower
#

ja und wie mache ich das jetzt ?

solid ingot
#

ich würd's dann über die Booster rolle machen, also on_member_update müsste das sein

mystic flower
#

wie kann ich machen wenn er die rolle bekommt dann schreibt er das also mit on_member_update aber ich will ja nur die rolle und nicht die anderen

mental hamlet
#

?

#

mach ne if abfrage

mystic flower
#

ja aber wie kann ja ned machen if member.got_role(id ):oder ?

mental hamlet
#

schau dir mal die member update params an ^^

mystic flower
#

ja self, before und after

mental hamlet
#

schau after

#

und was ist after?

mystic flower
#

nach dem update

mystic flower
#
    @commands.Cog.listener()
    async def on_member_update(self, after, member):
        if boosterrole in after.roles:
            dm = await member.create_dm()
            channel = await self.bot.fetch_channel(boosterchannel)
            await dm.send("Thank you for boosting the server!")
            await channel.send(f"{after.mention} has boosted the server!")```
Es kommt kein error
#

aber es geht auch nicht

#
import discord
from discord.ext import commands
from discord.commands import slash_command, options

boosterrole = [1076141106129027173]

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

    @commands.Cog.listener()
    async def on_member_update(self, after, member):
        boosterchannel = 1076225443193176104
        for role in boosterrole:
            if role in after.roles:
                dm = await member.create_dm()
                channel = await self.bot.fetch_channel(boosterchannel)
                await dm.send("Thank you for boosting the server!")
                await channel.send(f"{after.mention} has boosted the server!")





def setup(bot):
    bot.add_cog(boost(bot))```
solid ingot
mystic flower
#

okay

solid ingot
#

dann würdest du nämlich sehen, dass boosterrole eine liste mit einer ID ist, aber after.roles eine Liste mir role objekten ist.
boosterrole wird also nicht in after.roles vorkommen

mystic flower
#

ja

#

also was muss ich machen ?

solid ingot
#

prüfen, ob die rolle in after.roles vorkommt

#

dazu gibt es einige möglichkeiten, zb mit guild.premium_subscriber_role oder mit der ID

mystic flower
# solid ingot dazu gibt es einige möglichkeiten, zb mit `guild.premium_subscriber_role` oder m...
   @commands.Cog.listener()
    async def on_member_update(self, after, member):
        guild = self.bot.get_guild(1075856951772196964)
        boosterrole = guild.premium_subscriber_role
        boosterchannel = 1076225443193176104
        print("User has boosted the server.")
        for role in boosterrole:
            if role in after.roles:
                dm = await member.create_dm()
                channel = await self.bot.fetch_channel(boosterchannel)
                await dm.send("Thank you for boosting the server!")
                await channel.send(f"{after.mention} has boosted the server!")```
so?
solid ingot
#

probiers aus

#

ich denke aber nicht

#

boosterrole ist keine liste, also kannst du auch keine for schleife damit machen

mystic flower
#

Okay

mystic flower
#

wie kann ich die id von jmd der gepingt wird rausbekommen ? mache das jetzt so nur kann daraus keine id bekommen message.mentions

solid ingot
#

wieso kannst du daraus keine IDs bekommen

mystic flower
#

wenn ich message.mentions.id dann bypasst er das udn gibt nen error das man das nicht machen kann

#

@solid ingot

solid ingot
#

dann benutzt du es wohl falsch

mystic flower
#

jap

solid ingot
#

schau dir mal genau an was message.mentions für ein typ ist

mystic flower
solid ingot
#

in den docs steht es

mystic flower
#

eine list

solid ingot
#

sehr gut

mystic flower
#

ja also mit for schleife richtig ?

solid ingot
#

zum beispiel

mystic flower
#

okay

vivid sky
#
discord.errors.ApplicationCommandInvokeError: Application Command raised an exception: JSONDecodeError: Expecting value: line 1 column 1 (char 0)

Was bedeutet dieser fehler?

mystic flower
#

Danke

old ore
#

hallo Leute, Ich habe Probleme bei meiner twitch.py datei, undzwar gibt sie mir den im anhang gezeigten error und ich weiß nicht wieso. Ich hoffe auf Baldige hilfe.
MfG

das ist der code:

import json
import requests
from datetime import datetime

import requests

with open("config.json") as config_file:
    config = json.load(config_file)


def get_app_access_token():
    params = {
        "client_id": config["client_id"],
        "client_secret": config["client_secret"],
        "grant_type": "client_credentials"
    }

    response = requests.post("https://id.twitch.tv/oauth2/token", params=params)
    access_token = response.json()["access_token"]
    return access_token


def get_users(login_names):
    params = {
        "login": login_names
    }

    headers = {
        "Authorization": "Bearer {}".format(config["access_token"]),
        "Client-Id": config["client_id"]
    }

    response = requests.get("https://api.twitch.tv/helix/users", params=params, headers=headers)
    return {entry["login"]: entry["id"] for entry in response.json()["data"]}


def get_streams(users):
    params = {
        "user_id": users.values()
    }

    headers = {
        "Authorization": "Bearer {}".format(config["access_token"]),
        "Client-Id": config["client_id"]
    }

    response = requests.get("https://api.twitch.tv/helix/streams", params=params, headers=headers)
    return {entry["user_login"]: entry for entry in response.json()["data"]}


online_users = {}


def get_notifications():
    users = get_users(config["twitch_channels"])
    streams = get_streams(users)

    notifications = []
    for user_name in config["twitch_channels"]:
        if user_name not in online_users:
            online_users[user_name] = datetime.utcnow()

        if user_name not in streams:
            online_users[user_name] = None
        else:
            started_at = datetime.strptime(streams[user_name]["started_at"], "%Y-%m-%dT%H:%M:%SZ")
            if online_users[user_name] is None or started_at > online_users[user_name]:
                notifications.append(streams[user_name])
                online_users[user_name] = started_at

    return notifications
wise stone
#

also der Inhalt nicht richtig formatiert wurde

old ore
vivid sky
#

wie erhalte ich alle commands in der main.py?

#

also den namen

solid ingot
#

ich würde dir empfehlen, cogs zu nutzen

wise stone
lucid furnace
#

wie önder ich den interpreter pfad in pycharm jedes mal wenn ich es mach geht das installations ding auf

solid ingot
#

settings -> project -> interpreter

lucid furnace
#

ja aber wie gesagt es öfnet das installations ding von python

lucid furnace
urban glen
#

Weil mit "es öffnet das installations ding" kann man nicht viel anfangen

solid ingot
lucid furnace
urban glen
urban glen
solid ingot
urban glen
lucid furnace
#

haha

urban glen
#

lustig Cringe

graceful steppe
solid ingot
#

hm, versuch vlt mal das symbol reinzukopieren: \😅

graceful steppe
#

ach habe meinen Fehler gerade gefunden muss ja das emoji erst abschicken bevor ich es rasukopiere \😅

#

Aber trotzdem Danke für die schnelle Hilfe

graceful steppe
#

Und ich hänge schon wieder:

import discord
from discord.ext import commands
from discord.commands import Option, slash_command

import asyncio

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

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

    @slash_command()
    async def select1(self, context):
        await context.respond("Wähle Sprachen", view=SelectView())

    @slash_command()
    async def select2(self, context):
        select = SelectClass()
        select.append_option(keks)
        view = discord.ui.View(timeout=None)
        view.add_item(select)
        await context.respond("Wähle Sprachen", view=view)

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

options = [
        discord.SelectOption(label="Python", description="Python Beschreibung", value="py"),
        discord.SelectOption(label="Bla", description="Beschr."),
    ]

keks = discord.SelectOption(label="Test", emoji="🎉")

class SelectView(discord.ui.View):
    def __init__(self):
        super().__init__(timeout=None)


    @discord.ui.select(
        min_values=1,
        max_values=2,
        placeholder="Triff eine Auswahl",
        options=options,
        custom_id="pups",
    )
    async def select_callback(self, select, interaction):
        if "Python" in select.values:
            label = [option.label for option in select.options]
            if "Test" not in label:
                select.append_option(keks)
            else:
                select.disabled = True

            await interaction.response.edit_message(view=self)
        else:
            s = ""
            for auswahl in select.values:
                s += f"- {auswahl}\n"

            await interaction.response.send_message(f"Du hast folgendes ausgewählt:\n{s}")

#
class SelectClass(discord.ui.Select):
    def __init__(self):
        super().__init__(
            min_values=1,
            max_values=1,
            placeholder="Triff eine Auswahl",
            options=options,
        )

    async def callback(self, interaction):
        await interaction.response.send_message(f"Du hast {self.values[0]} asugewählt!")

Ich habe das problem das das Select-Menu sich nicht aktualisiert wenn ich nur "Python" ausgewählt habe sonder gleich die Antwort kommt "Du hast ... ausgewählt.

graceful steppe
#

Also irgendwie ist heute der Wurm drin und ich finde ihn nicht:

import discord
from discord.ext import commands
from discord.commands import Option, slash_command
from discord.ext.pages import Paginator, Page
class TestPage(commands.Cog):
    def __init__(self, bot):
        self.bot = bot

    @slash_command()
    async def page(self, context):
        pages = [
            Page(embeds=[discord.Embed(title="Keks", color=discord.Color.yellow())]),
            Page(content="Du stinkst")
        ]
        paginator = Paginator(pages=pages, show_disabled=False, timeout=None)
        #paginator.remove_button("first") # wenn man die button gar nicht haben möchte
        #paginator.remove_button("last")

        await paginator.respond(context.interaction)

    @slash_command()
    async def memberlist(self, context):
        members = context.guild.members
        pages = []
        description = ""

        for index, member in enumerate(members):
            description += f"{member}\n"

            if (index + 1) % 10 == 0:
                embed = discord.Embed(title="Memer List", description=description, color=discord.Color.green())
                page = Page(embeds=[embed])
                pages.append(page)
                description = ""

        paginator = Paginator(pages=pages)

        await paginator.respond(context.interaction)

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

Error: TypeError: 'NoneType' object is not iterable

#

kommt wenn ich /memberlist versuche aufzurufen. /page funktioniert

graceful steppe
urban glen
#

context

#

Warum ._.

#

mach doch einfach ctx xD

vivid sky
#
Traceback (most recent call last):
  File "C:\Users\bobby\PycharmProjects\rdwbot\main.py", line 31, in <module>
    bot = discord.Bot(command_prefix='$', activity=activity, status=discord.Status.online, intents=discord.Intents.all())
AttributeError: module 'discord' has no attribute 'Bot'

Warum bekomme ich das immer obwohl ich das package heruntergeladen habe?

mystic flower
#

Mach Mal pip freeze in deiner console

#

Und schick das hier rein

#

@vivid sky

vivid sky
#

in der pycharm console?

#

@mystic flower

mystic flower
#

Mach Mal pip uninstall pycord
Und pip uninstall py-cord

#

Und danach wieder pip Install py-cord

#

@vivid sky

vivid sky
#

immernoch

mystic flower
#

Welche Version hast du ?

vivid sky
mystic flower
#

Oder mach Mal nicht discord.Bot sondern commands.Bot

mystic flower
vivid sky
#
Traceback (most recent call last):
  File "C:\Users\bobby\PycharmProjects\rdwbot\main.py", line 187, in <module>
    @bot.slash_command(guild_ids=[settings["guildID"]], name="whitelist", description="Whitelist a person to use the bot.")
AttributeError: 'Bot' object has no attribute 'slash_command'. Did you mean: 'add_command'?

und das?

mystic flower
#

Ohne bot.

vivid sky
mystic flower
#

Glaube das das egal ist

vivid sky
#
Traceback (most recent call last):
  File "C:\Users\bobby\PycharmProjects\rdwbot\main.py", line 188, in <module>
    @slash.command(guild_ids=[settings["guildID"]], name="whitelist", description="Whitelist a person to use the bot.")
NameError: name 'slash' is not defined. Did you mean: 'hash'?
Process finished with exit code 1
graceful steppe
# urban glen Warum ._.

weil ich gerne lesbaren/verständlichen code schreibe. Weiß ich einfach später schneller wieder was ich da für nen müll zusammengecodet habe. Versuche möglichst sprechende bezeichnungen zu nutzen IDE übernimmt ja das schreiben also egal wie lang

vivid sky
mental hamlet
#

Von dem Fehlercode halt

#

( der wo Fehler hat )

vivid sky
limpid wolf
#

Bin grade lost, hat wer von euch nh anhnung wie man nochmal die message id ausliest (von der nachricht die der bot grade selber gesendet hat)

mental hamlet
#

respnd msg oder channel msg

limpid wolf
#

msg in dms

limpid wolf
#

Brauche halt nur die id von der Nachricht, die der Bot selber gesendet hat

mental hamlet
limpid wolf
#

oh okay wow xd danke

old ore
#

wieso tut sich hier nichts

solid ingot
#

wahrscheinlich wegen dem error

#

der key "data" scheint nicht in deinem json vorzukommen

old ore
#

denn gibt es auch nicht ich dachte des geht so?

solid ingot
#

du solltest die Errors in deiner Konsole schon beachten

old ore
solid ingot
#

meinst du innerhalb des embeds?

#

gepingt wird die rolle nur, wenn die außerhalb steht

obtuse estuary
#
Ignoring exception in modal <Systeme.ticket_sys.ReasonModal object at 0x000001A6D27C28C0>:
Traceback (most recent call last):
  File "C:\Users\Linus\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\ui\modal.py", line 341, in dispatch
    await value.callback(interaction)
  File "c:\Users\Linus\Desktop\Wolkenlos\WolkenlosBot\Systeme\ticket_sys.py", line 91, in callback
    await db.execute("INSERT OR IGNORE INTO Ticket_sys (ticket) VALUES (?)", (ticket_channel.id))
  File "C:\Users\Linus\AppData\Local\Programs\Python\Python310\lib\site-packages\aiosqlite\core.py", line 184, in execute
    cursor = await self._execute(self._conn.execute, sql, parameters)
  File "C:\Users\Linus\AppData\Local\Programs\Python\Python310\lib\site-packages\aiosqlite\core.py", line 129, in _execute
    return await future
  File "C:\Users\Linus\AppData\Local\Programs\Python\Python310\lib\site-packages\aiosqlite\core.py", line 102, in run
    result = function()
ValueError: parameters are of unsupported type```
#

Warum kommt dieser Fehler bei dem Code?

    async def callback(self, interaction):

        server = interaction.user.guild
        grund = self.children[0].value
        cat = server.get_channel(1038842378494169140)
        user = interaction.user
        ticket_channel = await interaction.guild.create_text_channel(f"Allgemeines Ticket - {interaction.user}",
                                                                     category=cat,
                                                                     topic=f"Allgemeines Ticket - {interaction.user}")
        print(ticket_channel.id)
        async with aiosqlite.connect("wolkenlos.DB") as db:
            await db.execute("INSERT OR IGNORE INTO Ticket_sys (ticket) VALUES (?)", (ticket_channel.id))
            await db.execute("INSERT INTO Ticket_sys (user, grund) VALUES (?, ?)", (user.id, grund))
            await db.commit()```
#

Ich bin dumm Timo :c

#

:d

#

Hier hab ich die DB erstellt:

    @commands.Cog.listener()
    async def on_ready(self):
        async with aiosqlite.connect("wolkenlos.DB") as db:
            await db.execute(
                """
                CREATE TABLE IF NOT EXISTS Ticket_sys (
                ticket INTEGER PRIMARY KEY,
                user INTEGER DEFAULT 0,
                grund STRING DEFAULT 0
                )"""
            ) ```
obtuse estuary
#

ah thx

urban glen
#

hast nh komma vergessen

obtuse estuary
#

ja habs gerade bemerkt xD

solid ingot
#

du hast ein komma vergessen

obtuse estuary
#

Ach was

solid ingot
#

ich helfe immer gerne

obtuse estuary
#

xD

urban glen
obtuse estuary
solid ingot
#

hm also der erledigt hier wichtige aufgaben das geht nicht

urban glen
#

Er gehört hier weg

solid ingot
#

nein muss man nicht

urban glen
#

Must be 1024 or fewer in length.

paper iris
#

?

mystic flower
urban glen
storm seal
#

Mein tolles Ticket system ist ja überall

urban glen
#

Mach ich grad zurzeit nämlich xD

urban glen
#

Mit viel viel mehr features

storm seal
#

discord in chromegrrrrr

urban glen
#

ne

#

Wirst es irgendwann sehen wie ich es meine

tawdry leaf
urban glen
tawdry leaf
urban glen
open dragon
#

Ich habe bot bei de rklasse definiert

tawdry leaf
#

code ?

old ore
#

kann mir bitte jmnad dabei helfen?

solid ingot
#

der Code den du geschickt hast gehört nicht zum Error

#

und arbeite bitte mit cogs

tawdry leaf
#

Zeitverschwendung finde ich

solid ingot
tawdry leaf
tawdry leaf
#

das hat mich nicht überzeugt

#

nochmal eines 😄

solid ingot
#

ne du

tawdry leaf
#

manno

open dragon
burnt prairieBOT
#
Level Up!

Herzlichen Glückwunsch @open dragon, du bist jetzt Level 15 🎉

Du hast insgesamt 1,018 Nachrichten geschrieben.

Du hast <@&1024276907136663562> erhalten!

tawdry leaf
#

weil da ist bisschen schlecht

open dragon
#

Ne leider net

#
@slash_command(description="Ping Pong! Send a Pong!")
    async def ping(self, ctx):
        await ctx.respond(f"Pong! {bot.latency * 1000}ms")
#

@tawdry leaf gensuso kopiert

solid ingot
#

bot ist nicht definiert

open dragon
solid ingot
#

dann schick mal den code wo du deinen bot definiert hast

open dragon
#

Funktioniert.

old ore
burnt prairieBOT
#
Level Up!

Herzlichen Glückwunsch @graceful steppe, du bist jetzt Level 3 🎉

Du hast insgesamt 23 Nachrichten geschrieben.

urban glen
#

Das ist, damit dein Code strukturiert ist und nicht jeder scheiß in der main file landet

#

Und wow, vor bot noch ein self zu setzten ist ja sooo schwierig

#

xD

thick haven
#

Da findet man Sachen doch auch viel schneller

urban glen
limpid wolf
#

Wenn ich z.b. alles in der main hätte, würde ich absolut nichts wiederfinden. Ich hab ja jetzt mit cogs schon in manchen Codes Probleme

indigo sapphire
#

Du kannst zB teil deines Code schon für den bot veröffentlichen.

graceful steppe
indigo sapphire
#

xD

#

Das war für mich ein Segen mit Cogs da hab ich zB eine Funktion fertig und arbeite noch an andere. Segen auf cogs

#

Zusätzlich ist Code teilen einfacher anstatt sein ganze bot zu schicken

graceful steppe
#

Wäre cool wenn jemand hier mal nochmal drauf schauen könnte finde einfach meinen Fehler nicht: #1019974414487535736 message

solid ingot
#

wie meinst du das genau mit es aktualisiert sich nicht?

graceful steppe
#

Bei dir im Tutorial wenn man Python auswählt bekommt man eine Weitere Auswahl bei mir kommt einfach nur die respond vom Bot du hast Python ausgewählt. Habe eig nur versucht dein Beispiel nachzucoden

solid ingot
#

hm, das ist eigentlich die response von SelectClass und nicht die von SelectView

graceful steppe
#

Bis darauf das ich in der Option das label="Test" habe und nicht "Keks" sehe ich keinen unterschied zwischen deinem und meinem Code. Aber sie kommen zu unterschiedlichen Ergebnissen. 🤔

mystic flower
#

kennt sich wer mit pyyaml aus ?

urban glen
#

Bestimmt jemand

old ore
limpid wolf
#
    @slash_command(description='Stelle ChatGPT eine Frage')
    @commands.guild_only()
    async def ask(self, ctx, question: Option(str, description="Deine Frage")):
        msg = await ctx.respond(f"Please wait ...")

        # Hier ist normalerweise dann die Anfrage an ChatGPT

        print(completion.choices[0].message)
        messageeee = f"**{question}**"
        answer = f"{completion.choices[0].message.content}"
        await msg.edit(f"{messageeee} {answer}")

Das Print Event funktioniert soweit. Der Fehler liegt bei await msg.edit(f"{messageeee} {answer}") jedoch weiß ich leider nicht was genau ich falsch mache. Hat jemand von euch eine Idee?

solid ingot
#

ctx.respond() gibt keine message zurück, sondern eine interaction. das hier sollte dir helfen: #1019974414487535736 message

wise stone
#

@solid ingot anpinnnen pls

urban glen
limpid wolf
urban glen
#

Wie mach ich das wenn jemande beitritt automatisch seine Bio gechanged wird?

limpid wolf
mental hamlet
#

die kann man nicht administrieren

#

spontan weiß ich auch nd wie man die überhaupt ausliest

solid ingot
#

das geht auch nicht

mental hamlet
#

xD

urban glen
#

die nitro ding

mental hamlet
#

nein geht nd

urban glen
#

amk

#

was laberst du das geht

mental hamlet
mental hamlet
urban glen
#

ich hab es ja schon gesehen

#

JUNGE WEIL DU DICH IN DEN USER EINLOGGST????

mental hamlet
#

?

urban glen
#

ein programm wo du dich in den user einloggst, da dann die bio changst?

#

und jetzt komm nicht "du kannst dich nicht eif einloggen" das hab ich schon gemacht

limpid wolf
urban glen
#

ja das war aber nd meine frage

solid ingot
#

sich in andere Accounts einzuloggen ist definitiv gegen die TOS

urban glen
#

ich will ja die BIO auf dem SERVER ändern

urban glen
solid ingot
#

doch

urban glen
#

ja

#

das sind ja meine

solid ingot
#

dann sag das doch

urban glen
#

bruh

solid ingot
#

glaube aber trotzdem nicht dass das geht

urban glen
#

ich hab es schon gesehen das das geht

#

bei jemanden

solid ingot
#

vlt hab ich's auch falsch verstanden

urban glen
#

programm => Einloggen => About Me changen

#

aber nur für einen bestimmten server

#

also

mental hamlet
#

nein das ist generell gegen die TOS

#

das nennt man selfbotting

#

was 100% gegen die TOS ist

urban glen
#

wenn man sich in einen account per programm einloggt?

#

aha

limpid wolf
dense magnet
urban glen
#

echt?

burnt prairieBOT
#
Level Up!

Herzlichen Glückwunsch @severe citrus, du bist jetzt Level 6 🎉

Du hast insgesamt 170 Nachrichten geschrieben.

urban glen
#

lol

#

Ok

#

Meinst du den Pfad von deinem Projekt?

#

Also das da steht, dass du dich in helloworld.py befindest oder so?

#

Oder das

tawdry leaf
limpid wolf
tawdry leaf
#

das als freiwilliger Helfer mal aussortieren 😦

limpid wolf
tawdry leaf
limpid wolf
#

Gibt doch ntmal so viele? Und wenn wir weiterschreiben lass thread aufmachen xd

burnt prairieBOT
#
Level Up!

Herzlichen Glückwunsch @limpid wolf, du bist jetzt Level 14 🎉

Du hast insgesamt 862 Nachrichten geschrieben.

limpid wolf
#

Oder ne geht nt haha dann chat oder so

mental hamlet
tawdry leaf
#

gehört halt zu basics...

indigo sapphire
#

hallo leute kann mir jemand da helfen um den label zu ändern?

#
#---Button configuration---
# Next & Back Pageing
class PageCounter(discord.ui.Button):
    def __init__(self, UserID: int, pages):
        super().__init__(
            label=f'1/{len(pages)}',
            disabled=True,
            style=discord.ButtonStyle.gray,
        )

        self.UserID = UserID
        self.pages = pages
        self.page_number = 0

        # Update the label initially
        #asyncio.create_task(self.update_label())
    
    async def update_label(self):
        async with aiosqlite.connect(os.getenv('UserConfigSQL')) as db:
            async with db.execute('SELECT PageTemp FROM UserConfig WHERE UserID = ?', (self.UserID,)) as cursor:
                page_number_tuple = await cursor.fetchone()
                if page_number_tuple is None:
                    page_number = 0
                else:
                    page_number = page_number_tuple[0]
                
                self.page_number = page_number

            self.label = f'{self.page_number+1}/{len(self.pages)}'
            print(self.label)

    async def callback(self, interaction):
        self.disabled = True
#

self.label = f'{self.page_number+1}/{len(self.pages)}'
print(self.label)

solid ingot
#

nach der label änderung musst du noch die message bearbeiten

indigo sapphire
#

öhm wie?

#

ich möchte aber nicht den view ändern

solid ingot
#

naja wenn du das label änderst, machst du doch änderungen am view

indigo sapphire
#

das ist dass problem:

indigo sapphire
#

mal anders wie kann ich mit custom_id den label ändern?

#

etwa so`

# Ändere das Label des 'Pizza'-Buttons
            for child in self.children:
                if isinstance(child, discord.ui.Button) and child.custom_id == 'pizza':
                    child.label = 'Neue Label-Bezeichnung'
#

quelle chatgpt

limpid wolf
tawdry leaf
indigo sapphire
#

i see

#

wie kann ich das denn machen?

limpid wolf
#

Jemand nh Ahnung was das Bedeutet?

urban glen
#

code?

limpid wolf
#

Liegt nicht am Code. Den error bekomme ich das erste mal. Das automatische ändern des Status hat auch vor dem error geklappt. Ich will nur wissen was dieses closed gareway bedeutet

tawdry leaf
rose epoch
thick haven
#

ii json 🤮

quiet socket
#
Traceback (most recent call last):
  File "C:\Users\Georgi\Documents\Georgi\DEVELOPMENT\PYTHON\EUROPE VERSE BOTS\SPACE X SYSTEM NEW\main.py", line 2, in <module>
    from discord.commands import slash_command, Option
  File "C:\Users\Georgi\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\commands\__init__.py", line 26, in <module>
    from .context import *
  File "C:\Users\Georgi\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\commands\context.py", line 29, in <module>
    import discord.abc
ModuleNotFoundError: No module named 'discord.abc'

Process finished with exit code 1```
#

der gibt mir immer diesen fehler raus

#

ich habe d.py deinstalliert

solid ingot
#

installier pycord nochmal neu

quiet socket
#

wieso unterstreicht der das immer rot?

#

obwohl das richtig ist

#

hat sich geklärt

urban glen
#

Aber gut das du das Problem selbst gelößt hast

burnt prairieBOT
#

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

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

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

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

▶ Play video
hushed trellis
#

Wie kann ich Checken ob ein User eine Rolle hat bzw. ob mehrere User dann eben diese Rolle haben um dann den Nickname der Personen mit dieser Rolle zu ändern zbsp Staff | Name

solid ingot
#

eine möglichkeit wäre die rolle zu laden und dann eine if bedingung zu erstellen: ```py
if role in user.roles

urban glen
hushed trellis
#

Is gut

#

Danke euch beiden

solid ingot
#

das hab ich in dem video auch gezeigt

#

code?

#

andersrum

#

ein followup geht erst nachdem du die eigentliche response gesendet hast

#

so wie im video

urban glen
#

ja

#

Sorry?

quiet socket
#

sende ich mehrere embeds so ab?

solid ingot
#

nein

quiet socket
#

wie dann?

#

soll ich ganzen code reinschicken?

solid ingot
#

em und embanner sind doch nur Strings, du musst schon richtige embeds definieren

#

aber die Antwort auf die Frage "funktioniert das so" ist eigentlich immer "probiers aus", das geht am schnellsten

quiet socket
#
raise errors.ExtensionFailed(key, e) from e
discord.errors.ExtensionFailed: Extension 'cogs.owner' raised an error: IndentationError: unexpected indent (owner.py, line 59)```
solid ingot
#

doppelpunkt hinter die if bedingung

urban glen
urban glen
#

SL_typing Psychopath is typing...

open dragon
#

Kann mir jemand helfen muss machen dass wen ein User joint ein welcome bannere gesendet wird, habe ich gemacht, aber jetz auch muss da stehen "User eingeladed von" und weiß net wie ich es machen muss?

open dragon
urban glen
#

?

open dragon
#

also bei f"" muss ich da ja einfügen aber wie?

#

einfav

#

f"for invite...."

urban glen
#

Nein ._.

open dragon
#

wie den

urban glen
#

Du gehst durch die for loop, dann definierst du den inviter, und dann setzt du den inviter.name in deinen text

#

Aber wait

open dragon
#

eh

urban glen
#

Wait

#

Glaube das würde so garnd funktionieren

#

xD

#

Also wie oben auf meinem Screenshot

open dragon
#

muss es abe im text haben

solid ingot
#

um den inviter rauszufinden, musst du alle invites in einer Datenbank tracken

solid ingot
urban glen
solid ingot
#

prüf das nächste Mal ob der Code Sinn macht bevor du Leuten empfiehlst ihn zu nutzen peepothink

solid ingot
#

um den inviter rauszufinden, musst du alle invites in einer Datenbank manuell tracken und im on_member_join event prüfen, welcher invite link benutzt wurde

solid ingot
#

#

muss lernen

open dragon
open dragon
solid ingot
#

nein, ich muss lernen

thick haven
#

Kann mir jmd helfen warum er die option nicht appendet es gibt keinen error die view wird gesendet aber ohne das hinzugefügte

view = View()
        view.add_item(Dropdown())
        view.add_item(Send())
        view.add_item(Share())
        if int(interaction.user.id) == 416015508303904779:
            view.add_item(Share_To_DB())
        try:
            if self.children[2].value == "true" or "false":
                print("Ja")
                Dropdown.append_option(discord.SelectOption(label="Field Remove", description="Edit Embeds Fiel", emoji=":heavy_minus_sign:", value="field_remove"))
                xxxx
            else:
                xxx
        except:
            pass
        await interaction.response.edit_message(embed=embed, view=view)```
solid ingot
#

woher willst du wissen, ob es einen error gibt, wenn du except pass machst?

thick haven
#

Oh stimmt XD

#

Jetzt macht das aber keinen sinn

Traceback (most recent call last):
  File "C:\Users\jurek\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.11_qbz5n2kfra8p0\LocalCache\local-packages\Python311\site-packages\discord\ui\modal.py", line 341, in dispatch
    await value.callback(interaction)
  File "c:\Users\jurek\Documents\Development\Python\DC Bots\Xenority\Xenority-Main-Pycord-V2\cogs\embed_builder.py", line 527, in callback      
    Dropdown.append_option(self, option=discord.SelectOption(label="Field Remove", description="Edit Embeds Fiel", emoji=":heavy_minus_sign:", value="field_remove"))
  File "C:\Users\jurek\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.11_qbz5n2kfra8p0\LocalCache\local-packages\Python311\site-packages\discord\ui\select.py", line 319, in append_option
    if self._underlying.type is not ComponentType.string_select:
       ^^^^^^^^^^^^^^^^```
ich habe das gleiche mit _ bei add field hä
solid ingot
#

schick vlt mal die eigentliche error meldung

thick haven
solid ingot
#

sicher? sieht so aus als wäre das nur traceback

thick haven
# solid ingot sicher? sieht so aus als wäre das nur traceback
| Guilds ---> 2 Users: 50
|-------------------------------------------------------------|
Ja
Ignoring exception in modal <cogs.embed_builder.field_add object at 0x0000018814E42C90>:
Traceback (most recent call last):
  File "C:\Users\jurek\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.11_qbz5n2kfra8p0\LocalCache\local-packages\Python311\site-packages\discord\ui\modal.py", line 341, in dispatch
    await value.callback(interaction)
  File "c:\Users\jurek\Documents\Development\Python\DC Bots\Xenority\Xenority-Main-Pycord-V2\cogs\embed_builder.py", line 527, in callback      
    Dropdown.append_option(self, option=discord.SelectOption(label="Field Remove", description="Edit Embeds Fiel", emoji=":heavy_minus_sign:", value="field_remove"))
  File "C:\Users\jurek\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.11_qbz5n2kfra8p0\LocalCache\local-packages\Python311\site-packages\discord\ui\select.py", line 319, in append_option
    if self._underlying.type is not ComponentType.string_select:
       ^^^^^^^^^^^^^^^^
AttributeError: 'field_add' object has no attribute '_underlying'```
solid ingot
#

das sieht schon besser aus

thick haven
#

okay

urban glen
#

ich hab den module installiert

#

hat nicht funkioniert

#

hab deinstalliert und wieder installiert und geht immernoch nicht

mystic flower
#

nicht discord_slash sondern discord.commands

urban glen
# urban glen

Nutze bitte keine extra Library dafür, slash commands werden in discord.py und deren forks unterstützt

urban glen
mystic flower
#

glaube schon

#

ja

urban glen
#

py-cord

urban glen
#

slash commands werden in py-cord unterstützt

#

hm

#

das ist doch alles richtig oder?

mystic flower
#

import discord

#

nicht import py_cord

#

und mach das so py from discord.commands import Option, SlashCommandGroup, slash_command

thick haven
urban glen
solid ingot
thick haven
#

es sind nur buchstaben abc oder ABC ist doch egal die wörter sind doch gleich?

thick haven
#

hä ist ja mega komisch sind doch nur großbuchstaben aber egal... hast du ne lösung

solid ingot
#

nope

solid ingot
thick haven
#

ein satz ist ein satz.

urban glen
#

hab grad auch an einen role command gearbeitet der den user die eingegebene rolle geben soll und wenn der user die schon hat dann sie wegnehmen soll aber hab error beim "Discord.Member, role: Discord.Role"

@bot.slash_command(name='role', description='Assign or remove a role from a user')
async def role(ctx: member: Discord.Member, role: Discord.Role):
    if role in member.roles:
        await member.remove_roles(role)
        await ctx.send(f'Removed role {role.name} from {member.mention}')
    else:
        await member.add_roles(role)
        await ctx.send(f'Assigned role {role.name} to {member.mention}')
solid ingot
#

discord muss klein geschrieben werden

#

jedenfalls solltest du es klein importiert haben

urban glen
#

ausprobiert*

solid ingot
#

trotzdem ist klein richtig und groß falsch

urban glen
#

hab klein versucht

#

es sagt "invalid syntax"

#

es findet discord glaub ich nicht

#

ich hab discord imported

solid ingot
urban glen
burnt prairieBOT
#
Level Up!

Herzlichen Glückwunsch @brave flower, du bist jetzt Level 8 🎉

Du hast insgesamt 304 Nachrichten geschrieben.

tawdry leaf
urban glen
#

also was soll ich löschen?

#

beides

#

?

urban glen
#

Garnicht's

#

Mach einfach ctx: discord.ApplicationContext

#

ähm

#

soll ich dann zum cx hinzuügen oder die anderen weg machen und dann rein

#

@urban glen mal so als Frage, beherrscht du die Python Basics?

#

Also dazu zählt ungefähr sowas:

- Primitive data types
- Operators
- Data structures
- Importing
- Variables, namespace and scope
- String formatting
- OOP
- Control flow
- Exception handling
- Function definitions
- Classes, objects, attributes and methods
- Console usage, interpreters and environments
- Decorators
- Asyncio basics
- Blocking
- Logging
urban glen
urban glen
#

Dann wundert es mich bisschen, dass du bei so einer aufgabe verzweifelst

urban glen
#

So ```py
@bot.slash_command(name='role', description='Assign or remove a role from a user')
async def role(ctx: discord.ApplicationContext member: Discord.Member, role: Discord.Role):
if role in member.roles:
await member.remove_roles(role)
await ctx.send(f'Removed role {role.name} from {member.mention}')
else:
await member.add_roles(role)
await ctx.send(f'Assigned role {role.name} to {member.mention}')

urban glen
urban glen
#

Oder willst du mir sagen du vergisst nach ner Zeit auch die Reihenfolge vom Alphabet? xD

urban glen
#

Merkste selber, oder?

#

ich glaub ich sollte python von neu lernen

#

gar kein bock

#

MANJNNNN

urban glen
urban glen
#

ich weiß nciht

#

hm

#

._.

#

Meinst du des ernst?

#

egal gucke jetzt Timo und abonniere

#

:ja:

urban glen
urban glen
urban glen
#

Und das is so unnötig den Server Inhaber zu Pingen

#

was meinst du

#

Die message zu editieren bringt nix ._.

#

hab doch nichts gemacht

#

ne ne

#

hab das u bei und vergessen

urban glen
urban glen
#

du hast nachricht gelöscht

solid ingot
#

@urban glen hör mal auf mich zu ghostpingen

urban glen
#

das sag ich mama

#

isso

urban glen
urban glen
#

das gibs ein ban

urban glen
#

Geh jetzt dein drecks problem lösen

#

.ban AFC weil ich kurde kein grenzen habe

tawdry leaf
#

kein pb xD

urban glen
#

wie hoste ich mein discord bot umsonst

tawdry leaf
urban glen
tawdry leaf
urban glen
#

👀

#

dann?

urban glen
#

Deshalb lieber ein bezahlter host

tawdry leaf
urban glen
urban glen
urban glen
#

Du kannst einfach nur nicht die Basics.

urban glen
#

habs installiert geht immernoch nicht

tawdry leaf
#

Öffnen Sie in PyCharm über File → Settings den Einstellungsdialog und wählen Sie im Menüpunkt Project: project_name den Unterpunk Project Interpreter. Auf der rechten Seite können Sie über den Button + nach dem Paket mypy suchen und es installieren.

urban glen
#

pip : The term 'pip' is not recognized as the name of a cmdlet, function, script file, or operable program. Check the spelling of the name, or if a path was
included, verify that the path is correct and try again.
At line:1 char:1

  • pip install py-cord
  •   + CategoryInfo          : ObjectNotFound: (pip:String) [], CommandNotFoundException
      + FullyQualifiedErrorId : CommandNotFoundException
#

Einfach Python reinstallen und dann pip auswählen ._.

urban glen
urban glen
urban glen
urban glen
#

In den Umgebungsvariablen oder wie das heißt

urban glen
#

Okay, danke für den Ping

#

Zwei punkte sind jedoch nicht sehr aussagekräftig

urban glen
#

Wieder ein unnötiger Ping

urban glen
# urban glen ..

import AFC

.. = wo ist das bruda

bot.run(TOKEN)

(rel script working)

#

verstanden?

#

Das macht nd mal sinn ._.

#

wo ist path sag mir das ._.

urban glen
urban glen
#

In den umgebungsvariablen

urban glen
#

hab py-charm auf english

urban glen
#

Okay schön, hat aber nix mit pycharm zutun

urban glen
#

#

Du musst in die Umgebungsvariablen

urban glen
urban glen
urban glen
#

Die Umgebungsvariablen an deinem Pc

urban glen
#

Logischerweise

#

Ich mache jetzt mal etwas, wozu du anscheinend zu faul bist

#

Hier bitte:

#

der indische

#

Is das so schwer mal zu suchen?

urban glen
#

Kinder…

#

Man man man

#

Was soll man nur mit Menschen wie euch machen…

urban glen
#

:AFCfacereveal

#

ups hab doppel punkt vergessen

#

WAS
WAS
WAS
ANANANAS
MACHEN KEINE SPASS

solid ingot
#

jungs

#

verhaltet euch mal wie normale menschen

tawdry leaf
#

-🤔

#

hm

urban glen
#

Wie wärs mit Nachrichten löschen ._. Oder wird das hier unterstützt? xD ||Joke timo.. joke||

solid ingot
#

der user ist schon im timeout, du könntest aber auch mal etwas netter sein

tawdry leaf
#

Ich bilde mich fort

urban glen
#

Ich wusste das du die entfernst

tawdry leaf
#

nein woher

urban glen
tawdry leaf
#

handy spieler

urban glen
urban glen
quiet socket
urban glen
mental hamlet
#

bzw. warscheinlich hast du nen kak handy

limpid wolf
#

Der nimmt jetzt immer nur eine Zahl, da die "winners_number" auf 1 steht. Weiß jemand von euch wie ich jetzt aber ein Element aus der Liste auswähle (eine gesammte id) und nicht nur eine zahl?

solid ingot
#

ich denke, dass users keine liste ist, sondern ein string

limpid wolf
solid ingot
#

naja, das kann auch ein string sein

#

listen kannst du in einer DB nicht so einfach speichern

limpid wolf
solid ingot
#

✨ string formatting ✨

limpid wolf
urban glen
mental hamlet
#
if isinstance(command, discord.SlashCommandGroup):
                        for subcommand in command.subcommands:
                            embed.add_field(name=f"</{subcommand.parent.name} {subcommand.name}:{subcommand.id}>", value=f"`{subcommand.description}`")
urban glen
#

ok

mental hamlet
#

wieso wird der slash command nicht erwähnt?

urban glen
mental hamlet
#

</{subcommand.parent.name} {subcommand.name}:{command.id}>

macht immernoch nicht die mention

urban glen
mental hamlet
urban glen
#

</userinfo:1042214688177541200>

manic tusk
#

Bei einem Cog ist der Cog eine Datei in der Main datei also wird der Cog auch im Ordner sein auf dem Pc?

mental hamlet
#

aber keine sub commands

urban glen
manic tusk
mental hamlet
#

nein

#

cog = klasse in einer datei

limpid wolf
limpid wolf
manic tusk
manic tusk
mental hamlet
#

ja

manic tusk
#

In der datei ist ein Cog oder?

mental hamlet
#

nein

#

eine python datei

manic tusk
limpid wolf
#

Nein? Das was du in der py als cog definierst ist eine Klasse. Eine Klasse ist ja in einer .py drinnen.

urban glen
urban glen
urban glen
#

Ich meine ihn ._.

#

Nicht dich

mental hamlet
#

haha

#

ich hab sihm gerade im talk gesagt

limpid wolf
#

hab mich schon gewundert

urban glen
#

@manic tusk nochmal für dich, erst das:

- Primitive data types
- Operators
- Data structures
- Importing
- Variables, namespace and scope
- String formatting
- OOP
- Control flow
- Exception handling
- Function definitions
- Classes, objects, attributes and methods
- Console usage, interpreters and environments
- Decorators
- Asyncio basics
- Blocking
- Logging
manic tusk
#

Also nochmal es gibt eine Datei eine einzelne die sagen wir mal main.py heißt und da drinn ist ein cog oder mehrerer bleibt es auf dem Pc nur eine Datei und zwar main.py oder? @mental hamlet

urban glen
#

Wenn du die Klassen in einer Datei hast, dann ja

#

Macht aber kein Sinn, da es Cogs sind.
Die sind extra dazu da, sie in mehreren Dateien zu haben, damit es strukturierter ist

manic tusk
#

also ja oder?

urban glen
#

Ich werd mich nicht nochmal wiederholen

manic tusk
#

hä jz check ich nix mehr

urban glen
#

dann check es nicht

urban glen
manic tusk
#

ich dachte ein cog ist eine klasse in der datei wo es dann strukturierter sein sollte

urban glen
#

Extra wegen solchen Fragen werden schon Vorschläge wie: #1081518516282331147 gebracht

manic tusk
#

Nicht vom Thema ablenken

urban glen
urban glen
burnt prairieBOT
#
Level Up!

Herzlichen Glückwunsch @past temple, du bist jetzt Level 30 🎉

Du hast insgesamt 4,419 Nachrichten geschrieben.

Du hast <@&1024277010593366017> erhalten!

mental hamlet
#

eif. level 30

limpid wolf
urban glen
# mental hamlet yes

Hab eben gemerkt, dass jeder der hier Fragen stellt ohne Basics zu besitzen, gegen die #🔰・old-help-rules verstößt xD

urban glen
obtuse estuary
#

Jo, weiß jedmand wie man checken kann ob member bestimmte rechte in einem channel haben?

solid ingot
#

zb mit channel.permissions_for()

mental hamlet
#

code

#

await ctx.defer(invisible=False)

#

xD

#

les

#

was du gexchreiben hast

obtuse estuary
urban glen
#

Ja, wenn du keinen member auswählst, kann er auch nd überprüfen ob der member ein Bot ist

#

Deshalb steht da ja "NoneType" object has not attribute "bot"

thick haven
#

Hey, weiss jmd wie ich von einem Select Menü eine Option entfernen kann?

mental hamlet
#

view klasse oder slect klasse?

thick haven
#

öhm

mental hamlet
#

View: select.values.remove(deine val)

thick haven
#

ich denke select

mental hamlet
#

discord.ui.View

#

oder discord.ui.Select

thick haven
#

2

mental hamlet
#

ok da idk.

#

nutze nur view

#

ah habs self.values.remove(dein val)

thick haven
# mental hamlet ah habs `self.values.remove(dein val)`

jetzt bekomme ich den error

Traceback (most recent call last):
  File "C:\Users\jurek\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.11_qbz5n2kfra8p0\LocalCache\local-packages\Python311\site-packages\discord\ui\modal.py", line 341, in dispatch
    await value.callback(interaction)
  File "c:\Users\jurek\Documents\Development\Python\DC Bots\Xenority\Xenority-Main-Pycord-V2\cogs\embed_builder.py", line 537, in callback      
    await interaction.response.edit_message(embed=embed, view=view)
  File "C:\Users\jurek\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.11_qbz5n2kfra8p0\LocalCache\local-packages\Python311\site-packages\discord\interactions.py", line 961, in edit_message
    await self._locked_response(
  File "C:\Users\jurek\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.11_qbz5n2kfra8p0\LocalCache\local-packages\Python311\site-packages\discord\interactions.py", line 1090, in _locked_response
    await coro
  File "C:\Users\jurek\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.11_qbz5n2kfra8p0\LocalCache\local-packages\Python311\site-packages\discord\webhook\async_.py", line 221, in request
    raise HTTPException(response, data)
discord.errors.HTTPException: 400 Bad Request (error code: 50035): Invalid Form Body
In components.0.components.0.options.11: The specified option value is already used```
`self.dropdown.values.remove(field_add)`
urban glen
#

check dm

#

hab dir die lösung geschickt

urban glen
#

So lernt er es nicht

#

Oder bekommst du auch Lösungen in der Klausur oder in ner Arbeit?

#

oh

#

sorry

#

wollte nur helfen

thick haven
#

Naja es bringt user aufjedenfall weiter als auf deine weblink zu drücken und sich damit die zeit zu verschwenden

solid ingot
urban glen
#
member = member or ctx.author
#

._.

obtuse estuary
#

Warum wird bei diesem Code : ```py
class CloseView(discord.ui.View):
def init(self):
super().init(timeout=None)

@discord.ui.button(label="Schließen", style=discord.ButtonStyle.red, custom_id="close")
async def button_callback1(self, button, interaction):
    



    for role in interaction.guild.roles:
        if(not IGNORE_CLOSE.__contains__(role.id)):
            for member in role.members:
                


                    embed7 = discord.Embed(
                        title="**Ticket wurde geschlossen**",
                        description=f"Das Ticket wurde von {interaction.user} geschlossen.",
                        color=config.TRANPARENT
                    )





                    overwrite = discord.PermissionOverwrite()
                    overwrite.send_messages = False
                    overwrite.create_instant_invite = False
                    await interaction.channel.set_permissions(member, overwrite=overwrite)
                    await interaction.channel.send(embed=embed7)
                    button.style = discord.ButtonStyle.green
                    button.label = "Öffnen"
                    await interaction.response.edit_message(view=self)``` Das embed 2 mal geschickt?
urban glen
#

Weil es in einer for loop ist

obtuse estuary
#

sag mal wie ich das ändern kann bidde

urban glen
#

Wie viele Member haben diese Rolle?

urban glen
#

Häää

solid ingot
urban glen
#

Wofür is überhaupt die For-Schleife?

obtuse estuary
#

Naja es wird als erstes geguckt bei welchen rollen die perms nicht geändert werden und danach wird geguckt bei welchen rollen deren membern die rollen geändert werden sollen

urban glen
#

Bin grad auch am Handy, deshalb is es schwer den Code so zu verstehen xD