このドキュメントでは、プロジェクトの初期化、設定フォームの編集、機能コードの実装、プラグインのデバッグ、エンドポイントの設定、効果検証からパッケージ化、リリースまでの完全なSlack Botプラグイン開発ガイドを提供します。Slackプラットフォーム上でAI駆動のチャットボットを構築するために、Difyプラグインスキャフォールディングツールと作成済みのSlack Appが必要です。
混乱を避けるため、以下の概念について説明します。原理の概要:
- Slack Bot は Slack プラットフォーム上のチャットボットであり、仮想キャラクターと見なすことができ、チャットで対話することができます。
- Slack Bot プラグインとは、Dify Marketplace 上のプラグインで、Dify アプリケーションと Slack プラットフォームを接続するために使用されます。本稿では、主にこのプラグイン開発について説明します。
extension
テンプレートを選択し、Apps
と Endpoints
の 2 つの権限を付与します。
プラグインが Dify プラットフォームの機能を逆引き呼び出しする方法の詳細については、逆引き呼び出しを参照してください。
group/slack.yaml
。フォーム設定ファイルの名前は、プラグイン作成時に記入した基本情報によって決まります。対応する yaml ファイルを変更できます。
サンプルコード:
slack.yaml
type
フィールドは app-selector
フィールドとして指定されます。
ユーザーはプラグイン使用時に特定の Dify アプリケーションにアクセスし、メッセージ転送を行うことができます。
scope
フィールドは chat
フィールドとして指定されます。
agent
、chatbot
、chatflow
などのタイプのアプリのみ使用できます。
endpoints/slack.yaml
ファイル内のリクエストパスとリクエストメソッドを変更し、method を POST 方式に変更する必要があります。
サンプルコード:
endpoints/slack.yaml
endpoints/slack.py
ファイルを変更し、以下のコードを追加します。
.env.example
ファイルをコピーして .env
に名前を変更します。
python -m main
コマンドを実行してプラグインを起動します。プラグインページで、このプラグインがワークスペースにインストールされていることが確認できます。他のチームメンバーもこのプラグインにアクセスできます。
self.session.app.chat.invoke
を使用して Dify プラットフォーム内の App を呼び出し、app_id
や query
などの情報を渡し、最後にレスポンスの内容を Slack Bot に返します。python -m main
コマンドを実行してプラグインを再起動してデバッグし、Slack Bot が Dify App の応答メッセージを正しく出力できるか確認します。
slack_bot.difypkg
ファイルが見つかります。これが最終的なプラグインパッケージです。パッケージ化の詳細な手順については、ローカルファイルとしてパッケージ化して共有を参照してください。