Dify客服工作流可通过环境变量与条件分支实现节假日自动切换:配置HOLIDAY_DATES环境变量存储法定假日列表,用脚本节点或表达式判断当日是否在列表中,据此分流至假期/日常回复策略。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

你需要让Dify搭建的客服工作流在春节、国庆等法定节假日自动切换成“假期模式”回复策略,避免人工值守时漏回消息或发送非假期话术。
确认Dify工作流已支持环境变量与条件分支
进入Dify控制台→【应用】→选择目标客服应用→点击右上角【编辑】→切换到【工作流】画布。检查左侧组件栏中是否存在「条件分支」和「环境变量」两个基础组件,若缺失则说明当前Dify版本低于0.12.0,需升级至最新稳定版后继续操作。
这一步不可跳过,【缺少条件分支组件将导致无法实现节假日逻辑判断】。
配置节假日日期列表作为环境变量
点击画布右上角【设置】→【环境变量】→新增变量,名称填 HOLIDAY_DATES,值填JSON格式字符串,例如:["2024-01-28","2024-01-29","2024-01-30","2024-01-31","2024-02-01","2024-02-02","2024-02-03","2024-10-01","2024-10-02","2024-10-03","2024-10-04","2024-10-05","2024-10-06","2024-10-07"]。
注意:该列表需每年手动更新,Dify不提供自动同步国务院放假安排的API接口;建议用Excel生成后复制粘贴,避免手输引号错位或逗号遗漏。
在工作流中插入日期判断逻辑
方法一:使用「条件分支」+「脚本节点」组合判断
① 在用户输入节点后,拖入一个「脚本节点」,语言选Python,代码如下:
import json<br>from datetime import datetime<br><br>today = datetime.now().strftime("%Y-%m-%d")<br>holiday_list = json.loads($env.HOLIDAY_DATES)<br>if today in holiday_list:<br> return {"is_holiday": True}<br>else:<br> return {"is_holiday": False}② 将该脚本节点输出连接至「条件分支」节点,分支条件设为 is_holiday == True。
③ 条件分支的「真」分支接入假期专属回复节点(如“值班同事正在休假,预计X月X日恢复响应”),「假」分支接入日常客服流程节点。
方法二:纯前端时间判断(仅限Dify Cloud Pro及以上版本)
直接在「条件分支」节点中启用「表达式模式」,填写:datetime.now().strftime('%Y-%m-%d') in json.loads($env.HOLIDAY_DATES)。此方式省去脚本节点,但要求Dify运行时支持Python 3.9+且启用了内置datetime模块。
测试节假日判断是否生效
点击画布右上角【调试】→在输入框中任意输入测试语句→点击【运行】→观察「脚本节点」或「条件分支」的输出日志中 is_holiday 字段值是否为 True 或 False。
若始终返回 False,请检查环境变量中日期格式是否为标准 "YYYY-MM-DD" 字符串,【双引号必须是英文半角,且每个日期项之间用英文逗号分隔】。
修改环境变量后需重新发布应用,未发布则调试结果不反映真实线上行为。


















