通过java程序发送飞鸽快信(微信)消息

简介: 通过java程序发送飞鸽快信(微信)消息

一、产品介绍:


飞鸽快信微信消息是一款基于微信的实时消息推送产品,可应用于服务器告警、LINUX服务器日志、状态监控异常提醒、阀值预警、程序报错报警提醒等场景,使用微信消息代替短信发送警告通知,实现精准推送。


二、当前解决方案的弊端:


目前,对于服务器告警、故障等问题的消息通报,以往的处理方式都是通过短信通知或者邮件,但是短信已经过时了,而邮件的及时性会比较差,暴露出了越来越多的缺点:


1.短信接收延迟严重、甚至收不到,出现概率很高,很容易错过重要报警消息,无法及时跟踪处理问题;

2.短信单条字数限制70字以内,超出被截断成多条,导致信息展示不清晰,阅读不流畅;

3.不支持群发,信息不对称、管理混乱。


作为互联网行业中的一员,在平常工作中也是深受其扰,经过仔细研究,决定开发飞鸽快信微信消息这样一款产品来解决上述问题,从此与短信带来的烦恼Say GoodBye!


三、飞鸽快信微信消息的优点:


1.基本做到零延迟,实测消息请求到推送给微信在一秒之内完成。对于微信未接收到的,系统会继续重发,最大限度保证消息不漏发。


2.一条消息内容可以写很长不会截断,用户可以在微信接收消息界面查看详情,可以更方便的了解此次服务器告警的详细内容,从而提高解决问题的效率。


3.系统内置了项目管理和成员管理,消息以项目为单位,一条消息请求系统自动群发到所有项目成员微信上。减少工作量的同时,还能方便管理人员了解各项目详细情况。


4.支持多种模板,不同类型的消息进行归类,信息内容主次分明,让人看了一目了然,大大提高了工作效率。


四、技术实现


每天或者每月定时给自己的微信发送消息

实现方式:采用飞鸽快信,每月总送1000条消息


1.申请接口

2.代码测试 使用的jar包为 httpclient-4.3.6

import java.util.ArrayList;
import java.util.List;
import org.apache.http.NameValuePair;
import org.apache.http.client.entity.UrlEncodedFormEntity;
import org.apache.http.client.methods.CloseableHttpResponse;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.entity.StringEntity;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClients;
import org.apache.http.message.BasicNameValuePair;
import org.apache.http.util.EntityUtils;
/**
 * 发送飞鸽快信
 *
 */
public class SendWechatMsg {
    public static void sendMsg(String title,String content,String remark) throws Exception {
        // 创建一个httpclient对象
        CloseableHttpClient client = HttpClients.createDefault();
        // 创建一个post对象
        HttpPost post = new HttpPost("http://u.ifeige.cn/api/send_message");
        // 创建一个Entity,模拟表单数据
        List<NameValuePair> formList = new ArrayList<NameValuePair>();
        // 添加表单数据  
        formList.add(new BasicNameValuePair("secret", "********************************"));
        formList.add(new BasicNameValuePair("token", "*********************************"));
        formList.add(new BasicNameValuePair("key", "notice"));
        formList.add(new BasicNameValuePair("title", title));
        formList.add(new BasicNameValuePair("content", content));
        formList.add(new BasicNameValuePair("remark", remark));
        formList.add(new BasicNameValuePair("time", "time()"));
        // 包装成一个Entity对象
        StringEntity entity = new UrlEncodedFormEntity(formList, "utf-8");
        // 设置请求的内容
        post.setEntity(entity);
        // 设置请求的报文头部的编码
        // post.setHeader(new BasicHeader("Content-Type",
        // "application/x-www-form-urlencoded; charset=utf-8"));
        // 设置期望服务端返回的编码
        // post.setHeader(new BasicHeader("Accept",
        // "text/plain;charset=utf-8"));
        // 执行post请求
        CloseableHttpResponse response = client.execute(post);
        // 获取响应码
        int statusCode = response.getStatusLine().getStatusCode();
        if (statusCode == 200) {
            // 获取数据
            String resStr = EntityUtils.toString(response.getEntity());
            // 输出
            System.out.println(resStr);
        } else {
            // 输出
            System.out.println(statusCode);
        }
    }
}

参数简介(详细请移步接口网站)

群组接口 此接口用于给群组添加接收消息的用户

参数说明:

参数名称     参数类型     描述

secret    String(必选)    系统分配给您的密钥,在用户中心查看

token    String(必选)    群组token,可以群组详情里查看

uid    int(与name可选其一)    用户在飞鸽快信的ID,唯一,通过用户列表接口获得

