本文默认你已拥有一个机器人,如果没有请点击以下链接创建机器人
检查机器人权限
如果需要跨部门发送消息,检查是否开通跨部门权限
- 在发布版本时选择作用范围为所有员工
机器人发送消息需要获取以下权限:
- 通过手机号或邮箱获取用户 ID
- 查看、评论和下载云空间中所有文件
- 上传、下载文件到云空间
- 查看和下载云空间中的文件
- 上传文件
- 获取与上传图片或文件资源
- 给多个用户批量发消息
- 给一个或多个部门的成员批量发消息
- 以应用的身份发消息
点击进入飞书开发者后台
点击你的机器人
在左侧菜单栏进入权限管理界面
在权限管理中开通如上所有权限,即可实现发送消息与文件功能
获取 open_id
需要知道的是,每个飞书用户都有一个 open_id ,飞书机器人根据 open_id 识别用户
如何获取 open_id ?
进入 API 调试台(不得不说飞书的设计对开发者很好)
先手动刷新一下左侧的两个 token
再在右侧的查询参数中选择查询 open_id
点击请求体,输入需要查询目标登录飞书的手机号或邮箱即可
(如果需要发送的用户少,你可以手动一次次调试获取id,如果用户较多,建议还是数据库新建个专门的字段保存,再写个脚本批量存id)
填完参数后点击开始调试即可获得id
发送消息
进入开发文档,选择 服务端 API
选择你需要的服务,发送消息 api,右边有示例代码,选择 java 版本即可
阅读发送实例,可知发送消息前需要在代码中配置机器人的参数
可以在机器人首页的基本配置中查阅
获取这两个参数,根据示例填写即可
由于飞书实例文档比较详细,拷贝代码即可,本文再次不再赘述
发送文件
同样在飞书开发文档 服务端 API 找到发送文件,里面分为
- 上传文件
- 下载文件
飞书发送文件的原理是,你先把文件上传到飞书服务器,飞书会给你一个这个文件的 key,以后需要发送的时候把这个 key 给飞书,飞书就知道你需要发送什么文件了
所以我们要把本地生成好的文件 先调用上传接口上传给飞书,飞书返回一个 key 给你
再调用发送信息
上传飞书:
老样子查看实例代码,配置机器人参数
需要注意的是飞书只支持以下几种格式的文件:
发送文件消息:
根据指引,修改发送 type,
修改前:
.msgType("text")
.content("{\"text\":\"test content11\"}")
.
修改后:
.msgType("file")
.content("{\"file_key\":\"key\"}")
key 为上传文件后返回给你的
结尾
至此就把飞书如何发送消息以及文件讲完啦,新人文笔不好请多多见谅,有什么不懂的可以随时问我