Найти тему
MySmartHome

Сниппеты, получение значений по http для нужн умного дома

Ранее мы рассматривали плагин http-клиент (https://vk.com/@my_smart_home-plagin-http-klient), с помощью которого можно было получить или изменить некоторые значения путем http-запросов. На этом разработчики IntraHouse становились и добавили новый функционал - сниппет.

Сниппет позволяет без затрат памяти на плагин, простой функцией, получать необходимую информацию по http или из файлов операционной системы . Кроме того, важной особенностью является возможность обработать полученное значение перед тем как присвоить устройству, для этого в арсенале практически любые доступные средства Node.js.

Чтобы создать сниппет создаем подходящее устройство, и на вкладке «Дополнительно» устанавливаем галку «Для получения значения использовать сниппет». В периоде опроса указываем как часто нужно выполнять код.

Далее в расширенных свойствах устройства выбираем сниппет, после чего можем писать код на JS. Для вывода значения устройству используется функция "callback". При необходимости вывести другие переменные из сценария, функцию можно расширить, например, module.exports = (callback,location)

-2

Ниже рассмотрим код получения метеоданных с разных погодных станций:

-3

Таким образом при недоступности одной погодной станции, данные будут получены с других.

Использование сниппетов в проекте позволяют получить данные в нужном формате, без запуска отдельных сценариев на обработку, а также не запускать плагин, что увеличит общее быстродействие системы.

Оригинал статьи размещен здесь: https://vk.com/my_smart_home