Rooster LRS makes your WordPress site an xAPI Learning Record Store (LRS). Learning applications, e-learning packages (xAPI and cmi5), simulators and learning management systems send their xAPI statements to it, and reporting tools read them back. The records stay in your own database, in the plugin’s own tables, and nothing is sent anywhere else.
Website · Documentation · Rooster LMS
/wp-json/rooster-lrs/xapi/: statements (store, query, void), State, Activity Profile, Agent Profile, Activities, Agents and About.X-Experience-API-Version header.more, and statements that refer to other statements.Rooster LRS implements xAPI 1.0.3 and 2.0 and is tested against its own conformance suite; it has not yet been certified with the ADL LRS Conformance Test Suite.
When Rooster LMS is active, the screens use its design system. Rooster LRS works without it.
https://example.com/wp-json/rooster-lrs/xapi/), the key as the user name and the secret as the password.To forward statements from Rooster LMS Pro, create a credential with the scopes statements/write and define, and choose a custom authority with Rooster LMS Pro’s LMS agent.
xAPI requests must never be cached. If your site uses a page cache, a CDN or a caching plugin, exclude /wp-json/rooster-lrs/ (and ?rest_route=/rooster-lrs/ on sites without pretty permalinks).
Some security plugins block REST API requests from visitors who are not logged in; allow /wp-json/rooster-lrs/ for xAPI clients. Some servers remove the Authorization header before PHP sees it; Rooster LRS also reads REDIRECT_HTTP_AUTHORIZATION and PHP_AUTH_USER.
For the Rooster Adaptive LMS service only, which keeps the statements of many sites in one store. It is off on every other site, where it costs nothing and nothing changes. wp rooster-lrs multi-tenant on turns it on (status and off too; off is refused while tenants exist). In this mode:
RoosterLRS\Tenancy\TenantRegistry, TenantCredentials): there is no provisioning endpoint. A tenant credential may send statements and activity definitions only, at most 300 requests a minute.rooster_lrs_responses, rooster_lrs_exposures). wp rooster-lrs projection rebuild --tenant=<id> derives them again from the statements.RoosterLRS\Privacy\TenantEraser.Rooster LRS does not connect to any external service. Your site never sends anything anywhere because of it: it only answers the xAPI requests that the applications you give a credential send to it. The links below open in the browser only when someone clicks them, and the addresses after them are identifiers that are never contacted.
The Rooster LRS header and Home page link to the website of Oxford Metadata Ltd, the makers of Rooster LRS: the manual (https://rooster.systems/category/en/documentation/rooster-lrs/), help, feedback and rooster.systems. Nothing is sent before the click. Terms and conditions · Privacy policy
The Rooster LRS header links to this plugin’s page and review form on wordpress.org, and to the Rooster community’s chat on Viber (https://invite.viber.com/). WordPress.org privacy · Viber terms · Viber privacy
xAPI names verbs, activity types, extensions and profiles with IRIs that look like web addresses. Rooster LRS compares them as text and never opens them: the ADL verbs (http://adlnet.gov/expapi/verbs/... and https://w3id.org/xapi/adl/verbs/...), and the Rooster profiles’ own identifiers (https://rooster.systems/xapi/...), whose definitions are bundled in data/xapi-profiles/.
Rooster LRS stores the learning records that authorised applications send: xAPI statements and documents. A statement names a learner by the identifier the sending application chose (an e-mail address, a hashed e-mail address, an OpenID or an account) and describes an activity and its result. Records stay until the site owner deletes them, a person’s records are erased, or the retention period set under LRS Settings ends. Nothing is sent to other services. The plugin adds suggested text to the privacy policy guide and registers a personal-data exporter and eraser.