Navigation

    Forum

    • Register
    • Login
    • Search
    • Categories
    • Recent
    • Tags
    • Popular
    • intraHouse Site
    1. Home
    2. homa
    • Profile
    • Following
    • Followers
    • Topics
    • Posts
    • Best
    • Groups

    homa

    @homa

    https://vk.com/my_smart_home

    12
    Reputation
    382
    Posts
    21
    Profile views
    1
    Followers
    0
    Following
    Joined Last Online
    Website vk.com/my_smart_home

    homa Follow

    Best posts made by homa

    • Получение погодных данных с разных метеостанций

      Используем API wunderground. Сначала открываете карту: https://www.wunderground.com/wundermap?lat=37.769699&lon=-122.393303&zoom=10&type=terrain&tl.play=0&tl.spd=2&extremes=0&fault=0&femaflood=0&fire=0&firewfas=0&fissures=0&fronts=0&hurrevac=0&hur=0&lightning=0&livesurge=0&mm=0&ndfd=0&rad=1&rad.num=1&rad.spd=25&rad.opa=81&rad.type=00Q&rad.type2=&rad.smo=1&rad.stm=0&dir=1&dir.mode=driving&sst=0&sat=0&seismicrisk=0&svr=0&ski=0&snowfall=0&stormreports=0&tor=0&tfk=0&tsunami=0&riv=0&wxsn=1&wxsn.mode=temp&wxsn.opa=50&wxsn.bcdgtemp=0&wxsn.rf=1&cams=0&pix=0
      Выбираете ближайшие к себе погоднуе станции: https://www.wunderground.com/dashboard/pws/IFIRSANO5
      Там, нажимаем F12 выбираем ссылку на API по которому берутся данные и которые можно регулярным выражением разобрать:
      https://api.weather.com/v2/pws/observations/current?apiKey=6532d6454b8aa370768e63d6ba5a832e&stationId=IFIRSANO5&format=json&units=e
      Это проделываем для всех погодных станций.
      Далее в сниппете обращаемся ко всем погодным станциям в порядке возрастания приоритета. Таким образом, в устройство попадет информация с ближайшей доступной метеостанции.

      /**
      * New snippet
      */
      
      module.exports = callback => {
        const cookie = /pressure":(\d*.\d*)/gm;
      
      
        require('https').get('https://api.weather.com/v2/pws/observations/current?apiKey=6532d6454b8aa370768e63d6ba5a832e&stationId=IMOSCOW303&numericPrecision=decimal&format=json&units=m', res => {
          if (res.statusCode == 200) {
          let rawData = '';
          res.on('data', chunk => {
            rawData += chunk;
          });
          res.on('end', () => {
            const arr = cookie.exec(rawData);
            if (arr && arr.length>1) {
              callback(null, arr[1]);  // Данные получены, парсинг удачен 
              loc = 'z';
            }
          });
        }
        });
        
        require('https').get('https://api.weather.com/v2/pws/observations/current?apiKey=6532d6454b8aa370768e63d6ba5a832e&stationId=IMOSCOWO2&numericPrecision=decimal&format=json&units=m', res => {
          if (res.statusCode == 200) {
          let rawData = '';
          res.on('data', chunk => {
            rawData += chunk;
          });
          res.on('end', () => {
            const arr = cookie.exec(rawData);
            if (arr && arr.length>1) {
              callback(null, arr[1]);  // Данные получены, парсинг удачен 
              loc = 'i';
            }
          });
        }
        });
        
        require('https').get('https://api.weather.com/v2/pws/observations/current?apiKey=6532d6454b8aa370768e63d6ba5a832e&stationId=IFIRSANO5&format=json&units=m', res => {
          if (res.statusCode == 200) {
          let rawData = '';
          res.on('data', chunk => {
            rawData += chunk;
          });
          res.on('end', () => {
            const arr = cookie.exec(rawData);
            if (arr && arr.length>1) {
              callback(null, arr[1]);  // Данные получены, парсинг удачен 
              loc = 'd';
            }
          });
        }
        });
       
      };
      
      posted in Примеры сниппетов
      homa
      homa
    • RE: Вопросы по работе системы

      @cerber Без сценария не обойтись, но можно использовать блок-схемы. Например:
      c0953cc7-fa3a-4c1b-80b5-32bd81c110c3-image.png

      posted in intraHouse V4 Cherry
      homa
      homa
    • RE: Сценарии - новая версия API

      @Alex_Jet Физические переключатели всегда должны дублировать основной функционал. А если переделываешь что-то совсем аналоговое, то приходится привязываться к старым органам управления

      posted in Сценарии
      homa
      homa
    • RE: Плагин Telegram

      Случайно добавил в устройство, привязанное к плагину Telegramm единицу измерения "щ". Не знаю как удалить. Любое изменение заблокировано:
      af2d6f1b-a819-42ff-89d6-67b2be6a8547-image.png причем, если отвязать устройство от всех сценариев и плагинов ошибка сохраняется.
      Получилось отвязать только следующим алгоритмом:

      1. Убираем единицу измерения, сохраниться возможности нет
      2. Переключаемся на другую вкладку (экраны, виджиты и тд) поле единица измерения очистится
      3. Перезапускам IH, после этого единица измерения не отображается
      posted in Плагины
      homa
      homa
    • RE: Вопросы по работе системы

      @m_n61rus Тут лучше использовать состояния и отображать их https://ih-systems.com/ru/devices/ описание в разделе "состояния"

      posted in intraHouse V4 Cherry
      homa
      homa
    • RE: Скрипт для расчета времени восхода и захода солнца

      @Erik тогда так:
      de7756b2-01eb-4b9b-9008-520d194439f5-image.png
      https://ih-systems.com/ru/command_list/

      posted in Сценарии
      homa
      homa
    • RE: Вопросы по работе системы

      @m_n61rus Можно получить их кодом JS и присвоить датчикам через сниппет или сценарий. Если не ошибаюсь будет что-то вроде того:

      var date = new Date();
      day=date.getDate()
      month=date.getMonth()+1
      year=date.getFullYear()
      
      //
      При необходимости можно собрать все в один датчик:
      fulldate=day+'.'+month+'.'+year
      
      posted in intraHouse V4 Cherry
      homa
      homa
    • RE: Вопросы по работе системы

      @cerber В свойствах канала есть галка
      2296fd5b-b60f-4c73-b1f5-dc853dbc7487-image.png
      Если ее снять, то при отключенном плагине состояние на экране будет меняться. Конечно, не очень удобно когда устройств много

      posted in intraHouse V4 Cherry
      homa
      homa
    • RE: Вопросы по работе системы

      @cerber Просто выключить плагин не вариант, иначе будут проблемы при обрыве связи с устройством

      posted in intraHouse V4 Cherry
      homa
      homa

    Latest posts made by homa

    • Управление доступом

      Добрый день!
      Пытаюсь настроить доступ пользователям исходя из размещения устройств по зонам/уровням/подсистемам, но эти пользователи тем не менее могут управлять любыми устройствами. Подскажите как правильно разграничить доступ? Если сделать отдельный экран для приложения "киоск" это не отменит возможности войти с нативного клиента. Также хотелось бы ограничить доступ и к самим устройствам (скрыть параметры/журнал в интерфейсе)
      944eb42b-39be-4e7b-8d43-038f01254f97-image.png a01f326f-c0a4-4098-b5ed-f1acd36a6ced-image.png

      posted in intraHouse V4 Cherry
      homa
      homa
    • RE: Визуализация

      В идеале какой-то красивый интерфйс из коробки, как у home assistant, например, чтобы ожно было работать сразу, а не тратить много времени на рисование

      posted in intraHouse V5
      homa
      homa
    • RE: Сценарии пользователей

      @ra2fgomm после блока ACTION добавьте блок изменения значения устройства SENSORA_IR
      8a9ba311-cd0b-4d52-ad51-ebf6093de3a0-image.png
      У вас не происходит изменения, поэтому скрипт не отрабатывает второй раз

      posted in Сценарии
      homa
      homa
    • RE: Плагин MQTT

      @homa только так заработало:

           let tmp=STEMP10.value+'';
           this.pluginCommand({unit:"mqttclient1", command:'publish', data:{topic:'ESP8266_1/cmdmqtt/s1', message: tmp}});
      
      posted in Плагины
      homa
      homa
    • RE: Плагин MQTT

      Добрый день! Подскажите синтаксис как отправить в топик значение переменной. Делаю:

            this.pluginCommand({unit:"mqttclient1", command:'publish', data:{topic:'ESP8266_1/cmdmqtt/s1', message: this.b}});
      

      топик пустой, пишу:

            this.pluginCommand({unit:"mqttclient1", command:'publish', data:{topic:'ESP8266_1/cmdmqtt/s1', message: '555'}});
      

      В топик прилетает 555. Нужно передать по mqtt значение с датчика температуры.

      posted in Плагины
      homa
      homa
    • RE: Разработка intraHouse V5

      Главное, чтобы экспорт из 4 в 5 был....

      posted in intraHouse V5
      homa
      homa
    • RE: Сценарии пользователей

      @Erik Вы меня не поняли) чтобы выполнять мультисценарий циклически делаем виртуальное устройство, которое меняет состояние каждые 50сек:
      efdb998f-42e4-4dff-a706-2c5ce928f982-image.png
      Запускаем мультисценарий по изменению этого датчика:
      e0f5a39e-76dd-4635-9cef-e0ce1ce3f0c1-image.png
      чтобы все экземпляры сценария срабатывали каждые 50сек нужно добавить этот бинарный датчик ко всем экземплярам:
      62a6317a-01a2-4258-9359-4a3443640228-image.png
      И вот это неудобно каждый раз добавлять одинаковое устройство в "Запускать для устройств". Было бы удобно прописать в коде устройство напрямую, но это не поддерживается в мультисценариях

      posted in Сценарии
      homa
      homa
    • RE: Сценарии пользователей

      @Erik я добавил бинарный датчик и через плагин сенсорэмулятор задал период изменения. Суть таже - триггер) неудобно одинаковое устройство писать всем экземплярам мультисценария. Нужно групповое добавление устройств в мультисценарий)

      posted in Сценарии
      homa
      homa
    • RE: Сценарии пользователей

      @intrapro да, получилось. спасибо! И сразу другой вопрос: нельзя запускать мультисценарий из расписания? там можно выбрать только экземпляр с конкретным устройством...

      posted in Сценарии
      homa
      homa
    • RE: Сценарии пользователей

      @intrapro нашел проблему. изначально я в сценарии задал значение 4573457, потом крутил бегунки, потом поставил 0. На других устройствах все работает штатно, а вот те, на которых изначально было не то значение, не получается вернуть в строй.

      posted in Сценарии
      homa
      homa