TapHome
Komunita Beta Energie a měření

SolaX X1/X3-HAC EV Charger (Cloud API)

Integrace nabíječky elektromobilů SolaX HAC přes API SolaX Developer Portalu (OAuth2 přes HTTPS). Čte nabíjecí výkon, energii, fázové proudy a stav nabíječky; přepíná režim STOP/FAST/ECO/GREEN, spouští a zastavuje nabíjení a nastavuje limit proudu.

Packet Parser → HTTP6 zařízeníRevize 1.4 Poslední aktualizace: 12. listopadu 2026

Přidal Adam Tížik

SolaX X1/X3-HAC EV Charger (Cloud API)

Import do aplikace TapHomeHardware › Packet Parser › Přidat ze šablony

Stáhnout šablonu
Na této stránce

Návod na integraci

Šablona SolaX HAC Cloud API propojí TapHome s nabíječkou elektromobilů SolaX X1-HAC nebo X3-HAC přes API SolaX Developer Portalu (OpenAPI). Autor šablony uvádí také nabíječky A1-HAC a C1/C3-HAC. TapHome s nabíječkou nekomunikuje přímo: nabíječka se hlásí do SolaXCloud přes Wi-Fi, LAN nebo 4G a TapHome čte její data ze SolaX cloudu přes HTTPS každých 60 sekund. Zapisovací příkazy (pracovní režim, spuštění a zastavení, zamknutí, limit proudu) jdou zpět do nabíječky stejnou cestou přes cloud.

Před importem šablony musí být splněny dvě věci. Nabíječka musí být online v účtu SolaXCloud a tento účet potřebuje v SolaX Developer Portalu aplikaci, která poskytne Client ID a Client Secret. Pokud nabíječka pracuje společně se střídačem SolaX, může ve stejném projektu TapHome běžet i šablona SolaX Inverter (Cloud API). Ta používá starší monitorovací API SolaxCloud s vlastním tokenem.

Připojení nabíječky k SolaXCloud

Síťové připojení

Nabíječka se může připojit k internetu třemi způsoby. Všechny používají DHCP, takže IP adresu přidělí router automaticky.

  • Wi-Fi: pouze 2,4 GHz (802.11 b/g/n). Sítě 5 GHz nejsou podporovány.
  • Ethernet (LAN): port RJ45 LAN (/ DI). Ethernet používá piny 1, 2, 3 a 6 (TX+, TX−, RX+, RX−). Pokud je potřeba jen Ethernet, ostatní piny nechte nezapojené. Při připojení přes LAN lze nastavení Wi-Fi přeskočit.
  • 4G: pouze pro modely se „4G“ v názvu (například X3-HAC-22P-B4G). Nano SIM kartu s podporou Cat-M, NB-IoT nebo GSM musí vložit oprávněný odborník. SolaX doporučuje alespoň 100 MB dat měsíčně ve scénářích Solar a Standard.
Zapojení pinů komunikačních portů nabíječky elektromobilů LAN/DI, COM2-M a COM1-S s barvami vodičů RJ45

Ethernetový kabel k nabíječce musí být chráněn před úderem blesku. Pokud je potřeba LAN i signálový vstup DI, nakrimpujte piny 1, 2, 3 a 6 pro Ethernet a piny 4, 5 a 8 pro DI a oba kabely pak spojte spojkou RJ45, která je součástí balení nabíječky.

Připojení 4G se nastavuje v aplikaci SolaXCloud v lokálním režimu: otevřete Dongle, poté tlačítko nastavení, nastavte Device Networking Mode na 4G, zadejte APN operátora a zvolte typ sítě, který SIM karta podporuje.

Přidání nabíječky v aplikaci SolaXCloud

  1. Nainstalujte aplikaci SolaXCloud z App Store nebo Google Play a zaregistrujte účet pomocí e-mailové adresy nebo telefonního čísla a ověřovacího kódu.
  2. Při prvním přihlášení vytvořte elektrárnu (plant): povolte přístup k poloze, zadejte název elektrárny a dokončete ostatní nastavení.
  3. Přidejte nabíječku naskenováním nebo zadáním Registration No. z jejího typového štítku. Později přidávané nabíječky se přidávají přes stránku Device, ikonu + a poté Add Device nebo Scan.
  4. Pokud se nabíječka připojuje přes Wi-Fi, zadejte název a heslo sítě Wi-Fi.
