@zanichelli/zanichelli-lrs-client
v1.0.0
Published
Zanichelli LRS Client Library
Downloads
1,501
Maintainers
Keywords
Readme
Zanichelli LRS Client Library
This library exposes a client that allows statements to be sent to Zanichelli's Learning Records Store in a predefined format
Example of a sent statement
{
"lrs_id": "6c4c289a8062c07ed758ea53c",
"client_id": "98b5ad57-d547-416c-9429-5671e325366f",
"statement": {
"verb": {
"id": "https://api.zanichelli.it/xapi/verbs/closed"
},
"context": {
"platform": "adv",
"extensions": {
"https://api.zanichelli.it/xapi/keys/referer/id": "1"
},
"contextActivities": {
"parent": [
{
"id": "http://info.zanichelli.it:3333"
}
]
}
},
"object": {
"objectType": "Activity",
"id": "https://info.zanichelli.it:3333",
"definition": {
"extensions": {
"https://api.zanichelli.it/xapi/doNotShowAgain": false
}
}
},
"actor": {
"objectType": "Agent",
"account": {
"homePage": "https://adv.zanichelli.it",
"name": "anonymous"
}
},
"timestamp": "2024-01-11T10:13:48.375000+00:00",
"version": "1.0.0",
"authority": {
"name": "Zanichelli",
"mbox": "mailto:[email protected]"
},
"stored": "2024-01-11T10:13:48.858909+00:00",
"id": "1ca5051a-b06a-11ee-906e-0242ac110002"
}
}
Installation (if you still need)
Download the package running this command:
yarn add @zanichelli/zanichelli-lrs-client
or import it in your html using Unpkg:
<script
type="module"
src="https://cdn.jsdelivr.net/npm/@zanichelli/zanichelli-lrs-client/dist/index.js"></script>
Release Procedure
yarn release
Symlink Local Development
yarn link
In the destination project folder run
yarn link @zanichelli/zanichelli-lrs-client
Usage
It is recommended to create a utility file where to import the client and instantiate it
import { LrsClient } from "@zanichelli/zanichelli-lrs-client";
export const client = new LrsClient("environment", "platform", "homepage", {
username: LRS_USERNAME,
password: LRS_PASSWORD,
});
You must set the Lrs environment (test
or prod
) to be called and the
specific credentials of the application that is sending the statements
In order to send the statements a send method is provided:
client.send(arg: StatementParams)
interface StatementParams {
verb: string;
actor: ActorParams;
context: ContextParams;
object: ObjectParams;
authority: AuthorityParams;
}