课节内实时推送的消息

课节内(即上课过程中)实时推送的消息,包括:举手,奖励,摄像头位置,授权,进入教室,退出教室,踢出,全体静音,个人静音,答题器,抢答器,上下台,课节网络状态报告(每隔5分钟发送一次,为5分钟内的汇总信息),教室内设备检测报告,教室内老师和学生求助,延长课节时长,启动录课详情,教室大黑板板书图片,直播页面用户登录,直播预约,直播观看明细,直播点赞,直播商品点击明细。

这些数据将会在上课过程中实时推送。

举手

字段 类型 说明
Cmd Int32 命令字67375105
Color String hands up+用户ID
Handsup Boolean True表示举手状态,False表示放手状态

奖励

字段 类型 说明
Cmd Int32 命令字67375105
Color String award + 用户ID
Times Int32 奖励次数

摄像头位置

字段 类型 说明
Cmd Int32 命令字67375105
Color String webcamPosition + 用户ID
Area Struct 摄像头区域
└ X1 Int32 左上角X坐标
└ Y1 Int32 左上角Y坐标
L X2 Int32 右下角X坐标
L Y2 Int32 右下角Y坐标
OnTop Bool 是否在坐席区,0:不在坐席区;1:在坐席区
Channel Int32 摄像头序号,0:主摄像头;1:辅摄像头

授权

字段 类型 说明
Cmd Int32 命令字67371520
Operation Boolean True为授权,False为取消授权

进入教室字段

字段 类型 说明
Cmd Int32 命令字67371107
NickName String 用户昵称
AllowEnterTime Int32 用户被踢出后,允许再次进入时间
UID Int32 用户ID
LoginMobile String 手机号
LoginEmail String 邮箱账号
ClientID Int32 双设备登录模式中,第一个进入的设备为0,第二个进入的设备为1
Identity Int32 用户身份 1:学生,2:旁听,3:老师,4:联席教师,193:机构校长,194:校长助理
Device Int32 登陆客户端类型,0:PC,1:iphone,2:ipad,3:web客户端,4:Android手机,5:Android平板,6:Android电视,9:PC-x64

退出教室字段

字段 类型 说明
Cmd Int32 命令字67371111
UID Int32 用户ID
Identity Int32 用户身份
ClientID Int32 双设备登录模式中,第一个进入的设备为0,第二个进入的设备为1
Reason Int32 退出原因,0:未知异常,1:正常退出,2:教室关闭,3:异常退出,4:被踢出教室,5:服务关闭,6:断线,7:取消排课,8:用户角色变更,54:客户端本机重复登陆,56:服务端与客户端网络连接中断,60:被新登录的客户端挤下线,101:按返回键退出(仅安卓设备),102:来电话退出,111:App进入后台

踢出

字段 类型 说明
Cmd Int32 命令字67371523
Duration Int64 踢出维持时间
TargetUID Int32 被踢出ID
Operation Int32 1 被踢出

静音

字段 类型 说明
Cmd Int32 单独静音为67371522,全部静音为67371586
TargetUID Int32 静音对象ID
Operation Int32 1静音,0取消静音

答题器

字段 类型 说明
Area Struct 窗口坐标
└ X1,Y1,X2,Y2 Int32
Color String 发题时为‘standaloneSelectorToolglobalData’,学生答题时为‘standaloneSelectorTool’ + 学生ID
Cmd Int32 命令字67375105
QSentTime Int32 发放时间
CurState Int32 当前答题状态 0:开始状态,1:发题状态,2:收题状态
QCollectTime Int32 收题时间
CorrectItems String 正确答案
Commited Int32 学生答题状态 0:开始状态,1:答题状态,2:提交
SelectedItem String 学生选择的答案
AllItems String 所有备选答案
Participants Struct 参与答题人
└ ShowName String 答题人昵称
└ Uid Int32 答题人ID
L Identity Int32 答题人身份
RecvQuestionTime Int32 学生收到试题时间
LastCommitTime Int32 学生提交答案时间

抢答器

