Qt6http调用钉钉机器人,推送信息

实现功能

XQRobotWeCom

实现功能成员函数
发送普通文本sendText
发送Markdown文本sendMarkdown
发送图文sendArticles

本项目安装静态库到Qt

源代码

XQRobotDingDing源代码 里面还依赖一些其他类,在里面都可以找到,推荐整个克隆下来看方便

完整库源码


 

XQRobotDingDing头文件

#ifndef XQROBOTDINGDING_H
#define XQROBOTDINGDING_H
#include"XQRobot.h"
//钉钉在线文档https://open.dingtalk.com/document/robots/custom-robot-access
//钉钉机器人
class XQRobotDingDing:public XQRobot
{
	Q_OBJECT
public:
	XQRobotDingDing(QObject* parent = nullptr);
	~XQRobotDingDing();
	/*
	* @brief  获取令牌.
	* @retval 令牌
	* @note
	*/
	inline QString token()const;
	/*
	* @brief  获取密钥.
	* @retval 密钥
	* @note
	*/
	inline QString secret()const;
	/*
	* @brief  获取当前的标志.
	* @retval 标志
	* @note
	*/
	QString sign();
	/*
	* @brief  获取当前的url.
	* @retval url
	* @note
	*/
	QString url();
public:
	/*
	* @brief 设置令牌.
	* @param token:令牌
	* @retval None
	* @note
	*/
	void setToken(const QString& token);
	/*
	* @brief 设置密钥.
	* @param secret:密钥
	* @retval None
	* @note
	*/
	void setSecret(const QString& secret);
	/*
	* @brief 发送文本.
	* @param content:发送的文本内容
	* @param atMobiles:at人的手机号
	* @param atUserIds:at人的userid
	* @param isAtAll:是否at所有人
	* @retval 发送成功返回true
	* @note
	*/
	bool sendText(const QString& content, const QStringList& atMobiles = {}, const QStringList& atUserIds = {}, bool isAtAll = false);
	/*
	* @brief 发送图文链接.
	* @param title:发送的标题
	* @param text:发送的文本内容
	* @param messageUrl:跳转链接
	* @param picUrl:图片地址
	* @retval 发送成功返回true
	* @note
	*/
	bool sendArticles(const QString& title, const QString& text, const QString& messageUrl, const QString& picUrl= QString());
	/*
	* @brief 发送markdown.
	* @param title:发送的标题
	* @param text:发送的markdown内容
	* @param atMobiles:at人的手机号
	* @param atUserIds:at人的userid
	* @param isAtAll:是否at所有人
	* @retval 发送成功返回true
	* @note
	*/
	bool sendMarkdown(const QString& title, const QString& text, const QStringList& atMobiles = {}, const QStringList& atUserIds = {}, bool isAtAll = false);
protected:
	void init();
	//添加at相关参数
	void addAt(QJsonObject& parent, const QStringList& atMobiles = {}, const QStringList& atUserIds = {}, bool isAtAll = false);
protected:
	QString m_token;//令牌
	QString m_secret;//密钥
	qint64 m_timestamp = 0;//当前时间戳,单位是毫秒
};
#endif // !XQRobotDingDing_H

测试代码

XQRobotDingDing Robot;
//这条是显示调试信息发送的json文本,默认不开启,不看的话这行可以不要
Robot.setDebugModel(XQRobot::ShowJson, true);
//设置令牌,改成自己的
Robot.setToken("???");
//设置密钥改成自己的
Robot.setSecret("???");
//发送普通文本
Robot.sendText("这是一条Qt测试信息");
//发送图文链接
Robot.sendArticles("中秋节礼品领取", "今年中秋节公司有豪礼相送", "http://www.qq.com", "http://res.mail.qq.com/node/ww/wwopenmng/images/independent/doc/test_pic_msg1.png");
//发送Markdown文本
Robot.sendMarkdown("杭州天气", "#### 杭州天气 @150XXXXXXXX \n > 9度,西北风1级,空气良89,相对温度73%\n > ![screenshot](https://img.alicdn.com/tfs/TB1NwmBEL9TBuNjy1zbXXXpepXa-2400-1218.png)\n > ###### 10点20分发布 [天气](https://www.dingtalk.com) \n");

企业微信实现效果

  • 10
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值