【开发记录】青龙面板设置飞书机器人

接上篇文章,笔者在写上篇文章时对青龙面板的消息通知功能感兴趣,遂实验之,于是有了这篇文章。

首先参考这篇文章在群聊中引入一个机器人,此时可以获得该机器人的webhook。在青龙面板的通知设置中有larkKey一项,填入webhook的最后一个/后面的内容(这也是飞书为每个机器人生成的特异性字段)。

生成的webhook可以通过post请求将内容转发到对应的群聊中,这一点与直接使用飞书创建机器人编写Event的方法不同,不需要一台可以公网访问的服务器,也即将服务器部署在局域网中即可。

可以通过下面的代码访问该webhook(xxxxxx内容需要替换为自己的内容):

bash 复制代码
curl -X POST -H "Content-Type: application/json" \
    -d '{"msg_type":"text","content":{"text":"helloworld, this is 中国"}}' \
    https://open.feishu.cn/open-apis/bot/v2/hook/xxxxxx

现有版本(v2.17.4)存在一个问题,点击保存按钮之后只会发送一条测试消息,但此时青龙面板中部署的代码仍然不能正确发送通知,查询代码之后发现需要通过配置名为FSKEY的环境变量,才能正确启动发送逻辑。

可以通过下面的脚本测试:

javascript 复制代码
// test.js
const axios = require('axios');

const url = 'https://open.feishu.cn/open-apis/bot/v2/hook/xxxxxx';

const postData = {
    msg_type: "text",
    content: {
        text: "helloworld, this is 中国"
    }
};

axios.post(url, postData, {
    headers: {
        'Content-Type': 'application/json'
    }
}).then(response => {
    console.log('Response:', response.data);
}).catch(error => {
    console.error('Error:', error);
});

可以通过"脚本管理"页面调试运行查看结果,也可以通过添加一个定时任务来运行脚本。添加方式见下图:

相关推荐
我是koten5 小时前
【运维杂谈】K8s遇到Terminating的名称空间删除不了怎么办?(解决方案亲测有效)
linux·运维·服务器·云原生·kubernetes·k8s·名称空间
爱吃奥利奥_wen16 小时前
SQL Server 基础语法详解:从建库建表到约束与增删改查
服务器·数据库·oracle
Android系统攻城狮18 小时前
Linux FFmpeg深度解析之avio_open调用流程与实战(三十八)
linux·运维·服务器·ffmpeg·音视频进阶·ffmpeg音视频
雪落漂泊21 小时前
Linux进程(五):进程地址空间篇
linux·运维·服务器
wdeok1 天前
Socket编程Tcp
服务器·网络·tcp
千舟软件1 天前
报修系统对接企业微信和钉钉的3种方式_千舟报修云
服务器·钉钉·企业微信
迪康coolmu2 天前
出差终端数据安全落地实战:基于迪康端点安全一体化管理系统的四道防线实践
运维·服务器·经验分享·笔记·其他·安全·php
qq_371802112 天前
Ubuntu Linux中安装WorkBuddy
linux·运维·服务器·ubuntu
坤坤子吖2 天前
Linux网络编程:TCP服务器的多进程与多线程实现
linux·服务器·开发语言·网络·c++·笔记·学习
say_fall2 天前
【AI大模型】MCP 模型上下文协议:客户端-服务器架构、JSON-RPC 消息与能力协商、工具发现与调用链路、与函数调用的分工
服务器·人工智能·架构