echo

Updated 远程教学之流程消息 (markdown)

[返回在线授课相关文档](在线授课相关文档)
### 流程描述
* 教师端从在线授课课表发起在线授课。
* 学生端登录腾讯云服务(启动即登录,每30秒会检查一次)
* 教师端从盒子鱼服务器获取在线授课信息
* 公共群信息,用于交互
* 聊天室Id,用于音视频通讯
* 学生的个人统计信息
* 教师端登录腾讯云服务(如果登录失败,需要有错误处理)
* 教师端通知盒子鱼服务器发推送给学生端
* 如果学生端长期收不到推送,教师端会卡住,该如何处理。
* 学生端收到推送通知(是否可以取消)
* 后台监测到该学生已经在上课的群中,可以不发推送通知
* 客户端也做防错处理,如果已经处于上课状态,那么对于上课过程中的其他授课推送不做处理。
* 客户端连续多次收到上课推送,应该不影响正常上课。
* 教师端从在线授课课表发起在线授课。
* 教师端登录腾讯云服务(如果登录失败,有重试机制,直到登录成功为止)
* 教师端呼叫学生端
* 学生端收到呼叫
* 学生端接收在线授课
* 学生端登录腾讯云服务
* 学生端上报自己的id,以及客户端元信息
* 教师端检测id合法,版本匹配,下放课程信息
* 学生端检测本地是否已经下载了全部的多媒体资源文件。(应该需要提前下载)
* 教师端检测id合法,版本匹配,下放课程资源信息
* 学生端检测本地是否已经下载了全部的多媒体资源文件。
* 如果需要下载,则进入下载过程,同时通知教师端,客户端开始下载资源
* 如果不需要下载,或者已经下载完毕,通知教师端已经准备好上课。
* 考虑下载失败的处理
* 学生端进入等待上课的页面,初始化音视频通讯,进入聊天室(需要有错误处理)
* 教师端收到学生准备完毕的信息后,初始化音视频通讯,进入聊天室(需要有错误处理)
* 如果连续三次下载失败,会通知教师端课程异常。
* 学生端进入等待上课的页面,初始化音视频通讯,进入聊天室
* 教师端收到学生准备完毕的信息后,初始化音视频通讯,进入聊天室
* 教师端发送学习页的信息
* 教师端发送学习页的页面动作信息
* 教师端通知学生结束课程
* 学生端结束课程,同时报告给教师端
* 退出聊天室
* 登出腾讯云(需要错误处理)
* 教师结束课程,上报给服务器(服务器在课程结束之后,可能会解散群或者把双方踢出),回到前一页面。
* 退出聊天室
* 登出腾讯云(需要错误处理)
* 学生则回到课表页面。
### 在线授课接口定义
... ...