Navigate

Quick Start

Overview of each Cephable integration path — embed a private on-device personal assistant in web and .NET apps, or add accessible adaptive controls to your game.

This guide helps you choose the right integration path and points you to the right sample code.

Step 1: Start a free trial

Sign up for a free 30-day developer trial at services.cephable.com/trial/developers — no credit card required. You will receive:

  • OAuth Client ID
  • OAuth Client Secret
  • Device Type ID

Then sign in to portal.cephable.com to manage your project. After your trial, contact Cephable to arrange a permanent license.

Step 2: Choose your integration path

Web / JavaScript (Browser)

Embed Cephable's personal assistant into your web app — users interact hands-free through voice and facial expressions, all processed on their own device. The complete working sample is at src/browser/:

git clone https://github.com/Cephable/Cephable-VirtualController-Sample
cd Cephable-VirtualController-Sample/src/browser
npm run start

Open http://localhost:3000, enter your Client ID, sign in, and commands will appear in the browser console.

Web Overview | Web Quick Start

C# / WPF (Windows apps)

Embed Cephable's personal assistant directly into your WPF app — private, on-device voice and gesture controls with no data sent to external services. Install the Cephable.WPF NuGet package and initialize the service:

dotnet add package Cephable.WPF
var wpfCephableService = WpfCephableService.CreateCephableService();

var config = new CephableConfiguration
{
    AuthConfiguration = new AuthConfiguration
    {
        ClientId = "YOUR_CLIENT_ID",
        ClientSecret = "YOUR_CLIENT_SECRET"
    },
    DeviceTypeId = "YOUR_DEVICE_TYPE_ID",
    DeviceName = "My App",
    EnableAutomaticProfileSwitching = true
};

await wpfCephableService.InitializeWithUserAsync(config, forceNewUser: false);

.NET Overview | .NET Quick Start

Unity (Accessible gaming with adaptive controls)

Add Cephable's personal assistant adaptive controls to your Unity game, making it accessible for players with motor or physical disabilities. Clone the Unity FPS sample and open it in Unity:

git clone https://github.com/Cephable/Cephable-Unity-Samples

Open FPS_Full/ in Unity 2022.3 LTS or later. Configure DeviceTypeId and OAuth credentials on the OAuth2Manager and VirtualController GameObjects, then press Play.

The key scripts are in Assets/FPS/Scripts/EnabledPlay/:

  • OAuth2Manager.cs — handles OAuth flow
  • VirtualController.cs — creates device, connects to hub, receives commands
// From VirtualController.cs (official sample)
connection.On<string>("DeviceCommand", (command) =>
{
    if (command == "jump" || command == "hotkey_jump" || command == "eyebrows_raised")
    {
        inputHandler.isJumping = true;
    }
    if (command == "fire")
    {
        inputHandler.isShooting = true;
    }
    StartCoroutine(ResetKeys());
});

Unity Integration

C++ (Accessible gaming with adaptive controls)

The C++ sample does end-to-end OAuth via a localhost callback and connects to the Device Hub using a WebSocket client, enabling adaptive controls for games built with C++. Dependencies: cpprest + signalr-client-cpp.

Virtual Controller Integration

Step 3: Test with the Cephable app

  1. Install the Cephable app from cephable.com/download — this is the on-device engine that processes all camera and voice input privately
  2. Your app creates a virtual device after the user authenticates
  3. Open the Cephable app — the virtual device will appear
  4. Add a control profile or use the demo share link
  5. Send a command from virtual buttons, voice, or camera controls — the Cephable app processes it on-device and your app will receive only the command string

Step 4: Explore the API

Use the Swagger UI to explore all available endpoints and test API calls interactively.

Next steps