字段 类型 说明
Area Struct 窗口坐标
└ X1,Y1,X2,Y2 Int32
Color String 发题消息为standaloneResponderToolglobalData,学生抢答消息为standaloneResponderTool+UID
Cmd Int32 命令字67375105
RandomTopLeft Struct 随机位置坐标
└ X,Y Int32
Participants Struct 参与抢答者
└ ShowName String 答题人昵称
└ Uid Int32 答题人ID
L Identity Int32 答题人身份
EndTime Int32 抢答结束时间
CurState Int32 当前状态,0:起始状态,1:开始抢答,2:学生抢答,3:抢答后等待,4:结束
nId Int32 最快抢答者ID
FastestGuyTime Int32 最快抢答时间
FastestGuyName String 最快抢答者

上下台

字段 类型 说明
Cmd Int32 命令字67371521
Operation Int32 0为下台,1为上台

课节网络状态报告

课节实时网络与CPU占用率状态反馈,每5分钟发送一次,为5分钟内的汇总

参数名 类型 说明
Cmd String 类型为字符串,'Net'
Data 对象 状态统计
└ localIP String 用户ip (最后一位隐藏)
└ socket String UDP/TCP,当前上报时间教室媒体实际通讯使用的协议
└ mediaPort 整数 媒体端口
└ reportTime String 触发上报数据的时间戳
└ mediaDuration 整数 上传周期的时间长度(秒)
└ good 整数 UDP good的总次数
└ normal 整数 UDP normal的总次数
└ bad 整数 UDP bad的总次数
└ poor 整数 UDP poor的总次数
└ notReach 整数 UDP notReach的总次数
└ total 整数 UDP 的总次数
└ avgDelay String UDP 平均延时
└ avgVariance String UDP 平均方差
└ loss 整数 UDP 的实际丢包数量
└ udpTotalPkts 整数 UDP 的实际测速总报文量
└ tcpGood 整数 TCP good的总次数
└ tcpNormal 整数 TCP normal的总次数
└ tcpBad 整数 TCP bad的总次数
└ tcpPoor 整数 TCP poor的总次数
└ tcpNotReach 整数 TCP notReach的总次数
└ tcpTotal 整数 tcp 的总次数
└ tcpAvgDelay String tcp 平均延时
└ tcpAvgVariance String tcp 平均方差
└ gatewayGood 整数 用户网关good的总次数
└ gatewayNormal 整数 用户网关normal的总次数
└ gatewayBad 整数 用户网关bad的总次数
└ gatewayPoor 整数 用户网关poor的总次数
└ gatewayNotReach 整数 用户网关notReach的总次数
└ gatewayTotal 整数 用户网关的总次数
└ gatewayTtl String 用户网关TTL
└ gatewayAddress String 用户网关
└ gatewayAvgDelay String 用户网关平均延时
└ gatewayAvgVariance String 用户网关平均方差
└ gatewayLoss 整数 用户网关的实际丢包数量
└ gateway2Good 整数 接入网关good的总次数
└ gateway2Normal 整数 接入网关normal的总次数
└ gateway2Bad 整数 接入网关bad的总次数
└ gateway2Poor 整数 接入网关poor的总次数
└ gateway2NotReach 整数 接入网关notReach的总次数
└ gateway2Total 整数 接入网关的总次数
└ gateway2Ttl String 接入网关TTL
└ gateway2Address String 接入网关
└ gateway2AvgDelay String 接入网关平均延时
└ gateway2AvgVariance String 接入网关平均方差
└ gateway2Loss String 接入网关的实际丢包数量
└ cpuLow 整数 low的总次数
└ cpuMedium 整数 medium的总次数
└ cpuHigh 整数 high的总次数
└ cpuBusy 整数 busy的总次数
└ cpuTotal 整数 cpu的总次数

实例

