VoiceAgentConfig class
VoiceAgent — the canonical streaming voice AI loop.
- Available extensions
Constructors
- VoiceAgentConfig({String? llmModelId, String? sttModelId, String? ttsModelId, String? vadModelId, int? sampleRateHz, int? chunkMs, AudioSource? audioSource, bool? enableBargeIn, int? bargeInThresholdMs, String? systemPrompt, int? maxContextTokens, double? temperature, bool? emitPartials, bool? emitThoughts, String? audioFilePath, SolutionType? typeKind, String? ttsVoiceId})
-
factory
-
VoiceAgentConfig.fromBuffer(List<
int> data, [ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) -
factory
- VoiceAgentConfig.fromJson(String json, [ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY])
-
factory
Properties
- audioFilePath ↔ String
-
Absolute path to an audio file. Required when
audio_sourceisAUDIO_SOURCE_FILE; ignored for MICROPHONE / CALLBACK sources.getter/setter pair - audioSource ↔ AudioSource
-
getter/setter pair
- bargeInThresholdMs ↔ int
-
getter/setter pair
- chunkMs ↔ int
-
getter/setter pair
- emitPartials ↔ bool
-
Emit partial transcripts as UserSaidEvent{is_final=false}.
getter/setter pair
- emitThoughts ↔ bool
-
Emit thought tokens (qwen3, deepseek-r1) separately from answer tokens.
getter/setter pair
- enableBargeIn ↔ bool
-
Barge-in behavior.
getter/setter pair
- hashCode → int
-
Calculates a hash code based on the contents of the protobuf.
no setterinherited
- info_ → BuilderInfo
-
no setter
- isFrozen → bool
-
Returns
trueif this message is marked read-only. Otherwisefalse.no setterinherited - llmModelId ↔ String
-
Model identifiers — resolved against the model registry.
getter/setter pair
- maxContextTokens ↔ int
-
getter/setter pair
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- sampleRateHz ↔ int
-
Audio configuration.
getter/setter pair
- sttModelId ↔ String
-
getter/setter pair
- systemPrompt ↔ String
-
LLM behavior.
getter/setter pair
- temperature ↔ double
-
getter/setter pair
- ttsModelId ↔ String
-
getter/setter pair
- ttsVoiceId ↔ String
-
pass3-syn-025/030: explicit TTS voice id for multi-voice TTS engines
(Piper, eSpeak-NG, Sherpa-ONNX-TTS multi-voice). When unset, callers
fall back to using tts_model_id as the voice id — correct for
single-voice engines, wrong for multi-voice. Aligns the caller-facing
VoiceAgentConfig with the commons-facing RAVoiceAgentComposeConfig
(voice_agent_service.proto:214) which already exposes tts_voice_id.
getter/setter pair
- typeKind ↔ SolutionType
-
Optional explicit solution-kind tag. Redundant with the
SolutionConfigoneof arm; provided so callers that pass this message standalone (or log it) can read a single discriminator. Defaults to UNSPECIFIED.getter/setter pair - unknownFields → UnknownFieldSet
-
no setterinherited
- vadModelId ↔ String
-
getter/setter pair
Methods
-
addExtension(
Extension extension, Object? value) → void -
Adds an extension field value to a repeated field.
inherited
-
check(
) → void -
Throws a StateError if the message has required fields without a value.
inherited
-
clear(
) → void -
Clears all data that was set in this message.
inherited
-
clearAudioFilePath(
) → void -
clearAudioSource(
) → void -
clearBargeInThresholdMs(
) → void -
clearChunkMs(
) → void -
clearEmitPartials(
) → void -
clearEmitThoughts(
) → void -
clearEnableBargeIn(
) → void -
clearExtension(
Extension extension) → void -
Clears an extension field and also removes the extension.
inherited
-
clearField(
int tagNumber) → void -
Clears the contents of a given field.
inherited
-
clearLlmModelId(
) → void -
clearMaxContextTokens(
) → void -
clearSampleRateHz(
) → void -
clearSttModelId(
) → void -
clearSystemPrompt(
) → void -
clearTemperature(
) → void -
clearTtsModelId(
) → void -
clearTtsVoiceId(
) → void -
clearTypeKind(
) → void -
clearVadModelId(
) → void -
clone(
) → VoiceAgentConfig - Creates a deep copy of the fields in this message.
-
copyWith(
void updates(VoiceAgentConfig)) → VoiceAgentConfig -
Apply
updatesto a copy of this message. -
createEmptyInstance(
) → VoiceAgentConfig - Creates an empty instance of the same message type as this.
-
deepCopy(
) → T -
Available on T, provided by the GeneratedMessageGenericExtensions extension
Returns a writable deep copy of this message. -
extensionsAreInitialized(
) → bool -
inherited
-
freeze(
) → GeneratedMessage -
Make this message read-only.
inherited
-
getDefaultForField(
int tagNumber) → dynamic -
Returns the default value for the given field.
inherited
-
getExtension(
Extension extension) → dynamic -
Returns the value of
extension.inherited -
getField(
int tagNumber) → dynamic -
Returns the value of the field associated with
tagNumber, or the default value if it is not set.inherited -
getFieldOrNull(
int tagNumber) → dynamic -
Returns the value of a field, ignoring any defaults.
inherited
-
getTagNumber(
String fieldName) → int? -
inherited
-
hasAudioFilePath(
) → bool -
hasAudioSource(
) → bool -
hasBargeInThresholdMs(
) → bool -
hasChunkMs(
) → bool -
hasEmitPartials(
) → bool -
hasEmitThoughts(
) → bool -
hasEnableBargeIn(
) → bool -
hasExtension(
Extension extension) → bool -
Returns
trueif a value ofextensionis present.inherited -
hasField(
int tagNumber) → bool -
Whether this message has a field associated with
tagNumber.inherited -
hasLlmModelId(
) → bool -
hasMaxContextTokens(
) → bool -
hasRequiredFields(
) → bool -
Whether the message has required fields.
inherited
-
hasSampleRateHz(
) → bool -
hasSttModelId(
) → bool -
hasSystemPrompt(
) → bool -
hasTemperature(
) → bool -
hasTtsModelId(
) → bool -
hasTtsVoiceId(
) → bool -
hasTypeKind(
) → bool -
hasVadModelId(
) → bool -
isInitialized(
) → bool -
Whether all required fields in the message and embedded messages are set.
inherited
-
mergeFromBuffer(
List< int> input, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) → void -
Merges serialized protocol buffer data into this message.
inherited
-
mergeFromCodedBufferReader(
CodedBufferReader input, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) → void -
Same as
mergeFromBuffer, but takes aCodedBufferReaderinput.inherited -
mergeFromJson(
String data, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) → void -
Merges field values from
data, a JSON object, encoded as described byGeneratedMessage.writeToJson.inherited -
mergeFromJsonMap(
Map< String, dynamic> json, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) → void -
Merges field values from a JSON object represented as a Dart map.
inherited
-
mergeFromMessage(
GeneratedMessage other) → void -
Merges the contents of the
otherinto this message.inherited -
mergeFromProto3Json(
Object? json, {TypeRegistry typeRegistry = const TypeRegistry.empty(), bool ignoreUnknownFields = false, bool supportNamesWithUnderscores = true, bool permissiveEnums = false}) → void -
Merges field values from
json, a JSON object using proto3 encoding.inherited -
mergeUnknownFields(
UnknownFieldSet unknownFieldSet) → void -
inherited
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
rebuild(
void updates(T)) → T -
Available on T, provided by the GeneratedMessageGenericExtensions extension
Applyupdatesto a copy of this message. -
setExtension(
Extension extension, Object value) → void -
Sets the value of a non-repeated extension field to
value.inherited -
setField(
int tagNumber, Object value) → void -
Sets the value of a field by its
tagNumber.inherited -
toBuilder(
) → GeneratedMessage -
Creates a writable, shallow copy of this message.
inherited
-
toDebugString(
) → String -
Returns a String representation of this message.
inherited
-
toProto3Json(
{TypeRegistry typeRegistry = const TypeRegistry.empty()}) → Object? -
Returns an Object representing Proto3 JSON serialization of
this.inherited -
toString(
) → String -
Returns a String representation of this message.
inherited
-
writeToBuffer(
) → Uint8List -
Serialize the message as the protobuf binary format.
inherited
-
writeToCodedBufferWriter(
CodedBufferWriter output) → void -
Same as
writeToBuffer, but serializes to the givenCodedBufferWriter.inherited -
writeToJson(
) → String -
Returns a JSON string that encodes this message.
inherited
-
writeToJsonMap(
) → Map< String, dynamic> -
Returns the JSON encoding of this message as a Dart Map.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited