Activity, video & integrations
Understand video playback, privacy choices and optional event delivery to analytics and marketing services.
Events & integrations
Administrators open Events & integrations in the company sidebar. Each destination has its own switch and list of events. Provider setup is required before it can be enabled; secrets are configured by your operator, never entered into course content or returned to the browser. Recent activity shows the latest 100 event and destination records.
Mixpanel and Google Analytics 4 use analytics permission. Klaviyo and Meta Conversions API use marketing permission. All destinations start disabled. Accepted means the provider accepted a submission, not that its dashboards have processed or attributed it.
Your privacy choices
Privacy choices is available in the workspace and on a configured public site. Analytics and marketing are separate, optional and off by default. Video resume and essential learning engagement work without optional sharing. Withdrawing a choice stops future optional submissions; it cannot recall data already accepted by a provider.
Exported events use a company-specific pseudonymous identifier. They do not include message bodies, names, email addresses, search terms, query strings, quiz answers or signed media links. Consented Meta website events additionally include the page path and browser user agent. Third-party browser scripts are not automatically installed.
Create a video lesson
- Open Course studio and choose a Video lesson. Select YouTube iframe, Vimeo iframe or Vimeo API playback. Enter the provider video ID, not an iframe snippet or signed URL. Vimeo iframe supports an unlisted-video hash.
- Add a useful transcript and lesson notes. Review captions in the provider and confirm the caption review checkbox. Publishing requires the transcript and reviewed captions.
- For Vimeo API playback, ask the operator to configure a token with permission to read your videos and their playback files. An active caption track and a supported progressive MP4 link must be available.
- Publish a new version and assign it. Existing enrolments keep their pinned published version. Learners explicitly choose Load video before the browser contacts the provider.
What watching records
Play, pause, seek, periodic progress, end and load-error events are recorded for an authorised learner. The latest observed position can resume a lesson. Progress is checkpointed while playing; closing a tab may lose the final few seconds. Seeking does not earn watch time. Browser events are untrusted engagement observations, not proof that a person watched or understood a video.
Video engagement never automatically completes a lesson or passes an assessment. Learners still use Complete & continue; assessment grading remains on the server. A transcript is available without loading the third-party player. Vimeo API uses native controls with resolved caption tracks.
Connect your own client-side adapter
The browser emits a zublms:activity CustomEvent only after at least one optional permission is enabled. Check the permission required by your integration before forwarding it. The hook carries schemaVersion, event ID, name, semantic page and consent choices; video events also carry playback observations. Never forward the entire object blindly.
This hook does not load Facebook Pixel, Google Tag Manager or another vendor SDK. Such an adapter must separately handle consent withdrawal, vendor loading, CSP and event-ID deduplication. Meta is currently supported through the server-side Conversions API.
window.addEventListener("zublms:activity", ({ detail }) => {
if (!detail.consent.analytics) return;
// Hand selected fields to your approved adapter.
console.debug(detail.name, detail.id, detail.page);
});Availability and limits
- Supported: page views, course detail views, resource opens/download actions, search-page use, and video events. Search text is never sent. Resource download records the requested action, not proof that a file finished downloading.
- Provider credentials and account-specific verification are required. GA4 Measurement Protocol delivery is separate from a full browser campaign/session attribution implementation. Klaviyo events do not subscribe users to email marketing.
- Vimeo API supports progressive MP4 playback, up to 1080p, and active captions. HLS/DASH, DRM, arbitrary iframe HTML, generic signed-URL pasting, SCORM/xAPI and automatic watch-based completion are not implemented here.
- Provider privacy settings, domain allowlists, account entitlements and caption CORS must be verified with your own videos. Public YouTube/Vimeo IDs are not access-controlled media; an already-issued CDN URL remains usable until its provider expiry.