一个简单的项目,让 Crisp 客服系统支持透过 Telegram Bot 来快速回复 快速反馈群:https://t.me/v2board_python_bot
Python 版本需求 >= 3.8
- 基于Crisp客服系统
- 自动推送文字、图片到指定聊天
- 自动基于关键词回复对应内容
- 支持回复后推送回对应客户
# apt install git 如果你没有git的话
git clone https://github.com/DyAxy/Crisp_Telegram_Bot.git
# 进程常驻可参考 screen 或 nohup
# 你需要安装好 pip3 的包管理
cd Crisp_Telegram_Bot
pip3 install -r requirements.txt
cp config.yml.example config.yml
nano config.yml
# 编辑 line 3 为你的Bot Token
# 编辑 line 4、5 为信息发送的聊天ID
# 编辑 line 7 为你的 Crisp Marketplace 插件 ID
# 编辑 line 8 为你的 Crisp Marketplace 插件秘钥
# 编辑 line 9 为你的 Crisp 网站ID
# 编辑 line 11 为自动关键词回复,你可以复制成多行,每个关键词用 `|` 隔开即可,在 `:` 后输入自动回复内容
python3 bot.py
- 私聊 https://t.me/BotFather
- 输入
/newbot
,并为你的bot起一个响亮的名字 - 接着为你的bot设置一个username,但是一定要以bot结尾,例如:
v2board_bot
- 最后你就能得到bot的token了,看起来应该像这样:
123456789:gaefadklwdqojdoiqwjdiwqdo
- 注册 https://app.crisp.chat/initiate/signup
- 完成注册后,网站ID在浏览器中即可找到,看起来应该像这样:
https://app.crisp.chat/settings/website/12345678-1234-1234-1234-1234567890ab/
- 其中
12345678-1234-1234-1234-1234567890ab
就是网站ID - 前往 MarketPlace, 需要重新注册账号 https://marketplace.crisp.chat/
- 点击 New Plugin,选择 Private,输入名字以及描述。会获得开发者ID和Key,可能会不够用。
- 需要Production Key,点击 Ask a production token,再点击Add a Scope。
- 需要 2 条read和write权限:
website:conversation:sessions
和website:conversation:messages
- 保存后即可获得ID和Key,此时点击右上角 Install Plugin on Website 即可。
docker pull moefaq/crisp_telegram_bot:tagname
选项/参数 | 说明 |
---|---|
--name | 容器名称设置为: |
-v ./config.yaml:/Crisp_Telegram_Bot/config.yaml | 将配置文件config.yaml挂载至容器中 |
<Crisp_Telegram_Bot_data>/config.yaml:/Crisp_Telegram_Bot/config.yaml | |
moefaq/Crisp_Telegram_Bot-docker:latest | 指定镜像, latest为镜像tag, 详见Image tag说明 |
-f docker-compose.yaml | 指定compose文件 |
-p ctb | 指定project名称, 指定后容器名形如ctb-bot-1 |
容器未挂载config.yml时,entrypoint.sh会根据环境变量生成config.yml。
注:distroless构建的镜像暂不支持环境变量生产配置文件。
选项/参数 | 说明 |
---|---|
BOT_TOKEN | |
BOT_ADMIN_ID | 管理员tg id,使用半角逗号(,)分隔。 e.g. 123456789,321654987,555555,111222 |
CRISP_ID | Crisp Marketplace 插件 ID |
CRISP_KEY | Crisp Marketplace 插件秘钥 |
CRISP_WEBSITE | Crisp 网站ID |
BOT_AUTOREPLY | 自动回复设置,详见常规使用,新增的时候整行复制往下写。 注:"\0"是留着给entrypoint转义用的,别删。 |