千家信息网

如何使用Serverless+飞书打造你的个性化消息提醒系统

发表于:2026-10-31 作者:千家信息网编辑
千家信息网最后更新 2026年10月31日,如何使用Serverless+飞书打造你的个性化消息提醒系统,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。一、前言在日常工作学习生活中,
千家信息网最后更新 2026年10月31日如何使用Serverless+飞书打造你的个性化消息提醒系统

如何使用Serverless+飞书打造你的个性化消息提醒系统,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

一、前言

在日常工作学习生活中,我们可能会遇到以下情形:

  • 自己管理的某台服务器宕机了,但是没有得到及时的提醒,导致业务受到损失

  • 某些自己很想注册的网站悄悄开放注册,但是自己并没有及时得知,于是只能继续漫无目的的等待

  • ……

如果每件事都花时间去关注,那我们的时间必然会不够用,那有没有什么办法可以让这些消息集中起来并且及时推送呢?在这里我想向大家推荐一个解决方案,那就是使用 Serverless + 飞书打造属于自己的个性化消息提醒系统。

二、准备工作

  1. 首先注册一个飞书账号,然后在飞书网页版登录

  2. 打开飞书开放平台,点击创建企业自建应用,并输入应用名称和应用副标题,然后点击确定创建

  3. 在企业自建应用列表中点击刚刚创建成功的应用,并记录 App ID 和 App Secret


二、编写代码

  1. 在本地新建一个项目目录,名称随意,这里以 feishu-notify 为例

  2. 分别创建 3 个文件:.env,index.py 和 serverless.yml

  3. 按如下说明进行编码

.env

TENCENT_SECRET_ID=AKID********************************TENCENT_SECRET_KEY=********************************

注:这里的 TENCENT_SECRET_ID 和 TENCENT_SECRET_KEY 可在腾讯云控制台的访问密钥中获取,如果没有密钥则需要自己新建一个

serverless.yml

myFunction:  component: "@serverless/tencent-scf"  inputs:    name: feishu-notify-py    codeUri: "./"    handler: index.main_handler    runtime: Python3.6    region: ap-guangzhou    description: My Serverless Function Used to Notify Myself    memorySize: 128    events:    - apigw:        name: serverless        parameters:          protocols:          - https          endpoints:          - path: "/"            method: POST

注:可以点击这里查看serverless.yml中所有可用属性的属性列表

index.py

def main_handler(event, context):    import requests    import json    print(event)    CONFIG = {        "app_id": "********************",        "app_secret": "********************************"    }    # my auth    if 'myauth' not in event['queryString'] or event['queryString']['myauth'] != 'feishu1':        return 'forbidden'    # Get content    postContent = event['body']    try:        postContent = json.loads(postContent)    except:        return 'error in json_loads(line: 19)'    if 'content' not in postContent:        return 'invalid params'    content = postContent['content']    # Get tenant_access_token    try:        res = requests.post('https://open.feishu.cn/open-apis/auth/v3/tenant_access_token/internal/', {            "app_id": CONFIG['app_id'],            "app_secret": CONFIG['app_secret']        })    except:        return 'error in get_tenant_access_token'    data = json.loads(res.text)    if data['code'] != 0:        return data['msg']    token = data['tenant_access_token']    # Get chat_id    try:        res = requests.get('https://open.feishu.cn/open-apis/chat/v4/list', headers={            'Authorization': 'Bearer %s' % (token)        })    except:        return 'error in get_chat_id'    data = json.loads(res.text)    if data['code'] != 0:        return data['msg']    groupList = data['data']['groups']    myGroupId = groupList[0]['chat_id']    # Send message    try:        res = requests.post('https://open.feishu.cn/open-apis/message/v4/send/', json={            "chat_id": myGroupId,            "msg_type": "text",            "content": {                "text": content            }        }, headers={            'Authorization': 'Bearer %s' % (token),            'Content-Type': 'application/json'        })    except:        return 'error in send message'    data = json.loads(res.text)    if data['code'] != 0:        return data['msg']    return 'success'

关于 index.py,这里有几点需要作出说明:

  1. 代码中的 app_id 和 app_secret 项需填写在准备工作记录的 App ID 和 App Secret

  2. 最终我们使用 POST 方法发送消息

  3. 在调用时,我们还需要在 query 处加上 ?myauth=feishu1,目的是作简单验证以防止他人发送,例如 https://service-********-**********.**.apigw.tencentcs.com/release/?myauth=feishu1

三、部署 Serverless 服务

  1. 通过 npm 安装 Serverless

$ npm install -g serverless
  1. 通过serverless命令进行部署,并添加--debug参数查看部署过程中的信息

$ serverless --debug
  1. 从终端获取 API 网关的 URL

获取 API 网关的 URL

四、上线应用

  1. 回到飞书开放平台,在企业自建应用列表中点击刚刚创建成功的应用

  2. 点击应用功能-机器人,点击启用机器人

  3. 点击版本管理与发布-创建版本,参考下图进行配置(先不要点保存)

  4. 在可用性状态处点击编辑,选择所有员工,然后点击保存

  5. 点击申请发布

  6. 点击飞书网页版的头像,进入飞书管理后台

  7. 点击工作台-应用审核,然后点击审核

  8. 点击通过

五、调用接口

请求方式: POST

请求地址: 上面获取的 APIGateway 的 URL

请求 Header:

参数类型必填/选填说明默认值实例
Content-Typestring必填Content-Type
application/json

请求 Query:

参数类型必填/选填说明默认值实例
myauthstring必填简单验证
feishu1

请求 Body:

{    "content": "这里填入你想要发送的信息"}

六、效果

为了方便,这里使用 Chrome 浏览器插件 Talend API Tester 进行调用

可以看到,飞书的消息推送很及时

其实利用飞书能实现的并不只有这些而已,我相信聪明的你一定能开发出更加好玩的应用。

看完上述内容,你们掌握如何使用Serverless+飞书打造你的个性化消息提醒系统的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注行业资讯频道,感谢各位的阅读!

应用 消息 工作 个性 系统 企业 参数 方法 开放 管理 成功 代码 信息 内容 名称 实例 密钥 属性 平台 时间 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 南京欣网互联网络科技 互联网通讯科技 涨乐互联网科技 互联网科技未来 北京互联网科技公司 互联网医疗科技 互联网科技英文翻译 上海亿帐通互联网科技 互联网科技股有哪些 四个字互联网科技公司取名 深圳市运趣互联网科技有限公司 深圳市优智互联网科技有限公司 开一家科技互联网公司需要多少钱 乌鲁木齐新华智原互联网科技学校 伊宁互联网科技做什么的 中天科技中国工业互联网 互联网科技融合创新 昆明中奇联合互联网科技 广东猫王互联网科技有限公司电话 武汉亿视互联网科技有限公司 鑫亿盛互联网科技 美国互联网黑科技 互联网系的金融科技公司 江阴互联网智能科技产品进口 新氧科技和美国互联网有关系吗 银川新华互联网科技学校是国营吗 北京互联网科技类企业分布 易租星互联网科技有限公司 互联网科技职业技能培训学校 科技互联网经济论坛
0