discord.pyでbotがサーバー内の人全員にDMを送ることってできますか?
個人にはおくれるのですが全員に送る方法がわかりません。
コード
import discord TOKEN = '' client = discord.Client() @client.event async def on_ready(): print('logged') @client.event async def on_message(message): if message.author.bot: return if message.content == "DM": dm = await message.author.create_dm() await dm.send("お知らせ") client.run(TOKEN)
環境
win10
anaconda3
Python 3.7.6
discord.py 1.3.3
追記
プログラミング初心者でどうすればいいかわからず適当な質問をしてしまい申し訳ございません。
以降気を付けて質問いたします
自分のコードを書いてから、質問することをお勧めします。
質問は編集できます。
「質問を編集する」ボタンから編集を行い、調査したこと・試したことを記入してください。
ちなみに、どのようなシチュエーションを想定していますか?
ここらへんが参考になりそうです。
https://stackoverrun.com/ja/q/12564660
https://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q13215219243
urlありがとうございます。
本当は@everyoneで伝えるのが1番早いのですが30人以上の場合通知が来ない+通知オフの方がいるのでその方にも伝えるために作ろうと思いました。
なるほど。そういう事ですね…
サーバー内全員のユーザー名は取得できるので、ユーザー名から送信できればいいんですけどね。
もう少し考えてみます。
質問への回答ではないのでここに書かせていただきますが...サーバー内の全員にDMを送るというのは本当に必要なんでしょうか?
everyoneで十分だと思いますし、DM拒否設定をしている方もいると思います。
最悪の場合SpamBotとしてDiscord運営に報告され、Bot、Botオーナーのアカウント共に停止される恐れもあります。
Botを開発する上での最低条件として、極力ユーザーの想定していない自己的な動きは避けるべきです。
もう一度、他の方法がないか考え直してみてください。
そうなのですね...
他に方法を考えてみます...
回答2件
あなたの回答
tips
プレビュー