/ssrobot

Spinel Studio's WeChat Framework based on Django

Primary LanguagePythonGNU General Public License v3.0GPL-3.0

Spinel Studio's WeChat Framework

技术架构

项目基于Django,数据库使用SQLite。

功能模块

###微信部分###

  1. 基于关键词的自动回复

    1. 用户在微信中输入:

      查询 [*关键字]

      服务端从数据库中寻找相关条目并以文字或图文消息回复。 回复的消息可在管理页面中修改。 「关键字」为可选项,若为空会自动回复FAQ页面的链接。

    2. 用户在微信中输入:

      帮助

      回复帮助信息。帮助信息可在管理页面中修改。

  2. 用户名称绑定 用户首次关注平台时弹出指向注册页的链接。用户在注册页上填入某些信息完成注册。

    若用户没有注册,在使用诸如留言板等需要记录用户名的功能时会先弹出消息要求用户填写基本信息。

  3. 留言板 用户在微信中输入:

    留言 [想要写的留言]

    即可将信息留在微信后端的留言板上。

    此功能使用前需要绑定用户信息。

    管理员可以通过后台管理页面管理留言板。

  4. 签到 用户在微信中输入:

    签到
    即可签到。每天可以签到一次。

    使用此功能需要绑定用户信息。  

  5. 天气和PM2.5查询 用户在微信中输入:

    天气 [*城市名称]

    即可查询对应城市的天气数据。

    默认值:

    城市名称:保定

    天气数据源:

    http://api.map.baidu.com/telematics/v3/

    PM2.5数据源:

    http://www.pm25.in/api/querys/

  6. 空余教室查询 用户在微信中输入:

    教室 [*教学楼] [*日期] [*起始时间] [*结束时间]

    即可查询空教室。

    服务端会将查询结果生成为一张网页并将链接回复给用户。

    默认值:

    教学楼:所有的教学楼 日期:今天 起始时间:第一节课 结束时间:第五节课

    数据源:

    http://59.67.225.73/m/Home/FreeClassroom

  7. 考场查询

    用户在微信中输入:

    考场 [学号] [选课密码]

    即可查询考场。

    服务端会将查询结果生成为一张网页并将链接回复给用户。

    数据源:

    http://59.67.225.73/m/Personal/Exams

  8. 成绩查询 用户在微信中输入:

    成绩 [学号] [选课密码]

    即可查询成绩。

    服务端会将查询结果生成为一张网页并将链接回复给用户。

    数据源:

    http://59.67.225.73/te/

  9. 课程表查询 用户在微信中输入:

    课程 [学号] [选课密码]

    即可查询课程表。

    服务端会将查询结果生成为一张网页并将链接回复给用户。

    数据源:

    http://59.67.225.73/m/Personal/TimeTable

  10. 「交互模式」 用户进入此模式后,系统只会识别此模式下的关键字。

    用户若5分钟内没有回复或回复 数字0 会退出「交互模式」。

###微网站部分###

  1. 报修平台 用户在微信中输入:

    报修

    即可转至报修页面。

  2. 咨询 (FAQ) 见「微信部分:基于关键词的自动回复」。

  3. 活动报名 在微信中输入:

    报名

    进入「交互模式」,服务端根据数据库中的数据回复相应内容。

  4. 投票 在微信中输入:

    投票

    进入「交互模式」,服务端根据数据库中的数据回复活动列表。 用户回复列表中的编号,服务端回复对应活动的投票链接。

###网站部分###

  1. Admin模块 使用django-admin,主要用于管理上述诸多模块涉及的内容。