Aplikace SolaXCloud: přidání nabíječky elektromobilů podle Registration No. z typového štítku

Na typovém štítku jsou dvě různá čísla. Registration No. slouží k přidání nabíječky v aplikaci a k lokálnímu přihlášení. SN (sériové číslo zařízení) je to, co šablona TapHome potřebuje jako DeviceSN. Aplikace zobrazuje SN zařízení na stránce nabíječky Basic information (klepněte na horní část stránky Details nabíječky). Najdete ho také v Developer Portalu v části Device > Device List.

Opětovné připojení Wi-Fi a lokální přístup

Pokud je nabíječka offline, otevřete v aplikaci stránku Device, klepněte na kartu nabíječky označenou jako offline a zvolte Reconfigure. Poté znovu zadejte síť 2,4 GHz a heslo.

Aplikace SolaXCloud: nové nastavení Wi-Fi nabíječky elektromobilů a přihlášení v lokálním režimu podle Registration No.

Pokud nové nastavení selže, existuje druhý způsob. Připojte telefon nebo notebook k vlastní síti Wi-Fi nabíječky, která je pojmenována podle jejího Registration No. (Wifi_XC…). Poté v prohlížeči otevřete http://192.168.10.10/ a přihlaste se jako admin s Registration No. jako heslem. Lokální režim v aplikaci (More > Local Access, nebo Service > Application > Local Access po přihlášení) používá stejnou síť.

Nabíječka svou lokální síť Wi-Fi automaticky vypne hodinu po úspěšném připojení k síti. Chcete-li lokální přístup použít později, síť znovu zapněte v aplikaci v části Network > Local Access.

Scénář použití a režimy nabíjení

Nabíječka pracuje v jednom ze tří scénářů použití, který se volí v aplikaci v části Advanced setting > Application scene:

  • Solar (výchozí): k dispozici jsou režimy nabíjení Green, Eco a Fast. Green a Eco vyžadují, aby nabíječka komunikovala se střídačem nebo s proudovým transformátorem (CT) či elektroměrem na přípojce sítě, aby znala přebytek FV výroby.
  • Standard: nabíječka pouze spouští a zastavuje nabíjení. Green a Eco v tomto scénáři neexistují.
  • OCPP: nabíječka je řízena přes OCPP server a aplikace SolaXCloud volbu režimu skryje.
Scénář Solar: nabíječka elektromobilů SolaX komunikuje se střídačem, router Wi-Fi/LAN do cloudu, proudový transformátor (CT) nebo elektroměr, proudový chránič s nadproudovou ochranou (RCBO) a rozvaděč AC

Střídač se připojuje na port COM1-S- (A1/B1). Elektroměr nebo proudový transformátor (CT) se připojuje na port COM2-M- (A2/B2, vstupy CT na ostatních pinech). Úroveň nabíjecího proudu pro režim Green (3 A nebo 6 A) a pro režim Eco (6, 10, 16, 20 nebo 25 A) se nastavuje v aplikaci v části Details > Function Control > Charge Level. U modelů 11 kW nabízí Eco pouze 6 A a 10 A. Nabíjení v režimech Green a Eco navíc vyžaduje vozidlo, které splňuje normu IEC 61851.

Nastavení přístupu k API v SolaX Developer Portalu

  1. Přihlaste se do SolaX Developer Portalu a otevřete Quick Start nebo Application.
  2. Vytvořte aplikaci pro elektrárnu SolaXCloud, která obsahuje nabíječku. Aplikace musí mít alespoň jednu autorizovanou elektrárnu.
  3. Na kartě aplikace Authorization zkopírujte Client ID a Client Secret.
  4. V části Service API > Authorize zapněte monitorovací služby Data Monitoring Service (API_Telemetry_V2) a Information Access Service (API_Info_V2). Zapněte také službu ovládání nabíječky elektromobilů, kterou potřebuje přepínač pracovního režimu a servisní akce. Samotné monitorování funguje i bez ní.
  5. Sériové číslo nabíječky najdete v části Device > Device List. Je to stejné SN jako v aplikaci SolaXCloud.