{
    "ClassID": 290274,
    "ActionTime": 1521547386,
    "UID": 1001920,
    "CourseID": 122982,
    "TimeStamp": 1521547387,
    "Cmd": "Net",
    "_id": "5ab0f87aa3251e6e49b9e892",
    "SID": 1001920,
    "Data": {
        "avgVariance": "35.890",
        "reportTime": "1720082915",
        "gatewayAvgVariance": "38.284",
        "gateway2Poor": 0,
        "gatewayNormal": 0,
        "total": 592,
        "mediaPort": 8080,
        "gateway2AvgDelay": "16.240",
        "udpTotalPkts": 92,
        "localIP": "123.24.205.*",
        "avgDelay": "68.258",
        "gatewayAvgDelay": "6.794",
        "poor": 10,
        "good": 560,
        "notReach": 3,
        "gateway2AvgVariance": "74.474",
        "normal": 19,
        "gatewayTtl": 1,
        "gatewayTotal": 300,
        "gateway2Loss": 6,
        "gateway2Good": 293,
        "gateway2NotReach": 6,
        "loss": 4,
        "gateway2Ttl": 3,
        "gateway2Total": 299,
        "gatewayLoss": 0,
        "gatewayNotReach": 0,
        "gateway2Address": "123.25.27.93",
        "socket": "UDP",
        "gateway2Bad": 0,
        "gatewayPoor": 0,
        "bad": 0,
        "gateway2Normal": 0,
        "gatewayGood": 300,
        "gatewayBad": 0,
        "mediaDuration": 300,
        "gatewayAddress": "10.0.30.1",
        "cpuHigh": 0,
        "cpuMedium": 0,
        "cpuBusy": 0,
        "cpuLow": 299,
        "cpuTotal": 299
    }
}

实例


{
    "ClassID": 290274,
    "ActionTime": 1521547386,
    "UID": 1001920,
    "CourseID": 122982,
    "TimeStamp": 1521547387,
    "Cmd": "Net",
    "_id": "5ab0f87aa3251e6e49b9e892",
    "SID": 1001920,
    "Data": {
        "poor": 0,
        "bad": 0,
        "total": 331,
        "good": 331,
        "normal": 0,
        "notReach": 0,
        "cpuLow": 0,
        "cpuMedium": 10,
        "cpuHigh": 31,
        "cpuBusy": 3,
        "cpuTotal": 44,
        "localIP": "1.2.3.*"
    }
}

教室内设备检测报告

参数名 类型 说明
Cmd String 类型为字符串,'Check'
Data 对象 设备检测结果详细
└ OperatingSystem string 操作系统
└ CPU string 用户 CPU
└ NetworkDelay string 网络延迟
└ FrameLoss string 丢包率
└ MicrophoneArbitrary number 麦克风状态,1为已安装,2为disable或不存在
└ HeadphoneArbitrary number 耳机状态,1为已安装,2为disable或不存在
└ CameraArbitrary number 摄像头状态,1为已安装,2为disable或不存在
└ EEO_VIDEO_DEVICE_NAME string 选用摄像头设备名称
└ EEO_AUDIO_DEVICE_NAME string 选用麦克风设备名称
└ EEO_AUDIO_OUTPUT_NAME string 选用耳机设备名称
└ EEO_DEVICE_LIST 对象 硬件列表
  └ camera array 所有摄像头设备名称列表
  └ micphone array 所有麦克风设备名称列表
  └ speaker array 所有扬声器设备名称列表
└ MicrophoneImpersonal number 程序检测的麦克风状态(1正常,2不正常或未收到声音数据),移动端此字段无效
└ CameraImpersonal number 程序检测的摄像头状态(1正常,2不正常或未收到摄像头数据),移动端此字段无效
└ HeadphoneImpersonal number 无法对此设备进行程序检测,移动端此字段无效
└ MicrophoneAttachment string 麦克风附件
└ HeadphoneAttachment string 耳机附件 (暂时为空)
└ CameraAttachment string 摄像头附件
└ ClassInVersion string 客户端版本
└ Mac string MAC 地址
└ addTime string 自检时间(时间戳)
└ InfoSource number 上传自检时机:1,设备初始化;2,设备选择,3,自检完成;4,设备插拔;5,设置完成;7,自检中断;
└ DeviceType number 设备类别:0,未知;1,Windows;2,iPhone;3,iPad;4,Android Phone;5,Android Pad;6,Mac;
└ ClientIP string 用户IP(最后一位隐藏)

实例

