007作业点评微信助理 [Proposal]

需求


早上看到007群里的战友需要一个留存和统计点评的功能。
手工统计是个无聊且低效的工作,战友希望能够自动统计作业点评。作为一个coder,我觉得可以做点什么⌨️。

方案


于是我想了一个还不成熟的方案 ,可以把在群里的点评内容转发到一个微信机器人,接下来用机器来做文本分析,分析出谁对谁的文章做了点评,然后把结果存入数据库中。有了用户的个人信息,作业和点评信息,那想怎么分析就怎么分析,而且点评数据也可以导出,不至于消失在茫茫的微信群消息中了。

另外,还可以提供一个pc端web后台管理界面,用户通过微信扫码登录。用户可分为两组,1:管理员为班长,月督导。2:普通用户。

管理员查看每一期的点评统计情况,普通用户可以查看自己的点评记录,提供点评历史导出功能。

架构设计


原型架构.png

技术选型


国内开源社区已经有了微信机器人的成熟:wxpy (用 Python 玩微信)。

>>> from wxpy import *
>>> bot = Bot()
Getting uuid of QR code.
Downloading QR code.
Please scan the QR code to log in.
Please press confirm on your phone.
Loading the contact, this may take a little while.
Login successfully as Kai
>>> myself = bot.self
>>> bot.file_helper.send('Hello from wxpy!')
 
>>> found = bot.friends().search('阿超', sex=MALE)
>>> found

>>> cao.send('Hello from bot!')
 阿超 : Hello from bot! (Text)
>>> cao.send('good this message is from my terminal')
 阿超 : good this message is from my terminal (Text)
>>>     阿超 : 具体的产品形态呢,做成产品的话,肯定是在服务器。前端用户的产品形态是啥 (Text)

以上是用python写的一个简易的聊天机器人,通过程序和阿超聊天。

后端采用flask+sqlalchemy 可以快速搭建一个web应用所需要的API Server。

前端使用目前主流框架为React /vue,结合成熟的Antd/Material组件库可以大大降低前端工程开发的难度。

问题


这个方案存在几个问题。

1:点评内容需要手动转发一次,多了一步增加了每个人的工作量。
2:其次机器人服务器有可能被禁用或者down机。

本文是一个初步的项目草案,具体的功能需求和项目方案希望007er们一起群策群力共同完善,欢迎在下方留言

你可能感兴趣的:(007作业点评微信助理 [Proposal])