Blog

ブログ

AI関連

Discord読み取りBot作成方法

目的は、

Discordメモ
↓
Botで取得
↓
タスク候補整理
↓
Notionへ追記

という流れを作ることです。

今回はまず、「Discordの専用メモチャンネルをBotで安全に読める状態」を作ります。

Discord Botとは?

Discord Botは、「Discordサーバーに参加するアプリ」のようなものです。

今回の用途では、

  • 専用メモチャンネルを読む
  • 新着メモを取得する

だけの、かなりシンプルな読み取り専用Botを作ります。

🌐 1. Discord Developer Portalを開く

まずはDiscord公式のDeveloper Portalを開きます。

Developer Portal

https://discord.com/developers/applications

🆕 2. New Application を作成

右上の:New Applicationをクリックします。

🏷️ 3. Bot名を設定

好きな名前を付けます。

  • Siri Memo Importer
  • Voice Memo Reader
  • Discord Memo Bot

※ 名前はあとから変更可能です。

⚙️ 4. Botを追加

左メニューの:Botを開きます。

その後:Add Botを押します。

これでBot本体が作成されます。

🔑 5. Bot Tokenを取得

Bot画面にある:Reset TokenなどのボタンからTokenを取得します。

取得したTokenは、ローカル環境の .env.local に保存します。

DISCORD_BOT_TOKEN=xxxxxxxx

注意点

Bot Tokenは絶対に公開しないでください。

以下はNGです。

  • GitHubへ公開
  • ブログ記事へ貼り付け
  • スクリーンショット共有

Tokenが漏れると、第三者にBotを操作される可能性があります。

🧠 6. Message Content Intent をONにする

かなり重要な設定です。

Bot設定画面の下部にある:MESSAGE CONTENT INTENTをONにします。

これを有効化しないと、メッセージ本文が取得できず、

content=""

のように空で返ってくる場合があります。Discord Botで非常にハマりやすいポイントです。

🔗 7. Bot招待URLを作成

左メニューの:OAuth2または:Installationを開きます。

その中の:URL Generatorを使用します。

✅ 8. Scope設定

Scopeは以下のみチェックします。

bot

🔐 9. Bot権限を設定

今回は読み取り専用Botに近い構成にします。

最低限必要な権限

チャンネルを表示
メッセージ履歴を読む

必要に応じて追加

メッセージを送信

不要な権限

以下は不要です。

  • 管理者
  • BAN
  • チャンネル管理
  • ロール管理

最小権限にすることで、安全性を高められます。

➕ 10. BotをDiscordサーバーへ追加

生成された招待URLをブラウザで開きます。

手順

  • 追加したいDiscordサーバーを選択
  • Botを追加
  • 権限を確認して承認

🗂️ 11. 専用チャンネルへアクセスできるようにする

今回は、音声メモ用チャンネルのみを対象にします。

#voice-memo

チャンネル設定 → 権限 から、Botに以下を許可します。

チャンネルを見る
メッセージ履歴を読む

🆔 12. チャンネルIDを取得

Discordの:開発者モードをONにします。

有効化手順

Discord設定 → 詳細設定 → 開発者モード

その後、対象チャンネルを右クリックして:チャンネルIDをコピーを選択します。

取得したIDを .env.local に保存します。

DISCORD_CHANNEL_ID=xxxxxxxx

✅ ここまでで完成するもの

ここまで設定できると、以下の状態になります。

Discord #voice-memo

Botがメモを読める

💡 今回の構成が良い理由

最初からNotionへ自動登録しないことで、以下を防ぎやすくなります。

  • ゴミタスク化
  • 思いつき爆発
  • 管理疲れ

まずは:

DiscordをInbox化する

ところから始めるのがおすすめです。

🔗 参考リンク

Discord公式ドキュメント

https://discord.com/developers/docs/bots

Getting Started

https://discord.com/developers/docs/getting-started