{
    "ClassID": 290274,
    "ActionTime": 1521547218,
    "UID": 1001920,
    "CourseID": 122982,
    "TimeStamp": 1521547219,
    "Cmd": "Check",
    "_id": "5ab0f7d2a3251e6e49b9e88b",
    "SID": 1001920,
    "SafeKey": "7e0a589d8fd68a82a523ac86c95c9d1d",
    "Data": {
        "MicrophoneArbitrary": null,
        "ClassInVersion": "2.1.1.60",
        "EEO_AUDIO_OUTPUT_NAME": "\u626c\u58f0\u5668 (Realtek High Definition Au",
        "FrameLoss": "",
        "EEO_AUDIO_DEVICE_NAME": "\u9ea6\u514b\u98ce (HD Webcam C270)",
        "CameraImpersonal": 0,
        "addTime": 1521547218,
        "CPU": "Intel(R) Core(TM) i5-4570 CPU @ 3.20GHz",
        "OperatingSystem": "Windows 10 (1709)",
        "Mac": "00:15:5D:33:74:C4",
        "CameraArbitrary": null,
        "EEO_VIDEO_DEVICE_NAME": "Logitech HD Webcam C270",
        "ServerName": "EEO-A0134 (Auto)",
        "HeadphoneAttachment": "",
        "ClientIP": "10.0.1.*",
        "MicrophoneAttachment": "https://root_url/upload/autocheck/",
        "EEO_DEVICE_LIST": "{\"camera\": [\"Logitech HD Webcam C270\"], \"micphone\": [\"HD Webcam C270\"], \"speaker\": [\"LG HDR 4K\"]}",
        "MicrophoneImpersonal": 0,
        "CameraAttachment": "",
        "HeadphoneArbitrary": null,
        "InfoSource": 3,
        "NetworkDelay": ""
    }
}

教室内老师和学生求助

上课过程中,老师端和学生端(学生端的求助,需要在机构管理后台的 教室配置 里勾选 学生求助设置),都能够向eeo.cn发起求助信息

参数名 类型 说明
Cmd String 'HelpInfo'
ClassID 整数 求助课节ID
Data 对象 求助内容
└ UID 整数 发起求助用户ID
└ Message string 求助信息
└ UserList 整数数组 求助所包含的用户ID

实例


{
    "SID": 1000958,
    "ClassID": 301417,
    "Data": {
        "UID": 1001558,
        "Message": "Speaker is abnormal. The user can't hear sound",
        "UserList": [1001558, 123456]
    },
    "Cmd": "HelpInfo"
}

延长课节时长

课节结束前 8 - 3 分钟内,如果老师延长课节时长,将收到此推送消息。
注:只有当机构的 教室设置 勾选了课堂延时设置(允许教师延长课节时长),老师才能延长课节时长。

参数名 类型 说明
Cmd String 'ClassLen'
StartTime Int32 课节开始时间,unix时间戳
PrelectTimeLength Int32 新课节时长,单位秒
CloseClassDelay Int32 拖堂延时,单位秒

实例


{
    "SID": 1000958,
    "StartTime": 1568862650,
    "PrelectTimeLength": 1200,
    "CloseClassDelay": 1200,
    "Cmd": "ClassLen"
}

启动录课详情

录课模式等信息,每次录课启动时推送

参数名 类型 说明
Cmd String 类型为字符串,'LiveDetail'
Data 对象 录课详细信息
└ Audio mode 字符串 录制声音模式:软件声音为'ClassIn Audio',系统声音为'System Audio'
└ HighBitRate 字符串 录制码率:高码率'High',普通码率为'Standard'
└ IP 字符串 推流IP:可能为域名'livepush.eeo.cn'或具体IP地址
└ Micphone is recorded 字符串 是否录麦克风的声音: 'Yes'或'No'
└ Video Scope 字符串 录制目标为桌面'Desktop'或教室窗口'Classroom'
└ Video Size 字符串 录制大小:高清'HD(1280*720)'或'FHD(1920*1080)'

实例


{
    "SID": 1001920,
    "Data": {
        "Audio mode": "ClassIn Audio",
        "HighBitRate": "Standard",
        "IP": "livepush.eeo.cn",
        "Micphone is recorded": "Yes",
        "Video Scope": "Desktop",
        "Video Size": "HD(1280*720)"
    },
    "ClassID": 392429,
    "Cmd": "LiveDetail"
}

教室大黑板板书图片

每次客户端清空大黑板和课节结束时,系统会把大黑板上的板书数据,转换成为图片并实时推送

参数名 类型 说明
Cmd String 'EdbImg'
Url String 图片地址链接
GroupId 整数 板书所属分组Id,GroupId=0表示为主教室。当本课节没有使用分组功能,则所有的GroupId为0

实例


