---
title: "SolaX X1/X3-HAC EV Charger (Cloud API)"
description: "SolaX HAC EV töltők teljesítménye, energiája, állapota és STOP/FAST/ECO/GREEN üzemmódja a SolaX Developer API-n. Client ID, Secret és SN kell."
url: "https://taphome.com/hu/compatibility/solax-hac-cloud-api/"
language: hu
lastmod: 2026-11-12
generator: hugo
ai:
  topics: ["http","wallbox","cloud-api","oauth2","ev-charging","solar-surplus-charging"]
  questions: ["Hogyan integrálható egy SolaX X1/X3-HAC EV töltő a TapHome-mal?","Mit olvas ki és mit vezérel a SolaX HAC Cloud API TapHome sablon?","Hogyan szerezhető meg a Client ID és a Client Secret a SolaX Developer Portal API-hoz?","Melyik sorozatszám kell a SolaX HAC sablonhoz: a Device SN vagy a Registration No.?","Hogyan csatlakoztatható a SolaX HAC töltő a SolaXCloudhoz Wi-Fi-n, LAN-on vagy 4G-n?","Miért ad vissza a SolaX Cloud API 10402-es vagy 10406-os kódot a TapHome-ban?"]
---

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

Kommunikáció: Packet Parser → HTTP

## Integrációs útmutató

A SolaX HAC Cloud API sablon a TapHome-ot egy SolaX X1-HAC vagy X3-HAC EV töltőhöz kapcsolja a SolaX Developer Portal API-n (OpenAPI) keresztül. A sablon szerzője az A1-HAC és a C1/C3-HAC töltőket is feltünteti. A TapHome nem közvetlenül kommunikál a töltővel: a töltő Wi-Fi-n, LAN-on vagy 4G-n keresztül jelent a SolaXCloudnak, a TapHome pedig 60 másodpercenként HTTPS-en olvassa ki az adatait a SolaX felhőből. Az írási parancsok (üzemmód, indítás és leállítás, zárolás, áramkorlát) ugyanígy, a felhőn keresztül jutnak vissza a töltőhöz.

