Навык iRidium для Google Home
голосовое управление оборудованием через Google Home и iRidium
документация обновлена 01.01.2024
Google Assistent - голосовой ассистент от Google, встроенный в колонку голосового управления Google Home, а также другие устройства типа:
- Google Home Mini;
- Google Home Max;
- Harman JBL Link 10;
- Harman JBL Link 20;
- Harman JBL Link 300;
- Harman JBL Link 500;
- и другие.
С помощью навыка "iRidium" Google Assistant может управлять умным домом через iRidium cloud и сервер iRidium. Вы можете произнести команду "Включи свет" и лампочка загорится. Произнесите "Выключи свет" и лампочка погаснет. Всё просто!

Поддерживаемые устройства:
- диммеры и выключатели;
- дверные замки;
- развлекательные устройства, например, smart-телевизоры;
- умные домашние камеры;
- термостаты и вентиляторы;
- микроволновки;
- и многое другое.
Работа в iRidium Pro
Добавление драйвера и устройств
- Создайте серверный проект;
- Добавьте драйвер Google Home Network в проект;

- Добавьте умные устройства;

- Переименуйте устройства, для удобного управления ими.
Переименовывать обратные связи устройств нельзя, так как они несут строго определенный смысл.
Описание устройств и обратных связей
Устройства Google Home - это не реальные устройства, а только лишь интерфейс между реальными устройствами и ассистентом. Вы должны реализовать функционал этих устройств в iRidium server или обеспечить связи с соответствующими физическими устройствами по тому или иному протоколу. iRidium предоставляет интерфейс с тремя типами устройств:
- Switch
- Dimmer
- HVAC
Однако это не ограничивает вас в возможностях работы с другими устройствами. Например, вы можете реализовать управление реле, используя бинарное устройство типа Switch.
Вам необязательно использовать все обратные связи устройств, используйте только те, которые вам нужны.
Switch
Примеры применения:
- выключатель;
- свет;
- реле.
| Power | Состояние вкл/откл | turnOn turnOff | "OK, Google, turn on device name" "OK, Google, turn off device name" |
Curtain
Примеры применения:
- шторы и жалюзи с электроприводом.
| Open Percent | Процент открытия | Open Close setPercentage | "OK, Google, open the device name", "OK, Google, close the device name", "OK, Google, open the device name to 10%" |
| Open Direction | Направление открытия | setDirection: LEFT, RIGHT, UP, DOWN, IN, OUT | "OK, Google, open the device name left", "OK, Google, open the device name right", "OK, Google, open the device name up", "OK, Google, open the device name down". |
Dimmer
Примеры применения:
- одноканальный диммер;
- электрический теплый пол.
| Power | Состояние вкл/откл | turnOn turnOff | "OK, Google, turn on device name" "OK, Google, turn off device name" |
| Level | Процент | setPercentage incrementPercentage decrementPercentage | "OK, Google, set device name to hundred percents" "OK, Google, increase device name by five percents" "OK, Google, decrease device name by two percents" |
HVAC
Примеры применения: * термостат; * кондиционер; * вентилятор; * электрический теплый пол.
| Power | Состояние вкл/откл | turnOn turnOff | "OK, Google, turn on device name" "OK, Google, turn off device name" |
| Level | Задание в процентах | setPercentage incrementPercentage decrementPercentage | "OK, Google, set device name to fifty percent" "OK, Google, increase device name by five percents" "OK, Google, decrease device name by two percents" |
| TargetTemperature | Заданная температура в градусах | setTargetTemperature incrementTargetTemperature decrementTargetTemperature getTargetTemperature | "OK, Google, set device name to thirty degrees" "OK, Google, increase device name by five degrees" "OK, Google, reduce device name by two degrees" "OK, Google, make it warmer in here" "OK, Google, make it cooler in here" "OK, Google, what is device name target temperature?" |
| SensorTemperature | Температура с датчика | getTemperatureReading getTargetTemperature | "OK, Google, what device name temperature?" |
| CoolTargetTemperature | rowspan="2"Верхняя уставка температуры | getTemperatureReading getTargetTemperature | "OK, Google, what temperature is my device name set to?" |
| HeatTargetTemperature | Нижняя уставка температуры | ||
| TemperatureMode | Режим работы | ThermostatMode | OK, Google, setdevice nameheating |
TemperatureMode может принимать следующие значения: *IR.SUB_DEVICE_STATE_CLIMATE_TEMP_MODE_AUTO; *IR.SUB_DEVICE_STATE_CLIMATE_TEMP_MODE_COOLING, *IR.SUB_DEVICE_STATE_CLIMATE_TEMP_MODE_DRY, *IR.SUB_DEVICE_STATE_CLIMATE_TEMP_MODE_FAN, *IR.SUB_DEVICE_STATE_CLIMATE_TEMP_MODE_HEATING, *IR.SUB_DEVICE_STATE_CLIMATE_TEMP_MODE_OFF.
Используйте эти константы, чтобы назначать режим работы термостата с помощью скрипта.
Создание скрипта
Скрипт обеспечивает прием голосовых команд от Ассистента и перенаправляет их на реальные устройства. В данном примере это устройства в сети Modbus TCP.
-
Перейдите в редактор скрипта, нажав кнопку JS .
-
Нажмите + , затем выберите New Script .
-
Добавьте следующий скрипт.
var Google = IR.GetDevice("Google Home Network");
var Modbus = IR.GetDevice("Modbus TCP");
IR.AddListener(IR.EVENT_START,0,function() {
Google.SetFeedback("Thermostat:TemperatureMode", IR.SUB_DEVICE_STATE_CLIMATE_TEMP_MODE_COOLING);
Google.SetFeedback("Thermostat:HeatTargetTemperature", 30);
Google.SetFeedback("Thermostat:CoolTargetTemperature", 28);
Google.SetFeedback("Thermostat:SensorTemperature", 24);
IR.AddListener(IR.EVENT_TAG_CHANGE, Google, function(name, value) {
switch (name) {
case "Switch:Power":
Modbus.Set("Light", value);
break;
case "Dimmer:Power":
Modbus.Set("Dimmer_ON", value);
break;
case "Dimmer:Level":
Modbus.Set("Dimmer_Brightness", value);
break;
}
IR.Log("GOOGLE! Device tag: " + name + " , value: " + value);
});
});
Загрузка проекта в iRidium Cloud и на сервер.
-
Авторизируйтесь на сайте iRidium.
-
Загрузите файл проекта .sirpz в облако iRidium cloud.

- Запустите iRidium server.
- Зайдите в веб-интерфейс сервера, набрав в адресной строке браузера:
:8888
(Если iRidium server запускается на том же компьютере, на котором он настраивается, то наберите:
127.0.0.1:8888)
- Наберите пароль доступа по умолчанию
2007. Нажмите кнопку "LOGIN".

- Найдите вкладку Cloud / Projects .

- Загрузите проект из облака на сервер, нажав кнопку "CLOUD SYNC" и затем "Download" напротив нужного проекта.

Ассистент работает только через iRidium cloud, поэтому он не сможет работать, если проект будет загружен на сервер через iRidium transfer.
Настройка Google Home
Регистрация умной колонки
Google Home настраивается с помощью приложения Google Home App на смартфонах или планшетах.
В любом случае потребуется наличие Wi-Fi на устройстве для прямого соединения с умной колонкой.
- Зарегистрируйтесь на сайте Google, если у вас ещё нет учётной записи.
- На мобильном устройстве скачайте и установите приложения Google Home App и Google Assistant App .
- Приложение автоматически просканирует сеть и определит доступное устройство.
Операционные системы, на которых Google Home App может работать:
- Android 6.0 и выше;
- iOS 10 и выше.
Убедитесь, что в Вашем регионе приложения Google Home App и Google Assistant App доступны для скачивания из Google Play и App Store.

Установка навыка
Навык устанавливается только в приложении Google Assistant App .
- Запустите приложение. В правом верхнем углу нажмите кнопку обзора.

- В правом верхнем углу нажмите кнопку меню.

- В нем выберите пункт “Настройки”.

- В настройках ассистента выберите параметр “Автоматизация дома”.

- В появившемся окне нажмите на кнопку добавления устройств.

- Выберите из списка “i3 Control”.

- Вы попадете на форму регистрации на сайте iRidium mobile. Введите данные своей учётной записи интегратора и нажмите Login .

- В выпадающем списке выберите объект, с которым будет работать Google Home. Нажмите Grant Access .

- Google Assistant успешно подключился к объекту iRidium. Теперь в Google Assistant появятся все устройства из проекта.

Их можно можно распределить по комнатам.


Устройства теперь также доступны в приложении Google Home и их можно использовать.


Если вы скорректируете проект, то не забудьте загрузить его в iRidium cloud, затем обновите его в iRidium server.
Тестирование проекта
Проект для сервера можно запустить на том же компьютере, на котором производится работа в iRidium studio. Но проект следует загружать только через iRidium cloud.
Произносите голосовые команды в колонку Google Home и ассистент передаст команды в iRidium server, и тот, в свою очередь, исполнит команды согласно скрипту.