Šablona je nastavena na evropský API host openapi-eu.solaxcloud.com. SolaX provozuje samostatné hosty pro Čínu (openapi-cn.solaxcloud.com) a Indii (openapi-in.solaxcloud.com). Region účtu je uveden v Developer Portalu. S aplikací v jiném regionu šablona v importované podobě nefunguje.

Parametry importu

V TapHome importujte šablonu a vyplňte tři parametry uvedené níže. Vše ostatní (token, dotazování, opakované pokusy) řeší modul.

ParametrPopisKde ho najít
ClientIdClient ID aplikace v Developer PortaluApplication > Authorization
ClientSecretClient Secret stejné aplikaceApplication > Authorization
DeviceSNSériové číslo nabíječky (ne Registration No.)Developer Portal Device > Device List nebo Basic information v aplikaci SolaXCloud

Jednu dvojici Client ID a Client Secret používejte pouze pro jednoho klienta. Každá aplikace má jen jeden platný přístupový token, takže nová žádost o token zruší předchozí. Druhá instance šablony TapHome nebo jiný nástroj, který se dotazuje se stejnými přístupovými údaji, bude token této šablony neustále rušit. Pro druhou nabíječku nebo pro jiný systém vytvořte v Developer Portalu samostatnou aplikaci.

Možnosti zařízení

Názvy zařízení v šabloně jsou ve slovenštině. Každé je níže uvedeno s názvem v aplikaci v závorce.

Nabíjecí výkon a energie

Nabíjecí výkon (Nabíjací výkon) je elektroměr. Zobrazuje aktuální nabíjecí výkon v kW a celkovou nabitou energii v kWh. Jeho servisní atributy zobrazují energii aktuální relace (Energia aktuálnej relácie [kWh]), fázové proudy L1, L2 a L3 (Prúd L1 [A], Prúd L2 [A], Prúd L3 [A]) a jednofázový proud (Jednofázový prúd [A]).

Stav nabíjení a stavový kód

  • Probíhá nabíjení (Nabíjanie prebieha) je kontakt. Je zapnutý (Nabíja) pouze tehdy, když nabíječka hlásí stav Charging. Při každém jiném stavu je vypnutý (Nenabíja), včetně Suspended EV a Suspended EVSE.
  • Stav nabíječky (Stav nabíjačky) je surový stavový kód nabíječky:
KódStavKódStav
0Available7Suspended EV
1Preparing8Suspended EVSE
2Charging9Update
3Finishing10Card Activation
4Faulted11Start Delay
5Unavailable12Charge Pause
6Reserved13Stopping

Pracovní režim

Pracovní režim (Pracovný režim) je vícehodnotový přepínač se čtyřmi hodnotami: STOP, FAST, ECO a GREEN. Čte aktuální režim nabíječky a z TapHome nastavuje nový. ECO a GREEN se chovají tak, jak je popsáno u scénáře Solar výše, a závisí na komunikaci nabíječky se střídačem nebo elektroměrem.

Servisní akce

Zařízení stavu nabíječky má čtyři servisní akce:

  • Spustit nabíjení (Spustiť nabíjanie) a Zastavit nabíjení (Zastaviť nabíjanie).
  • Zamknout / zpřístupnit (Zamknúť / sprístupniť nabíjačku) s hodnotami Zamknout (Zamknúť) a Zpřístupnit (Sprístupniť).
  • Nastavit limit proudu (Nastaviť limit prúdu): 6–32 A u modelů 7 kW a 22 kW, 6–16 A u modelu 11 kW.

Příkazy jsou asynchronní. Odpověď „OK, príkaz odoslaný“ znamená, že SolaX cloud příkaz přijal, ne že ho nabíječka už provedla. Výsledek se projeví v hodnotách následujících cyklů.

Historie karet a relací v grafech

  • RFID karta (RFID karta) zobrazuje číslo karty, která relaci spustila, nebo 0, když se karta nepoužívá.
  • Čas nabíjení relace (Čas nabíjania relácie) zobrazuje dobu trvání aktuální relace v minutách.

