Monitor motorhome leisure battery and provide simple control of habitation

Dependencies:   net lpc1768 crypto clock web fram log

web-this/battery/web-battery-query.c

Committer:
andrewboyson
Date:
2022-06-06
Revision:
9:d957af50fdc2
Parent:
web-this/boiler/web-boiler-query.c@ 0:b843d647695c
Child:
10:a97a7cb7aa82

File content as of revision 9:d957af50fdc2:

#include <stdlib.h>
#include <string.h>
#include "http.h"
#include "comms.h"

void WebBatteryQuery(char* pQuery)
{
    while (pQuery)
    {
        char* pName;
        char* pValue;
        pQuery = HttpQuerySplit(pQuery, &pName, &pValue);
                    
        if (HttpSameStr(pName, "set-battery-counted-capacity"))
        {
            int value = HttpQueryValueAsInt(pValue);
            BatterySetCountedCapacity(value);
            return;
        }
        if (HttpSameStr(pName, "set-battery-counted-error"))
        {
            int value = HttpQueryValueAsInt(pValue);
            BatterySetCountedError(value);
            return;
        }
        if (HttpSameStr(pName, "set-battery-capacity-setpoint-percent"))
        {
            int value = HttpQueryValueAsInt(pValue);
            BatterySetCapacitySetPointPercent(value);
            return;
        }
        if (HttpSameStr(pName, "chg-battery-charge-enabled"))
        {
            BatterySetChargeEnabled(!BatteryGetChargeEnabled());
            return;
        }
        if (HttpSameStr(pName, "chg-battery-discharge-enabled"))
        {
            BatterySetDischargeEnabled(!BatteryGetDischargeEnabled());
            return;
        }
        if (HttpSameStr(pName, "set-battery-temperature-setpoint"))
        {
            int value = HttpQueryValueAsDouble(pValue)*10;
            BatterySetTemperatureSetPoint(value);
            return;
        }
        if (HttpSameStr(pName, "chg-battery-auto-update"))
        {
            BatterySetCapacityAutoUpdate(!BatteryGetCapacityAutoUpdate());
            return;
        }
    }
}