Dify工作流将工单处理从47分钟缩短至22秒,漏单率归零:通过HTTP Trigger接收结构化参数→LLM校验有效性→Condition分流→知识库检索→自动创建并分发工单→动态SLA延迟后飞书预警。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

买家发来“订单号#889231物流停滞5天,我要投诉”,客服手动查单、填表、转交、跟进、回电,整个过程平均耗时47分钟,漏跟单率高达18%。用Dify工作流把工单创建→状态校验→自动分配→超时预警→闭环确认这五步全部串起来,现在从用户提交到坐席收到带上下文的工单通知只要22秒,超时未处理自动触发飞书提醒,漏单归零。
配置工单触发入口节点
进入Dify控制台→工作室→新建工作流→选择「Blank Workflow」空白模板;不要选Chatflow,它不支持HTTP入参解析,而工单必须接收外部系统传来的订单号、用户ID、问题类型等结构化字段。
在画布顶部拖入一个「HTTP Trigger」节点,点击编辑,设置Path为/create-ticket,Method选POST;这个路径将作为你ERP或订单中心调用的唯一入口地址。
在「Request Body Schema」中粘贴以下JSON Schema,确保Dify能正确解析字段并注入后续节点:{"type":"object","properties":{"order_id":{"type":"string"},"user_id":{"type":"string"},"issue_type":{"type":"string","enum":["物流异常","售后申请","投诉升级"]},"description":{"type":"string"}}
【必须开启“Validate Request Body”开关】否则非法字段(比如空order_id)会静默通过,导致下游知识库检索失败却无报错提示。
构建工单状态校验与自动分流逻辑
从HTTP Trigger节点拖出一条线,连接到「LLM」节点;在此节点中写提示词,让模型严格按规则判断当前工单是否具备可处理条件:
你是一个工单质检员。请仅输出JSON格式:{"valid":true/false,"reason":"简短说明"}。判断依据:① order_id长度必须为6-12位纯数字;② issue_type必须是枚举值之一;③ description不能少于10个字符且不能含敏感词“骗子”“诈骗”。输入数据:{{inputs}}。
接着拖入一个「Condition」节点,设置分支条件为{{llm.output.valid == true}};真分支走下一步工单创建,假分支则连接「HTTP Response」节点,返回400错误及{"error":"工单信息不合规","detail":{{llm.output.reason}}}。
这一步卡住无效请求很关键——如果放任错误数据进入流程,后面每一步都在浪费算力和时间。
生成带上下文的工单并分发
在Condition节点的真分支后,拖入「Knowledge Retrieval」节点,关联已上传的《物流异常SOP》《售后政策V3.2》《投诉升级响应SLA》三份知识库;检索Query固定写为针对{{inputs.issue_type}}的处理标准与时效要求。
再拖入一个「HTTP Request」节点,Method选POST,URL填你内部工单系统的API地址(如https://ticket-api.yourcompany.com/v1/tickets);Body用JSON格式,关键字段如下:{"external_id":"{{inputs.order_id}}","assignee_group":"{{knowledge_retrieval.output[0].metadata.category}}","sla_minutes":{{knowledge_retrieval.output[0].metadata.sla_minutes}},"context":{"user_id":"{{inputs.user_id}}","issue_desc":"{{inputs.description}}","kb_snippet":"{{knowledge_retrieval.output[0].content}}"}}
注意:assignee_group字段值来自知识库文档元数据中的category字段,不是硬编码;这样未来新增“关税争议”类工单时,只需在新文档里写category: customs-team,流程自动适配,不用改代码。
设置超时预警与人工介入钩子
在HTTP Request节点后接「Delay」节点,Duration设为{{knowledge_retrieval.output[0].metadata.sla_minutes}}m;这个动态延迟值直接取自知识库中该工单类型的SLA承诺时长。
延迟结束后,拖入「HTTP Request」节点,调用飞书机器人Webhook,发送消息体:{"msg_type":"text","content":{"text":"⚠️ 工单超时预警:订单{{inputs.order_id}}已超SLA {{knowledge_retrieval.output[0].metadata.sla_minutes}}分钟未关闭,请立即处理!\n→ 查看链接:https://ticket-ui.yourcompany.com/ticket/{{inputs.order_id}}\n→ 当前状态:{{http_request_2.output.status}}"}}
最后接一个「HTTP Response」节点,Status Code设为202,Body返回{"status":"accepted","ticket_id":"{{http_request_1.output.id}}"};这个响应会立刻返回给上游系统,表示工单已受理,不必等待后续预警执行完毕。


















