简体   繁体   English

在 SCORM 1.2 包中需要一个唯一的用户/课程 ID 变量

[英]Need a unique user/course ID variable in SCORM 1.2 package

I'm working on a project that requires a unique "enrollment" id inside a file inside a SCORM package.我正在处理一个项目,该项目需要在 SCORM 包内的文件中具有唯一的“注册”ID。 Something that works like this:像这样工作的东西:

<script src="...?enrollmentid=1234567890"></script>

I have figured out that I should be able to obtain a student_id, but this is too broad an identifier for this use.我发现我应该能够获得一个 student_id,但是对于这个用途来说,这个标识符太宽泛了。 The id I use must describe a single student/course enrollment uniquely, as a student could enroll in multiple courses, and a course could have multiple students enrolled.我使用的 id 必须唯一地描述单个学生/课程注册,因为一个学生可以注册多个课程,而一个课程可以有多个学生注册。

The id could be a composite of other fields, like student_id + course id + enrollment date, but I can't see any way to get those sorts of details from the LMS either. id 可以是其他字段的组合,例如 student_id + 课程 id + 注册日期,但我也看不到任何从 LMS 获取此类详细信息的方法。

Is what I'm trying to do possible?我正在尝试做的可能吗?

SCORM 1.2 or even 2004 did not unfortunately include things like enrollment date, course id, or SCO title/structure unless that was pumped in via Launch Data that comes by way of the imsmanifest.xml at author time.不幸的是,SCORM 1.2 甚至 2004 都没有包含诸如注册日期、课程 ID 或 SCO 标题/结构之类的内容,除非这些内容是通过创作时通过 imsmanifest.xml 提供的启动数据输入的。 And these are things which you would need to provide.这些是您需要提供的东西。

cmi.core.student_id is the only unique value you'll get directly from SCORM. cmi.core.student_id是您可以直接从 SCORM 获得的唯一唯一值。 The LMS was not given a way to also include any Tier IDs or internals it used when it imported the course. LMS 没有提供一种方法来包含它在导入课程时使用的任何层 ID 或内部结构。 And unless they (unreliably) place them in the launch parameters or you have a way of doing some probing with javascript (also unreliable) you'll need to consider some other options.除非他们(不可靠地)将它们放在启动参数中,或者您有办法使用 javascript 进行一些探测(也不可靠),否则您需要考虑其他一些选项。

Launch Data cmi.launch_data would probably be the easiest way to gain access to any values you want to pass thru to the SCO but this relies heavily on the authoring process of the SCO and its imsmanifest.xml.启动数据cmi.launch_data可能是访问要传递给 SCO 的任何值的最简单方法,但这在很大程度上依赖于 SCO 的创作过程及其 imsmanifest.xml。 Situations where there is a LCMS setup or some mechanism of a authoring tool could enable these capabilities.有 LCMS 设置或某种创作工具机制的情况可以启用这些功能。

I add this below the <title/> tag in the imsmanifest.xml:我在 imsmanifest.xml 中的<title/>标签下面添加了这个:

<!-- Launch Data Example uses Querystring format name=value&name=value -->
<adlcp:dataFromLMS><![CDATA[name=value]]></adlcp:dataFromLMS>

When I state unreliable - I mean to hint that unless you can definitively state you know where this content is running, and the LMS will never change, you won't be able to obtain the info you want in any reliable way.当我声明不可靠时 - 我的意思是暗示除非您能明确声明您知道这些内容在哪里运行,并且 LMS 永远不会改变,否则您将无法以任何可靠的方式获得您想要的信息。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM