【问题标题】:Getting progress returned in xApi statements在 xApi 语句中返回进度
【发布时间】:2019-07-24 09:24:48
【问题描述】:

我正在寻找有关已发布的 xApi 包的一些信息。

如果我从自己的应用程序启动一个包并按照课程进行到底,在我的 LRS 中,我可以看到详细说明我开始、尝试、体验和通过活动的声明,但与课程进度无关/ 活动。

我的意思是学习该课程的用户可以看到的总体进度(以百分比表示),因此对于每个陈述,无论是“经验”、“尝试”还是其他任何内容,我都想返回这个百分比完成。

** 编辑 **

找到此信息,但不确定如何以及在何处使用它:

“如果您想跟踪整个课程的进度,请在标题级别添加以下两个操作: 显示 - xAPI 语句 - 尝试 - VAR(CurrentPageName) 隐藏时 - xAPI 语句 - 已完成 - VAR(CurrentPageName)"

我注意到的是语句记录如下: Damion Daly 尝试活动(无姓名) 这使我认为我没有在查询字符串中正确传递活动,因此无法获取有关该活动的所有信息,这是正确的吗?

如果有任何帮助,我将按如下方式启动我的包。

protected async void OpenIndexWithQryString1(object sender, EventArgs e) 
{ 
    string _course = await s.GetCourseTitle(); 
    string content = "[url to where our content is]" + _course + "/index.html"; 
    string endpoint = "[LRS endpoint]"; 
    string auth = "Basic (auth key)"; 
    string actor = "{\"objectType\":\"Agent\",\"name\":[\"user name\"],\"mbox\":[\"test@mail.com\"]}"; 
    string registration = "(reg token)"; 
    string activity = "http://example.cpm/my-activity3/"; 
    string querystring = content + "?endpoint=" + endpoint + "&auth=" + auth + "&actor=" + actor + "&registration=" + registration + "&activity_id=" + activity; 
    bool b = ResponseHelper.Redirect(Uri.EscapeUriString(querystring), "_blank", "menubar=0,width=100,height=100"); 
}

【问题讨论】:

    标签: c# tin-can-api xapi


    【解决方案1】:

    这听起来像是内容创作工具特有的问题,并不是 xAPI 的核心。通过内容记录进度可以通过多种方式完成,并且通常不取决于该内容的启动方式。通常在 xAPI 中,语句的特定部分或整个语句将记录体验的进度。例如,在 cmi5 中,AU 的进度是通过扩展记录的,有关更多信息,请参阅https://github.com/AICC/CMI-5_Spec_Current/blob/quartz/cmi5_spec.md#result_extensions_progress。 (注意这个内容不是基于 cmi5,所以可能打算做不同的事情。)

    就活动的“名称”而言,它通常来自活动定义,并且不作为您正在使用的启动过程的一部分提供。 LRS 需要接收该定义作为语句的一部分,或者需要与处理包的启动系统集成,可能通过基于tincan.xml 的包,其中可以包含定义元素。请注意,在检索语句时可能还需要传递 canonical 查询字符串参数,以尽可能获得完全填充的定义。

    【讨论】:

    • 附带说明一下,我们通过查看包正在进行的调用来跟踪包的进度,我们通过 Fiddler 找到了这些调用
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-04-18
    • 2016-08-14
    • 2014-10-02
    相关资源
    最近更新 更多