当前位置: 首页 > news >正文

企业微信机器人配置webhook自动推送错误订单信息

一、背景

随着业务量增长,传统人工核查错误订单模式已难以满足时效性要求。为解决漏单风险及响应滞后问题,需构建自动化告警机制。通过配置企业微信机器人Webhook接口,系统中标记异常的订单数据(如支付超时、地址无效等),以即时消息形式同步至开发运维群组。该方案能有效缩短问题发现周期,降低人为疏漏概率,保障业务流程顺畅运行,同时提升跨部门协作效率。

二、机器人配置流程

1.打开企业微信→创建群聊→在群的右上方点击(...)选择消息推送

2.点击自定义消息推送

3.填写基本信息,复制webhook地址

三、Java代码集成微信机器人

1.配置推送工具

import java.util.Arrays;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import lombok.extern.slf4j.Slf4j;
import reactor.core.publisher.Mono;
import willand.com.cloud.customer.common.utils.DateUtil;
import willand.com.cloud.customer.common.utils.HttpUtils;
@Slf4j
public class WeXinUtil {private static String warnWebHook = "****请修改为你的企业微信webhook地址";private static String applicationName = "****请修改为你的项目名称";public static void sendWarnMessage(String message, boolean notifyAll, String env) {// 本地环境和测试正式环境颜色不同String envStr = "<font color=\"warning\">%s</font> \n";if (!env.equals("test") && !env.equals("formal")) {envStr = "<font color=\"comment\">%s</font> \n";}String content = String.format("应用[%s]报警\n >环境:" + envStr + " >时间:%s \n >内容:%s", applicationName, env,DateUtil.getBeijingTime(), message);JSONObject body = new JSONObject();body.put("msgtype", "markdown");body.put("markdown", new JSONObject());body.getJSONObject("markdown").put("content", content);if (notifyAll) {body.getJSONObject("markdown").put("mentioned_list", Arrays.asList("@all"));}// 发送到企业微信群中sendWeXinMessage(warnWebHook, body);}public static void sendWarnMessage(String url, String message) {String content = String.format("应用[%s]报警\n" + " >时间:%s \n >内容:%s", applicationName, DateUtil.getBeijingTime(),message);JSONObject body = new JSONObject();body.put("msgtype", "markdown");body.put("markdown", new JSONObject());body.getJSONObject("markdown").put("content", content);// 发送到企业微信群中sendWeXinMessage(url, body);}// 通用机器人消息发送public static void sendCommonMessage(String url, JSONObject body) {// 发送到企业微信群中sendWeXinMessage(url, body);}private static void sendWeXinMessage(String url, JSONObject body) {Mono<String> resultMono = HttpUtils.post(url, body, null);resultMono.subscribe(value -> {JSONObject result = JSON.parseObject(value);// 如果有异常打印出来if (result.getInteger("errcode") != 0) {log.warn("warnWebHook 结果异常: " + value);}}, error -> log.error(error.getMessage(), error));}}

2.配置测试接口Service

@Autowired 
private Environment env;	public ResponseEntity<String> sendWarnMessage() {String param="orderNumber:1234";//env为服务环境String activeProfile = env.getProperty("spring.profiles.active");WeXinUtil.sendWarnMessage("test订单推送SF失败,请关注!" + ",param:" + param , false, activeProfile);	   return null;}

四、相关资料

企业微信官方资料:https://developer.work.weixin.qq.com/document/path/99110

http://www.dtcms.com/a/524459.html

相关文章:

  • Web3 前端与合约交互
  • 基于window/ubuntu安装rknn-toolkit2【docker】
  • Mac安装配置MySQL
  • JumpServer堡垒机的安装部署
  • Harmony鸿蒙开发0基础入门到精通Day05--JavaScript篇
  • 福州医疗网站建设电商平台管理系统
  • 【乐鑫】乐鑫平台库文件生成方法
  • 文件IO操作
  • GStreamer视频编码
  • 【Go】--闭包
  • 正规网店代运营公司seo难不难
  • 【Dataset】如何高效处理海量数据并从中智能筛选出有代表性的样本?
  • 攻防世界-Web-Confusion1
  • python:怎样用 Django 开发电子商务程序
  • 【u-boot】u-boot驱动模型-struct uclass_driver
  • 昌吉网站建设公司怎么用php安装wordpress
  • 山西网站建设营销什么价格html模板在哪找
  • MATLAB 实现基于短时傅里叶变换 (STFT) 的音频信号时频分析与可视化
  • 第十章-Tomcat性能测试与实战案例
  • 1.Linux初识
  • 如何在亚马逊做公司网站wordpress文档chm
  • 免费中英文网站源码想做个网站都需要什么
  • 【小程序】指定元素滚动到中间
  • 百度PaddleOCR-VL:基于0.9B超紧凑视觉语言模型,支持109种语言,性能超越GPT-4o等大模型
  • (论文速读)InteractVLM: 基于2D基础模型的3D交互推理
  • 网络基础知识简易急速理解---OSPF开放式最短路径优先协议
  • VTK入门:vtkImageData——3D体素/2D像素的“规则收纳盒”
  • 插入区间--leetcode
  • 网络构建与访问控制实验
  • 利用建e网全景生成VR全景链接