mirror of
https://github.com/esphome/esphome.git
synced 2024-11-10 09:17:46 +01:00
Call on_error if no api client connected that handles voice (#4709)
This commit is contained in:
parent
3be3267d06
commit
7207b9734f
3 changed files with 9 additions and 4 deletions
|
@ -428,10 +428,12 @@ void APIServer::on_shutdown() {
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef USE_VOICE_ASSISTANT
|
#ifdef USE_VOICE_ASSISTANT
|
||||||
void APIServer::start_voice_assistant() {
|
bool APIServer::start_voice_assistant() {
|
||||||
|
bool result = false;
|
||||||
for (auto &c : this->clients_) {
|
for (auto &c : this->clients_) {
|
||||||
c->request_voice_assistant(true);
|
result |= c->request_voice_assistant(true);
|
||||||
}
|
}
|
||||||
|
return result;
|
||||||
}
|
}
|
||||||
void APIServer::stop_voice_assistant() {
|
void APIServer::stop_voice_assistant() {
|
||||||
for (auto &c : this->clients_) {
|
for (auto &c : this->clients_) {
|
||||||
|
|
|
@ -96,7 +96,7 @@ class APIServer : public Component, public Controller {
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef USE_VOICE_ASSISTANT
|
#ifdef USE_VOICE_ASSISTANT
|
||||||
void start_voice_assistant();
|
bool start_voice_assistant();
|
||||||
void stop_voice_assistant();
|
void stop_voice_assistant();
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
|
@ -63,7 +63,10 @@ void VoiceAssistant::start(struct sockaddr_storage *addr, uint16_t port) {
|
||||||
|
|
||||||
void VoiceAssistant::request_start() {
|
void VoiceAssistant::request_start() {
|
||||||
ESP_LOGD(TAG, "Requesting start...");
|
ESP_LOGD(TAG, "Requesting start...");
|
||||||
api::global_api_server->start_voice_assistant();
|
if (!api::global_api_server->start_voice_assistant()) {
|
||||||
|
ESP_LOGW(TAG, "Could not request start.");
|
||||||
|
this->error_trigger_->trigger("not-connected", "Could not request start.");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void VoiceAssistant::signal_stop() {
|
void VoiceAssistant::signal_stop() {
|
||||||
|
|
Loading…
Reference in a new issue