DocScormAI
SOP Chunking & SCORM Compiler
L&D Knowledge Hub/L&D Standards
SCORM 1.2 • SCORM 2004 • xAPI • cmi5 • WCAG 2.1 AA
L&D Standards7 min read404 words2026-10-12

How to Enforce Mandatory Seat-Time & Per-Question Analytics (cmi.interactions) in SCORM Courses

Need to prevent learners from clicking "Next → Next → Finish" in 10 seconds? Here is how to enforce per-slide countdown locks, track total session time, and log granular question responses in SCORM 1.2 and 2004.

SJ
Sarah Jenkins, M.Ed.Verified L&D Author
Lead Instructional Systems Designer
Test SCORM Converter Free
Executive Summary & Key Takeaways
  • Compliance regulators (OSHA, HIPAA, Financial Services) frequently require proof that learners spent a minimum mandatory seat time reviewing safety material before unlocking the final assessment.
  • A proper SCORM package enforces seat time at two levels: a client-side countdown lock on the "Next Unit" button (e.g., 15s, 30s, or 60s per slide) and server-side session time reporting via cmi.core.session_time / cmi.session_time.
  • Implementing cmi.interactions.N allows LMS administrators to inspect which specific quiz questions learners miss most often and how many seconds they spent deliberating.
01

Solving the "Next-Button Speedrun" Problem in Compliance Training

One of the most common technical requests on r/elearning comes from compliance developers asking: "How do I restrict SCORM completion until and unless the user has spent a specific amount of time on each module?"

Without a seat-time lock, employees assigned a mandatory 20-page safety SOP will click the "Next" button 20 times in 8 seconds and guess on the quiz until they pass. If an workplace incident occurs later, audit logs showing an 8-second completion time can invalidate the company’s compliance defense.

02

How Per-Slide Anti-Skip Timers + Session Time Reporting Work Together

In DocScorm Studio, enabling the "Anti-Skip Lock" lets you select a mandatory per-slide dwell time of 5 seconds, 15 seconds, 30 seconds, or 60 seconds. Whenever a learner advances to an unvisited slide, the "Next Unit" button is disabled and displays a live countdown badge until the timer expires.

Simultaneously, the underlying scormdriver.js calculates the total elapsed session duration and formats it into both SCORM 1.2 (HHHH:MM:SS.SS) and SCORM 2004 ISO-8601 (PT#H#M#S) formats upon course exit.

Recording Granular Question Telemetry via SCORM cmi.interactionsSCORM Runtime API
// DocScorm automatically logs every quiz response to the LMS gradebook:
recordInteraction: function(index, id, response, isCorrect, latencySec) {
  if (this.version === '2004') {
    this.setValue('cmi.interactions.' + index + '.id', id);
    this.setValue('cmi.interactions.' + index + '.type', 'choice');
    this.setValue('cmi.interactions.' + index + '.learner_response', response);
    this.setValue('cmi.interactions.' + index + '.result', isCorrect ? 'correct' : 'incorrect');
    this.setValue('cmi.interactions.' + index + '.latency', 'PT' + latencySec + 'S');
  } else {
    this.setValue('cmi.interactions.' + index + '.id', id);
    this.setValue('cmi.interactions.' + index + '.type', 'choice');
    this.setValue('cmi.interactions.' + index + '.student_response', response);
    this.setValue('cmi.interactions.' + index + '.result', isCorrect ? 'correct' : 'wrong');
  }
}
03

Automating Batch PDF-to-SCORM Conversion via REST API

For developers and operations teams who need an automated script to convert dozens of PDFs into seat-time-locked SCORM packages, DocScorm provides both the web Studio and the `/api/v1/convert` REST endpoint.

You can pass your document units, target languages, and seat-time rules to generate standardized, WCAG 2.1 AA compliant SCORM packages without writing custom JavaScript timers by hand.

SPECIAL READER OFFER • CODE: SOP30 • PERPETUAL SCORM OWNERSHIP

Convert PDFs, DOCX, PPTX, MP4 Videos, or Claude HTML into SCORM in 60 Seconds

Try DocScorm Studio free or claim 30% OFF your first month of the Pro Plan (50 monthly credits + 1-click multi-language bundles + embedded course-source.json round-trip editing).

Frequently Asked Questions

Does the seat-time lock re-lock slides the learner has already completed?

No. Once a learner has satisfied the mandatory countdown timer on a slide (e.g., 15 seconds), that slide is marked as unlocked in their session so they can freely review previous slides without frustration.