
Dify×GASでSlackボット作ったので配布します
Dify × GASでSlackボット作ったので配布します。
ご自由にお使いください🤲
DMまたは招待されたチャンネルのメンションに反応します。
SlackのThread IDとDifyの会話IDを紐付けてスプシに保存するので、会話も記憶されます。

GASを用意
↑このスプレッドシートを自分の環境にコピーし、後の工程で取得するSLACK_BOT_TOKENとDIFY_API_KEYをそれぞれスクリプトプロパティに設定してデプロイします。
デプロイURLは後でSlackアプリのEvent Subscriptionに設定します。

Slackアプリの用意
Slackのアプリ一覧から、新規作成 > マニフェストファイルから作成として、以下のファイルを使います。
{
"display_information": {
"name": "SimpleChat"
},
"features": {
"bot_user": {
"display_name": "SimpleChat",
"always_online": false
}
},
"oauth_config": {
"scopes": {
"bot": [
"channels:history",
"channels:read",
"chat:write",
"im:history",
"im:read",
"im:write",
"app_mentions:read",
"reactions:read"
]
}
},
"settings": {
"event_subscriptions": {
"request_url": "https://myurl.com/exec",
"bot_events": [
"app_mention",
"message.im",
"reaction_added"
]
},
"org_deploy_enabled": false,
"socket_mode_enabled": false,
"token_rotation_enabled": false
}
}
作成できたら、自分のワークスペースにインストールします。
この時生成されるBot TokenなるものをSLACK_BOT_TOKENとしてGASに設定します。
Difyの用意
DifyのChatアプリを用意します。(workflowの場合はGAS側でエンドポイントとペイロードを変更する必要があります。)
APIキーはDIFY_API_KEYとしてGASに設定します。
以下のDSLは最もシンプルなチャットフローです。
AIのロジックはほとんどDify側で設定します。

他にも様々なAI活用・業務効率化GASを無料で配布してます。