final StorageConfig storageConfig;
final MpdConfig mpdConfig;
final VoiceAgentConfig voiceAgentConfig;
+ final bool enableVoiceAssistant;
static String configFilePath = '/etc/xdg/AGL/ics-homescreen.yaml';
required this.radioConfig,
required this.storageConfig,
required this.mpdConfig,
- required this.voiceAgentConfig});
+ required this.voiceAgentConfig,
+ required this.enableVoiceAssistant});
static KuksaConfig parseKuksaConfig(YamlMap kuksaMap) {
try {
voiceAgentConfig = VoiceAgentConfig.defaultConfig();
}
+ bool enableVoiceAssistant = enableVoiceAssistantDefault;
+ if (yamlMap.containsKey('enable-voice-assistant')) {
+ var value = yamlMap['enable-voice-assistant'];
+ if (value is bool) {
+ enableVoiceAssistant = value;
+ }
+ }
+
bool disableBkgAnimation = disableBkgAnimationDefault;
if (yamlMap.containsKey('disable-bg-animation')) {
var value = yamlMap['disable-bg-animation'];
radioConfig: radioConfig,
storageConfig: storageConfig,
mpdConfig: mpdConfig,
- voiceAgentConfig: voiceAgentConfig);
+ voiceAgentConfig: voiceAgentConfig,
+ enableVoiceAssistant: enableVoiceAssistant);
} catch (_) {
return AppConfig(
disableBkgAnimation: false,
radioConfig: RadioConfig.defaultConfig(),
storageConfig: StorageConfig.defaultConfig(),
mpdConfig: MpdConfig.defaultConfig(),
- voiceAgentConfig: VoiceAgentConfig.defaultConfig());
+ voiceAgentConfig: VoiceAgentConfig.defaultConfig(),
+ enableVoiceAssistant: false);
}
});
VoiceAgentClient({required this.config,required this.ref}) {
// Initialize the client channel without connecting immediately
+ debugPrint("Connecting to Voice Assistant at ${config.hostname}:${config.port}");
String host = config.hostname;
int port = config.port;
_channel = ClientChannel(
credentials: ChannelCredentials.insecure(),
),
);
- debugPrint("Connecting to Voice Assistant");
_client = VoiceAgentServiceClient(_channel);
}