问题标签 [scorm]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
883 浏览

debugging - 一个很好的测试平台,可以在没有 LMS 的情况下调试 SCORM 课件(Applet)

什么是调试基于 JAVA APPLET 的 SCORM 内容包(eclipse)的好测试平台。

使用真正的 LMS(如 Moodle)进行调试通常需要将 zip 文件中的包上传到 LMS(慢..)

0 投票
1 回答
3213 浏览

scorm - 使用包装工具将 SCORM 1.2 XML 转换为 2004

我找到了一个很好的包装工具,可以将 SCORM 1.2 api 转换为 2004,但是除了 XML 文件还需要进行哪些最小更改?我认为至少 imsmanifest.xml 需要更新?

0 投票
9 回答
66590 浏览

javascript - 如何从 ASP.NET 变量中提供 JavaScript 变量数据?

我已经为我们的 LMS 创建了一个 SCORM API,现在我正在使用硬编码的 userID 和 courseID 变量(引用数据库中事物的变量)。我需要传递真实的用户 ID 和课程 ID,而不是使用硬编码的。我知道用户 ID 存储在会话中,并且课程 ID 是从启动页面传递过来的。

如何将它们放入 JavaScript,以便可以将它们包含在对处理 SCORM 调用的 .ashx 的调用中?

0 投票
3 回答
1275 浏览

php - 什么是 CMIString4096,如何提取其中的数据?

我有这个从 Adob​​e Presenter 7 返回的字符串。它被称为 suspend_data 并且类型为 CMIString4096 (由文档)

CMIString4096 一组最大长度为 4096 个字符的 ASCII 字符。

这是字符串:

aG1111111000000000BB001EC%2EacC%7E%24GS%2AayjHm110BKCBBB0B0EBAB1B1ED%2EicC%7E%24GS%2AlfkHm110BKDBCB0B0EBBB0B0EBAB1B1EE%2EwcC%7E%24GS%2ACBlHm100BKDB2BCBCDB1BABBDB0BBBADF%2E7cC%7E%24GS%2A4GmHm110BKBB0Ebl%C3%A1rRbl%C3%A1R%3Bgr%C3%A6nn%3Brau% C3%B0urB

它看起来像带有一些 urlencoded 字符的 base64。当我 urldecode() 字符串时,最后几个字符类似于一些数据,但它在 utf8 中,然后我 utf8_decode 它并看到这个。

好的,我更接近一些数据(最后),但看起来仍然一团糟。当我使用 base64_decode() 时,我得到一些二进制文件,但我不知道它到底是什么。

有谁知道这些数据是什么以及我如何从中获得一些意义?我正在使用 PHP btw,所以只有其中的函数适用。

0 投票
6 回答
14450 浏览

javascript - Javascript Scorm 1.2 API

我需要使现有的 LMS Scorm 1.2 兼容(仅基本调用)。有谁知道那里有任何免费的脚本,以免不得不从头开始编写?

谢谢!

迈克尔

0 投票
2 回答
5078 浏览

json - SCORM API 中的异步 Ajax 调用

我正在为 SCORM 2004 第 4 版创建一个 javascript API。对于那些不了解 SCORM 的人来说,基本上它是一个 API 标准,电子学习课程可以使用它与 LMS(学习管理系统)进行通信。现在 API 必须具有以下方法:

  • 初始化(参数)
  • 获取值(键)
  • 设置值(键,值)
  • 终止(参数)
  • 提交(参数)
  • 获取诊断(参数)
  • 获取错误字符串(参数)
  • 获取上一个错误()

现在 Initialize 必须在其他任何事情之前调用,并且 Terminate 必须在最后。GetValue/SetValue 可以在两者之间的任何地方调用。我正在做的是在 Initialize 方法中,我从 Web 服务获取一些 JSON 并将其存储在 API 中(稍后在使用 GetValue/SetValue 方法时使用)。我遇到的问题是通过 jQuery 的 AJAX 调用是异步的,因此可以在加载 JSON 之前完成 Initialize 方法调用。既然这样,在调用 Initialize 之后调用 GetValue 可能会导致意外问题,因为 GetValue 使用的 JSON 尚不存在。我的问题是:如何确保在调用 GetValue/SetValue 方法之前加载 JSON?我知道简单的答案是让它同步,但大多数情况下不建议这样做,而且它没有 t 似乎想为我做那件事。这是我的代码:

有没有人有任何想法?我真的很感激!

0 投票
8 回答
3396 浏览

regex - SCORM 2004 时间格式 - 正则表达式?

我正在为 LMS 构建一个 SCORM 2004 javascript API,SCORM 2004 要求之一是传递给它的时间间隔必须遵循以下格式。有谁知道这个的正则表达式是什么?我试图将我的思想包裹在它周围,但无济于事。注意:P 必须始终是第一个字符。

P[yY][mM][dD][T[hH][nM][s[.s]S]] 其中:

  • y:年数(整数,>=0,不限)
  • m:月数(整数,>=0,无限制)
  • d:天数(整数,>=0,不限)
  • h:小时数(整数,>=0,无限制)
  • n:分钟数(整数,>=0,无限制)
  • s:秒数或秒数(实数或整数,>=0,不受限制)。如果使用秒的小数部分,SCORM 进一步将字符串限制为最多 2 位数字(例如,34.45 - 有效,34.45454545 - 无效)。
  • 如果存在相应的非零值,则应出现字符文字指示符 P、Y、M、D、T、H、M 和 S。
  • 应支持值的零填充。零填充不会更改由一组字符表示的数字的整数值。例如,PT05H 等价于 PT5H 和 PT000005H。

例子 -

  • P1Y3M2DT3H表示1年3个月2天3小时的时间段
  • PT3H5M表示时间段为3小时5分钟

任何帮助将不胜感激。

谢谢!

更新:

我添加了一些必须保留的附加标准 -

  • 代号 P 应在场
  • 如果年、月、日、小时、分钟或秒的值为零,则可以省略该值和相应的字符字面指定,但除指定符 P 外,至少应存在一个字符字面指示符和值
  • 如果不使用所有时间分量(小时、分钟和秒),则应省略指示符 T。零值可以与任何时间分量(例如,PT0S)一起使用
0 投票
1 回答
1679 浏览

scorm - SCORM 2004 测序:我做错了什么?

此测验是 4 个 SCO 组中的最后一个 SCO。SCO 1,2,3 必须在此测验可用之前完成。问题是当 1,2,3 完成时,菜单会直接跳过这个测验并进入下一个模块的第一页。此测验统计数据一直显示为灰色。我认为这与前提逻辑或目标有关,但我已经尝试了我能想到的一切,但没有任何效果。

0 投票
2 回答
15264 浏览

python - 如何将命名空间添加到lxml中的属性

我正在尝试使用 python 和 lxml 创建一个看起来像这样的 xml 条目:

我正在使用python和lxml。我的adlcp:scormtype属性有问题。我是xml新手,如果我错了,请纠正我。 adlcp是一个命名空间,scormtype是一个在 adlcp 命名空间中定义的属性,对吧?
我什至不确定这是否是正确的问题,但是......我的问题是,如何使用 lxml 从非默认命名空间向元素添加属性?如果这是一个微不足道的问题,我提前道歉。

0 投票
2 回答
2069 浏览

xml - imsmanifest.xml 应为 utf-8 或不是 (Scrm 1.2)

我应该将 imsmanifest.xml 保存为 UTF-8 还是 ANSI ?

ADL 测试套件 1.2 似乎因 UTF8 标头而失败,但另一方面,如果不是 UTF8,某些 LMS 将失败。