在 Slack 中私聊 Dify 机器人:如何实现更私人化的 AI 互动

Table of Contents

背景 #

在上一篇文章 如何创建Dify Slack Bot 中,我们介绍了如何在 Slack 中使用 Dify 打造智能知识助手。但有一个问题引起了不少用户的关注:为什么只能在公共频道中 @bot 来提问,而不能直接私信机器人呢?

对于社交达人来说,在公共场合提问可能不是问题。但对于许多用户而言,他们更希望能够私下与 AI 助手交流,避免在团队面前暴露自己的问题或查询内容。今天,我们将深入探讨如何实现与 Dify Slack Bot 的私聊功能,让你的 AI 交互更加私密和个性化。

功能演示 #

下面是一个简短的视频演示,展示了如何与 Dify Bot 进行私聊:

实现步骤 #

1. 部署 Dify Bot #

首先,我们需要部署 Dify Bot 服务。这里我们使用 Docker 来简化部署过程:

  1. 创建项目目录并下载配置文件:
mkdir dify-bot-9db
curl https://raw.githubusercontent.com/graysonchen/dify-bot/refs/heads/stable/.env.example > .env
  1. 配置环境变量,编辑 .env 文件:
# Dify 配置
DIFY_API_BASE_URL=https://api.dify.ai/v1
DIFY_API_KEY=app-OxxxxxxxxxxxxxTxxxxxxx

# Slack 配置
SLACK_BOT_TOKEN=xoxb-xxxxxxxxxxxxx-xxxxxxxxxxxxx-V25CBgH7347xxxxxxxxxxxxx
SLACK_APP_TOKEN=xapp-1-A05KP4WSVS4-xxxxxxxxxxxxx-4208xxxxxxxxxxxxxca9dxxxxxxxxxxxxxc33a0d8bb311d40axxxxxxxxxxxxx
  1. 使用 Docker 运行服务:
# 拉取最新镜像
docker pull graysonchen/dify-bot:latest

# 运行容器
docker run -itd --env-file .env --name=dify-slack-9db graysonchen/dify-bot:latest

# 设置容器自动重启
docker update --restart=always dify-slack-9db

# Stop/Start production container
docker stop dify-slack-9db
docker start dify-slack-9db

2. 配置 Slack App 权限 #

是的。怎么设置可以让这个输入框可以发送信息呢。 image

要启用与机器人的私聊功能,需要正确配置 Slack App 的权限:

  1. 访问 Slack Apps 管理页面,选择或创建你的 Slack App。

image

  1. 在左侧菜单中找到 App Manifest,这是配置 App 功能的核心部分。

image

  1. 在 App Manifest 中添加或修改以下配置:
features:
  app_home:
    home_tab_enabled: false
    messages_tab_enabled: true
    messages_tab_read_only_enabled: false

这些配置的含义是:

  • home_tab_enabled: false - 禁用 Home 标签页
  • messages_tab_enabled: true - 启用消息标签页
  • messages_tab_read_only_enabled: false - 允许用户在私聊中发送消息

3. 验证配置 #

完成配置后,你可以:

  1. 在 Slack 中直接搜索你的 bot 用户名
  2. 打开与 bot 的私聊窗口
  3. 在输入框中输入消息并发送
  4. Bot 会根据你的问题自动回复

image

安全性考虑 #

在实现私聊功能时,请注意以下安全事项:

  1. 妥善保管 API 密钥,避免泄露
  2. 定期更新 Docker 镜像以获取安全更新
  3. 监控 bot 使用情况,防止滥用

参考资料 #