一篇文章,带你轻松玩转飞书通知!

一篇文章,带你轻松玩转飞书通知!

开发者广场内容精选NaN-NaN-NaN
解决方案
作者:潘龙(phiron.pan)
推荐理由
飞书通知不仅漂亮而且引人注目,让我们一起来构建自己的飞书通知吧!
一、关于我
大家好,我是一名全栈开发工程师,专业折腾,业余学霸,我的人生格言是:学到老,活到老,活到老,学到老。有人说我是代码的画家,而我认为编程就是我的马拉松,不是为了到达终点,而是为了一直奔跑!
二、了解飞书通知
当提到飞书通知时,我们实际上是在创建一个飞书自建应用,通过赋予机器人能力,再利用调用飞书发送消息接口实现对用户的消息推送。这一过程可以呈现出类似飞书官方发送通知的效果,如下图所示:
这个通知看起来不仅漂亮而且引人注目,是不是激发了你开始构建自己的飞书通知的冲动呢?
三、开发准备
📌开发工具环境安装:首先得在电脑安装python环境和pycharm开发工具,具体如何安装,请自行网络搜索,网上的教程还是挺详细的,这里就不再赘述了。
📌飞书自建应用准备
1、点击飞书开发者后台->创建企业自建应用->填写完相关信息创建好。
2、点击添加应用能力,点击添加机器人。
250px|700px|reset
3、点击权限管理,接着选择消息与群主。在这里,我们需要确保所有选项都被勾选上,因为发送消息需要通过飞书用户的open_id或者user_id等信息。为了实现这一点,开发者需要开通小程序或者网页的相关能力,并通过免登录的方式获取用户的open_id,最后将这些信息保存到数据库中。请注意,在进行权限管理时,务必添加能够获取用户信息的权限。更详细的步骤和信息可以参考飞书官方文档。
250px|700px|reset
一切准备就绪,现在我们可以踏上开发之旅啦!
四、正式开发
1、打开pycharm,点击新建项目,然后修改自己的项目名,不想修改默认即可,然后点击创建按钮。
2、进来后 右键创建一个main.py的文件,这个是程序的主入口。
250px|700px|reset
3、复制下面代码到文件里面 相关的信息 修改成自己的 比如 appid等。
import json
import logging
from request_utils import RequestHandler
# 配置日志
logging.basicConfig(level=logging.DEBUG)
req = RequestHandler()
if __name__ == '__main__':
# 前端小程序调用tt.login登录时获取的code
code = ""
# 自建应用的appid
appid = ""
# 自建应用的app_secret
app_secret = ""
# template 卡片 模版颜色 red blue turquoise 三种卡片主题颜色
template = 'red'
# header
header = "标题名称"
# open_id
open_id = ""
try:
params1 = {
"code": code,
}
# 飞书获取app_access_token
params = {
"app_id": appid,
"app_secret": app_secret
}
res = req.post(url, json=params)
app_access_token = res.json()["app_access_token"]
# 飞书发送消息
params2 = {
"receive_id": open_id,
"msg_type": "interactive",
"content": json.dumps({
"config": {"wide_screen_mode": True},
"elements": [
{
"tag": "div",
"text": {
"content": "最真挚的问候",
"tag": "lark_md"
}
},
{
"tag": "div",
"text": {
"content": "送给你",
"tag": "lark_md"
}
},
{
"actions": [
{
"tag": "button",
"text": {"content": "立即跳转", "tag": "plain_text"},
"type": "primary",
},
],
"tag": "action"
}
],
"header": {
"template": template,
"title": {"content": header, "tag": "plain_text"}
}
}),
}
headers = {
"Authorization": "Bearer " + app_access_token
}
res = req.post(msg_url, json=params2, headers=headers)
# 打印看一下是否成功
logging.debug("access_token_url======%s,res======%s", msg_url, res.json())
except Exception as e:
print("捕获异常", e)
4、再新建一个request_utils.py的文件,这个是发送请求的工具类。
5、把下面代码复制到文件里,如果import requests报红,是因为你新建的项目还没有安装requests包,点击它右键install一下即可。
import requests
class RequestHandler:
def get(self, url, **kwargs):
"""封装get方法"""
# 获取请求参数
params = kwargs.get("params")
headers = kwargs.get("headers")
try:
result = requests.get(url, params=params, headers=headers)
return result
except Exception as e:
print("get请求错误: %s" % e)
def post(self, url, **kwargs):
"""封装post方法"""
# 获取请求参数
params = kwargs.get("params")
data = kwargs.get("data")
json = kwargs.get("json")
headers = kwargs.get("headers")
try:
result = requests.post(url, params=params, data=data, json=json, headers=headers)
return result
except Exception as e:
print("post请求错误: %s" % e)
6、最后点击main.py绿色按钮运行程序,即可发送消息啦,如下图所示
五、其他
好了,我们的教程就到这里了!如果你在阅读后有更多开发问题或者疑问,欢迎随时联系我,我的邮箱是1170468846@qq.com。此外,关于消息发送的格式和方式,还有更多丰富多彩的选项。详细信息请查阅飞书官方文档:
希望你在飞书通知的开发中能够取得成功,祝你编码愉快!
先进生产力和业务协同平台
联系我们立即试用

先进团队,先用飞书

欢迎联系我们,飞书效能顾问将为您提供全力支持
分享先进工作方式
输送行业最佳实践
全面协助组织提效
联系我们立即试用