mirror of
https://github.com/langgenius/dify-docs.git
synced 2026-03-27 13:28:32 +07:00
186 lines
12 KiB
Plaintext
186 lines
12 KiB
Plaintext
---
|
||
title: プラグイントリガー
|
||
---
|
||
|
||
## はじめに
|
||
|
||
<Info>
|
||
トリガーは workflow アプリケーションでのみ利用可能です。
|
||
</Info>
|
||
|
||
プラグイントリガーは、外部システムで特定のイベントが発生したときに自動的に workflow を開始します。必要なのは、トリガープラグインを通じてこれらのイベントをサブスクライブし、対応するプラグイントリガーを workflow に追加することだけです。
|
||
|
||
例えば、GitHub トリガープラグインをインストールしたとします。これは、`Pull Request`、`Push`、`Issue` を含む、サブスクライブできる GitHub イベントのリストを提供します。`Pull Request` イベントをサブスクライブし、`Pull Request` プラグイントリガーを workflow に追加すると、指定されたリポジトリで誰かがプルリクエストを開くたびに自動的に実行されます。
|
||
|
||
## プラグイントリガーの追加と設定
|
||
|
||
workflow キャンバスで右クリックし、**ブロックを追加** > **始める** を選択してから、利用可能なプラグイントリガーの中から選択するか、[Dify Marketplace](https://marketplace.dify.ai/?language=jp-ja&category=trigger) でさらに検索します。
|
||
|
||
<Tip>
|
||
- 対象の外部システムに適切なトリガープラグインがない場合は、[コミュニティにリクエスト](https://github.com/langgenius/dify-plugins/issues/new?template=plugin_request.yaml)したり、[自分で開発](/plugin-dev-ja/0222-trigger-plugin)したり、代わりに [Webhook トリガー](/jp/use-dify/nodes/trigger/webhook-trigger)を使用したりできます。
|
||
|
||
- 1 つの workflow は、並行して実行される複数のプラグイントリガーで開始できます。並行分岐に同一の連続したノードが含まれている場合、共通セクションの前に[変数集約](/jp/use-dify/nodes/variable-aggregator)ノードを追加して分岐をマージできます。これにより、各分岐で同じノードを個別に重複して追加することを回避できます。
|
||
</Tip>
|
||
|
||
2. 既存のサブスクリプションを選択するか、[新しいサブスクリプションを作成](#新しいサブスクリプションを作成)します。
|
||
|
||
<Tip>
|
||
**プラグイン**配下のプラグイン詳細パネルから、特定のサブスクリプションを使用している workflow の数を確認できます。
|
||
</Tip>
|
||
|
||
3. その他の必要な設定を行います。
|
||
|
||
<Info>
|
||
プラグイントリガーの出力変数は、そのトリガープラグインによって定義されており、変更できません。
|
||
</Info>
|
||
|
||
## 新しいサブスクリプションを作成
|
||
|
||
<Note>
|
||
サブスクリプションは一度作成すると変更できません。変更するには、既存のサブスクリプションを削除して新しいサブスクリプションを作成してください。
|
||
</Note>
|
||
|
||
<Info>
|
||
トリガープラグインは、ワークスペースごとに最大 10 個のサブスクリプションをサポートします。
|
||
</Info>
|
||
|
||
各サブスクリプションは Webhook 上に構築されています。サブスクリプションを作成する際、実際には外部システムからのイベントをリッスンする Webhook を設定しています。
|
||
|
||
<Accordion title="Webhook とは?">
|
||
|
||
Webhook を使用すると、あるシステムが別のシステムにリアルタイムでデータを自動的に送信できます。特定のイベントが発生すると、ソースシステムはイベントの詳細を HTTP リクエストにパッケージ化し、宛先システムが提供する指定された URL に送信します。
|
||
|
||
</Accordion>
|
||
|
||
Dify は以下の 2 つの方法でサブスクリプション(Webhook)を作成することをサポートしていますが、各プラグインで利用可能なオプションは、そのプラグインの設計方法によって異なります。
|
||
|
||
- **自動作成**:サブスクライブしたいイベントを選択すると、Dify が外部システムで対応する Webhook を自動的に作成します。これには、Dify が Webhook のセットアップを代行できるように、 **OAuth** または **API キー**による事前の認証が必要です。
|
||
|
||
- **手動作成**:Dify が提供する Webhook コールバック URL を使用して、自分で Webhook を作成します。認証は不要です。
|
||
|
||
<img src="/images/create_subscription_method.png" alt="Ways to Create Subscriptions" width="563" />
|
||
|
||
<Tip>
|
||
サブスクリプションを作成する際は、利用可能なすべてのイベントを選択することをお勧めします。
|
||
|
||
プラグイントリガーは、対応するイベントがリンクされたサブスクリプションに含まれている場合にのみ機能します。利用可能なすべてのイベントを選択すると、後で workflow に追加するプラグイントリガーが同じサブスクリプションを使用でき、別のサブスクリプションを作成する必要がなくなります。
|
||
</Tip>
|
||
|
||
<Tabs>
|
||
<Tab title="OAuth 経由(自動)">
|
||
|
||
Dify Cloud では、多くの人気のあるトリガープラグインにデフォルトの OAuth クライアントが事前設定されているため、ワンクリックで Dify を認証できます。
|
||
|
||
セルフホスト環境では、カスタム OAuth クライアントオプションのみが利用可能です。つまり、外部システムで OAuth アプリケーションを自分で作成する必要があります。
|
||
|
||
<Tabs>
|
||
<Tab title="デフォルト OAuth クライアント">
|
||
|
||
1. **OAuth 経由** > **デフォルト** > **保存と承認**を選択します。
|
||
|
||
<Info>
|
||
**保存**は、選択したオプションが今後のサブスクリプションのデフォルトの OAuth 方法として設定されることを意味します。
|
||
|
||
後で方法を切り替えるには、**OAuth クライアント設定**アイコンをクリックします。
|
||
|
||
<img src="/images/oauth_client_settings_icon.png" alt="OAuth Client Settings Icon" width="300" />
|
||
|
||
</Info>
|
||
|
||
2. ポップアップ表示される外部システムの認証ページで、**次へ**をクリックして Dify にアクセスを許可します。
|
||
|
||
3. サブスクリプション名を指定し、サブスクライブするイベントを選択し、その他の必要な設定を行います。
|
||
|
||
<Tip>
|
||
利用可能なすべてのイベントを選択することをお勧めします。
|
||
</Tip>
|
||
|
||
4. **作成**をクリックします。
|
||
|
||
</Tab>
|
||
|
||
<Tab title="カスタム OAuth クライアント">
|
||
|
||
1. **OAuth 経由** > **カスタム**を選択します。
|
||
|
||
2. 外部システムで、Dify が提供するコールバック URL を使用して新しい OAuth アプリケーションを作成します。
|
||
|
||
3. Dify に戻り、新しく作成した OAuth アプリケーションのクライアント ID とクライアントシークレットを入力してから、**保存と承認**をクリックします。
|
||
|
||
<Info>
|
||
保存後、同じクライアント認証情報を今後のサブスクリプションで再利用できます。
|
||
</Info>
|
||
|
||
4. サブスクリプション名を指定し、サブスクライブするイベントを選択し、その他の必要な設定を行います。
|
||
<Tip>
|
||
利用可能なすべてのイベントを選択することをお勧めします。
|
||
</Tip>
|
||
|
||
5. **作成**をクリックします。
|
||
|
||
</Tab>
|
||
|
||
</Tabs>
|
||
|
||
<Info>
|
||
表示されている**コールバック URL**は、Difyが外部システムでWebhookを作成する際に内部的に使用されるため、ユーザー側でこのURLに対して何か操作を行う必要はありません。
|
||
|
||
セルフホスティング環境では、`TRIGGER_URL`環境変数でURLのベースプレフィックスを変更できます。プレフィックスは外部システムからアクセス可能な公開ドメインまたはIPアドレスを指定してください。
|
||
</Info>
|
||
</Tab>
|
||
|
||
<Tab title="API キーで作成(自動)">
|
||
|
||
1. **API キーで作成**を選択します。
|
||
|
||
2. 必要な認証情報を入力してから、**検証**をクリックします。
|
||
|
||
3. サブスクリプション名を指定し、サブスクライブするイベントを選択し、その他の必要な設定を行います。
|
||
|
||
<Tip>
|
||
利用可能なすべてのイベントを選択することをお勧めします。
|
||
</Tip>
|
||
|
||
4. **作成**をクリックします。
|
||
|
||
<Info>
|
||
表示されている**コールバック URL**は、Difyが外部システムでWebhookを作成する際に内部的に使用されるため、ユーザー側でこのURLに対して何か操作を行う必要はありません。
|
||
|
||
セルフホスティング環境では、`TRIGGER_URL`環境変数でURLのベースプレフィックスを変更できます。プレフィックスは外部システムからアクセス可能な公開ドメインまたはIPアドレスを指定してください。
|
||
</Info>
|
||
|
||
</Tab>
|
||
|
||
<Tab title="URL を貼り付けて新しいサブスクリプションを作成(手動)">
|
||
|
||
1. **URL を貼り付けて新しいサブスクリプションを作成**を選択します。
|
||
|
||
2. サブスクリプション名を指定し、提供されたコールバック URL を使用して外部システムで手動で Webhook を作成します。
|
||
|
||
<Info>
|
||
セルフホスティング環境では、`TRIGGER_URL`環境変数でコールバックURLのベースプレフィックスを変更できます。
|
||
|
||
プレフィックスは外部システムからアクセス可能な公開ドメインまたはIPアドレスを指定してください。
|
||
</Info>
|
||
|
||
3. (オプション)作成した Webhook をテストします。
|
||
|
||
<Info>
|
||
ほとんどの外部システムは、作成時に Dify に ping リクエストを送信することで、新しい Webhook を自動的にテストします。
|
||
</Info>
|
||
|
||
1. サブスクライブしたイベントをトリガーして、外部システムがコールバック URL に HTTP リクエストを送信するようにします。
|
||
|
||
2. **手動設定**ページに戻り、ページ下部の**リクエストログ**セクションを確認します。Webhook が正しく機能している場合、受信したリクエストと Dify のレスポンスが表示されます。
|
||
|
||
<img src="/images/plugin_trigger_manual_setup_request_logs.png" alt="Request Logs" width="563" />
|
||
|
||
4. **作成**をクリックします。
|
||
|
||
</Tab>
|
||
|
||
</Tabs>
|
||
|
||
## プラグイントリガーをテストする
|
||
|
||
未公開のプラグイントリガーをテストするには、まず**このステップ実行**をクリックするか、workflow 全体をテスト実行する必要があります。これによりトリガーがリスニング状態になり、外部イベントを監視できるようになります。そうしないと、イベントが発生してもトリガーはサブスクライブしたイベントをキャプチャしません。 |