コンテンツへスキップ
プラットフォーム

Discordボット

Python(discord.py)またはNode.js(discord.js)のDiscordボット。リクエストに書くこと、Codexe内でボットをテスト実行する方法、プランごとの実行時間の上限、トークンを安全に保つ方法。

更新日

このページの内容
  1. リクエストに書くこと
  2. トークン
  3. Codexeでボットをテスト実行する
  4. 検証
  5. 自分で動かす
  6. よくある問題

Codexeは、スラッシュコマンドを使う完全なDiscordボットのプロジェクトを、「Python(discord.py)」または「Node.js(discord.js)」で生成します。

#リクエストに書くこと

  • ライブラリ(PythonまたはNode.js)。
  • 各スラッシュコマンドと、そのオプション、使える人。
  • 反応するイベント(メンバーの参加、メッセージ、リアクション)。
  • 保存方法(JSON、SQLiteなど)と、使う外部API。
  • 有効にしてもよいインテント。Message ContentとServer Membersは特権インテントで、Discordの開発者ポータルでオンにする必要があります。

#トークン

生成されたボットは、環境変数「DISCORD_TOKEN」からトークンを読み込みます(BOT_TOKENやTOKENでも動きます)。トークンがソースに書き込まれることはなく、.envファイルも生成されません。トークンはパスワードと同じように扱ってください。漏れた場合は、Discordの開発者ポータルでリセットしてください。

#Codexeでボットをテスト実行する

ボットのプロジェクトには、サーバーを用意せずにボットを試せるホストパネルがあります。ボットのトークンを貼り付け(暗号化して保存され、削除もできます)、開始、停止、再起動を使い、コンソールを見てください。

これはテスト環境であり、常時稼働のホスティングではありません。

プラン直近24時間あたりの実行時間
Free15分
Pro4時間
Business12時間
Enterprise24時間

どのプランでも、1回のセッションは30分で停止し、1アカウントで同時に動かせるボットは1つで、起動の回数には制限があります。ボットは隔離された環境で動き、インターネットにはアクセスできますが、Codexe自身のシステムにはアクセスできません。

#検証

Discordボットはビルドで検証されません。準備完了は生成が終わったことを意味します(プロジェクトのライフサイクルを参照)。確認にはテスト実行を使ってください。

#自分で動かす

ZIPをダウンロードし、依存関係をインストールして(pip install -r requirements.txtまたはnpm install)、環境にDISCORD_TOKENを設定してから起動します。botとapplications.commandsのスコープで、ボットをサーバーに招待してください。

#よくある問題

症状考えられる原因
スラッシュコマンドが表示されないコマンドがまだ同期されていません。グローバルの同期には最大1時間かかることがあり、ギルドの同期はすぐに反映されます。
ボットはオンラインなのにメッセージに反応しない特権インテントが開発者ポータルで有効になっていません。
「アプリケーションが応答しませんでした」コマンドが応答を保留(defer)せずに3秒以上かかりました。応答を保留するようチャットで頼んでください。
Discordボット | Codexe Docs