A sablon importálása előtt két dolognak kell rendben lennie. A töltőnek online kell lennie egy SolaXCloud fiókban, és ehhez a fiókhoz a SolaX Developer Portalon egy alkalmazás kell, amely megadja a **Client ID**-t és a **Client Secret**-et. Ha a töltő egy SolaX napelem inverter mellett működik, a [SolaX Inverter (Cloud API)](https://taphome.com/hu/compatibility/solax-inverter/) sablon ugyanabban a TapHome projektben futhat. Ez a régebbi SolaxCloud monitoring API-t használja, saját tokennel.

## A töltő csatlakoztatása a SolaXCloudhoz

### Hálózati kapcsolat

A töltő háromféleképpen csatlakozhat az internethez. Mindhárom DHCP-t használ, így az IP-címet automatikusan a router osztja ki.

- **Wi-Fi**: csak 2,4 GHz (802.11 b/g/n). Az 5 GHz-es hálózatok nem támogatottak.
- **Ethernet (LAN)**: az RJ45 csatlakozó **LAN (/ DI)**. Az Ethernet az 1., 2., 3. és 6. tűt használja (TX+, TX−, RX+, RX−). Ha csak Ethernetre van szükség, a többi tűt hagyd bekötetlenül. LAN-kapcsolat esetén a Wi-Fi beállítása kihagyható.
- **4G**: csak azoknál a modelleknél, amelyek nevében szerepel a „4G” (például X3-HAC-22P-B4G). A Cat-M-et, NB-IoT-t vagy GSM-et támogató nano SIM-kártyát csak arra jogosult szakember helyezheti be. A SolaX a Solar és a Standard alkalmazási forgatókönyvben legalább havi 100 MB adatforgalmat javasol.

![Az EV töltő LAN/DI, COM2-M és COM1-S kommunikációs portjainak lábkiosztása az RJ45 érszínekkel](https://taphome.com/images/compatibility/solax-hac-cloud-api/pins-communication-ports_hu_e3a3a34d16605204.jpg)

> [!WARNING]
> A töltőhöz vezető Ethernet-kábelt villámcsapás ellen védeni kell. Ha a LAN-ra és a DI jelbemenetre is szükség van, az 1., 2., 3. és 6. tűt krimpeld az Ethernethez, a 4., 5. és 8. tűt a DI-hez, majd a két kábelt kösd össze a töltőhöz mellékelt RJ45 toldóval.

A 4G-kapcsolatot a SolaXCloud alkalmazásban, helyi módban kell beállítani: nyisd meg a **Dongle** menüt, majd a beállítások gombot, állítsd a **Device Networking Mode** értékét **4G**-re, add meg a szolgáltató APN-jét, és válaszd ki a hálózat azon típusát, amelyet a SIM támogat.

### A töltő hozzáadása a SolaXCloud alkalmazásban

1. Telepítsd a **SolaXCloud** alkalmazást az App Store-ból vagy a Google Playről, és regisztrálj fiókot e-mail-címmel vagy telefonszámmal és ellenőrző kóddal.
2. Az első bejelentkezéskor hozz létre egy erőművet (plant): engedélyezd a helyhozzáférést, add meg az erőmű nevét, és végezd el a többi beállítást.
3. Add hozzá a töltőt a típuscímkén lévő **Registration No.** beolvasásával vagy beírásával. A később hozzáadott töltőknél az út: **Device** oldal, **+** ikon, majd **Add Device** vagy **Scan**.
4. Ha a töltő Wi-Fi-n csatlakozik, add meg a Wi-Fi-hálózat nevét és jelszavát.

![SolaXCloud alkalmazás: az EV töltő hozzáadása a típuscímkén lévő Registration No. alapján](https://taphome.com/images/compatibility/solax-hac-cloud-api/add-device-registration-no_hu_4b06cff948b79022.jpg)

A típuscímkén két különböző szám szerepel. A **Registration No.** a töltő alkalmazásbeli hozzáadására és a helyi bejelentkezésre szolgál. Az **SN** (a készülék sorozatszáma) az, amelyre a TapHome sablonnak `DeviceSN`-ként szüksége van. Az alkalmazás a készülék SN-jét a töltő **Basic information** oldalán mutatja (koppints a töltő Details oldalának felső részére). A Developer Portalon is megtalálod a **Device > Device List** alatt.

### A Wi-Fi újracsatlakoztatása és a helyi hozzáférés

Ha a töltő offline állapotba kerül, nyisd meg az alkalmazásban a **Device** oldalt, koppints az offline jelölésű töltő kártyájára, és válaszd a **Reconfigure** lehetőséget. Ezután add meg újra a 2,4 GHz-es hálózatot és a jelszót.

![SolaXCloud alkalmazás: az EV töltő Wi-Fi-jének újrakonfigurálása és bejelentkezés helyi módban a Registration No. alapján](https://taphome.com/images/compatibility/solax-hac-cloud-api/wifi-reconfigure_hu_a2a623a4deacb2f4.jpg)

Ha az újrakonfigurálás nem sikerül, van egy második lehetőség. Csatlakoztass egy telefont vagy laptopot a töltő saját Wi-Fi-hálózatához, amelynek neve a Registration No.-ból képződik (`Wifi_XC…`). Ezután nyisd meg böngészőben a `http://192.168.10.10/` címet, és jelentkezz be `admin` felhasználóként, jelszóként a Registration No.-t megadva. Az alkalmazás helyi módja (**More > Local Access**, bejelentkezve pedig **Service > Application > Local Access**) ugyanezt a hálózatot használja.

> [!NOTE]
> A töltő a helyi Wi-Fi-hálózatát a sikeres hálózati csatlakozás után egy órával automatikusan kikapcsolja. Ha később helyi hozzáférést szeretnél, kapcsold vissza a hálózatot az alkalmazásban a **Network > Local Access** alatt.

### Alkalmazási forgatókönyv és töltési módok

A töltő a három alkalmazási forgatókönyv egyikében működik, amelyet az alkalmazásban az **Advanced setting > Application scene** alatt választhatsz ki:

- **Solar** (alapértelmezett): a Green, az Eco és a Fast töltési mód érhető el. A Green és az Eco módhoz a töltőnek a napelem inverterrel, vagy a hálózati csatlakozási ponton lévő áramváltóval (CT) vagy mérővel kell kommunikálnia, hogy ismerje a PV-többletet.
- **Standard**: a töltő csak elindítja és leállítja a töltést. Ebben a forgatókönyvben nincs Green és Eco mód.
- **OCPP**: a töltőt egy OCPP-szerver kezeli, és a SolaXCloud alkalmazás elrejti a módválasztást.

![Solar forgatókönyv: a SolaX EV töltő a napelem inverterrel kommunikál, Wi-Fi/LAN router a felhő felé, CT/mérő, RCBO és AC elosztószekrény](https://taphome.com/images/compatibility/solax-hac-cloud-api/system-solar-scene-inverter_hu_d5e2ffa4db2be771.jpg)

A napelem inverter a **COM1-S-** portra csatlakozik (A1/B1). A mérő vagy a CT a **COM2-M-** portra csatlakozik (A2/B2, a CT-bemenetek a többi tűn). A Green mód (3 A vagy 6 A) és az Eco mód (6, 10, 16, 20 vagy 25 A) töltőáram-szintjét az alkalmazásban a **Details > Function Control > Charge Level** alatt állíthatod be. A 11 kW-os modelleken az Eco csak 6 A-t és 10 A-t kínál. A Green és az Eco töltéshez emellett az IEC 61851 szabványnak megfelelő jármű is szükséges.

## API-hozzáférés beállítása a SolaX Developer Portalon

1. Jelentkezz be a [SolaX Developer Portal](https://developer.solaxcloud.com/home) oldalra, és nyisd meg a **Quick Start** vagy az **Application** menüt.
2. Hozz létre egy alkalmazást ahhoz a SolaXCloud erőműhöz, amelyben a töltő van. Az alkalmazásnak legalább egy engedélyezett erőművel kell rendelkeznie.
3. Az alkalmazás **Authorization** fülén másold ki a **Client ID**-t és a **Client Secret**-et.
4. A **Service API > Authorize** alatt engedélyezd a **Data Monitoring Service** (`API_Telemetry_V2`) és az **Information Access Service** (`API_Info_V2`) monitorozó szolgáltatást. Engedélyezd az EV töltő vezérlési szolgáltatását is, amelyre az üzemmód-kapcsolónak és a szervizakcióknak szükségük van. A puszta monitorozás enélkül is működik.
5. A töltő sorozatszámát a **Device > Device List** alatt találod. Ez ugyanaz az SN, mint a SolaXCloud alkalmazásban.

> [!WARNING]
> A sablon az európai API-hosztra (`openapi-eu.solaxcloud.com`) van beállítva. A SolaX külön hosztokat üzemeltet Kína (`openapi-cn.solaxcloud.com`) és India (`openapi-in.solaxcloud.com`) számára. A fiók régióját a Developer Portal mutatja. Importált állapotában a sablon más régióbeli alkalmazással nem működik.

### Importálási paraméterek

A TapHome-ban importáld a sablont, és töltsd ki az alábbi három paramétert. Minden mást (token, lekérdezés, újrapróbálkozások) a modul kezel.

| Paraméter | Leírás | Hol találod |
|-----------|--------|-------------|
| `ClientId` | A Developer Portal alkalmazás Client ID-ja | Application > **Authorization** |
| `ClientSecret` | Ugyanannak az alkalmazásnak a Client Secret-je | Application > **Authorization** |
| `DeviceSN` | A töltő sorozatszáma (nem a Registration No.) | Developer Portal **Device > Device List**, vagy **Basic information** a SolaXCloud alkalmazásban |

> [!WARNING]
> Egy Client ID és Client Secret párt csak egyetlen kliens használjon. Minden alkalmazásnak csak egy érvényes hozzáférési tokenje van, így egy új tokenkérés érvényteleníti az előzőt. Egy második TapHome sablonpéldány, vagy egy másik, ugyanazokkal a hitelesítő adatokkal lekérdező eszköz folyamatosan érvényteleníti ennek a sablonnak a tokenjét. Második töltőhöz vagy más rendszerhez hozz létre külön alkalmazást a Developer Portalon.

## Az eszköz képességei

A sablonban az eszközök nevei szlovákul vannak. Alább mindegyik szerepel, zárójelben az alkalmazásban látható nevével.

### Töltési teljesítmény és energia

A **Töltési teljesítmény** (`Nabíjací výkon`) egy villamosenergia-mérő. Az aktuális töltési teljesítményt mutatja kW-ban és az összes töltött energiát kWh-ban. Szervizattribútumai az aktuális töltési munkamenet energiáját (`Energia aktuálnej relácie [kWh]`), az L1, L2 és L3 fázisáramot (`Prúd L1 [A]`, `Prúd L2 [A]`, `Prúd L3 [A]`) és az egyfázisú áramot (`Jednofázový prúd [A]`) mutatják.

### Töltési állapot és állapotkód

- A **Töltés folyamatban** (`Nabíjanie prebieha`) egy kontaktus. Csak addig van bekapcsolva (`Nabíja`), amíg a töltő Charging állapotot jelent. Minden más állapotban ki van kapcsolva (`Nenabíja`), a Suspended EV és a Suspended EVSE állapotot is beleértve.
- A **Töltő állapota** (`Stav nabíjačky`) a töltő nyers állapotkódja:

| Kód | Állapot | Kód | Állapot |
|-----|---------|-----|---------|
| 0 | Available | 7 | Suspended EV |
| 1 | Preparing | 8 | Suspended EVSE |
| 2 | Charging | 9 | Update |
| 3 | Finishing | 10 | Card Activation |
| 4 | Faulted | 11 | Start Delay |
| 5 | Unavailable | 12 | Charge Pause |
| 6 | Reserved | 13 | Stopping |

### Üzemmód

Az **Üzemmód** (`Pracovný režim`) egy többértékű kapcsoló négy értékkel: **STOP**, **FAST**, **ECO** és **GREEN**. Kiolvassa a töltő aktuális üzemmódját, és a TapHome-ból újat állít be. Az ECO és a GREEN a fenti Solar forgatókönyvnél leírtak szerint működik, és attól függ, hogy a töltő kommunikál-e a napelem inverterrel vagy a mérővel.

### Szervizakciók

A töltő állapotát jelző eszköz négy szervizakciót tartalmaz:

- **Töltés indítása** (`Spustiť nabíjanie`) és **Töltés leállítása** (`Zastaviť nabíjanie`).
- **Zárolás / elérhetővé tétel** (`Zamknúť / sprístupniť nabíjačku`), a Zárolás (`Zamknúť`) és az Elérhetővé tétel (`Sprístupniť`) értékkel.
- **Áramkorlát beállítása** (`Nastaviť limit prúdu`): 6–32 A a 7 kW-os és a 22 kW-os modelleken, 6–16 A a 11 kW-os modellen.

A parancsok aszinkronok. Az „OK, príkaz odoslaný” válasz azt jelenti, hogy a SolaX felhő elfogadta a parancsot, nem azt, hogy a töltő már végre is hajtotta. Az eredmény a következő ciklusok értékeiben jelenik meg.

### Kártya- és munkamenet-előzmények a diagramokban

- Az **RFID-kártya** (`RFID karta`) a munkamenetet elindító kártya számát mutatja, vagy 0-t, ha nem használtak kártyát.
- A **Munkamenet töltési ideje** (`Čas nabíjania relácie`) az aktuális munkamenet időtartamát mutatja percben.

A SolaX API nem ad kártyaelőzményeket. Ha erre a két változóra bekapcsolod a diagramokat (Charts), a TapHome maga építi fel az előzményeket: melyik kártya töltött, mikor és mennyi ideig, 60 másodperces felbontással. Kártyát a töltő csak akkor használ, ha az aktiválási módja a SolaXCloud alkalmazásban **RFID**-re van állítva (**Charger setting > Activation mode**). Az alapértelmezett **Plug & Charge** mód nem használ kártyát.

## Hibaelhárítás

### Nincs adat, vagy hitelesítési hiba a modulon

- Ellenőrizd, hogy a töltő online-e a SolaXCloud alkalmazásban. A töltő kijelzőjén lévő szerver ikon mutatja, hogy csatlakozik-e a SolaXCloudhoz.
- Ellenőrizd a `ClientId` és a `ClientSecret` értékét az **Authorization** fülön. A portálon újragenerált secretet újra meg kell adni.
- Ellenőrizd, hogy a `DeviceSN` a töltő sorozatszáma-e, nem pedig a Registration No.
- Ellenőrizd, hogy az alkalmazásnak van-e engedélyezett erőműve a töltővel, és hogy a monitorozó szolgáltatások engedélyezve vannak-e. A **10403** API-kód azt jelenti, hogy az API-szolgáltatásnak nincs hozzáférési joga. A **10500** kód azt jelenti, hogy az alkalmazásnak nincs jogosultsága ennek az eszköznek az adataihoz.
- A **10400** és a **10402** kód azt jelenti, hogy a token érvénytelen. A modul új tokent kér, és ugyanabban a ciklusban megismétli az olvasást. Ha a modul ezután is „aj po obnove tokenu” („a token megújítása után is”) szövegű hibát jelez, a hitelesítő adatok vagy az engedélyezett szolgáltatások hibásak.

### Az értékek nem változnak

A **10405** és a **10406** kód azt jelenti, hogy betelt az API-hívások korlátja. A modul figyelmeztetést jelez, és megtartja az utolsó sikeres ciklus értékeit. A sablon percenként egy kérést küld. Az ugyanazt a SolaX fiókot olvasó más eszközök is ugyanebbe a korlátba számítanak bele.

### Az üzemmód vagy a műveletek nem működnek

- Egy szervizakció a `SolaX API kód <code>` szöveget adja vissza, ha a felhő elutasítja a parancsot. A **10403** kód (nincs hozzáférési jog az interfészhez) azt jelentheti, hogy az EV töltő vezérlési szolgáltatása nincs engedélyezve az alkalmazás számára.
- Az ECO és a GREEN csak a Solar forgatókönyvben működik, és működő kapcsolatot igényel a napelem inverterrel vagy a CT-vel/mérővel. A Standard forgatókönyvben a töltő csak elindítja és leállítja a töltést.

### Kereskedelmi telepítések

A sablon a töltőt egy lakossági erőmű részeként olvassa (`businessType=1`). A sablon szerzője szerint egy kereskedelmi és ipari erőműben lévő töltőhöz a 4-es érték kell, és ilyenkor a teljesítményértékek W helyett kW-ban vannak.

## Elérhető eszközök 6

Ezek az eszközök az importálás után jelennek meg a TapHome-ban.

SolaX Cloud API Modul

Egyéni változók

|                         |
|-------------------------|
| `AccessToken` (string)  |
| `RealtimeData` (string) |
| `ClientId` (string)     |
| `ClientSecret` (string) |
| `DeviceSN` (string)     |

Olvasás (modul)

```taphome
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 Villanyóra

Szerviz attribútumok

|                                  |
|----------------------------------|
| Energia aktuálnej relácie \[kWh] |
| Prúd L1 \[A]                     |
| Prúd L2 \[A]                     |
| Prúd L3 \[A]                     |
| Jednofázový prúd \[A]            |

Összes fogyasztás olvasása

```taphome
PARSEJSON(RealtimeData, "$.result[0].totalChargeEnergy", true)
```

Igény olvasása

```taphome
PARSEJSON(RealtimeData, "$.result[0].chargingPower", true) / 1000
```

Szerviz attribútumok

Energia aktuálnej relácie \[kWh]

```taphome
PARSEJSON(RealtimeData, "$.result[0].chargingEnergyThisSession", true)
```

Prúd L1 \[A]

```taphome
PARSEJSON(RealtimeData, "$.result[0].l1Current", true)
```

Prúd L2 \[A]

```taphome
PARSEJSON(RealtimeData, "$.result[0].l2Current", true)
```

Prúd L3 \[A]

```taphome
PARSEJSON(RealtimeData, "$.result[0].l3Current", true)
```

Jednofázový prúd \[A]

```taphome
PARSEJSON(RealtimeData, "$.result[0].singlePhaseCurrent", true)
```

Nabíjanie prebieha Reed kontaktus

Olvasás

```taphome
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 Változó

Szerviz műveletek

|                                 |
|---------------------------------|
| Spustiť nabíjanie               |
| Zastaviť nabíjanie              |
| Zamknúť / sprístupniť nabíjačku |
| Nastaviť limit prúdu            |

Olvasás

```taphome
PARSEJSON(RealtimeData, "$.result[0].deviceStatus", true)
```

Szerviz műveletek

Spustiť nabíjanie

```taphome
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

```taphome
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

Paraméterek: Stav

```taphome
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

Paraméterek: Limit prúdu \[A] (7/22 kW: 6-32, 11 kW: 6-16) (6–32 iLim)

```taphome
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 Változó

Olvasás

```taphome
VAR rfid := PARSEJSON(RealtimeData, "$.result[0].rfidnumber", true);
IF ISNULL(rfid)
    RETURN(0);
END
RETURN(rfid);
```

Čas nabíjania relácie Változó

Olvasás

```taphome
VAR t := PARSEJSON(RealtimeData, "$.result[0].chargingTimeThisSession", true);
IF ISNULL(t)
    RETURN(0);
END
RETURN(t / 60);
```

Pracovný režim Többértékű kapcsoló

Értékek / Állapotok: STOP · FAST · ECO · GREEN

Kapcsoló állapot olvasása

```taphome
VAR mode := PARSEJSON(RealtimeData, "$.result[0].deviceWorkingMode", true);
IF ISNULL(mode)
    RETURN(0);
END
RETURN(mode);
```

Kapcsoló állapot írása

```taphome
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
```

**Kapcsolat:** Packet Parser → HTTP

## Importálási paraméterek

Ezeket az értékeket az XML importálásakor adja meg.

| Az alkalmazás kéri                                    | Alapérték              |
|-------------------------------------------------------|------------------------|
| ClientId: ID klienta z SolaX Developer Portálu        | Importáláskor adja meg |
| ClientSecret: Client Secret z SolaX Developer Portálu | Importáláskor adja meg |
| DeviceSN: Sériové číslo nabíjačky (Device SN)         | Importáláskor adja meg |

## Kapcsolódó dokumentáció

- [Packet Parser integráció](https://taphome.com/hu/compatibility/packet-parser-guide/)
- [Packet Parser (HTTP, TCP, UDP, FTP, MQTT)](https://taphome.com/hu/docs/integration/packet-parser/)
- [Packet parser függvények](https://taphome.com/hu/docs/script/packet-parser/)
- [Elemző függvények](https://taphome.com/hu/docs/script/parsing-functions/)

