
Banca Națională Cehă (CNB) publică zilnic cursurile de schimb oficiale ale coroanei cehe (CZK) pentru 30 de valute străine. Acestea sunt cursurile oficiale de fixing, folosite ca referință în întregul sistem financiar ceh.
Șablonul TapHome preia toate cele 30 de cursuri de schimb din API-ul REST public al CNB (api.cnb.cz) prin HTTP Packet Parser. Fiecare valută este disponibilă ca senzor separat, numai pentru citire, care afișează cursul său curent în CZK. API-ul este complet public — nu sunt necesare autentificare, cheie API sau înregistrare. TapHome preia cursurile o dată pe oră; CNB publică noi cursuri o dată pe zi lucrătoare, în jurul orei 14:30.
Configurare
Șablonul se conectează la api.cnb.cz prin HTTPS (portul 443). Nu sunt necesare adresă IP, date de autentificare sau cheie API — endpointul este un API guvernamental complet public.
Nu există variabile configurabile de utilizator. Singura variabilă personalizată (responsejson) este un cache intern pentru răspunsul HTTP, folosit de scripturile șablonului — nu este necesar să o modificați.
Cum funcționează
Modulul trimite o singură cerere HTTP GET o dată pe oră (interval de interogare de 3 600 000 ms):
| |
Răspunsul este un obiect JSON care conține un tablou rates[] cu toate cele 30 de valute. Fiecare intrare include codul valutei, numele țării, cantitatea și cursul. Modulul stochează întregul răspuns JSON în variabila responsejson.
Fiecare senzor de valută își extrage apoi cursul din răspunsul stocat, cu PARSEJSON(responsejson, "$.rates[N].rate"), unde N este indexul fix din tablou pentru valuta respectivă. Intervalul de interogare al dispozitivelor este de 15 secunde, dar deoarece toate dispozitivele citesc din variabila responsejson stocată, între actualizările orare nu se fac apeluri API suplimentare.
Șablonul folosește
lang=CZîn cererea API. Acest lucru este esențial, deoarece tabloulrates[]este sortat alfabetic după numele țării în limba selectată. Trecerea lalang=ENar produce o altă ordine de sortare, iar indexurile fixe din tablou nu ar mai corespunde valutelor corecte.
Funcțiile dispozitivului
Șablonul oferă 30 de senzori numai pentru citire, câte unul pentru fiecare valută. Toate valorile sunt în CZK.
Valute principale
Cele mai urmărite cursuri sunt EUR (euro), USD (dolar american), GBP (liră sterlină), CHF (franc elvețian) și PLN (zlot polonez). Acestea sunt cotate pentru 1 unitate de valută străină — de exemplu, un curs USD de 21,315 înseamnă 1 USD = 21,315 CZK.
Valute cotate pentru mai multe unități
Nouă valute au cursul cotat pentru mai multe unități, din cauza valorii lor mici în CZK pe unitate:
| Valută | Cantitate | Semnificație |
|---|---|---|
| HUF (forint maghiar) | 100 | Curs pentru 100 HUF |
| INR (rupie indiană) | 100 | Curs pentru 100 INR |
| ISK (coroană islandeză) | 100 | Curs pentru 100 ISK |
| JPY (yen japonez) | 100 | Curs pentru 100 JPY |
| KRW (won sud-coreean) | 100 | Curs pentru 100 KRW |
| PHP (peso filipinez) | 100 | Curs pentru 100 PHP |
| THB (baht thailandez) | 100 | Curs pentru 100 THB |
| TRY (liră turcească) | 100 | Curs pentru 100 TRY |
| IDR (rupie indoneziană) | 1000 | Curs pentru 1000 IDR |
Șablonul citește valoarea brută rate din API fără să o împartă la amount. De exemplu, un curs JPY de 13,328 în TapHome înseamnă 100 JPY = 13,328 CZK, nu 1 JPY = 13,328 CZK.
Lista completă a valutelor
Toate cele 30 de valute: AUD, BRL, CAD, CHF, CNY, DKK, EUR, GBP, HKD, HUF, IDR, ILS, INR, ISK, JPY, KRW, MXN, MYR, NOK, NZD, PHP, PLN, RON, SEK, SGD, THB, TRY, USD, XDR (drepturi speciale de tragere ale FMI), ZAR.
Exemple de automatizare
Notificare la depășirea unui prag de curs
Folosiți un senzor de valută în condiția unui smart rule pentru a primi notificări când un curs depășește un prag:
- Condiție: valoarea EUR crește peste 25,00
- Acțiune: trimiterea unei notificări push
Comutare în funcție de curs
Declanșați acțiuni în funcție de evoluția cursului de schimb — de exemplu, schimbați starea unor indicatoare de pe afișaj sau controlați ieșiri când o valută urmărită ajunge într-un interval țintă.
Rezolvarea problemelor
Toate dispozitivele arată zero sau nu au date
- Verificați conexiunea la internet a TapHome Core — șablonul necesită acces HTTPS de ieșire la
api.cnb.cz - Verificați dacă API-ul răspunde — deschideți
https://api.cnb.cz/cnbapi/exrates/daily?date=2026-03-28&lang=CZîntr-un browser - Cursurile de schimb noi se publică în fiecare zi lucrătoare în jurul orei 14:30 CET. În weekend și în zilele de sărbătoare, API-ul returnează ultimele cursuri valabile
Valorile par incorecte pentru unele valute
Consultați tabelul de mai sus cu valutele cotate pentru mai multe unități. Valute precum JPY, HUF, KRW și IDR sunt cotate pentru 100 sau 1000 de unități, nu pentru 1 unitate. Aceasta este convenția standard a CNB, nu o eroare a șablonului.
Datele nu se mai actualizează
Șablonul interoghează API-ul o dată pe oră. Dacă cursurile par învechite, verificați dacă TapHome Core are acces la internet și dacă API-ul CNB este accesibil. API-ul nu are limite de cereri documentate, dar problemele de conectivitate prelungite împiedică actualizarea.