Необольшое обновление и пример использования...
В качестве эксперимента решил попробовать поубавить скромности Алисе и дать ей возможность инициировать общение при определённых условиях. Для этих целей есть замечательная штука под названием "контексты", а так же команда для активации контекста из кода.
Но всё по порядку.
Во-первых, создаём шаблон поведения, который будет выступать в качестве контекста. Фактически, это вопрос Алисы о том, надо ли что-то сделать в данный момент:
Важные вещи на картинке:
1. ID (появляется после добавление) -- его будем использовать для принудительной активации
2. Код, который будет исполнен при активации контекста
3. Галочка, которая говорит о том, что это не просто шаблон, а контекст, т.е. может иметь дочерние шаблоны
4. Время, через которое контекст будет автоматически деактивирован, если не была принята никакая команда
5. Код, который выполнится в случае истечении времени (см. предыдущий пункт).
Далее, создаём три дочерних шаблона:
1. Да
2. Нет
3. (.+)
Соответственно, на каждый из этих шаблонов система реагирует по-разному. Последний шаблон я добавил просто для примера того, что можно вводить и использовать внутри контекста произвольную фразу.
И последний штрих -- инициировать переход системы состояние нужного контекста можно следующим кодом:
10 это ID нашего контекста. Код может быть вызван например по таймеру или датчику движения и Алиса может спросить, "а не хотите ли включить музыку?". Ну или по условному событию -- температура на улице понизилась и Алиса может предложить по-раньше начинать прогрев помещения. В общем, всё зависит от вашей фантазии, как обычно.
Для ответа можно использовать как чат, так и голос, но ещё вариант использовать небольшой пульт (от Noolite либо любой другой), повесив на одну кнопку ответ "Да", на вторую "Нет", чтобы быстро отвечать на какие-то предложения от Алисы.