Open MrSnakeSPb opened 4 months ago
Я разобрался, ура - заработало. Начал внимательно изучать и заметил: Экстра фразы не должны повторять объявленный интент. Убрал повторы и все сразу заработало.
Было бы неплохо добавить в Readme. Время ужинать: # (3) extra_phrases: # альтернативные фразы, максимум три
Срабатывает от Алиса, время кушать (или Алиса, время ужина, или Алиса, давай ужинать и т.п.), генерирует событие с text: Время ужинать, колонка ничего не скажет в ответ. Интент с экстра фразами не должен повторяться
Тут есть небольшая неточность, время кушать не объявлено. Я так понимаю, что теперь 4 фразы могут активировать интент или только 3 экстра фразы?
Но, конечно же, это на ваше усмотрение.
@MrSnakeSPb, у меня похожая проблема. Только не знаю с какой стороны эта проблема. К примеру есть такие фразы в configuration.yaml yandex_station_intents: intents: Включи свет: # (1) Выключи свет: # (2) ... У меня нет никаких экстра фраз, ни параметров, ничего. Просто список с фразами и порядковый номер.
В УДЯ, соответственно, есть два сценария: Сделай громкость---. Сделай громкость---..
Пока всё ок. Но когда я добавляю ещё фразы, то в УДЯ перепутываются сценарии и, например становится вот так: Сделай громкость---.:: Сделай громкость---.. Сделай громкость---.,. Сделай громкость---.
То есть часть сценариев остается без изменений, часть меняется. И на какие то фразы вызываются нужные сценарии, на другие фразы вызываются не те сценарии, а на некоторые вообще ничего не происходит. Может быть вы сталкивались с таким поведением и знаете как это можно пофиксить?
В какой-то момент активационные фразы пропали или начали путаться. На запрос "включит телевизор" срабатывает другой интент (видно, если в разработчике подписаться на событие) или совсем не срабатывает (Алиса отвечает как на обычную фразу).
Я не знаю куда копать. Переустанавливал, удалял вручную и службой (как в FAQ), сценарии в УДЯ исчезают, потом появляются (как и положено с минусами вначале), но не все. `Уровень: ОШИБКА Эта ошибка возникла в пользовательской интеграции. Регистратор: custom_components.yandex_station_intents Источник: custom_components/yandex_station_intents/init.py:262 интеграция: Yandex.Station Intents (документация, проблемы) Первое сообщение: 14:30:51 (24 сообщений) Последнее сообщение: 14:51:18
Ошибка создания или обновления сценария '--- Выключи телевизор' Ошибка создания или обновления сценария '--- Найди телефон Вероники' Ошибка создания или обновления сценария '--- Найди телефон Натальи' Ошибка создания или обновления сценария '--- Отбей домофон' Ошибка создания или обновления сценария '--- Открой домофон'`
В HA создано в configuration:
yandex_station_intents: intents: !include includes/Integration/YandexIntent.yaml
В файле YandexIntent.yaml
Найди телефон Андрея: extra_phrases:
Найди телефон say_phrase: Сейчас найду
Найди телефон Натальи: # не работает extra_phrases:
Найди телефон Натальи say_phrase: Мы там все уронили
Найди телефон Вероники: # не работает extra_phrases:
Найди телефон Вероники say_phrase: Все потерять тоже дар
Открой домофон: extra_phrases:
Сизам откройся say_phrase: Запустила звонящего
Отбей домофон: extra_phrases:
Пошел вон say_phrase: Пускай под дверью постоит
Включи телевизор: extra_phrases:
Включи телек say_phrase: Не стоит включать телевизор и мозг одновременно. Это несовместимые вещи.
Выключи телевизор: extra_phrases:
Выключи телек say_phrase: Пора глазкам отдохнуть.
Включи ресивер: extra_phrases:
Включи центр say_phrase: "{{ ['Договорились', 'Хорошо', 'Я тебя услышала', 'Оки-доки']|random }}"
Выключи ресивер: extra_phrases:
Лог журнала HomeAssistant:
2024-05-18 14:51:16.689 ERROR (MainThread) [custom_components.yandex_station_intents] Ошибка создания или обновления сценария '--- Включи телевизор' Traceback (most recent call last): File "/config/custom_components/yandex_station_intents/__init__.py", line 262, in _async_setup_intents await quasar.async_add_or_update_intent( File "/config/custom_components/yandex_station_intents/yandex_quasar.py", line 207, in async_add_or_update_intent assert resp["status"] == "ok", resp AssertionError: {'request_id': 'dfdc0c7b-e6fb-4807-b71b-f8e467887fd2', 'status': 'error', 'code': 'VOICE_TRIGGER_PHRASE_IS_ALREADY_TAKEN', 'message': 'Активационная фраза для сценария уже используется'} 2024-05-18 14:51:16.755 ERROR (MainThread) [custom_components.yandex_station_intents] Ошибка создания или обновления сценария '--- Выключи ресивер' Traceback (most recent call last): File "/config/custom_components/yandex_station_intents/__init__.py", line 262, in _async_setup_intents await quasar.async_add_or_update_intent( File "/config/custom_components/yandex_station_intents/yandex_quasar.py", line 207, in async_add_or_update_intent assert resp["status"] == "ok", resp AssertionError: {'request_id': '4f041fb5-463b-4018-9212-c6e7e8ebdebe', 'status': 'error', 'code': 'VOICE_TRIGGER_PHRASE_IS_ALREADY_TAKEN', 'message': 'Активационная фраза для сценария уже используется'}