• Vítejte na XBMC-Kodi.cz
  • Česko-slovenská komunita fanoušků XBMC/Kodi
Vítejte návštevníku! Přihlášení Registrace


Hodnocení tématu:
  • 1 Hlas(ů) - 4 Průměr
  • 1
  • 2
  • 3
  • 4
  • 5
Zobrazení stavových infomací Kodi a addon
#1
Úvod

Zobrazení stavových infomací Kodi a addon je téma, které se mnou celá řada uživatelů, kterým spravuji Kodi nebo jim poskytuji neformální podporu, často řeší. Já sám se jím zabývám už delší dobu, a tak mě čas od času někdo požádá, zda bych mu ve stavové liště jeho skinu nezobrazil nějakou (pro něj důležitu) informaci. Naposledy například informaci o tom, na kolik dní má ještě ve službě Webshare zaplacený VIP přístup. Ale vezmu to poněkud ze široka.

Celé toto téma se rozpadá na několik částí:
  1. Kde a jak se dá informace, kterou potřebujeme zobrazit, získat
  2. Kam získanou informaci, kterou potřebujeme zobrazit, uložit
  3. Jak získanou a uloženou informaci zobrazit
Kde a jak se dá informace, kterou potřebujeme zobrazit, získat

Toto je (či může být) z celé problematiky nejsložitější. V podstatě existují tři základní typy infomací a metod jejich získání.

Nejjednodušší je, pokud je zdrojem informací samo Kodi a ta informace je uložena přímo v proměnné, která je přístupná ve skinu. Seznam takových proměnných můžete nalézt v List of boolean conditions a InfoLabels. Samozřejmě, že v případě logických proměnných nezobrazujeme jejich hodnotu (True, False), to Kodi neumí, ale použijeme je k modifikaci nějakého jiného zobrazení (obsahu textu, barvy textu, zobrazení ikony, obrázku apod.) přímo v definičních souborech ve skinu, prostřednictvím "dopočtů" nebo kombinací obojího.

Druhou typickou možností je využité uložené hodnoty z nastavení nějakého addon. Pro získání této hodnoty je třeba  si "sáhnout" do souboru nastavení, settings.xml. V *ELEC systémech pro to dokonce existuje aplikace (oe_setup_addon), která si dokáže tento soubor načíst a pro všechny proměnné v něm vytvořit analogické proměnné v shell-u obsahující odpovídající hodnotu. Příklad použití této možnosti je vidět na níže uvedeném screenshot-u, kdy je použit právě pro získání informace o počtu dní, pro které je ve službě Webshare zaplacený VIP přístup (VIP: 80). Tím addon, do které settings.xml se sahá, je samozřejmě SCC.

Poslední způsob je pak ten, že pro příslušnou informaci použijme addon. A to jako nějaký explicitně vytvořený, tzn. určený pouze pro získání dané infomace, tak jakýkoliv, ve kterém existuje nějaká proměnná, jejíž honotu či stav chceme zobrazit (tuto metodu používá např. addon SC od @BBaron). Já používám řadu jednoduchých addon typu service, které mi sbírají a zpracovávají nějaké informace, které pak použiji pro zobrazení. Typicky např. měření rychlosti komunikace down/up-load-u na síťovém rozhraní, získání doplňujících datumových informací - kdo má v daný den jmeniny, zda je státní svátek, zda mají dnes a budou mít zítra zavřeno ve "velkých obchodech". Příklad obou těchto řešení (i těch uvedených výše) je vidět na následujícím screenshot-u.

   

Kam získanou informaci, kterou potřebujeme zobrazit, uložit

Tady máme v podstatě tři základní možnosti. První se týká výše uvedených zdrojů infomací, které poskytuje samo Kodi. Tam nic nemusíme nikam ukládat, prostě příslušné proměnné použijeme v definičních souborech rovnou. Jejich obsah aktualizuje Kodi. Druhou možností je použití proměnných skinu a třetí pak, použití tzv. properties. 

Proměnné skinu mají výhodu v tom, že jsou "nonvolatilní", jejich hodnoty se ukládají, tzn. po restartu Kodi jsou zachovány. To u properties neplatí, jejich obsah se při každém startu Kodi vymaže. Jak je používat najdete například v List of built-in functions.

Jak získanou a uloženou informaci zobrazit

To je už ona pověstná třešnička na dortu. Způsob zobrazení záleží (do jisté míry) na zdroji informací. Zatímco proměnné Kodi a skinu jsou v zásadě dvojího typu, řetězec a logická veličina, u properties je to vždy pouze řetězec. Skin engin Kodi ale nabízí celou řadu funkcí, metod a možností "dopočtů", které umožnují nadefinovat i poměrně složité funkce. Chce to jistou zkušenost, ale s podporou Skinning Manual nebo například Estuary Easy to jde celkem snadno.

Postupně tu budu přidávat jednoduché ukázky toho, jak uvedenou problematiku řeším já, a to hlavně v kombinaci se skinem Estuary. Případně se můžete přidat a svá řešení ukázat také.
 
Citovat
  


Příspěvků v tématu
Zobrazení stavových infomací Kodi a addon - od JiRo - 14.10.2022, 5:52

Přejít na fórum:


Prochází: 1 host(ů)