it:iot:hodinky-garmin-api-call

Rozdíly

Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.

Odkaz na výstup diff

Obě strany předchozí revize Předchozí verze
it:iot:hodinky-garmin-api-call [2023/01/08 18:58] Petr Nosekit:iot:hodinky-garmin-api-call [2023/01/08 19:13] (aktuální) Petr Nosek
Řádek 22: Řádek 22:
         <domain includeSubdomains="true">127.0.0.1</domain>         <domain includeSubdomains="true">127.0.0.1</domain>
         <domain includeSubdomains="true">localhost</domain>         <domain includeSubdomains="true">localhost</domain>
-    </domain-config>+</domain-config>
 </code> </code>
 +
 +
 +Přičemž to vypadá, že doména **garmin.cn** není funkční, tak jsem se ji rozhodl využít. A i kdyby byla funkční, tak ji stejně nepotřebuji :) Opravdu jednoduché řešení se skrývá v instalaci vlastního DNS serveru v lokální síti, který zařídí přesměrování domény **garmin.cn** na počítač v lokální síti s Node RED. 
 +
 +Jako DNS server jsem dle doporučení a jednoduchosti využil Pi-hole. Nainstaloval jsem skrze [[it:server:docker|]]. Po instalaci jsem přešel do menu **Local DNS -> DNS Records** a natavil jsem, že se doména garmin.cn má přesměrovávat na adresu v interní síti. 
 +
 +Pak jsem ještě musel nastavit, aby si telefon bral nastavení DNS právě z Pi-hole - stačí nastavit DNS server v telefonu. Jakmile si Pi-hole trochu otestuji, tak nejlépe nastavím na routeru DHCP, aby jako primární DNS přiděloval právě ip adresu serveru s Pi-hole. Pi-hole se používá mimo jiné k blokaci DNS serverů s reklamou, takže když někdo serfuje s tímto příděleným DNS, tak se mu zobrazuje mnohem méně reklam.
 +
 +V některých situacích to může být problém, zejména když na počítači reklamy potřebujete vytvářet. 
 +
 +===== Volání API skrze HTTPS v lokální síti =====
 +
 +Zatím se zdá, že HTTPS na lokální síti není možné rozjet. I když jsem si vytvořil [[it:iot:self-signed-certificate|]] a nainstaloval certifikační autoritu do telefonu, stejně volání API nefungovalo. Neustálá chyba 300 - connection timeout. Když jsem přepnul na HTTP, tak stejný server fungoval. Takže problém byl skutečně pouze v HTTPS. 
 +
 +Přitom tím, že jsem měl certifikační autoritu v telefonu jako důvěryhodnou, tak při prohlížení API skrze webový prohlížeč telefon žádnou chybu zabezpečení nehlásil. Doufal jsem, že se to přenese i do Garminu. Nicméně bohužel nespoléhá na telefon a bude dělat kontrolu jinde. HTTPS varianta v lokální síti se tedy nepodaří.
  • it/iot/hodinky-garmin-api-call.1673204290.txt.gz
  • Poslední úprava: 2023/01/08 18:58
  • autor: Petr Nosek