name    string(与uid可选其一)    用户的微信昵称,通过用户列表接口获取比对


单独给用户发消息 此接口用于单独给关注管理员的用户发送消息

参数说明:

参数名称     参数类型     描述

secret    String(必选)    系统分配给您的密钥,在用户中心查看

uid    Int(必选)    接收消息人员的ID,通过用户列表获得

key    Int(可选)    消息模板KEY,不传即视为故障通报通知

title    String(必选)    消息标题,请使用您自己的内容替换

content    String(必选)    消息内容,请使用您自己的内容替换

remark    String(必选)    消息详细说明,请使用您自己的内容替换

time    Numeric(可选)    时间,不传即为服务器接收到消息的发送请求的时间


五、示例


sample-2.pngsample-2.png

sample-3.png



sample-4.png


目录
相关文章
|
4月前
|
数据可视化 机器人 Java
聊天软件自动回复脚本,微信抖音快手小红书,消息自动回复工具机器人【java】
包含4个完整模块:主逻辑模块实现核心回复功能,工具模块封装常用函数,UI模块提供可视化控制界面
|
19天前
|
存储 小程序 Java
热门小程序源码合集:微信抖音小程序源码支持PHP/Java/uni-app完整项目实践指南
小程序已成为企业获客与开发者创业的重要载体。本文详解PHP、Java、uni-app三大技术栈在电商、工具、服务类小程序中的源码应用,提供从开发到部署的全流程指南,并分享选型避坑与商业化落地策略,助力开发者高效构建稳定可扩展项目。
|
3月前
|
Java 计算机视觉
微信虚拟视频聊天插件,QQ抖音快手虚拟摄像头工具,替换相机视频流java
实现包含了虚拟摄像头核心功能,可以捕获真实摄像头视频流,处理后输出到虚拟摄像头设备。
|
7月前
|
Java C语言
课时8:Java程序基本概念(标识符与关键字)
课时8介绍Java程序中的标识符与关键字。标识符由字母、数字、下划线和美元符号组成,不能以数字开头且不能使用Java保留字。建议使用有意义的命名,如student_name、age。关键字是特殊标记,如蓝色字体所示。未使用的关键字有goto、const;特殊单词null、true、false不算关键字。JDK1.4后新增assert,JDK1.5后新增enum。
113 4
|
7月前
|
Java 编译器
课时7:Java程序基本概念(注释)
课时7介绍了Java程序中的注释。编程语言有其语法和语义,注释有助于理解代码需求,防止断档。Java支持三类注释:单行(//)、多行(/* */)和文档注释(/** */)。注释不会被编译器编译。范例中展示了如何在代码中使用注释,并强调了注释对项目文档管理的重要性。
113 3
|
8月前
|
存储 小程序 前端开发
微信小程序与Java后端实现微信授权登录功能
微信小程序极大地简化了登录注册流程。对于用户而言,仅仅需要点击授权按钮,便能够完成登录操作,无需经历繁琐的注册步骤以及输入账号密码等一系列复杂操作,这种便捷的登录方式极大地提升了用户的使用体验
2440 12
|
7月前
|
存储 Java 数据库连接
【YashanDB知识库】Java程序调用存储过程,在提取clob时报YAS-00004
【YashanDB知识库】Java程序调用存储过程,在提取clob时报YAS-00004
|
7月前
|
搜索推荐 Java Android开发
课时146:使用JDT开发Java程序
在 Eclipse 之中提供有 JDT环境可以实现java 程序的开发,下面就通过一些功能进行演示。 项目开发流程
258 0
|
9月前
|
传感器 安全 算法
消防救援支队消防员单兵装备智能养护舱电机驱动java版程序(二)
本文探讨消防救援中智能养护舱电机驱动的Java程序设计,作为系列文章第二部分。通过自动化和智能化手段,智能养护舱提升了装备维护效率与准确性。文章详细介绍了电机驱动模块的设计与实现,包括硬件选型、PID控制策略、安全保护机制及Java程序架构,确保电机精确控制、稳定性和安全性。未来将优化功能并引入智能算法和物联网技术,进一步提升装备维护智能化水平。
|
9月前
|
IDE Java 开发工具
消防救援支队消防员单兵装备智能养护舱点击驱动java版程序(一)
智能消防作战服架通过电机驱动系统提升消防员作业效率和安全性。本文介绍基于Java的电机驱动程序开发,涵盖硬件准备、软件环境搭建及驱动程序实现。重点包括串口通信配置、电机控制类设计与控制逻辑实现,确保电机高效稳定运行。通过正确配置通信协议和串口参数,并添加异常处理机制,保障系统的安全性和可靠性。

热门文章

最新文章