简单实现利用飞书机器人推送消息给相关人员群的方法

利用的飞书的自定义机器人,将系统中的错误信息推送给技术群的功能。

飞书文档地址:开发文档 - 飞书开放平台

 自定义机器人只能在群聊中使用的机器人,在当前的群聊中通过调用webhook地址来实现消息的推送。

配置逻辑可以看飞书的官方文档,下面是示例文档,仅供参考。

代码如下:

<?php
namespace app\admin\controller;
use think\Controller;class Feishu extends Controller
{public static $key_words = [1=>'设备故障',];/*** @return array* User:赫陈* Date: 2024-07-02*/public function faulteQuipment(){$res = ["status"=>"no", "message" => "无设备故障,不发送消息"];if(!empty($data)){$res = $this -> sendToFeishu(1,$data);}return $res;}public function sendToFeishu($key_words_id,$alarmMessage){// 获取告警信息$alarmMessage = self::$key_words[$key_words_id].json_encode($alarmMessage,JSON_UNESCAPED_UNICODE);// 飞书Webhook地址$webhookUrl = 'https://open.feishu.cn/open-apis/bot/v2/hook/你的webhook地址;// 准备请求数据$requestData = ['msg_type' => 'text','content' => ['text' => $alarmMessage,],];
//        $client = new Client();
//        $response = $client->post($webhookUrl, [
//            'json' => $requestData,
//        ]);// 发送POST请求到飞书Webhook地址$response = $this->curlPost($webhookUrl,$requestData);$response = json_decode($response);// 检查响应状态码
//        if ($response->getStatusCode() == 200) {if ($response->code == 0) {return  ['status' => 'success', 'message' => '告警信息已成功发送到飞书'];} else {return ['status' => 'error', 'message' => '发送告警信息到飞书失败,原因是:'.$response->msg];}}private function curlPost($url,$postFields){$postFields = json_encode($postFields);$ch = curl_init ();curl_setopt( $ch, CURLOPT_URL, $url );curl_setopt( $ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json; charset=utf-8'));curl_setopt( $ch, CURLOPT_RETURNTRANSFER, 1 );curl_setopt( $ch, CURLOPT_POST, 1 );curl_setopt( $ch, CURLOPT_POSTFIELDS, $postFields);curl_setopt( $ch, CURLOPT_TIMEOUT,1);curl_setopt( $ch, CURLOPT_SSL_VERIFYHOST, false);curl_setopt( $ch, CURLOPT_SSL_VERIFYPEER, false);$ret = curl_exec ( $ch );\think\Log::log('通过CURL发送HTTP请求结果:'.$ret);if (false == $ret) {$result = curl_error(  $ch);} else {$rsp = curl_getinfo( $ch, CURLINFO_HTTP_CODE);if (200 != $rsp) {$result = "请求状态 ". $rsp . " " . curl_error($ch);} else {$result = $ret;}}curl_close ( $ch );return $result;}
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/866022.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

WEB攻防-XSS跨站反射型存储型DOM型标签闭合输入输出JS代码解析

文章目录 XSS跨站-输入输出-原理&分类&闭合XSS跨站-分类测试-反射&存储&DOM反射型XSS存储型XSSDOM-base型XSS XSS跨站-输入输出-原理&分类&闭合 漏洞原理&#xff1a;接受输入数据&#xff0c;输出显示数据后解析执行 基础类型&#xff1a;反射(非持续…

CIDR地址表示法

CIDR地址表示法&#xff1a; 假如我们的服务器IP列表为&#xff1a;172.18.0.157~172.18.0.163&#xff0c;该如何表示呢&#xff1f; A. 172.18.0.157/163 B. 172.18.0.157/7 C. 172.18.0.157/24 D. 172.18.0.157/26 E. 172.18.0.0/26 F.1…

典型案例 | 基于全数字实时仿真的嵌入式DevOps解决方案

为丰富浙江省信息技术应用创新&#xff08;以下简称“信创”&#xff09;产业生态&#xff0c;在全社会各领域形成示范效应&#xff0c;浙江省经信厅联合省密码管理局开展2023年浙江省深化信创典型案例评选工作。 经过征集申报、专家评选、名单公示等程序&#xff0c;确定36个…

实现前端项目自动构建和部署(Gitee Go)

前言 相信所有的前端开发者都希望将自己的代码部署在服务器上让所有人都能访问到&#xff0c;但是却不知道如何进行部署。其实要是实现代码上线非常简单&#xff0c;我们只需要将build之后的代码上传到服务器&#xff0c;然后通过Nginx起一个服务指向我们build后的代码就可以了…

Cocos 7.2~7.4

这几天没更新CSDN&#xff0c;跑去玩Cocos了。自从知道我的粉丝百分之十之八九都是假人&#xff0c;更新确实没什么动力了。主要还是把这边当成一个日记本吧。 选择cocos的原因也很简单。会点js&#xff0c;技术栈比较接近&#xff0c;上手估计也快。简单记录下这几天的内容 主…

@amap/amap-jsapi-loader 实现高德地图中添加多边围栏,并可编辑,编辑后获得围栏各个点的经纬度

先上一张效果图 看看是不是大家想要的效果&#xff5e; ❤️ 希望其中的小点能帮助大家&#xff0c;主要看怎么绘制在地图上的代码即可 1.第一步要加入项目package.json中或者直接yarn install它都可以 想必大家应该都会 "amap/amap-jsapi-loader": "0.0.7&qu…

信创产业发展迅速,信创测试需要伴随

信创产业的发展现状呈现出蓬勃的生机与活力。这一领域不仅构成了数据安全、网络安全的基石&#xff0c;更是新型基础设施建设的重要一环。信创产业涵盖了众多关键领域&#xff0c;如云计算、软件&#xff08;包括操作系统、中间件、数据库及应用软件&#xff09;、硬件&#xf…

如何使用云硬盘备份

云硬盘系统盘备份不能直接进行数据恢复&#xff0c;可以使用该备份创建系统盘。因为重装系统时&#xff0c;系统盘的ID会发生变化。 另外弹性云主机&#xff08;windows&#xff09;可以开机的时候&#xff0c;先选中虚拟机&#xff0c;按本地的F8 进入安全模式。

C语言作业笔记

1. 要找俩个数使其相加等于一个数&#xff0c;那么俩个数从头尾出发&#xff0c;先动一边&#xff0c;假设是尾先动&#xff0c;一开始俩个数相加大于sum&#xff08;小于的话就动头&#xff09;&#xff0c;那么总有一时刻俩数相加小于sum&#xff0c;则就在那一刻停下来&…

关于5G和卫星

手机&#xff0c;已经串联起了我们生活中的一切环节。我们随时随地拿出手机&#xff0c;都能畅快地上网。 这一切是如此地理所当然&#xff0c;以至于我们甚至想不到这样不可思议的问题&#xff1a; 移动通信网络真的无处不在吗&#xff1f; 我们都知道&#xff0c;地球虽叫…

【QT】Qt智能指针QPointer、QSharedPointer、QWeakPointer、QScopedPointer

QPointer QPointer can only point to QObject instances. It will be automatically set to nullptr if the pointed to object is destroyed. It is a weak pointer specialized for QObject. QPointer只能指向QObject实例。如果指向的对象被销毁&#xff0c;它将自动设置为 …

毕业论文初稿写作方法与过程

毕业论文初稿写作方法与过程 毕业论文是大学生在学业结束前必须完成的一项重要任务&#xff0c;它不仅是对学生所学知识的综合运用&#xff0c;也是对学生研究能力和写作能力的检验。写好毕业论文初稿是完成高质量毕业论文的关键一步。下面将具体阐述毕业论文初稿的写作方法和过…

Redis 7.x 系列【18】事务

有道无术&#xff0c;术尚可求&#xff0c;有术无道&#xff0c;止于术。 本系列Redis 版本 7.2.5 源码地址&#xff1a;https://gitee.com/pearl-organization/study-redis-demo 文章目录 1. 概述2. 命令2.1 MULTI2.2 EXEC2.3 DISCARD2.4 WATCH2.5 UNWATCH 3. 事务中的错误4.…

无法识别为 cmdlet、函数、脚本文件或可运行程序的名称

一、遇到问题 PS D:\software\nacos\nacos-server-2.3.1\bin> startup.cmd -m standalone startup.cmd : 无法将“startup.cmd”项识别为 cmdlet、函数、脚本文件或可运行程序的名称。请检查名称的拼写&#xff0c;如果包括路径&#xff0c; 请确保路径正确&#xff0c;然后…

Mysql-SQL基础-通用语法与分类

SQL通用语法 SQL语句可以一行或多行书写&#xff0c;以分号作为结尾。 SQL语句可以使用空格、缩进来提高句子的可读性。 SQL语句不区分大小写&#xff0c;对于关键字建议使用大写。 单行注释&#xff1a; --或用#进行注释。 多行注释&#xff1a; /* 注释内容 */ SQL分类…

Ubuntu su命令输入密码后提示“su: 认证失败”

在Ubuntu系统中&#xff0c;使用su命令切换到root用户时提示“su: 认证失败”通常是因为root账户默认情况下是被锁定的&#xff0c;没有设置密码。以下是一些解决这个问题的方法&#xff1a; 使用sudo命令&#xff1a;Ubuntu推荐使用sudo命令代替直接使用root用户。sudo命令允许…

Aavegotchi的Gotchiverse新地图: 沉睡的野兽即将苏醒!

Gotchi 守护者们&#xff0c;准备好了&#xff0c;因为我们要大开杀戒了&#xff01; 加入我们吧&#xff08;后果自负&#xff01;&#xff09;&#xff0c;我们将深入Gotchiverse&#xff0c;前往奥姆夫山--我们虚拟世界中所有 FOMO 的炽热源头。 请继续阅读&#xff0c;了解…

AI 绘画的常用技巧和操作方法

随着人工智能技术的飞速发展&#xff0c;AI 绘画已经成为设计和艺术领域的一股新兴力量。无论是设计师、艺术家&#xff0c;还是普通的科技爱好者&#xff0c;都能通过 AI 绘画工具创造出令人惊叹的作品。 AI 绘画的基本原理 AI 绘画的核心在于机器学习算法。通过训练大量的图像…

餐饮界的新传奇:沃可趣员工社区,让品牌关怀在指尖流淌

咖啡师与顾客发生肢体冲突、员工用咖啡粉泼顾客……某精品咖啡一天爆出两个大瓜&#xff01; 很快有网友指出咖啡店员工长期遭受重压&#xff0c;与品牌之间存在根本矛盾。 同样做餐饮的老牌快餐&#xff0c;门店密度与之不相上下&#xff0c;却很少发生这样的暴雷。 不仅因…

http 状态码主要有哪些?【面试】

HTTP 协议在互联网上用得特别广&#xff0c;在浏览网页的时候经常会碰到它的状态码。这状态码其实就是服务器给客户端请求的一个回应&#xff0c;通过它我们就能知道请求处理得怎么样了。 一、HTTP 协议的状态码类别 &#x1f4f1; 1xx &#xff0c;这是信息性状态码&#xf…