Skip to main content

Insights Quickstart

Get Insights events flowing from your app in minutes. Choose your development environment below.

1) Install

  • Add the AbxrLib Unity package (via UPM or local package).
  • Ensure your Android/Gradle toolchain is compatible.

2) Required Configuration

  1. Open Analytics for XR > Configuration in the Unity Editor.
  2. Configure your credentials:
    • For Development/Testing: Paste in the App ID, Org ID, and Auth Secret. All 3 are required if you are testing from Unity itself.
    • For Production Builds: Only include the App ID, and leave Org ID and Auth Secret empty.
Security

The Org ID and Auth Secret should only be compiled into builds when creating custom applications for specific individual clients. For general distribution, use ArborXR-managed devices or implement runtime credential provisioning.

3) Initialize

In Unity the Abxr object will automatically be available. Skip to the next section.

4) Essential Event Tracking (Required)

Assessment events are required to activate grading dashboards and LMS integration. Send these events to track training completion, scores, and pass/fail status.

// When training starts
Abxr.EventAssessmentStart("safety_training");

// When training completes
Abxr.EventAssessmentComplete("safety_training", 92, EventStatus.Pass);
// or
Abxr.EventAssessmentComplete("safety_training", 25, EventStatus.Fail);
// or
Abxr.EventAssessmentComplete("safety_training", 25, EventStatus.Incomplete);
// If your score range is NOT 0-100, pass score_min and score_max in meta:
// Abxr.EventAssessmentComplete("safety_training", 350, EventStatus.Pass, new Abxr.Dict().With("score_min", "0").With("score_max", "400"));

Assessment Complete:

  • Score (second parameter): default range is 0–100. If your scale is different (e.g. 0–400 or 1–10), you must pass score_min and score_max in the meta parameter; otherwise the SDK will clamp the score and log a warning.
  • The EventStatus enum has Pass, Fail, Complete, Incomplete, Browsed, NotAttempted options

Integration Checklist

The Integration Checklist lays out the essential requirements for developers to seamlessly integrate with ArborXR Insights. Covering LMS integration, basic reporting, and our core activities and sessions structure; it ensures your app meets the baseline for reliable data tracking and visualization based on our systems.

Choose your preferred format:

SDK Logic Flow Diagram

This flowchart visually maps out the step-by-step logic to implement our SDK successfully. It highlights assessment logic as core and shows how optional objectives and interactions can be added for richer data insights.

Recommended full data flow diagram

Click the diagram to open the full-size PDF.

Documentation for Objectives and Interactions here.

The Insights dashboards and charts will be key to improving your content and helping your customer measure training efficacy. See here for more recommendations on powering the assessments dashboard.

Assessment Tracking Examples

Unity (C#) - Click to collapse
// Add at the start your training (or training module)
Abxr.EventAssessmentStart("safety_training1");

// Add at the end your training (or training module)
Abxr.EventAssessmentComplete("safety_training1", 92, EventStatus.Pass);
// or
Abxr.EventAssessmentComplete("safety_training1", 28, EventStatus.Fail);
Unreal Engine (C++) - Click to expand
// Add at the start your training (or training module)
UAbxr::EventAssessmentStart(TEXT("safety_training1"));

// Add at the end your training (or training module)
UAbxr::EventAssessmentComplete(TEXT("safety_training1"), 92, EEventStatus::Pass);
// or
UAbxr::EventAssessmentComplete(TEXT("safety_training1"), 28, EEventStatus::Fail);
WebXR (JavaScript/TypeScript) - Click to expand
// Add at the start your training (or training module)
Abxr.EventAssessmentStart('safety_training1');

// Add at the end your training (or training module)
Abxr.EventAssessmentComplete('safety_training1', 92, Abxr.EventStatus.Pass);
// or
Abxr.EventAssessmentComplete('safety_training1', 28, Abxr.EventStatus.Fail);

When need to show specific example:

// To mark a specific objective start
Abxr.EventObjectiveStart("open_valve");

// When the objective is complete
Abxr.EventObjectiveComplete("open_valve", 100, EventStatus.Complete);
Learn More

See the Events documentation for Objectives, Interactions, and advanced tracking options.

FAQs & Recommendations

  • Security: The Org ID and Auth Secret should only be compiled into builds when creating custom applications for specific individual clients. For general distribution, use ArborXR-managed devices or implement runtime credential provisioning.
  • Environments: Configure different App IDs for development vs production

Next Steps

  • Events - Learn about Assessment, Objective, and Interaction events
  • SDK Libraries - Explore available SDKs for Unity, WebXR, and Unreal
  • LMS Integration - Connect to learning management systems
  • Best Practices - Tips for effective analytics implementation