本文へスキップ
Integrations組織共有

Discord 連携

Discord と Pigeon Workflow を連携すると、ワークフローの結果をチャンネルに投稿できます。さらに Bot を登録すると、メッセージの受信・スラッシュコマンド・ダイレクトメッセージ送信も使えます。

組織共有の連携です

この連携は組織単位で登録します。一度登録すれば、同じ組織のメンバーがワークフローから利用できます。 権限管理が有効な組織では、シークレットに「利用」権限を持つメンバーが利用できます。詳しくは権限管理の完全ガイドを参照してください。

2 つの接続方法

やりたいことに応じて選びます。両方を登録することもできます。

接続方法できること必要な権限
Webhook URLチャンネルへのメッセージ送信(テキスト・リッチメッセージ・ファイル添付)そのチャンネルの「Webhook を管理」権限。サーバーのオーナーである必要はありません。
Bot Tokenメッセージの受信・スラッシュコマンドでの起動・メッセージの編集や削除・リアクション追加・ダイレクトメッセージ送信Bot をサーバーに招待するため「サーバーを管理」権限を持つメンバーが必要です。

送信の設定(Webhook URL)

1

Discord で Webhook を作る

送信先チャンネルを右クリック →「チャンネルの編集」→ 左メニューの「連携サービス」→「ウェブフック」→「新しいウェブフック」をクリックします。 必要なら名前とアイコンを設定し、「ウェブフックURLをコピー」を押します。

2

Pigeon Workflow に登録する

「設定」→「サービス連携」→「Discord」を開き、「Webhookを追加」をクリックします。Webhook URL を貼り付け、必要に応じて表示名を入力して「接続テスト & 追加」を押します。

3

テストメッセージを確認する

登録時に自動でテストメッセージが送られます。届かない場合は保存されません。URL をコピーし直してお試しください。

1 つの Webhook URL は 1 つのチャンネル用です

複数のチャンネルに送信する場合は、チャンネルごとに Webhook を追加してください。

受信の設定(Bot Token)

メッセージの受信やスラッシュコマンドでの起動には Bot の登録が必要です。Discord Developer Portal で用意します。

1

アプリケーションを作る

Discord Developer Portal で「New Application」をクリックし、名前を入力して「Create」を押します。

2

3 つの値をコピーする

「General Information」から APPLICATION ID と PUBLIC KEY を、 「Bot」→「Reset Token」から Bot Token をコピーします。

3

必要な設定を有効にする

「Bot」の「Privileged Gateway Intents」で、MESSAGE CONTENT INTENT(メッセージの受信に必要)と、 メンバーの参加を検知したい場合は SERVER MEMBERS INTENT を有効にします。

4

Bot をサーバーに招待する

「OAuth2」→「URL Generator」で Scopes に bot を選び、 Bot Permissions で View Channels(チャンネル一覧の取得に必須)・Send Messages・Read Message History・Add Reactions・Manage Messages を選びます。 生成された URL をブラウザで開いて「認証」をクリックします。

5

チャンネル側の権限も確認する

対象チャンネルを右クリック →「チャンネルの編集」→「権限」→「メンバーまたはロールを追加」で Bot を選び、チャンネルを見る・メッセージ履歴を読むにチェックを入れます。 サーバー全体の権限があっても、チャンネル個別の設定でブロックされていることがあります。

6

Pigeon Workflow に登録する

「Bot Tokenを接続」をクリックし、Bot Token・Application ID・Public Key を入力して「接続」を押します。 既に Webhook を登録している場合は、「既存連携に追加」で同じ連携にまとめられます。

7

スラッシュコマンドを使う場合

接続後に表示される Interactions Endpoint URL をコピーし、 Developer Portal の「General Information」→「INTERACTIONS ENDPOINT URL」に貼り付けて保存します。 Discord が自動で確認を行い、成功すればスラッシュコマンドでワークフローを起動できます。

スラッシュコマンドそのものは Discord 側で用意します

/コマンド名 の定義は Discord Developer Portal 側で行ってください。Pigeon Workflow から作成することはできません。

ワークフローで使えるノード

ノードできること主な設定
Discord メッセージ取得チャンネルの新しいメッセージで起動する / スラッシュコマンドで起動する / メッセージ履歴を取得するDiscord Bot / アクション / チャンネル / 取得件数
Discord 送信テキスト・リッチメッセージ・ファイル添付の送信、メッセージの編集・削除、リアクション追加、ダイレクトメッセージ送信Discord Webhook / アクション / メッセージ

メッセージの受信・編集・削除・リアクション・ダイレクトメッセージには Bot Token の登録が必要です。 送信だけなら Webhook URL のみで使えます。

メッセージの受信は約 1 分ごとの確認です

投稿された瞬間ではなく、定期的にチャンネルを確認して新しいメッセージを見つける方式です。数十秒ほどの遅れが出ることがあります。 即時に起動したい場合はスラッシュコマンドをご利用ください。

注意点と制限

Webhook URL はパスワードと同じ扱いにしてください

Webhook URL を知っている人は、誰でもそのチャンネルに投稿できます。 共有ファイルやチャットに貼らないでください。 誰でも見られる #general のようなチャンネルではなく、通知専用のチャンネルを用意することをおすすめします。

  • 文字数の上限: メッセージ本文は 2,000 文字、リッチメッセージのタイトルは 256 文字、添付ファイルは 25MB までです。入力欄に残り文字数が表示されます。
  • Bot Token だけで登録した場合は、受信するチャンネルをノード側で指定してください。チャンネルが未設定だと受信が動きません。
  • 短時間に大量に送信すると Discord 側で待たされます。1 分に 20 件を超えるようなら、Webhook を複数登録して送信先を分けてください。
  • チャンネルや Webhook を Discord 側で削除すると送信できなくなり、連携が「未接続」になります。
  • Webhook URL と Bot Token は暗号化して保存され、画面で全体を見ることはできません。