[解決済み] discordのボットコマンドとイベントの両方を使うには?
2022-03-12 19:12:40
質問
サーバーに書き込まれたメッセージを聞きながら、同時にコマンドを受け付けるボットを作りたいのですが、どうすればいいですか?
# Create the Discord client
client = discord.Client()
client = commands.Bot(command_prefix = '!')
client.remove_command('help')
@client.event
async def on_ready():
print('ready')
@client.event #ricerca messaggi
async def on_message(message):
# Ignore messages made by the bot
if(message.author == client.user):
return
a = ''
a += message.embeds[0]["description"]
if a == 'abcdef':
print(' aaaaa ')
@client.command()
async def hello():
await client.say('hello')
client.run('token')
どうすれば動くようになるのでしょうか? 問題は、ボットが最初のイベントで循環し続けることだと思うのですが・・。 sub_processについて読みましたが、使い方がよくわかりません。
解決方法は?
on_messageの末尾にprocess_commands()を追加する必要があります。 これは、デフォルトのon_messageを上書きすると、コマンドの実行が禁止されるためです。 .
@client.event #ricerca messaggi
async def on_message(message):
# Ignore messages made by the bot
if(message.author == client.user):
return
a = ''
a += message.embeds[0]["description"]
if a == 'abcdef':
await message.channel.send(' aaaaa ')
await client.process_commands(message)
関連
-
[解決済み] ImportError: tkinter'という名前のモジュールがありません、python3-tkパッケージをインストールしてください。
-
[解決済み] Pythonで "filter "オブジェクトの長さを求める方法
-
[解決済み] sklearn の KNearest Neighbors - ValueError: クエリデータの次元はトレーニングデータの次元と一致する必要があります。
-
[解決済み] エアフロースケジューラーを再起動する
-
[解決済み] Python 3 の requests.get でデータを取得する前にページがロードされるのを待つ
-
[解決済み] python3 UnicodeEncodeError: 'charmap' コーデックは位置 95-98 の文字をエンコードできない: 文字は <undefined> にマップされる。
-
[解決済み] Radd法によるクラス間加算
-
[解決済み] 'python3' は内部または外部のコマンド、操作可能なプログラムまたはバッチファイルとして認識されません。
-
[解決済み] tensorflowをインポートする際に、以下のエラーが発生します。numpy.core._multiarray_umath'という名前のモジュールがありません。
-
[解決済み] Jupyterノートブックで別ディレクトリのpyファイルをインポートする
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】TensorFlow:dataset.train.next_batchはどのように定義されていますか?
-
[解決済み】なぜELIF Invalid Syntax Errorが発生するのでしょうか?
-
[解決済み] シンタックスエラーと変数アノテーションのターゲットが不正であるというエラーが発生します。どうすれば直せますか?[クローズド]
-
[解決済み] ValueError: Substring not found, What am I doing wrong?
-
[解決済み] Python 3 の requests.get でデータを取得する前にページがロードされるのを待つ
-
[解決済み] Radd法によるクラス間加算
-
[解決済み] python3 で cv2 をインポートするには?
-
[解決済み] 'python3' は内部または外部のコマンド、操作可能なプログラムまたはバッチファイルとして認識されません。
-
[解決済み] モジュール 'pandas' には 'scatter_matrix' という属性がない」 というエラーはどうすれば解決できますか?
-
[解決済み】Python - n+nn+nnn+nnnの値を与えられた桁をnの値として計算する方法