Skip to main content

Component Architecture

3. Component Architecture

This section describes the responsibilities of each system component.

3.1 Client Application

The Client Application is responsible for user interaction and local playback.

Primary responsibilities:

  • Accepting user text input
  • Managing message lifecycle state (queued, sending, playing, completed, cancelled)
  • Initiating authenticated requests to the Cloud Service
  • Receiving streamed audio responses
  • Buffering and playing audio locally
  • Persisting device configuration and identity tokens

The Client Application does not enforce account policy or perform cloud-based speech synthesis.

3.2 Web Portal

The Web Portal provides user-facing account and identity management functionality.

Primary responsibilities:

  • Serving marketing and informational content
  • Providing Client Application download access
  • Facilitating user authentication via the External Identity Provider
  • Viewing account, subscription, and billing information
  • Initiating account, device, and plan management actions

The Web Portal does not perform speech synthesis or process payments directly.

3.3 Cloud Service

The Cloud Service handles authenticated requests and coordinates synthesis jobs.

Primary responsibilities:

  • Authenticating web and device-originated requests
  • Validating request structure and policy constraints
  • Enforcing rate limits and account-level usage controls
  • Creating and tracking synthesis jobs
  • Coordinating Cloud Execution Workers
  • Streaming audio responses to the Client Application

The Cloud Service does not perform speech synthesis directly.

3.4 Cloud Execution Workers

Cloud Execution Workers perform cloud-based speech synthesis.

Primary responsibilities:

  • Consuming validated job requests from the Cloud Service
  • Invoking External Speech Providers
  • Producing audio output for streaming
  • Handling job cancellation signals

Cloud Execution Workers do not accept direct public requests.