SolaX API historii karet neposkytuje. Když jsou u těchto dvou proměnných zapnuté grafy, TapHome si historii vytvoří sám: která karta nabíjela, kdy a jak dlouho, s rozlišením 60 sekund. Karty se používají pouze tehdy, když je režim aktivace nabíječky v aplikaci SolaXCloud nastaven na RFID (Charger setting > Activation mode). Výchozí režim Plug & Charge kartu nepoužívá.

Řešení problémů

Žádná data nebo chyba ověření na modulu

  • Zkontrolujte, zda je nabíječka online v aplikaci SolaXCloud. Ikona serveru na displeji nabíječky ukazuje, zda je připojena k SolaXCloud.
  • Zkontrolujte ClientId a ClientSecret vůči kartě Authorization. Secret, který byl v portálu znovu vygenerován, je nutné zadat znovu.
  • Zkontrolujte, zda je DeviceSN sériové číslo nabíječky, ne Registration No.
  • Zkontrolujte, zda má aplikace autorizovanou elektrárnu s nabíječkou a zda jsou autorizovány monitorovací služby. Kód API 10403 znamená, že služba API nemá přístupová práva. Kód 10500 znamená, že aplikace nemá oprávnění k datům tohoto zařízení.
  • Kódy 10400 a 10402 znamenají, že token není platný. Modul si vyžádá nový token a čtení zopakuje ve stejném cyklu. Pokud modul i potom hlásí chybu s textem „aj po obnove tokenu“ („i po obnovení tokenu“), přístupové údaje nebo autorizované služby jsou chybné.

Hodnoty se přestanou měnit

Kódy 10405 a 10406 znamenají, že byl dosažen limit volání API. Modul zobrazí upozornění a ponechá hodnoty z posledního úspěšného cyklu. Šablona posílá jeden požadavek za minutu. Do stejného limitu se započítávají i další nástroje, které čtou stejný účet SolaX.

Pracovní režim nebo akce selhávají

  • Servisní akce vrátí text SolaX API kód <code>, když cloud příkaz odmítne. Kód 10403 (žádná přístupová práva k rozhraní) může znamenat, že pro aplikaci není autorizována služba ovládání nabíječky elektromobilů.
  • ECO a GREEN fungují pouze ve scénáři Solar a potřebují funkční spojení se střídačem nebo s proudovým transformátorem (CT) či elektroměrem. Ve scénáři Standard nabíječka pouze spouští a zastavuje nabíjení.

Komerční instalace

Šablona čte nabíječku jako součást rezidenční elektrárny (businessType=1). Podle autora šablony potřebuje nabíječka v komerční a průmyslové elektrárně hodnotu 4 a její hodnoty výkonu jsou pak v kW místo W.

Dostupná zařízení 6

Tato zařízení se po importu zobrazí v TapHome.

SolaX Cloud API Modul
Vlastní proměnné
AccessToken (string)
RealtimeData (string)
ClientId (string)
ClientSecret (string)
DeviceSN (string)

SolaX Cloud API

Čtení (modul)
IF LENGTH(AccessToken) = 0
    VAR tokenBody := "client_id=" + ClientId + "&client_secret=" + ClientSecret + "&grant_type=client_credentials";
    VAR tokenResponse := SENDHTTPREQUEST("/openapi/auth/oauth/token", "POST", tokenBody, "Content-Type: application/x-www-form-urlencoded");
    IF tokenResponse.IsSuccess
        VAR newToken := PARSEJSON(tokenResponse.Content, "$.result.access_token", true);
        IF !ISNULL(newToken)
            AccessToken := newToken;
        ELSE
            ADDERROR(1, "SolaX auth: odpoveď bez access_token");
        END
    ELSE
        ADDERROR(1, "SolaX auth zlyhala: HTTP " + tokenResponse.StatusCode);
    END
END

