Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

基于开放 API 封装 Wechaty 接口下的飞书聊天机器人 #38

Open
Roxanne718 opened this issue Feb 14, 2021 · 5 comments
Open

Comments

@Roxanne718
Copy link
Contributor

Roxanne718 commented Feb 14, 2021

开源软件供应链点亮计划

“开源软件供应链点亮计划-暑期2021”(以下简称 暑期2021)是由中科院软件所与 openEuler 社区共同举办的一项面向高校学生的暑期活动,旨在鼓励在校学生积极参与开源软件的开发维护,促进国内优秀开源软件社区的蓬勃发展。

根据项目的难易程度和完成情况,参与者还可获取“开源软件供应链点亮计划-暑期2021”活动奖金和奖杯。

官网:summer.iscas.ac.cn

Wechaty

Wechaty 是一个开源聊天机器人框架SDK,具有高度封装、高可用的特性,支持NodeJs, Python, Go 和Java 等多语言版本。在过去的4年中,服务了数万名开发者,收获了 Github 的 8000 Star。同时配置了完整的DevOps体系并持续按照Apache 的方式管理技术社区。

基于开放 API 封装 Wechaty 接口下的飞书聊天机器人

背景介绍

飞书提供开放的API接口,有基于开放API开发聊天机器人的需求

飞书是字节跳动于2016年自研的新一代一站式协作平台,是保障字节跳动全球五万人高效协作的办公工具。飞书将即时沟通、日历、云文档、云盘和工作台深度整合,通过开放兼容的平台,让成员在一处即可实现高效的沟通和流畅的协作,全方位提升企业效率。
2020年2月24日,字节跳动旗下办公套件飞书宣布,向全国所有企业和组织免费开放,不限规模,不限使用时长,所有用户均可使用飞书全部套件功能。
飞书官方提供API支持机器人收发消息,是国内对Chatbot最开放的IM 系统。

Wechaty是全球最大的开源聊天机器人框架,希望实现基于同一套应用层代码实现不同软件的聊天机器人

Wechaty 作为全球最大的聊天机器人开发者社区之一,提供了非常简单的接口实现,让开发者能够用6行代码就实现自己的一个聊天机器人,如果能把飞书的聊天机器人封装到 Wechaty 里来,则可以大大简化企业内开发者的开发流程。
因为 Wechaty 是建立在 puppet 系统之上的,puppet 是 Wechaty 依赖的一层抽象层,它定义了底层各个 IM 接入方案需要实现的接口,也正是因为 puppet 抽象层的存在,让很多 Wechaty 开发者可以仅仅通过一个变量,就能够随意切换不同的底层 IM 接入。

需求介绍

目前,飞书 Puppet 已经完成了初步开发,目前主要实现的功能有:

  • 消息收发(文字、文件、图片)
  • 部分群组相关操作(创建群、修改群名、删除群成员等)
  • 部分企业相关操作(查看企业内成员等)

项目仓库见:https://github.com/wechaty/wechaty-puppet-lark

接下来需要对照飞书开放平台和 Wechaty 接口,完善该项目。

项目难度

低(奖金:6000元)

导师联系方式

项目产出目标

  • 对接飞书接口,完善 puppet 上各个类型的消息接口
  • 飞书 puppet 的使用文档

项目技术栈

  • TypeScript/JavaScript
  • Git
huan added a commit that referenced this issue Feb 16, 2021
@Roxanne718
Copy link
Contributor Author

Hello students!

We want Wechaty to be the universal instant messaging SDK on all IM platforms for chatbot makers to build their great conversational user interface, so while these are our ideas of what we think would make good projects for the summer, we're eager to hear your ideas and proposals as well.

Try us out and get to know the Wechaty code with examples!

Link to #30

Required skills for all projects

  • git version control
  • collaborative software development on github.com
  • software development in at least one of Wechaty's six languages on at least one of Linux, macOS, and Windows.

Implement Lark Puppet (wechaty/wishlist#34). The Puppet abstraction allows Wechaty to provide a consisting API on all IM platforms for build a chatbot. We are supporting WeChat, WeCom, Whatsapp already, and last year, we completed the initial development of the Lark Puppet. We want to improve this puppet so that our developers can run their chatbots on Lark more conveniently.

  • Required skills: TypeScript programming language, Git, Lark API, HTTP.
  • Likely mentors: @Roxanne718 , @huan

Useful Links

@Roxanne718 Roxanne718 changed the title [Project] Improve wechaty-puppet-lark [Project] 基于开放 API 封装 Wechaty 接口下的飞书聊天机器人 Apr 13, 2021
@Roxanne718 Roxanne718 changed the title [Project] 基于开放 API 封装 Wechaty 接口下的飞书聊天机器人 基于开放 API 封装 Wechaty 接口下的飞书聊天机器人 Apr 13, 2021
@xilou31
Copy link

xilou31 commented Jun 14, 2021

I think LARK_APPID and other environment variables can be loaded in the form of a configuration file, otherwise it is very troublesome to export every time.

@remember00000
Copy link

remember00000 commented Aug 26, 2021

期中视频:

腾讯视频:
1.Introduction:https://v.qq.com/x/page/r3271wjg08q.html
2.demo:https://v.qq.com/x/page/j32711k0nfg.html
YouTube:
1.Introduction:https://youtu.be/IwMA8VJZZqE
2.demo:https://youtu.be/fAIZS9lgxjo

@remember00000
Copy link

@Roxanne718
Copy link
Contributor Author

  • 项目完成度:项目完成度70%,已完成的部分质量较高。但由于学生学业较忙,项目中后期进度较慢。
  • 学生参与度:学生在项目前期表现良好,基本能做到积极沟通。
  • 代码贡献量:在API更新部分代码贡献尚可,但至今未通过仓库CI,希望学生尽快改进这一部分,将前期完成的内容尽快合并到仓库中。
  • 综合评价及建议:整体而言,项目完成质量没有达到预期水准,但是考虑到学生目前的专业知识体系尚不完备,项目经验比较欠缺,目前的状态也可以理解。根据学生前期的表现,我们认为学生未来具有较大的潜力,也希望学生能汲取经验,在 Git 使用、代码风格、项目合作等方面做的更好。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants