Вопросы по работе системы
-
Уважаемые разработчики, подскажите как можно сделать?
На сервере, где установлен IH, установлен также logitech media server с плагином Majordomo Connect. Этот плагин позволяет сообщить серверу об изменении состояния плеера. В настройках можно задать ip адрес и порт, для каждого состояния сообщение, например /object?script=lms&status=on и т.д. Почти как в МегаД. Попытка использовать слушающий порт плсгина МегаД не прошла. В отладчике IH тишина, а отладчик lms пишет неправильный адрес сервера. Как можно организовать слушающий порт?
-
@int144, может можно использовать мой плагин - https://github.com/intrahouseio/intraHouse.plugin-voiceterminal
Он может только слушать нужный порт и если в "Расширения" прописан какой-то конкретный URL, то запускать по нему сценарий.
-
@Alex_Jet , спасибо, попробую.
-
@Alex_Jet, хотел у Вас проконсультироться по использованию VoiceTerminal. На каком железе используете? Как делали голосовую активацию? Если snowboy, то можно ли создать модели без установки MDM?
-
@int144, пробовал 2 железа:
- Orange Pi Zero. Микрофон от PS3 все время отваливается, однако с хорошим аналоговым микрофоном вариант очень хороший. Еще бы оформить все в виде ФЗУ - сделать "материнскую плату, которая включает предусилитель для микрофона и сами микрофоны (массив микрофонов), круглую матрицу светодиодов на основе WS28xx, усилитель мощности и преобразователь для питания OPiZ
- Orange Pi PC. С микрофоном от PS3 работает месяцами! Но версию голосового помощника в корпусе датчика дыма уже не сделать...
MDM не нужен! Я попросил автора чтобыон запилил веб-интерфейс в виде плагина для mdmTerminal2. Хотя голосовые модели можно было сделать и из CLI. Я тут выкладывал информацию по mdmTerminal2 - читайте примерно отсюда все. Если нужно могу поделиться своим сценарием "обработки" входящих на сервер фраз. Но он уже гигантский, хотя комментарии есть!
-
@Alex_Jet, спасибо большое, буду изучать. Как раз эта информация мне и была нужна. Особенно про создание моделей. Весь форум мдм перечитал, а там все из интерфейса мажора делается. Еще раз спасибо
-
@int144, я по ссылке выкладывал инфу как все делать из консоли. Однако еще раз - есть веб-интерфейс в качестве плагина и оттуда можно сделать модели.
-
@Alex_Jet, спасибо. Да, я все увидел и почитал. Осталось до железа добраться и проверить. Сегодя вечером попробую.
-
Здравствуйте.
А как сделать бэкап системы и всех настроек?
Выбираю настройки -> Проекты -> выгрузить в файл и ничего не происходит. Версия 4.7.3
-
@regabriel Добрый день.
В результате должен создаться архив проекта, файл архива должен загрузиться в браузере.
Попробуйте повторить операцию и посмотрите лог: /opt/intrahouse-c/log/ih.log
Возможно, проблемы с доступом или не установлен zipВы можете вручную скопировать папки с проектами:
/var/lib/intrahouse-c/projects/ - внутри папки с проектами, каждый проект в своей папке.
/var/lib/intrahouse-c/plugins - все установленные плагиныСама система находится в /opt/intrahouse-c, но там нет никаких пользовательских настроек кроме файла config.json (если вы меняли порт
web-интерфейса или язык).
-
Коллеги, подскажите, а как в системе можно заблокировать датчик температуры/влажности? Предстоит перемонтировать часть датчиков и по ним будут возникать ошибки, либо могут значения усредняться ниже того что есть на самом деле...поэтому все отопление не хотелось бы выключать, а вот конкретный датчик заблокировать - чтобы по нему не было ни ошибки, ни управления актюаторами - было бы не плохо!
-
Пользователь @Alex_Jet написал в Вопросы по работе системы:
Коллеги, подскажите, а как в системе можно заблокировать датчик температуры/влажности? Предстоит перемонтировать часть датчиков и по ним будут возникать ошибки, либо могут значения усредняться ниже того что есть на самом деле...поэтому все отопление не хотелось бы выключать, а вот конкретный датчик заблокировать - чтобы по нему не было ни ошибки, ни управления актюаторами - было бы не плохо!
Для аналоговых датчиков блокировка к сожалению не предусмотрена.
Как вариант - отвязать датчик от канала на время перемонтирования
-
Здравствуйте. Не пойму ошибка или нет.
Создаю устройство - виртуальный датчик температуры, чтобы в нем выводить среднюю температуру с нескольких других датчиков. В настройках-> дополнительно ставлю метод определения состояния "вычисляется сценарием".Соответственно делаю мульти скриптик(так как таких средних будет несколько)
в котором прописываю:const temp_room = Device("SensorA","Средняя температура комнаты"); .... script({ start() { temp_room.setValue(15);
Так вот не работает x.setValue(15);
Для "ActorA" работает.
Это ошибка или так и должно быть?И второй вопрос: при создании устройства выбор - актуатор бинарный(т.е. 2 состояния)
При этом в мультисценарии ActorD — дискретный актуатор.Можно ли сделать более 2 состояний у актуатора и датчика и как? Где посмотреть примеры или описания?
-
Пользователь @regabriel написал в Вопросы по работе системы:
Здравствуйте. Не пойму ошибка или нет.
Создаю устройство - виртуальный датчик температуры, чтобы в нем выводить среднюю температуру с нескольких других датчиков.
Соответственно делаю мульти скриптик(так как таких средних будет несколько)
в котором прописываю:const temp_room = Device("SensorA","Средняя температура комнаты"); .... script({ start() { temp_room.setValue(15);
Так вот не работает x.setValue(15);
Для "ActorA" работает.
Это ошибка или так и должно быть?Добрый день. Да, все верно, датчику значение таким образом присвоить нельзя.
Идея в том, что x.setValue задействует канал на запись, по которому значение записывается на железо. Датчик сам значение записать не может, его value только для чтения.
Для реализации виртуального датчика есть команда this.assign( имя устр-ва, имя свойства, значение)this.assign(temp_room,"value",42);
В настройках-> дополнительно ставлю метод определения состояния "вычисляется сценарием".
Не совсем. У датчика есть value - значение и state - состояние, которое грубо говоря определяет картинку.
Этот пункт относится к state, Вы же сценарием хотите присвоить value.
Если нужно, чтобы средняя пересчитывалась динамически при изменении любого датчика, получится примерно так:const temp1 = Device("SensorA","Датчик 1"); const temp2 = Device("SensorA","Датчик 2"); const temp3 = Device("SensorA","Датчик 3"); const temp4 = Device("SensorA","Датчик 4"); const temp_room = Device("SensorA","Средняя температура комнаты"); startOnChange([ temp1, temp2, temp3, temp4 ]); script({ start() { const average = (temp1.value+temp2.value+temp3.value+temp4.value)/4; this.assign(temp_room,"value", average); } })
Сценарий будет запускаться при изменении любого исходного датчика и персчитывать значение виртуального.
И второй вопрос: при создании устройства выбор - актуатор бинарный(т.е. 2 состояния)
При этом в мультисценарии ActorD — дискретный актуатор.Дискретный актуатор - имеется в виду актуатор с конечным числом состояний.
По умолчанию создается бинарный. Но можно расширить число состоянийМожно ли сделать более 2 состояний у актуатора и датчика и как? Где посмотреть примеры или описания?
Да, можно. Раздел Состояния устройств на странице https://ih-systems.com/ru/devices/
По состояниям:
-
у дискретных датчиков и актуаторов обычно делают value=state,
метод определения состояния "Стандартный" -
у аналоговых можно использовать "Метод интервалов", то есть состояние расчитывается исходя из value, по нарастанию значения (более подробно см в док-и)
метод определения состояния "вычисляется сценарием" после перехода на v4 не используется
Также обратите внимание на 2 момента:
- Состояния должны нумероваться строго подряд, начиная с 0
- Если устройство уже стоит на мнемосхеме, после изменения числа состояний его нужно удалить и заново поставить. На мнемосхеме можно менять визуальное представление каждого состояния, причем каждое редактируется отдельно
-
-
Подскажите пожалуйста, у кого IH cherry установлена на raspberry pi, а в частности на флешку? Интересует вопрос по бесперебойности и времени эксплуатации.
-
При использовании БД - максимум 1 год. С другой флэшкой - 14 месяцев. Моя рекомендация - либо использовать правильную RPi от d.v.ermakov (см.форум ab-log), либо купить нормальный неттоп, в который поставить ssd m2.
-
@Alex_Jet Спасибо большое за быстрый ответ. Просто время подходит уже к 1 году использования и по этому что-то закрались мысли такие. Думал уже про неттоп и так же думал раз в год менять флешки, в независимости рабочая она или нет.
-
Замечена одна ошибка:
При удалении сценария начинается непонятное.
Во первых у какого-нибудь устройства он появляется в качестве исполняемого(см, "структура проекта"-> "устройства" выбираем устройство и там есть меню в каких сценариях оно участвует.).
Во вторых с этим устройством начинается магия(видимо действуют срабатывают какие-то непонятные сценарии).
При перезапуске компьютера проблема исчезла.
-
@artem521 У меня на апельсине,уже год и пару месяцев работает,плюс частые отключения света.Сделайте копию флешки,если накрылась,вставили и все
-
Пользователь @intrapro написал в Вопросы по работе системы:
файл архива должен загрузиться в браузере.
Все оказалось прозаичнее и проще. В firefox не выгружает, в chrome выгружает. У меня ubuntu 18.04. На винде не пробывал.