IF LENGTH(AccessToken) > 0
    VAR rtResponse := SENDHTTPREQUEST("/openapi/v2/device/realtime_data?snList=" + DeviceSN + "&deviceType=4&businessType=1", "GET", "", "Authorization: bearer " + AccessToken);
    IF rtResponse.IsSuccess
        VAR rtCode := PARSEJSON(rtResponse.Content, "$.code", true);
        IF rtCode = 10000
            RealtimeData := rtResponse.Content;
        ELSEIF rtCode = 10400 | rtCode = 10402
            VAR tokenBody2 := "client_id=" + ClientId + "&client_secret=" + ClientSecret + "&grant_type=client_credentials";
            VAR tokenResponse2 := SENDHTTPREQUEST("/openapi/auth/oauth/token", "POST", tokenBody2, "Content-Type: application/x-www-form-urlencoded");
            AccessToken := "";
            IF tokenResponse2.IsSuccess
                VAR newToken2 := PARSEJSON(tokenResponse2.Content, "$.result.access_token", true);
                IF !ISNULL(newToken2)
                    AccessToken := newToken2;
                    rtResponse := SENDHTTPREQUEST("/openapi/v2/device/realtime_data?snList=" + DeviceSN + "&deviceType=4&businessType=1", "GET", "", "Authorization: bearer " + AccessToken);
                    IF rtResponse.IsSuccess
                        rtCode := PARSEJSON(rtResponse.Content, "$.code", true);
                        IF rtCode = 10000
                            RealtimeData := rtResponse.Content;
                        ELSE
                            ADDERROR(2, "SolaX API kód " + rtCode + " aj po obnove tokenu");
                        END
                    END
                END
            END
        ELSEIF rtCode = 10405 | rtCode = 10406
            ADDWARNING("SolaX limit volaní API (kód " + rtCode + "), zobrazujú sa dáta z minulého cyklu");
        ELSE
            ADDWARNING("SolaX prechodná chyba, kód " + rtCode);
        END
    ELSE
        ADDERROR(3, "Chyba čítania dát: HTTP " + rtResponse.StatusCode);
    END
END
Nabíjací výkon Elektroměr
Servisní atributy
Energia aktuálnej relácie [kWh]
Prúd L1 [A]
Prúd L2 [A]
Prúd L3 [A]
Jednofázový prúd [A]

Nabíjací výkon

Čtení celkové spotřeby
PARSEJSON(RealtimeData, "$.result[0].totalChargeEnergy", true)
Čtení odběru
PARSEJSON(RealtimeData, "$.result[0].chargingPower", true) / 1000
Servisní atributy
Energia aktuálnej relácie [kWh]
PARSEJSON(RealtimeData, "$.result[0].chargingEnergyThisSession", true)
Prúd L1 [A]
PARSEJSON(RealtimeData, "$.result[0].l1Current", true)
Prúd L2 [A]
PARSEJSON(RealtimeData, "$.result[0].l2Current", true)
Prúd L3 [A]
PARSEJSON(RealtimeData, "$.result[0].l3Current", true)
Jednofázový prúd [A]
PARSEJSON(RealtimeData, "$.result[0].singlePhaseCurrent", true)
Nabíjanie prebieha Jazýčkový kontakt

Nabíjanie prebieha

Čtení
VAR status := PARSEJSON(RealtimeData, "$.result[0].deviceStatus", true);
IF ISNULL(status)
    RETURN(0);
END
IF status = 2
    RETURN(1);
END
RETURN(0);
Stav nabíjačky Proměnná
Servisní akce
Spustiť nabíjanie
Zastaviť nabíjanie
Zamknúť / sprístupniť nabíjačku
Nastaviť limit prúdu

Stav nabíjačky

Čtení
PARSEJSON(RealtimeData, "$.result[0].deviceStatus", true)
Servisní akce
Spustiť nabíjanie
VAR body := "{\"snList\":[\"" + DeviceSN + "\"],\"workCmd\":2,\"workMode\":2,\"businessType\":1}";
VAR r := SENDHTTPREQUEST("/openapi/v2/device/evc_control/set_evc_charge_command", "POST", body, "Authorization: bearer " + AccessToken, "Content-Type: application/json");
VAR c := 0;
IF r.IsSuccess
    c := PARSEJSON(r.Content, "$.code", true);
    IF c = 10400 | c = 10402
        VAR tb := "client_id=" + ClientId + "&client_secret=" + ClientSecret + "&grant_type=client_credentials";
        VAR tr := SENDHTTPREQUEST("/openapi/auth/oauth/token", "POST", tb, "Content-Type: application/x-www-form-urlencoded");
        IF tr.IsSuccess
            VAR nt := PARSEJSON(tr.Content, "$.result.access_token", true);
            IF !ISNULL(nt)
                AccessToken := nt;
                r := SENDHTTPREQUEST("/openapi/v2/device/evc_control/set_evc_charge_command", "POST", body, "Authorization: bearer " + AccessToken, "Content-Type: application/json");
                IF r.IsSuccess
                    c := PARSEJSON(r.Content, "$.code", true);
                END
            END
        END
    END
    IF c = 10000
        RETURN("OK, príkaz odoslaný");
    END
    RETURN("SolaX API kód " + c);
