blog.vyoralek.cz

Chytré doplňování pro Hass.io ve Visual Studio Code

Pokud používáte pro editaci konfigurace HomeAssistenta editor od Microsoftu Visual Studio Code pak se vám bude hodit jeden z poměrně nových pluginů pro tento editor.

Plugin je na světě teprve od 23. března tohoto roku a jak už to nazačátku bývá je pod poměrně rychlým vývojem a smělým plánem do budoucna. Pojďme se tedy podívat co nám plugin už nyní (aktuálně ve verzi 0.5) nabízí a s čím nám může při nastavování HomeAssistenta pomoct.

Co to umí?

1. doplňování ID entit a služeb

Prvním benefitem používají pluginů je napovídání názvu entit a služeb. Konfigurujeme-li tak například světla, pak už v sekci entities nemusíme ručně psát některy hodně dlouhé ID, ale pouze si vybereme se seznamu.

Totéž pak funguje i se záznamy typu služba – service.

Doplňování ID entit a služeb
Doplňování ID entit a služeb

2. doplňování a validace pro konfiguraci a Lovelace schéma

Kromě ID entit a služeb nám plugin pomůže i s názvy sekcí a atributů, tj. např. v sekci entities nám automaticky dává možnost zadat atribut entity ze seznamu.

Zároveň dochází i průběžně k validaci otevřeného konfiguračního souboru a pokud uděláme nějakou chybu pak nevalidní část se podtrhne.

Doplňování názvu sekcí a atributů
Doplňování názvu sekcí a atributů

3. rychlá navigace do odkazovaného souboru pomocí F12

Pokud používáte konfiguraci rozdělenou do více souborů – což dříve nebo později určitě doporučuji – pak se může hodit rychlý skok do těchto odkazovaných souborů pomocí F12.

Z programovacích jazyků je toto známé jako skok na definici metody, třídy atp.

Rychlá navigace mezi soubory
Rychlá navigace mezi soubory

A nyní se pojďme podívat jak si plugin nainstalovat a nastavit.

Instalace a konfigurace

1. Vygenerování dlouhodobého tokenu pro IDE

Jelikož plugin vyžaduje komunikaci s HomeAssistentem budeme potřeba nějaký způsob autorizovat tento plugin k přístupu do HA. To uděláme pomocí tzv. dlouhodobých tokenů – každý z nich je platný po dobu 10let.

Generování tokonů najdeme pod svým profilem v HA – klikneme na naše iniciály vlevo nahoře (nebo zadáme do adresy profile) a úplně poslední položka je věnována dlouhodobým tokenům.

Klikneme na Create token a zkopírujeme si vygenerovaný token do schránky.

Gnerování dlouhodobých tokenů v HomeAssistentovi
Gnerování dlouhodobých tokenů v HomeAssistentovi

2. Instalace rozšíření v MarketPlace

Přepneme se do Visual Studio Code a v levé liště klikneme na Extensions. Do vyhledávacího políčka pak dáme např. home a hned první položka už by měla být Home Assistent Config Help, což je plugin který hledáme.

Home Assistent Config Helper v MarketPlace Visual Studio Code
Home Assistent Config Helper v MarketPlace Visual Studio Code

3. Konfigurace rozšíření

Posledním krokem je pak konfigurace pluginu. Přes ozubené kolečko (vlevo dole) půjdeme do nastavení (Settings) a příslušenou sekci naklikáme pomocí Extensions -> Home Assistant Config Helper.

Položky k nastavení jsou pouze tři:

  • Host URL – zadáme adresu HomeAssistenta
  • Ignore Certifaces – je důležité pokud používáme https a nemáme certifikovaný certifikát
  • Long Lived Access Token – zde vložíme token se schránky, který jsme si předtím vygenerovali v našem uživatelském profilu HomeAssistenta.
Nastavení pluginu pro HomeAssistant
Nastavení pluginu pro HomeAssistant

Toď vše. Věřím, že vám to stejně jako mě ušetří nějaký ten čas a bude zajímavé sledovat kam se plugin bude posouvat.

3 comments

Tato stránka používá Akismet k omezení spamu. Podívejte se, jak vaše data z komentářů zpracováváme..

    • Mělo by se to bezprostředně pak připojit. Bohužel k tomu nevidím log. Nicméně pokud zadáte špatnou adresu, tak by to mělo vyhodit chybu. Pokud chyba není tak je vše ok. Pak už stačí otevřít nějaký yaml soubor a mělo by to fungovat.

      Kdyžtak můžete kouknout sem pro více detailů:
      https://marketplace.visualstudio.com/items?itemName=keesschollaart.vscode-home-assistant

      .. a dejte vědět jestli v článku něco chybělo. Díky 🙂

      • Nějak se mi ta potvora odhlašovala a musel jsem udělat druhý token (předchozí smazán), ale možná byla chyba někde v mém nechápání. Nicméně, mnohokrát díky. Váš způsob vysvětlování čehokoli nemá chybu.