CN109151602B - 一种记录在线学习视频课时长的方法 - Google Patents
一种记录在线学习视频课时长的方法 Download PDFInfo
- Publication number
- CN109151602B CN109151602B CN201811123487.7A CN201811123487A CN109151602B CN 109151602 B CN109151602 B CN 109151602B CN 201811123487 A CN201811123487 A CN 201811123487A CN 109151602 B CN109151602 B CN 109151602B
- Authority
- CN
- China
- Prior art keywords
- time
- timer
- server
- diff
- video
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/478—Supplemental services, e.g. displaying phone caller identification, shopping application
- H04N21/4782—Web browsing, e.g. WebTV
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/262—Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
- H04N21/26208—Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists the scheduling operation being performed under constraints
- H04N21/26241—Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists the scheduling operation being performed under constraints involving the time of distribution, e.g. the best time of the day for inserting an advertisement or airing a children program
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/472—End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
- H04N21/47202—End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for requesting content on demand, e.g. video on demand
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/472—End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
- H04N21/47214—End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for content reservation or setting reminders; for requesting event notification, e.g. of sport results or stock market
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/85—Assembly of content; Generation of multimedia applications
- H04N21/854—Content authoring
- H04N21/8547—Content authoring involving timestamps for synchronizing content
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Business, Economics & Management (AREA)
- Human Computer Interaction (AREA)
- Marketing (AREA)
- Computer Security & Cryptography (AREA)
- Finance (AREA)
- Strategic Management (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本发明公开了一种记录在线学习视频课时长的方法。本发明通过浏览器客户端不断轮询与服务端协同工作,判断是否一个用户同时在多个浏览器观看视频课,解决了与客户端无关性,并避免重复累加学习时长。本发明能够保证一个用户同一时间只能打开一个视频播放页面。本发明解决了在线学习系统中,如何更加准确记录学生的视频课学习时长的问题。避免了多个会话导致重复累加多次,即一个用户同时学习多个视频课累加学习时间的问题。本发明的s秒的时间间隔大小有考虑到网络传输和服务响应时间;且本发明通过乐观锁机制确保每次新打开视频播放页面生成起始时间戳t0’和t2不相等。
Description
技术领域
本发明属于计算机web应用领域,尤其是在浏览器运行的应用中准确记录点播视频课程学习时长的方法。
背景技术
随着互联网普及和web2.0的发展,基于浏览器的web应用越来越受到人们的青睐,请求+响应模式的http协议造就了浏览器web应用的简洁性和易用性,以及技术实现的快捷性。css3、html5的出现,以及ajax技术和json数据格式的流行,使基于http的web系统天生就具备了很多优势,更强的灵活性,更复杂的多样性,更强的扩展性,以及更好的用户体验。http协议是无状态的,无法保持用户状态,但可以通过session或cookie记录标识来保持用户会话,从而使http变成了有状态。这种状态记录方式有某些局限性,都是基于同一个浏览器,并且有时效性,依赖于客户端或服务器记录。有了会话状态,这样服务器就会做更多的事情,实现更多功能。另外,因为http是基于短连接的,所以如果web应用中有需要长链接的功能也是比较困难的。虽然最新发布的一些web服务器添加了长连接模块,以及html5中也对http进行了扩展,支持websocket,但还是没有socket简单易用,并且还受浏览器版本限制,只能在支持html5的高版本浏览器和高版本的web服务器上才能支持。
发明内容
本发明的目的针对现有技术的不足,提供一种记录在线学习视频课时长的方法。
本发明所采用的技术方案和实现机制如下步骤:
步骤(1)用户A登录后,创建session会话,并记录用户信息,打开学习中心。
步骤(2)在浏览器打开点播课视频播放页面,向服务器发起请求R0。
步骤(3)服务器收到请求R0后,生成起始时间戳t0,并持久化t0到stampA变量中,即:stampA=t0,然后将t0与视频一起传递给客户端浏览器,用户A在视频播放页面中观看学习。
步骤(4)视频播放页面启动定时器P和定时器Q,其中定时器P作为多页面视频播放检测定时器,定时器Q作为观看时长累加定时器,定时器P和定时器Q均通过ajax方式向服务器发送请求;
步骤(5)定时器P以t0为起始值,t0+s秒后向服务器发送一次请求R1,并携带新的时间戳t1,t1=t0+s。
步骤(6)服务器接收到请求R1时,根据session会话找到用户信息和新时间戳t1,判断t1-stampA的值diff,即diff=t1-tampA,则当第一次判断时diff=t1-t0;如果diff=s表示正常,此时stampA变量中用t1替代t0,即:stampA=t1。
步骤(7)客户端定时器P在下一个t0+2*s秒后继续向服务器端发送R2请求,并携带新的时间戳t2,t2=t0+2*s。
步骤(8)服务器收到请求R2时,同样根据session会话找到用户信息和新时间戳t2,判断t2-stampA的值diff,即:diff=t2-t1,如果diff=s表示正常,此时stampA变量中用t2替代t1,即:stampA=t2。
依次类推,轮询验证。以上是用户A只打开一个视频播放页面,正常的情况。如果用户A又打开了一个视频播放页面就会出现前后两次时间戳差值diff<s的情况,如下所述:
步骤(9)此时用户A又打开一个新的视频播放页面,向服务器发起请求R0’,服务器产生新的起始时间戳t0’,并持久化t0’到stampA变量中,即:stampA=t0’。
步骤(10)如果此时第一个视频播放页面刚好执行跟步骤(7)一样的轮询过程时,则此时服务器收到R3的请求,diff=t3-t2就变成了diff=t3-t0’,由于t2和t0’并不是在同一个时间周期s秒内产生的,所以此时diff不等于s,表示用户A打开了多个视频播放页面。
步骤(11)定时器Q间隔一定时间向服务器提交观看时长。视频播放时定时器Q启动,视频暂停时定时器Q停止;diff等于s时,定时器Q继续;diff不等于s时,定时器Q停止。
本发明中起始时间戳t0必须以服务器时间为准,间隔s秒后由页面将新时间戳传到服务器;s秒的时间间隔大小要考虑到网络传输和服务响应时间,必须在s秒内完成了传输和响应;通过乐观锁机制确保每次新打开视频播放页面生成起始时间戳t0’和t2不相等。
本发明有益效果如下:
本发明能够保证一个用户同一时间只能打开一个视频播放页面。
本发明解决了在线学习系统中,如何更加准确记录学生的视频课学习时长的问题。避免了多个会话导致重复累加多次,即一个用户同时学习多个视频课累加学习时间的问题。
本发明通过浏览器客户端不断轮询与服务端协同工作,判断是否一个用户同时在多个浏览器观看视频课,解决了与客户端无关性,并避免重复累加学习时长。
本发明的s秒的时间间隔大小有考虑到网络传输和服务响应时间;且本发明通过乐观锁机制确保每次新打开视频播放页面生成起始时间戳t0’和t2不相等。
附件说明
图1为本发明服务端与客户端时序图。
具体实施方式
目前浏览器产品众多,一个用户同一台电脑上装多个浏览器是很普遍的现象,并且浏览器版本也不尽相同。同一台电脑终端、同一浏览器或不同浏览器,即使是同一个用户登录,也会产生两个不同的session或cookie。并且有些低版本浏览器不支持长连接。本发明就是要解决在这种情况下在线学习系统中,如何更加准确记录学生的视频课学习时长。比如:一个用户在同一台电脑上登录多个浏览器,或者不同电脑上登录,观看点播视频课,如果都按session或cookie记录观看时长,那么多个会话导致重复累加多次,但实际一个用户不可能同时学习多个视频课。
为了避免这个问题,本发明通过浏览器客户端不断轮询与服务端协同工作,判断是否一个用户同时在多个浏览器观看视频课,解决了与客户端无关性,并避免重复累加学习时长。
如图1所示,本发明实现机制如下步骤:
步骤(1)用户A登录后,创建session会话,并记录用户信息,打开学习中心。
步骤(2)在浏览器打开点播课视频播放页面,向服务器发起请求R0。
步骤(3)服务器收到请求R0后,生成起始时间戳t0,并持久化t0到stampA变量中,即:stampA=t0,然后将t0与视频一起传递给客户端浏览器,用户A在视频播放页面中观看学习。
步骤(4)视频播放页面启动定时器P和定时器Q,其中定时器P作为多页面视频播放检测定时器,定时器Q作为观看时长累加定时器,定时器P和定时器Q均通过ajax方式向服务器发送请求;
步骤(5)定时器P以t0为起始值,t0+s秒后向服务器发送一次请求R1,并携带新的时间戳t1,t1=t0+s。
步骤(6)服务器接收到请求R1时,根据session会话找到用户信息和新时间戳t1,判断t1-stampA的值diff,即diff=t1-tampA,则当第一次判断时diff=t1-t0;如果diff=s表示正常,此时stampA变量中用t1替代t0,即:stampA=t1。
步骤(7)客户端定时器P在下一个t0+2*s秒后继续向服务器发送R2请求,并携带新的时间戳t2,t2=t0+2*s。
步骤(8)服务器收到请求R2时,同样根据session会话找到用户信息和新时间戳t2,判断t2-stampA的值diff,即:diff=t2-t1,如果diff=s表示正常,此时stampA变量中用t2替代t1,即:stampA=t2。
依次类推,轮询验证。以上是用户只打开一个视频播放页面,正常的情况。如果用户A又打开了一个视频播放页面就会出前后两次时间戳差值diff<s的情况,如下所述:
步骤(9)此时用户A又打开一个新的视频播放页面,向服务器发起请求R0’,服务器产生新的起始时间戳t0’,并持久化t0’到stampA变量中,即:stampA=t0’。
步骤(10)如果此时第一个视频播放页面刚好执行跟步骤(7)一样的轮询过程时,则此时服务器收到R3的请求,diff=t3-t2就变成了diff=t3-t0’,由于t2和t0’并不是在同一个时间周期s秒内产生的,所以此时diff不等于s,表示用户A打开了多个视频播放页面。
步骤(11)定时器Q间隔一定时间向服务器提交观看时长。视频播放时定时器Q启动,视频暂停时定时器Q停止;diff等于s时,定时器Q继续;diff不等于s时,定时器Q停止。
本发明中起始时间戳t0必须以服务器时间为准,间隔s秒后由页面将新时间戳传到服务器;s秒的时间间隔大小要考虑到网络传输和服务响应时间,必须在s秒内完成了传输和响应;通过乐观锁机制确保每次新打开视频播放页面生成起始时间戳t0’和t2不相等。
Claims (2)
1.一种记录在线学习视频课时长的方法,其特征在于包括如下步骤:
步骤(1)用户A登录后,创建session会话,并记录用户信息,打开学习中心;
步骤(2)在浏览器打开点播课视频播放页面,向服务器发起请求R0;
步骤(3)服务器收到请求R0后,生成起始时间戳t0,并持久化t0到stampA变量中,即:stampA=t0,然后将t0与视频一起传递给客户端浏览器,用户A在视频播放页面中观看学习;
步骤(4)视频播放页面启动定时器P和定时器Q,其中定时器P作为多页面视频播放检测定时器,定时器Q作为观看时长累加定时器,定时器P和定时器Q均通过ajax方式向服务器发送请求;
步骤(5)定时器P以t0为起始值,t0+s秒后向服务器发送一次请求R1,并携带新的时间戳t1,t1=t0+s;
步骤(6)服务器接收到请求R1时,根据session会话找到用户信息和新时间戳t1,计算前后两次时间戳差值diff,此时diff=t1-stampA,则当第一次判断时diff=t1-t0;如果diff=s表示正常,此时stampA变量中用t1替代t0,即:stampA =t1;
步骤(7)客户端定时器P在下一个t0+2*s秒后继续向服务器发送R2请求,并携带新的时间戳t2,t2=t0+2*s;
步骤(8)服务器收到请求R2时,同样根据session会话找到用户信息和新时间戳t2,计算前后两次时间戳差值diff,此时:diff =t2-t1,如果diff =s表示正常,此时stampA变量中用t2替代t1,即:stampA =t2;
依次类推,轮询验证;步骤(1)~步骤(8)是用户A只打开一个视频播放页面,正常的情况,但如果用户A又打开了一个视频播放页面就会出现前后两次时间戳差值diff <s的情况,如下所述:
步骤(9)此时用户A又打开一个新的视频播放页面,向服务器发起请求R0’,服务器产生新的起始时间戳t0’,并持久化t0’到 stampA变量中,即:stampA=t0’;
步骤(10)如果此时第一个视频播放页面刚好执行跟步骤(7)一样的轮询过程时,则此时服务器收到R3的请求,diff =t3-t2就变成了diff =t3-t0’,由于t2和t0’并不是在同一个时间周期s秒内产生的,所以此时diff 不等于s,表示用户A打开了多个视频播放页面;
步骤(11)定时器Q间隔一定时间向服务器提交观看时长;视频播放时定时器Q启动,视频暂停时定时器Q停止;diff等于s时,定时器Q继续;diff不等于s时,定时器Q停止。
2.根据权利要求1所述的一种记录在线学习视频课时长的方法,其特征在于起始时间戳t0必须以服务器时间为准,间隔s秒后由页面将新时间戳传到服务器;s秒的时间间隔大小要考虑到网络传输和服务响应时间,必须在s秒内完成了传输和响应;通过乐观锁机制确保每次新打开视频播放页面生成起始时间戳t0’和t2不相等。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811123487.7A CN109151602B (zh) | 2018-09-26 | 2018-09-26 | 一种记录在线学习视频课时长的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811123487.7A CN109151602B (zh) | 2018-09-26 | 2018-09-26 | 一种记录在线学习视频课时长的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109151602A CN109151602A (zh) | 2019-01-04 |
CN109151602B true CN109151602B (zh) | 2020-12-22 |
Family
ID=64812605
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811123487.7A Active CN109151602B (zh) | 2018-09-26 | 2018-09-26 | 一种记录在线学习视频课时长的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109151602B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112040338B (zh) * | 2020-07-31 | 2022-08-09 | 中国建设银行股份有限公司 | 视频播放作弊检测方法、装置及电子设备 |
CN113779306A (zh) * | 2020-08-25 | 2021-12-10 | 北京沃东天骏信息技术有限公司 | 一种播放进度确定方法和装置 |
CN112016029B (zh) * | 2020-09-01 | 2024-01-16 | 北京弘远博学科技有限公司 | 一种多终端课件学习同步记录的方法 |
CN114449026B (zh) * | 2021-12-16 | 2023-09-22 | 北京鸿合爱学教育科技有限公司 | 记录在线学习时长的方法及相关设备 |
CN115002517B (zh) * | 2022-05-25 | 2023-03-21 | 北京永信至诚科技股份有限公司 | 一种视频学习时长防盗刷方法及装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102496316A (zh) * | 2011-11-30 | 2012-06-13 | 江苏奇异点网络有限公司 | 支持移动终端离线播放的远程视频授课方法 |
CN103596055A (zh) * | 2013-11-20 | 2014-02-19 | 江苏宏易教育科技发展有限公司 | 互联网教育视频的播控方法及系统 |
CN104881228A (zh) * | 2015-05-13 | 2015-09-02 | 小米科技有限责任公司 | 学习时间检测方法、装置和系统 |
CN104952299A (zh) * | 2015-07-22 | 2015-09-30 | 胡东雁 | 用于网络课程的终端、服务器、及学习过程中的监控方法 |
CN106131042A (zh) * | 2016-07-29 | 2016-11-16 | 广东小天才科技有限公司 | 一种在线互动学习的方法及系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7069071B2 (en) * | 2000-12-29 | 2006-06-27 | Ge Medical Systems, Inc. | Distributed multi-user replication-based system for real time data access during cardiology procedures |
-
2018
- 2018-09-26 CN CN201811123487.7A patent/CN109151602B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102496316A (zh) * | 2011-11-30 | 2012-06-13 | 江苏奇异点网络有限公司 | 支持移动终端离线播放的远程视频授课方法 |
CN103596055A (zh) * | 2013-11-20 | 2014-02-19 | 江苏宏易教育科技发展有限公司 | 互联网教育视频的播控方法及系统 |
CN104881228A (zh) * | 2015-05-13 | 2015-09-02 | 小米科技有限责任公司 | 学习时间检测方法、装置和系统 |
CN104952299A (zh) * | 2015-07-22 | 2015-09-30 | 胡东雁 | 用于网络课程的终端、服务器、及学习过程中的监控方法 |
CN106131042A (zh) * | 2016-07-29 | 2016-11-16 | 广东小天才科技有限公司 | 一种在线互动学习的方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN109151602A (zh) | 2019-01-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109151602B (zh) | 一种记录在线学习视频课时长的方法 | |
US8990325B2 (en) | Real-time and interactive community-based content publishing system | |
Krishnan et al. | Video stream quality impacts viewer behavior: inferring causality using quasi-experimental designs | |
CN108173946B (zh) | 一种实现课堂实时互动的方法、系统及相关方法 | |
US20090063690A1 (en) | Continuing an application session using a different device from one that originally initiated the application session while preserving session while preserving session state and data | |
US10381047B2 (en) | Method, device, and system of synchronously playing media file | |
CN109714622B (zh) | 一种视频数据处理方法、装置及电子设备 | |
CN111787345B (zh) | 基于网络直播间的互动资源处理方法、装置、服务器及存储介质 | |
CN110198478B (zh) | 交互录播方法、系统、客户端、装置、设备及存储介质 | |
CN111694757B (zh) | 应用程序的测试方法、装置、电子设备及计算机可读存储介质 | |
CN103763380B (zh) | 一种同步演示数据的方法及系统 | |
EP3754998B1 (en) | Streaming media quality monitoring method and system | |
CN103856827A (zh) | 一种基于服务模拟交互的视频内容获取方法及系统 | |
CN112995347B (zh) | 实现端对端实时数据展示的方法、装置、设备及存储介质 | |
CN104602034B (zh) | 一种移动网页的播放方法和系统 | |
US20180248935A1 (en) | Enhanced reliability for information services | |
CN113050904A (zh) | 屏幕共享方法及装置 | |
EP3238471B1 (en) | A method for controlling the sharing of at least one electronic content between a first user equipment and at least a second user equipment | |
CN111600808A (zh) | 一种用于即时通讯的信息处理方法和装置 | |
Saleme et al. | Improving response time interval in networked event-based mulsemedia systems | |
CN114449026A (zh) | 记录在线学习时长的方法及相关设备 | |
CN111970340B (zh) | 信息传输方法、可读存储介质和电子设备 | |
CN110876089B (zh) | 在线答题处理方法及装置 | |
EP2961126A1 (en) | Method, server, and system for synchronizing a plurality of devices | |
CN112202616B (zh) | 故障处理方法、可读存储介质和电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CP01 | Change in the name or title of a patent holder | ||
CP01 | Change in the name or title of a patent holder |
Address after: 310013 13th floor, Hangzhou e-commerce building, 118 Wensan West Road, Xihu District, Hangzhou City, Zhejiang Province Patentee after: Zhejiang wanpengyun Software Technology Co.,Ltd. Address before: 310013 13th floor, Hangzhou e-commerce building, 118 Wensan West Road, Xihu District, Hangzhou City, Zhejiang Province Patentee before: ZHEJIANG ZHEDA WANPENG SOFTWARE Co.,Ltd. |