END
ADDERROR(r.StatusCode);
RETURN("Chyba");
Zastaviť nabíjanie
VAR body := "{\"snList\":[\"" + DeviceSN + "\"],\"workCmd\":3,\"workMode\":3,\"businessType\":1}";
VAR r := SENDHTTPREQUEST("/openapi/v2/device/evc_control/set_evc_charge_command", "POST", body, "Authorization: bearer " + AccessToken, "Content-Type: application/json");
VAR c := 0;
IF r.IsSuccess
    c := PARSEJSON(r.Content, "$.code", true);
    IF c = 10400 | c = 10402
        VAR tb := "client_id=" + ClientId + "&client_secret=" + ClientSecret + "&grant_type=client_credentials";
        VAR tr := SENDHTTPREQUEST("/openapi/auth/oauth/token", "POST", tb, "Content-Type: application/x-www-form-urlencoded");
        IF tr.IsSuccess
            VAR nt := PARSEJSON(tr.Content, "$.result.access_token", true);
            IF !ISNULL(nt)
                AccessToken := nt;
                r := SENDHTTPREQUEST("/openapi/v2/device/evc_control/set_evc_charge_command", "POST", body, "Authorization: bearer " + AccessToken, "Content-Type: application/json");
                IF r.IsSuccess
                    c := PARSEJSON(r.Content, "$.code", true);
                END
            END
        END
    END
    IF c = 10000
        RETURN("OK, príkaz odoslaný");
    END
    RETURN("SolaX API kód " + c);
END
ADDERROR(r.StatusCode);
RETURN("Chyba");
Zamknúť / sprístupniť nabíjačku
Parametry: Stav
VAR body := "{\"snList\":[\"" + DeviceSN + "\"],\"workCmd\":" + lockCmd + ",\"workMode\":" + lockCmd + ",\"businessType\":1}";
VAR r := SENDHTTPREQUEST("/openapi/v2/device/evc_control/set_evc_charge_command", "POST", body, "Authorization: bearer " + AccessToken, "Content-Type: application/json");
VAR c := 0;
IF r.IsSuccess
    c := PARSEJSON(r.Content, "$.code", true);
    IF c = 10400 | c = 10402
        VAR tb := "client_id=" + ClientId + "&client_secret=" + ClientSecret + "&grant_type=client_credentials";
        VAR tr := SENDHTTPREQUEST("/openapi/auth/oauth/token", "POST", tb, "Content-Type: application/x-www-form-urlencoded");
        IF tr.IsSuccess
            VAR nt := PARSEJSON(tr.Content, "$.result.access_token", true);
            IF !ISNULL(nt)
                AccessToken := nt;
                r := SENDHTTPREQUEST("/openapi/v2/device/evc_control/set_evc_charge_command", "POST", body, "Authorization: bearer " + AccessToken, "Content-Type: application/json");
                IF r.IsSuccess
                    c := PARSEJSON(r.Content, "$.code", true);
                END
            END
        END
    END
    IF c = 10000
        RETURN("OK, príkaz odoslaný");
    END
    RETURN("SolaX API kód " + c);
