Komendy danych MQTT#

Komendy pozwalające zewnętrznym programom zmieniać dane w GbbOptimizer. Każda komenda wysyła dane na dedykowany temat i otrzymuje wynik na {PlantId}/ha_gbb/api/result.

Wynik komend#

PUB {PlantId}/ha_gbb/api/result

Wynik każdej komendy danych — OK lub opis błędu

PoleTypOpis
OrderIdstring?Skopiowany z zapytania
Resultstring"OK" lub opis błędu
DataobjectDane z oryginalnego zapytania

SetManualPrices Ustaw ręczne ceny energii
{PlantId}/ha_gbb/api/setmanualprices
PoleTypWymaganeOpis
OrderIdstringnieTekst skopiowany do odpowiedzi
Datatablicatak
DatedatetakData ceny
StartHourint (0-23)takGodzina rozpoczęcia
StartMinuteint (0-59)nieMinuta (domyślnie 0)
PurchasePricedecimalnieCena zakupu
TransferPricedecimalnieCena przesyłu
SalePricedecimalnieCena sprzedaży

Przykład:

1
2
3
4
5
{
  "Data": [
    {"Date": "2024-04-20", "StartHour": 20, "PurchasePrice": 0.23}
  ]
}
SetExtraLoads Ustaw Extra Zużycie
{PlantId}/ha_gbb/api/setextraloads
PoleTypWymaganeOpis
OrderIdstringnieTekst skopiowany do odpowiedzi
Datatablicatak
DatedatetakData (dzisiaj lub jutro)
StartHourint (0-23)takGodzina
StartMinuteint (0-59)nieMinuta (domyślnie 0)
TypeNointtak0=EV, 1=Pompa ciepła, 2=Inne1, 3=Inne2, …, 7=Inne6
ExtraLoads_kWhdecimaltakkWh

Przykład:

1
2
3
4
5
{
  "Data": [
    {"Date": "2024-04-20", "StartHour": 20, "TypeNo": 1, "ExtraLoads_kWh": 1.23}
  ]
}
SetRealTemperature Ustaw rzeczywistą temperaturę
{PlantId}/ha_gbb/api/setrealtemperature
PoleTypWymaganeOpis
OrderIdstringnieTekst skopiowany do odpowiedzi
Datatablicatak
DatedatetakData (wczoraj, dzisiaj lub jutro). Jeśli brak Hour — godzina z daty
Hourint (0-23)nieGodzina temperatury
RealTemperaturedecimaltakTemperatura (°C)

Przykład:

1
2
3
4
5
{
  "Data": [
    {"Date": "2024-04-20", "Hour": 20, "RealTemperature": 1.23}
  ]
}
SetOptimizer Ustaw parametry optymalizatora
{PlantId}/ha_gbb/api/setoptimizer
PoleTypWymaganeOpis
OrderIdstringnieTekst skopiowany do odpowiedzi
Dataobiekttak
Opt2_3x100Requestintnie0 lub 1 — wymuszenie 3h×100%
CurrentLoadProfileIdintnieID Profilu Zużycia
CurrentLoadProfileNamestringnieNazwa Profilu Zużycia (wielkość liter nieistotna)

Przykład:

1
{"Data": {"Opt2_3x100Request": 1}}
SetCar Ustaw parametry samochodu EV
{PlantId}/ha_gbb/api/setcar

Samochód „HomeAssistant EV Car" musi być najpierw dodany w programie. Zmieniane są tylko podane parametry — ale program wymaga aktualnych: SOC, SOC_ChargeLimit, IsConnected, IsCharging, Position_Longitude, Position_Latitude.

PoleTypWymaganeOpis
OrderIdstringnieTekst skopiowany do odpowiedzi
DatatablicatakMożna aktualizować wiele samochodów
VINstringtakKlucz identyfikacyjny. Nowy VIN = nowy samochód (max 10)
BatteryKWhdecimalniePojemność baterii samochodu
ChargeAdecimalnieDomyślny prąd ładowania (A)
Phasesintnie1 lub 3 fazy
SOCintnieAktualny SOC
SOC_ChargeLimitintnieDocelowy SOC
InServiceboolnieCzy samochód jest w serwisie
IsConnectedboolnieCzy podłączony do ładowarki
IsChargingboolnieCzy aktualnie się ładuje
Position_LongitudedoublenieDługość geograficzna
Position_LatitudedoublenieSzerokość geograficzna

Przykład:

1
2
3
4
5
{
  "Data": [
    {"VIN": "vin1234", "SOC": 40, "SOC_ChargeLimit": 90}
  ]
}
SetHP Ustaw parametry pompy ciepła
{PlantId}/ha_gbb/api/sethp
PoleTypWymaganeOpis
OrderIdstringnieTekst skopiowany do odpowiedzi
DataobiekttakZmieniane tylko podane parametry
HPForecast_Break_OnboolniePrzerwa w pracy PC: włącz/wyłącz
HPForecast_BreakFromDatedatenieData rozpoczęcia przerwy
HPForecast_BreakFromHourint (0-23)nieGodzina rozpoczęcia
HPForecast_BreakToDatedatenieData zakończenia (włączńie)
HPForecast_BreakToHourint (0-23)nieGodzina zakończenia (włączńie)

Przykład:

1
2
3
4
5
6
7
{
  "Data": {
    "HPForecast_Break_On": true,
    "HPForecast_BreakToDate": "2026-01-30",
    "HPForecast_BreakToHour": 23
  }
}