Linki bezpośrednie - wykorzystanie do integracji z Apple Homekit

Post Reply
Kaowiec
Posts: 43
Joined: Wed Jul 26, 2017 8:15 am
Location: Czernichów

Mon Jan 21, 2019 1:37 pm

Post w nawiązaniu do tematu wykorzystania linków bezpośrednich
viewtopic.php?f=20&t=4158&start=10
Nie jest to pełna instrukcja. Taka powstanie dopiero po wydaniu oficjalnego update clouda w wersji 2.3 na raspberry pi.
Chcę tylko pokazać, że się da :)
pzygmunt wrote:
Fri Jan 18, 2019 8:49 pm
Generalnie i tak będziemy wprowadzać quotę w api. Instrukcje wrzuć. Dodaj tylko info, że istnieje możliwość , że wyłączymy linki jak przekroczą one limity danego serwera (taki miękki ban)
Sprawa dotyczy clouda w wersji 2.3 i najlepiej byłoby wszystko uruchamiać na własnej instancji, zwłaszcza, że każdy kto chce skorzystać z tego rozwiązania ma/musi mieć już postawiony homebridge na własnym raspberry.
W chwili obecnej jeszcze nie ma dostępnej wersji 2.3 na własne urządzenia. Rozwiązanie to możemy !!jedynie testowo!! linkować do publicznego clouda - jeśli przesadzimy z ilością zapytań o stan - dostaniemy bana :)

Do uruchomienia potrzebujemy działający homebridge (opis instalacji i linki na końcu posta), wtyczkę homebridge-http-switch i homebridge-http-temperature

Poniżej moje configi dla obydwu wtyczek:

Code: Select all

"accessories":[
        {
        "accessory": "HttpTemperature",
        "name": "Temperatura na ganku",
        "update_interval": 20500,
        "url": "https://svr5.supla.org/direct/112/COS_TAM_COSTAM/read",
        "http_method": "GET",
        "field_name": "temperature",
        "auth": {
            "user": "",
            "pass": ""
                }
        },
        {
        "accessory": "HttpTemperature",
        "name": "Temperatura w kuchni",
        "update_interval": 18500,
        "url": "https://svr5.supla.org/direct/112/COS_TAM_COSTAM/read",
        "http_method": "GET",
        "field_name": "temperature",
        "auth": {
            "user": "",
            "pass": ""
                }
         },
         {
        "accessory": "HttpTemperature",
        "name": "Temperatura Salon",
        "update_interval": 19000,
        "url": "https://svr5.supla.org/direct/112/COS_TAM_COSTAM/read",
        "http_method": "GET",
        "field_name": "temperature",
        "auth": {
            "user": "",
            "pass": ""
                }
         },
         {
        "accessory": "HttpTemperature",
        "name": "Temperatura wymiennika",
        "update_interval": 15500,
        "url": "https://svr5.supla.org/direct/.../read",
        "http_method": "GET",
        "field_name": "temperature",
        "auth": {
            "user": "",
            "pass": ""
                }
         },
         {
          "accessory": "HTTP-SWITCH",
          "name": "POMPA W OGRODZIE",
          "switchType": "stateful",
          "onUrl": {
          "url": "https://svr5.supla.org/direct/.../turn-on",
          "method": "GET"
                    },
          "offUrl": {
          "url": "https://svr5.supla.org/direct/.../turn-off",
          "method": "GET"
                    },
          "statusUrl": {
          "url": "https://svr5.supla.org/direct/.../read",
          "method": "GET"
                       },
          "statusPattern": "{\"on\":true}",
          "pullInterval": "3200"
          },   
          {
          "accessory": "HTTP-SWITCH",
          "name": "PRZELACZNIK NOZNY",
          "switchType": "stateful",
          "onUrl": {
          "url": "https://svr5.supla.org/direct/.../turn-on",
          "method": "GET"
                   },
          "offUrl": {
          "url": "https://svr5.supla.org/direct/.../turn-off",
          "method": "GET"
                    },
          "statusUrl": {
          "url": "https://svr5.supla.org/direct/.../read",
          "method": "GET"
                        },
          "statusPattern": "{\"on\":true}",
          "pullInterval": "2600"
          },
          {
          "accessory": "HTTP-SWITCH",
          "name": "PRZELACZNIK SCIENNY",
          "switchType": "stateful",
          "onUrl": {
          "url": "https://svr5.supla.org/direct/.../turn-on",
          "method": "GET"
                    },
          "offUrl": {
          "url": "https://svr5.supla.org/direct/.../turn-off",
          "method": "GET"
                    },
          "statusUrl": {
          "url": "https://svr5.supla.org/direct/.../read",
          "method": "GET"
                       },
          "statusPattern": "{\"on\":true}",
          "pullInterval": "3400"
          }
        ]
  

Zwróćcie uwagę na parametr "updateInterval" i "pullInterval" - jest to czas w ms, co jaki odpytujemy suplę o stan urządzenia/temperatury. Generalnie o temperaturę pytajmy... rzadko. O stan lamp/włączników staramy się też nie za często (dotyczy to odpytywania serwera publicznego, bo u siebie będziemy mieli luuuuzzz).
"statusPattern" wynika z rodzaju kanału w supla - przełączniki mają właśnie "on".

Linki:
- dobrze wiedzieć najpierw :) viewtopic.php?f=24&t=3809
- Homebridge - strona programu - https://github.com/nfarina/homebridge
- Homebrigge - instalacja na Raspberry Pi - https://github.com/nfarina/homebridge/ ... pberry-Pi
- plugin Homebridge-http-switch - https://github.com/Supereg/homebridge-h ... tch#readme
- plugin Homebridge-http-temperature - https://github.com/metbosch/homebridge- ... ure#readme

Wygląda na to, że po zainstalowaniu u siebie supli w wersji 2.3 integracja przełączników, lamp, i czujników itp. będzie bardzo łatwa.
Nadal problemem pozostanie łatwe sterowanie bramami, roletami, sciemnianiem, zmianą koloru itp ale i na to pewnie znajdzie się jakieś rozsądne rozwiązanie.
Post Reply