Browse Source

Tibber_implement_stage1

pull/1155/head
DanielR92 2 years ago
parent
commit
0f5e0eac60
  1. 2
      src/config/settings.h
  2. 13
      src/plugins/zeroExport/zeroExport.h

2
src/config/settings.h

@ -149,6 +149,7 @@ typedef struct {
unsigned long lastTime; // tic toc unsigned long lastTime; // tic toc
double max_power; double max_power;
bool two_percent; // ask if not go lower then 2% bool two_percent; // ask if not go lower then 2%
char tibber_pw[ZEXPORT_ADDR_LEN]; // needed for tibber QWGH-ED12
} cfgzeroExport_t; } cfgzeroExport_t;
#endif #endif
@ -456,6 +457,7 @@ class settings {
// Zero-Export // Zero-Export
#if defined(ESP32) #if defined(ESP32)
snprintf(mCfg.plugin.zexport.monitor_url, ZEXPORT_ADDR_LEN, "%s", DEF_ZEXPORT); snprintf(mCfg.plugin.zexport.monitor_url, ZEXPORT_ADDR_LEN, "%s", DEF_ZEXPORT);
snprintf(mCfg.plugin.zexport.tibber_pw, ZEXPORT_ADDR_LEN, "%s", DEF_ZEXPORT);
snprintf(mCfg.plugin.zexport.json_path, ZEXPORT_ADDR_LEN, "%s", DEF_ZEXPORT); snprintf(mCfg.plugin.zexport.json_path, ZEXPORT_ADDR_LEN, "%s", DEF_ZEXPORT);
mCfg.plugin.zexport.enabled = false; mCfg.plugin.zexport.enabled = false;
mCfg.plugin.zexport.count_avg = 10; mCfg.plugin.zexport.count_avg = 10;

13
src/plugins/zeroExport/zeroExport.h

@ -43,7 +43,7 @@ class ZeroExport {
return ((unsigned)(mCfg->total_power - mCfg->power_avg) >= mCfg->power_avg) ? ivPower + mCfg->total_power : ivPower - mCfg->total_power; return ((unsigned)(mCfg->total_power - mCfg->power_avg) >= mCfg->power_avg) ? ivPower + mCfg->total_power : ivPower - mCfg->total_power;
} }
//C2T2-B91B
private: private:
HTTPClient httpClient; HTTPClient httpClient;
@ -63,6 +63,10 @@ class ZeroExport {
return false; return false;
} }
if(String(mCfg->monitor_url).endsWith("data.json?node_id=1")){
httpClient.setAuthorization("admin", mCfg->tibber_pw);
}
int httpCode = httpClient.GET(); int httpCode = httpClient.GET();
if (httpCode == HTTP_CODE_OK) if (httpCode == HTTP_CODE_OK)
{ {
@ -85,6 +89,8 @@ class ZeroExport {
mCfg->total_power = responseBody.substring(responseBody.indexOf(":"), index).toDouble(); mCfg->total_power = responseBody.substring(responseBody.indexOf(":"), index).toDouble();
} else if(json.containsKey(F("emeters"))) { } else if(json.containsKey(F("emeters"))) {
mCfg->total_power = (double)json[F("total_power")]; mCfg->total_power = (double)json[F("total_power")];
} else if(String(mCfg->monitor_url).endsWith("data.json?node_id=1") ) {
tibber_parse();
} else { } else {
DPRINTLN(DBG_INFO, (F("ZeroExport() json error: cant find value in this query: ") + responseBody)); DPRINTLN(DBG_INFO, (F("ZeroExport() json error: cant find value in this query: ") + responseBody));
return false; return false;
@ -99,6 +105,11 @@ class ZeroExport {
return true; return true;
} }
void tibber_parse()
{
}
// private member variables // private member variables
cfgzeroExport_t *mCfg; cfgzeroExport_t *mCfg;
settings_t *mConfig; settings_t *mConfig;

Loading…
Cancel
Save