# 简介

本教程介绍如何使用飞书开放平台云文档能力实现团队周报管理。具体而言，本教程将实现：

- 基于周报模版文档每周定时创建新的周报文档，并给团队成员授权文档编辑权限；
- 自动将新周报文档归档到指定知识库指定节点；
- 通过群机器人发送群消息，通知所有人更新周报内容。

本教程及示例代码为基于旧版文档（文档类型为 doc）撰写，如果你创建的周报模板的文档类型为 docx，你需在示例代码中的 server.py 文件中的第 43 行 `meta = client.get_doc_meta(access_token, doctoken, "doc")` 中，将 `doc` 改为 `docx`。
## 流程概览

本教程提供的示例代码将按照以下流程，实现团队周报管理。

## 实现效果

按照本教程操作最终可以实现如下图的示意效果。

- 本教程最终创建的周报文档如下：

![](//sf3-cn.feishucdn.com/obj/open-platform-opendoc/9421df083f6cfdd878bbe85e0a1ca5ac_yYND9x65Cq.png?height=1053&lazyload=true&maxWidth=700&width=1640)

- 最终发送在团队群聊中的消息如下：

![](//sf3-cn.feishucdn.com/obj/open-platform-opendoc/6303a46946f9a2454b6f3367c6605bc8_I84gs6CTEK.png?height=957&lazyload=true&maxWidth=700&width=1640)

## 使用到的 API 列表

本教程调用了云文档和消息与群组业务域的 API：

### 云文档

**[方法 (API)](https://open.feishu.cn/document/ukTMukTMukTM/uITNz4iM1MjLyUzM)** | 权限要求（满足任一） | **[访问凭证](https://open.feishu.cn/document/ukTMukTMukTM/uMTNz4yM1MjLzUzM)（选择其一）**
---|---|---
[获取空间根目录](https://open.feishu.cn/document/ukTMukTMukTM/ugTNzUjL4UzM14CO1MTN/get-root-folder-meta)<br>`GET` /open-apis/drive/explorer/v2/root_folder/meta<br>> 获取云空间的根目录 | 查看、评论、编辑和管理云空间中所有文件(drive:drive) | `tenant_access_token`<br>`user_access_token`
[获取文件夹下的文档清单](https://open.feishu.cn/document/ukTMukTMukTM/uEjNzUjLxYzM14SM2MTN)<br>`GET` /open-apis/drive/explorer/v2/folder/:folderToken/children<br>> 获取文件夹内的文档清单，也包括文件夹 | 查看、评论、编辑和管理云空间中所有文件(drive:drive) | `tenant_access_token`<br>`user_access_token`
[获取文档元数据](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/drive-v1/meta/batch_query)<br>`POST` /open-apis/drive/v1/metas/batch_query<br>> 根据 Token 获取各类文档的元数据 | 查看、评论、编辑和管理云空间中所有文件(drive:drive)<br>查看云空间中文件元数据(drive:drive.metadata:readonly) | `tenant_access_token`<br>`user_access_token`
[复制文件](https://open.feishu.cn/document/ukTMukTMukTM/uYTNzUjL2UzM14iN1MTN)<br>`POST` /open-apis/drive/explorer/v2/file/copy/files/:fileToken<br>> 将文件复制到用户云空间的其他文件夹中 | 查看、评论、编辑和管理云空间中所有文件(drive:drive) | `tenant_access_token`<br>`user_access_token`
[增加权限](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/drive-v1/permission-member/create)<br>`POST` /open-apis/drive/v1/permissions/:token/members<br>> 该接口用于根据 filetoken 给用户增加文档的权限 | 查看、评论、编辑和管理云空间中所有文件(drive:drive) | `tenant_access_token`<br>`user_access_token`
[添加知识空间成员](https://open.feishu.cn/document/ukTMukTMukTM/uUDN04SN0QjL1QDN/wiki-v2/space-member/create)<br>`POST` /open-apis/wiki/v2/spaces/:space_id/members<br>> 添加知识空间成员或管理员 | 查看、编辑和管理知识库(wiki:wiki) | `tenant_access_token`<br>`user_access_token`
[添加已有云文档至知识库](https://open.feishu.cn/document/ukTMukTMukTM/uUDN04SN0QjL1QDN/wiki-v2/space-node/move_docs_to_wiki)<br>`POST` /open-apis/wiki/v2/spaces/:space_id/nodes/move_docs_to_wiki<br>> 该接口允许添加已有云文档至知识库 | 查看、编辑和管理知识库(wiki:wiki) | `tenant_access_token`<br>`user_access_token`

### 消息与群组

**[方法 (API)](https://open.feishu.cn/document/ukTMukTMukTM/uITNz4iM1MjLyUzM)** | 权限要求（满足任一） | **[访问凭证](https://open.feishu.cn/document/ukTMukTMukTM/uMTNz4yM1MjLzUzM)（选择其一）**
---|---|---
[获取用户或机器人所在的群列表](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/im-v1/chat/list)<br>`GET` /open-apis/im/v1/chats<br>> 获取用户或者机器人所在群列表 | 查看群信息(im:chat:read)<br>获取与更新群组信息(im:chat)<br>获取群组信息(im:chat:readonly)<br>读取群信息（历史版本）(im:chat.group_info:readonly) | `tenant_access_token`<br>`user_access_token`
[发送消息](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/im-v1/message/create)<br>`POST` /open-apis/im/v1/messages<br>> 给指定用户或者会话发送消息，支持文本、富文本、卡片、群名片、个人名片、图片、视频、音频、文件、表情包 | 以应用的身份发消息(im:message:send_as_bot)<br>获取与发送单聊、群组消息(im:message)<br>发送消息V2(im:message:send) | `tenant_access_token`

