Skip to main content
Overview > Inworld Controller Class: InworldController | Inherits from: SingletonBehavior<InworldController> The singleton class of the controller. It’s the primitive handler that manages all framework modules and their initialization process. The InworldController coordinates the initialization of various modules including LLM, TTS, STT, VAD, Safety, AEC, Text Embedder, and Knowledge modules.

Properties

Methods

Events

Reference

IsDebugMode

Set/Get DebugMode. Controls verbose logging throughout the framework.

Returns

Type: bool
Below are all the modules we currently support. They are stored as static fields after initialization. They are required to be added manually in the scene, where the InworldController Component is attached. Manually Added Reference The modules referenced need to be created alongside the controller. It’s usually helpful to organize them in one Prefab and modify it based on your needs. Module Prefabs

LLM

Get the LLM Module.

Returns

Type: InworldLLMModule

TTS

Get the TTS Module.

Returns

Type: InworldTTSModule

STT

Get the STT Module.

Returns

Type: InworldSTTModule

AEC

Get the AEC Module.

Returns

Type: InworldAECModule

VAD

Get the VAD Module.

Returns

Type: InworldVADModule

TextEmbedder

Get the Text Embedder Module.

Returns

Type: TextEmbedderModule

Safety

Get the Safety Module. This module should be initialized after text embedder initialize.

Returns

Type: InworldSafetyModule

Knowledge

Get the Knowledge Module. This module should be initialized after text embedder initialize.

Returns

Type: KnowledgeModule

Audio

Gets the InworldAudioManager component responsible for audio input, processing, and output. Automatically finds and caches the audio manager in the scene if not already set. Handles microphone capture, voice detection, and audio streaming to the Inworld service.

Returns

Type: InworldAudioManager

InitializeAsync

Asynchronously initializes all framework modules and establishes connections to required services. Validates the API key, builds telemetry configuration, and sequentially initializes each module group. This method should be called before using any Inworld functionality.

Returns

Type: void

OnProcessInitialized

Event triggered when a loading process phase is completed during initialization.

Parameters

ParameterTypeDescription
processIndexintThe index of the completed process phase

OnFrameworkInitialized

Event triggered when all framework modules have been successfully initialized.

Parameters

None