{
    "SID": 1001920,
    "ClassID": 393472,
    "Url": "http://www.eeo.cn/20200819/20200819_393472_0_bb_151823_853.jpg",
    "GroupId": 0,
    "Cmd": "EdbImg"
}

直播页面用户登录

课节直播状态下登录会产生消息并实时推送,回放状态登录不会产生消息

参数名 类型 说明
Cmd String 'LiveWebLogin'
ClassID 整数 直播课节ID
Data 对象 内容
└ Telephone String 登录用户电话号码或邮箱,以实际登录账号为准
└ LoginTime 整数 Unix时间戳
└ Nickname String 登录用户昵称

实例


{
    "SID": 1000958,
    "ClassID": 301417,
    "Data": {
        "Telephone": "10015584345",
        "LoginTime": 1521547219,
        "Nickname": "XiaoMing"
    },
    "Cmd": "LiveWebLogin"
}

直播预约

用户预约直播的数据,推送时机:用户提交预约后实时推送。

参数名 类型 说明
Cmd String 'LiveReserve'
ClassID 整数 直播课节ID
Data 对象 内容
└ Telephone String 预约观看直播的手机号码或邮箱,以实际登录账号为准
└ ReserveTime 整数 用户提交预约的时间,Unix时间戳

实例

{
    "SID": 100088,
    "ClassID": 10086,
    "Cmd": "LiveReserve",
    "Data": {
        "Telephone": "15201114553",
        "ReserveTime": 1625108250
    }
}

网页直播观看明细

用户观看直播的明细数据,推送时机:用户关闭直播后实时推送。
请注意:在用户侧的网络不好、刷新页面、手机休眠等情况下,系统会推送多条InTime相同但LookTime不一样的数据。您在处理数据时,应该使用(Cmd,ClassID,Telephone,Intime)为key,只存储LookTime为最大的那条记录即可。

参数名 类型 说明
Cmd String 'LiveDataDetail'
ClassID 整数 直播课节ID
Data 对象 内容
└ Telephone String 用户手机号码或邮箱,以实际登录账号为准,若为游客则为 'yk_' 开头的字符串
└ Nickname String 用户昵称
└ Intime 整数 用户进入观看直播的时间,Unix时间戳
└ LookTime 整数 用户观看时长,单位为秒
└ IP String 用户IP地址
└ ClientType 整数 用户观看直播的终端类型:1-PC端浏览器,2-移动端浏览器,3-小程序

实例

{
    "SID": 100088,
    "ClassID": 10086,
    "Cmd": "LiveDataDetail",
    "Data": {
        "Telephone": "15201114553",
        "Nickname": "husky2021",
        "Intime": 1625108250,
        "LookTime": 60,
        "Ip": "127.0.0.1",
        "ClientType": 1
    }
}

直播点赞

用户观看直播的点赞数据,推送时机:用户点赞后实时推送。

参数名 类型 说明
Cmd String 'LiveLike'
ClassID 整数 直播课节ID
Data 对象 内容
└ Telephone String 用户手机号码或邮箱,以实际登录账号为准;若为游客则为 'yk_' 开头的字符串
└ Time 整数 用户点赞的时间,Unix时间戳

实例

{
    "SID": 100088,
    "ClassID": 10086,
    "Cmd": "LiveLike",
    "Data": {
        "Telephone": "15201114553",
        "Time": 1625108250
    }
}

直播商品点击明细

用户直播过程中点击商品的明细数据,推送时机:用户点击商品后实时推送。

参数名 类型 说明
Cmd String 'LiveGoodsClickDetail'
ClassID 整数 直播课节ID
Data 对象 内容
└ Telephone String 用户手机号码或邮箱,以实际登录账号为准,若为游客则为 'yk_' 开头的字符串
└ Nickname String 用户昵称
└ Time 整数 用户点击商品的时间,Unix时间戳
└ GoodNum 整数 商品编号
└ GoodName String 商品名称

实例

{
    "SID": 100088,
    "ClassID": 10086,
    "Cmd": "LiveGoodsClickDetail",
    "Data": {
        "Telephone": "15201114553",
        "Nickname": "husky2021",
        "Time": 1625108250,
        "GoodNum": 60,
        "GoodName": "三字经"
    }
}

results matching ""

    No results matching ""