消息订阅及数据相关
注意!!!
在处理跟消息订阅(考勤)相关的问题之前,先查看之前配置的邮箱有没有收到报错邮件。
- 如果有最近 1 小时内的报错,需要根据邮件里提示的报错信息,调整接收订阅的接口代码,解决该报错
- 如果近一小时已经没有报错信息了,说明推送正常被接收了。可以考虑其他方面的问题
- 消息订阅报错后,数据会卡在报错的这一条,每十秒推送一次,处理好报错之后才会推送后面的数据
开通消息订阅需要提供以下信息:
- 消息订阅接口地址
- 需要开通的内容(请具体一些,以 Cmd 字段为准)
- 机构 SID
- 提供一个常用邮箱,数据接收有问题时会报错,报错需要尽快处理,否则会影响后面数据的推送(可以提供多个邮箱)
所有消息是一个队列,收到消息后需返回下方的json内容;如未正常返回则队列卡住,ClassIn 会重推失败的消息;10秒一次重推消息,每小时一次邮件提醒
{
"error_info": {
"errno": 1,
"error": "程序正常执行"
}
}
消息订阅的接口地址能不能配多个?
- 一个 SID 只能配置一个接口地址,报错邮箱可以配置多个,如果后面有需求可以修改接口地址和报错邮箱
课节汇总数据,如果没有人进入教室是否会有推送?
- 不会推送,只有产生数据才会推送
老师和学生在开课前进入过教室,在开课前删除了课节,会推送课节汇总数据吗?
- 会推送,有产生数据所以会推送
- 老师可以提前 20 分钟进入教室,学生可以提前 10 分钟进入教室
课节汇总数据中的进出教室记录,会推送没有进过教室的用户吗?
- 不会推送,没有进入教室不会产生数据,所以不会有推送
课上完了为什么我的系统没有看到考勤
- 先联系平台技术,看他的报错邮箱是否收到报错邮件,如果最近一小时没有收到报错,说明数据正常推送了,可以考虑其他因素
- 查看平台日志,看看是否收到 ClassIn 的消息推送。没有的话可以报 ClassIn 技术支持。有的话,由平台的技术继续跟进
怎样判断接收的消息是 ClassIn 推送过去的
- 我们这边服务器发送的消息,仅发送这两个 Header,"Origin": "http://www.eeo.cn" 和 "Content-Type": "application/json"
- 代码层:用 SafeKey 进行验证,在消息的数据里,带有 SafeKey 和 TimeStamp 参数,如果 TimeStamp 结合 SECRET 合成的 SafeKey 一致,说明这个是 ClassIn 发送的数据。实际推送数据请参考具体文档消息订阅数据
机构要怎么来判断用户注册之后是否登陆过 ClassIn?
- 可以通过开通 消息订阅-用户教室外设备检测报告 的推送
- 用户登陆 ClassIn 会进行设备自检,需要注意:登陆后保持登陆状态 10 秒钟才能完成自检,会有对应数据的推送;如果登陆时长不足 10 秒,不会有推送
网页上观看直播回放记录的观看时长是怎么计算的?
- 记录的是用户在这个页面停留的时间,即从打开这个页面到关闭页面的时长
- 如果直播没有开始,打开直播链接,然后关闭也会推送对应的数据
客户端回放观看时长计算规则
- TotalLookTime 指的是观看回放的累计时长,即每次观看的时长的累加后的值
- 观看时长计算规则:用户打开回放页面停留的时长,即从打开回放页面到关闭回放页面的时长,暂停也计算时长
设置了观看网页直播和回放时必须要求用户登录 ClassIn 账号,但是收到的消息订阅推送的数据里还是有游客身份?
- 直播页面的登录按钮开课前 20 分钟的时候才会出现,在这个时间之前打开直播页面不会主动弹出登录按钮,打开之后关闭直播页面,推送的数据里就会显示的是游客
- 观看回放时,打开回放页面弹出登录窗口,没有登录直接关闭页面,也会推送数据,推送的数据里会显示为游客
邮箱接收到报错 10003
- 接收方接收到数据之后的返回值不对:需要按照如下格式返回 1,返回的数据需要是 JSON 格式
{
"error_info": {
"errno": 1,
"error": "程序正常执行"
}
}
消息订阅 课节汇总数据 可以根据哪个字段判断开课和下课时间?
- StartTime:设置的开课时间
- CloseTime:拖堂时间结束的时间,即设置的下课时间 +20 分钟
怎样判断老师是否点击了提前下课?
课节汇总数据中增加了 RealCloseTime 字段,可以用来判断实际的下课时间
- 判断是否有 RealCloseTime 字段(掉线、异常退出可能会导致没有 RealCloseTime 字段)
- 如果没有 RealCloseTime 字段,以 CloseTime 为准
- 有 RealCloseTime 字段,当 RealCloseTime=0 时,以 CloseTime 的时间为准;当 RealCloseTime!=0 时,比较 RealCloseTime 和 CloseTime 的值,以小的为准
消息订阅 教室大黑板板书图片 推送规则:
- 上课过程中清空大黑板会推送一张 jpg 图片
- 课节结束时会推送两张图片,一张是 jpg 的,一张是 png 的