END
ADDERROR(r.StatusCode);
RETURN("Chyba");
Nastaviť limit prúdu
Parametry: Limit prúdu [A] (7/22 kW: 6-32, 11 kW: 6-16) (6–32 iLim)
VAR body := "{\"snList\":[\"" + DeviceSN + "\"],\"currentLimit\":" + iLim + ",\"businessType\":1}";
VAR r := SENDHTTPREQUEST("/openapi/v2/device/evc_control/set_evc_current_limit", "POST", body, "Authorization: bearer " + AccessToken, "Content-Type: application/json");
VAR c := 0;
IF r.IsSuccess
    c := PARSEJSON(r.Content, "$.code", true);
    IF c = 10400 | c = 10402
        VAR tb := "client_id=" + ClientId + "&client_secret=" + ClientSecret + "&grant_type=client_credentials";
        VAR tr := SENDHTTPREQUEST("/openapi/auth/oauth/token", "POST", tb, "Content-Type: application/x-www-form-urlencoded");
        IF tr.IsSuccess
            VAR nt := PARSEJSON(tr.Content, "$.result.access_token", true);
            IF !ISNULL(nt)
                AccessToken := nt;
                r := SENDHTTPREQUEST("/openapi/v2/device/evc_control/set_evc_current_limit", "POST", body, "Authorization: bearer " + AccessToken, "Content-Type: application/json");
                IF r.IsSuccess
                    c := PARSEJSON(r.Content, "$.code", true);
                END
            END
        END
    END
    IF c = 10000
        RETURN("OK, príkaz odoslaný");
    END
    RETURN("SolaX API kód " + c);
END
ADDERROR(r.StatusCode);
RETURN("Chyba");
RFID karta Proměnná

RFID karta

Čtení
VAR rfid := PARSEJSON(RealtimeData, "$.result[0].rfidnumber", true);
IF ISNULL(rfid)
    RETURN(0);
END
RETURN(rfid);
Čas nabíjania relácie Proměnná

Čas nabíjania relácie

Čtení
VAR t := PARSEJSON(RealtimeData, "$.result[0].chargingTimeThisSession", true);
IF ISNULL(t)
    RETURN(0);
END
RETURN(t / 60);
Pracovný režim Vícestavový přepínač
Hodnoty / Stavy: STOP · FAST · ECO · GREEN

Pracovný režim

Čtení stavu přepínače
VAR mode := PARSEJSON(RealtimeData, "$.result[0].deviceWorkingMode", true);
IF ISNULL(mode)
    RETURN(0);
END
RETURN(mode);
Zápis stavu přepínače
VAR body := "{\"snList\":[\"" + DeviceSN + "\"],\"workMode\":" + Mu + ",\"businessType\":1}";
VAR r := SENDHTTPREQUEST("/openapi/v2/device/evc_control/set_evc_work_mode", "POST", body, "Authorization: bearer " + AccessToken, "Content-Type: application/json");
VAR c := 0;
IF r.IsSuccess
    c := PARSEJSON(r.Content, "$.code", true);
    IF c = 10400 | c = 10402
        VAR tb := "client_id=" + ClientId + "&client_secret=" + ClientSecret + "&grant_type=client_credentials";
        VAR tr := SENDHTTPREQUEST("/openapi/auth/oauth/token", "POST", tb, "Content-Type: application/x-www-form-urlencoded");
        IF tr.IsSuccess
            VAR nt := PARSEJSON(tr.Content, "$.result.access_token", true);
            IF !ISNULL(nt)
                AccessToken := nt;
                r := SENDHTTPREQUEST("/openapi/v2/device/evc_control/set_evc_work_mode", "POST", body, "Authorization: bearer " + AccessToken, "Content-Type: application/json");
                IF r.IsSuccess
                    c := PARSEJSON(r.Content, "$.code", true);
                END
            END
        END
    END
    IF c != 10000
        ADDERROR(1, "SolaX API kód " + c);
    END
ELSE
    ADDERROR(r.StatusCode);
END
Připojení: Packet Parser → HTTP

Parametry importu

Tyto hodnoty zadáte při importu XML.

Ptá se v aplikaciVýchozí
ClientId: ID klienta z SolaX Developer PortáluZadáte při importu
ClientSecret: Client Secret z SolaX Developer PortáluZadáte při importu
DeviceSN: Sériové číslo nabíjačky (Device SN)Zadáte při importu

Našli jste problém s touto šablonou zařízení?

Napište nám, co nefunguje, co chybí, nebo jak by se měla šablona chovat. Vaše zpětná vazba nám pomáhá udržet katalog přesný.

Šablona · portál TapHome SolaX X1/X3-HAC EV Charger (Cloud API) Otevřete tuto šablonu v zákaznickém portálu a použijte ji ve svém domově, nebo navrhněte úpravu a odešlete ji zpět do katalogu. Packet Parser → HTTP Zobrazit v portálu TapHome