実現したいこと
- botが表示した絵文字に対してリアクションしたら、リアクションしたユーザにのみ見えるメッセージを表示したい。
- SlashCommandを作成し、コマンド入力に対してメッセージ表示は確認できた。これをリアクションまたはボタンで実現したい。
前提
discordのbotを製作しています。
botが表示した絵文字にリアクションしたら、リアクションしたユーザにのみ見えるメッセージを表示したいです。
そのメッセージにURLを記載してユーザ情報登録ページに誘導する目的です。
調査したこと・試したこと
検索したところ、対象のユーザのみに見えるメッセージは ephemeral message機能を使う、あったので、まずmessage.replyに ephemeral=True のオプションをつけてみましたがエラーとなりました。(エラー1)
次に、interactionを使用している記述が見つかりました。
これをreaction処理に流用してみましたがこちらもエラーとなりました。(エラー2)
追記
slashcommandを使用して、コマンド入力した際に入力したユーザだけに見えるメッセージを表示することはできました。(ソースコード)
発生している問題・エラーメッセージ
-- リプライ(エラー1) TypeError: Messsagable.send() got an unexpected keyword argument 'ephemeral' -- リアクション(エラー2) module 'interaction' has no attribute 'response'
該当のソースコード
python
1import discord 2import pandas 3import interaction 4 5#リプライ 6async def on_message(message): 7 #エラー1のパターン 8 message.reply(message.content, ephemeral=True) 9 10#リアクション 11async def on_raw_reaction_add(payload): 12 13 #interactionを使用した記述 (エラー2) 14 await interaction.response.send_message('test', ephemeral=True) 15 16#SlashCommand 17@tree.command(name="test",description="テストコマンドです。") 18async def test_command(interaction: discord.Interaction): 19 await interaction.response.send_message("てすと!",ephemeral=True)#ephemeral=True→「これらはあなただけに表示されています」 20

回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。