Fix for config pages with more values
This commit is contained in:
parent
30437dddb6
commit
a4e8b7217b
|
@ -237,7 +237,7 @@ SensorData calcSunsetSunrise(GwApi *api, double time, double date, double latitu
|
||||||
int intminSS = 0;
|
int intminSS = 0;
|
||||||
bool sunDown = false;
|
bool sunDown = false;
|
||||||
|
|
||||||
api->getLogger()->logDebug(GwLog::DEBUG,"... calcSun: Lat %f, Lon %f, at: %d, next SR: %d, next SS: %d", latitude, longitude, t, sunR, sunS);
|
// api->getLogger()->logDebug(GwLog::DEBUG,"... calcSun: Lat %f, Lon %f, at: %d, next SR: %d, next SS: %d", latitude, longitude, t, sunR, sunS);
|
||||||
|
|
||||||
if (!isnan(time) && !isnan(date) && !isnan(latitude) && !isnan(longitude) && !isnan(timezone)) {
|
if (!isnan(time) && !isnan(date) && !isnan(latitude) && !isnan(longitude) && !isnan(timezone)) {
|
||||||
// Calculate local time
|
// Calculate local time
|
||||||
|
@ -267,8 +267,39 @@ SensorData calcSunsetSunrise(GwApi *api, double time, double date, double latitu
|
||||||
returnset.sunriseMinute = intminSR;
|
returnset.sunriseMinute = intminSR;
|
||||||
returnset.sunDown = sunDown;
|
returnset.sunDown = sunDown;
|
||||||
|
|
||||||
api->getLogger()->logDebug(GwLog::DEBUG,"... calcSun: at t: %d, hasRise: %d, next SR: %d, hasSet: %d, next SS: %d\n", t, sr.hasRise, sr.riseTime, sr.hasSet, sr.setTime);
|
// api->getLogger()->logDebug(GwLog::DEBUG,"... calcSun: at t: %d, hasRise: %d, next SR: %d, hasSet: %d, next SS: %d\n", t, sr.hasRise, sr.riseTime, sr.hasSet, sr.setTime);
|
||||||
return returnset;
|
return returnset;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Battery graphic with fill level
|
||||||
|
void batteryGraphic(uint x, uint y, float percent, int pcolor, int bcolor){
|
||||||
|
// Show battery
|
||||||
|
int xb = x; // X position
|
||||||
|
int yb = y; // Y position
|
||||||
|
int t = 4; // Line thickness
|
||||||
|
// Percent limits
|
||||||
|
if(percent < 0){
|
||||||
|
percent = 0;
|
||||||
|
}
|
||||||
|
if(percent > 99){
|
||||||
|
percent = 99;
|
||||||
|
}
|
||||||
|
// Battery corpus 100x80 with fill level
|
||||||
|
int level = int((100.0 - percent) * (80-(2*t)) / 100.0);
|
||||||
|
display.fillRect(xb, yb, 100, 80, pcolor);
|
||||||
|
if(percent < 99){
|
||||||
|
display.fillRect(xb+t, yb+t, 100-(2*t), level, bcolor);
|
||||||
|
}
|
||||||
|
// Plus pol 20x15
|
||||||
|
int xp = xb + 20;
|
||||||
|
int yp = yb - 15 + t;
|
||||||
|
display.fillRect(xp, yp, 20, 15, pcolor);
|
||||||
|
display.fillRect(xp+t, yp+t, 20-(2*t), 15-(2*t), bcolor);
|
||||||
|
// Minus pol 20x15
|
||||||
|
int xm = xb + 60;
|
||||||
|
int ym = yb -15 + t;
|
||||||
|
display.fillRect(xm, ym, 20, 15, pcolor);
|
||||||
|
display.fillRect(xm+t, ym+t, 20-(2*t), 15-(2*t), bcolor);
|
||||||
|
}
|
||||||
|
|
||||||
#endif
|
#endif
|
|
@ -44,4 +44,6 @@ void displayHeader(CommonData &commonData, GwApi::BoatValue *date, GwApi::BoatVa
|
||||||
|
|
||||||
SensorData calcSunsetSunrise(GwApi *api, double time, double date, double latitude, double longitude, double timezone); // Calulate sunset and sunrise
|
SensorData calcSunsetSunrise(GwApi *api, double time, double date, double latitude, double longitude, double timezone); // Calulate sunset and sunrise
|
||||||
|
|
||||||
|
void batteryGraphic(uint x, uint y, float percent, int pcolor, int bcolor); // Battery graphic with fill level
|
||||||
|
|
||||||
#endif
|
#endif
|
|
@ -31,7 +31,7 @@ FormatedData formatValue(GwApi::BoatValue *value, CommonData &commondata){
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
LOG_DEBUG(GwLog::DEBUG,"formatValue init: getFormat: %s date->value: %f time->value: %f", value->getFormat(), commondata.date->value, commondata.time->value);
|
// LOG_DEBUG(GwLog::DEBUG,"formatValue init: getFormat: %s date->value: %f time->value: %f", value->getFormat(), commondata.date->value, commondata.time->value);
|
||||||
static const int bsize = 30;
|
static const int bsize = 30;
|
||||||
char buffer[bsize+1];
|
char buffer[bsize+1];
|
||||||
buffer[0]=0;
|
buffer[0]=0;
|
||||||
|
@ -42,7 +42,7 @@ FormatedData formatValue(GwApi::BoatValue *value, CommonData &commondata){
|
||||||
if (commondata.time->value + int(timeZone*3600) > 86400) {dayoffset = 1;}
|
if (commondata.time->value + int(timeZone*3600) > 86400) {dayoffset = 1;}
|
||||||
if (commondata.time->value + int(timeZone*3600) < 0) {dayoffset = -1;}
|
if (commondata.time->value + int(timeZone*3600) < 0) {dayoffset = -1;}
|
||||||
|
|
||||||
LOG_DEBUG(GwLog::DEBUG,"... formatDate value->value: %f tz: %f dayoffset: %d", value->value, timeZone, dayoffset);
|
// LOG_DEBUG(GwLog::DEBUG,"... formatDate value->value: %f tz: %f dayoffset: %d", value->value, timeZone, dayoffset);
|
||||||
|
|
||||||
tmElements_t parts;
|
tmElements_t parts;
|
||||||
time_t tv=tNMEA0183Msg::daysToTime_t(value->value + dayoffset);
|
time_t tv=tNMEA0183Msg::daysToTime_t(value->value + dayoffset);
|
||||||
|
@ -82,7 +82,7 @@ FormatedData formatValue(GwApi::BoatValue *value, CommonData &commondata){
|
||||||
timeInSeconds = value->value + int(timeZone * 3600);
|
timeInSeconds = value->value + int(timeZone * 3600);
|
||||||
if (timeInSeconds > 86400) {timeInSeconds = timeInSeconds - 86400;}
|
if (timeInSeconds > 86400) {timeInSeconds = timeInSeconds - 86400;}
|
||||||
if (timeInSeconds < 0) {timeInSeconds = timeInSeconds + 86400;}
|
if (timeInSeconds < 0) {timeInSeconds = timeInSeconds + 86400;}
|
||||||
LOG_DEBUG(GwLog::DEBUG,"... formatTime value: %f tz: %f corrected timeInSeconds: %f ", value->value, timeZone, timeInSeconds);
|
// LOG_DEBUG(GwLog::DEBUG,"... formatTime value: %f tz: %f corrected timeInSeconds: %f ", value->value, timeZone, timeInSeconds);
|
||||||
if(usesimudata == false) {
|
if(usesimudata == false) {
|
||||||
val=modf(timeInSeconds/3600.0,&inthr);
|
val=modf(timeInSeconds/3600.0,&inthr);
|
||||||
val=modf(val*3600.0/60.0,&intmin);
|
val=modf(val*3600.0/60.0,&intmin);
|
||||||
|
|
|
@ -413,7 +413,15 @@ void sensorTask(void *param){
|
||||||
if(millis() > starttime8 + 1000 && (String(powsensor1) == "INA219" || String(powsensor1) == "INA226")){
|
if(millis() > starttime8 + 1000 && (String(powsensor1) == "INA219" || String(powsensor1) == "INA226")){
|
||||||
starttime8 = millis();
|
starttime8 = millis();
|
||||||
if(String(powsensor1) == "INA226" && INA226_1_ready == true){
|
if(String(powsensor1) == "INA226" && INA226_1_ready == true){
|
||||||
sensors.batteryVoltage = ina226_1.getBusVoltage();
|
double voltage = ina226_1.getBusVoltage();
|
||||||
|
// Limiter for voltage average building
|
||||||
|
if(voltage < -30){
|
||||||
|
voltage = -30;
|
||||||
|
}
|
||||||
|
if(voltage > 30){
|
||||||
|
voltage = 30;
|
||||||
|
}
|
||||||
|
sensors.batteryVoltage = voltage;
|
||||||
sensors.batteryCurrent = ina226_1.getCurrent() * corrFactor;
|
sensors.batteryCurrent = ina226_1.getCurrent() * corrFactor;
|
||||||
// Eliminates bit jitter by zero current values
|
// Eliminates bit jitter by zero current values
|
||||||
float factor = maxCurrent / 100;
|
float factor = maxCurrent / 100;
|
||||||
|
|
|
@ -49,10 +49,13 @@ public:
|
||||||
bool holdvalues = config->getBool(config->holdvalues);
|
bool holdvalues = config->getBool(config->holdvalues);
|
||||||
String flashLED = config->getString(config->flashLED);
|
String flashLED = config->getString(config->flashLED);
|
||||||
String batVoltage = config->getString(config->batteryVoltage);
|
String batVoltage = config->getString(config->batteryVoltage);
|
||||||
|
int batCapacity = config->getInt(config->batteryCapacity);
|
||||||
String batType = config->getString(config->batteryType);
|
String batType = config->getString(config->batteryType);
|
||||||
String backlightMode = config->getString(config->backlight);
|
String backlightMode = config->getString(config->backlight);
|
||||||
|
|
||||||
double value1 = 0;
|
double value1 = 0; // Battery voltage
|
||||||
|
double value2 = 0; // Battery current
|
||||||
|
double value3 = 0; // Battery power consumption
|
||||||
double valueTrend = 0; // Average over 10 values
|
double valueTrend = 0; // Average over 10 values
|
||||||
|
|
||||||
// Get voltage value
|
// Get voltage value
|
||||||
|
@ -74,18 +77,28 @@ public:
|
||||||
switch (average) {
|
switch (average) {
|
||||||
case 0:
|
case 0:
|
||||||
value1 = commonData.data.batteryVoltage; // Live data
|
value1 = commonData.data.batteryVoltage; // Live data
|
||||||
|
value2 = commonData.data.batteryCurrent;
|
||||||
|
value3 = commonData.data.batteryPower;
|
||||||
break;
|
break;
|
||||||
case 1:
|
case 1:
|
||||||
value1 = commonData.data.batteryVoltage10; // Average 10s
|
value1 = commonData.data.batteryVoltage10; // Average 10s
|
||||||
|
value2 = commonData.data.batteryCurrent10;
|
||||||
|
value3 = commonData.data.batteryPower10;
|
||||||
break;
|
break;
|
||||||
case 2:
|
case 2:
|
||||||
value1 = commonData.data.batteryVoltage60; // Average 60s
|
value1 = commonData.data.batteryVoltage60; // Average 60s
|
||||||
|
value2 = commonData.data.batteryCurrent60;
|
||||||
|
value3 = commonData.data.batteryPower60;
|
||||||
break;
|
break;
|
||||||
case 3:
|
case 3:
|
||||||
value1 = commonData.data.batteryVoltage300; // Average 300s
|
value1 = commonData.data.batteryVoltage300; // Average 300s
|
||||||
|
value2 = commonData.data.batteryCurrent300;
|
||||||
|
value3 = commonData.data.batteryPower300;
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
value1 = commonData.data.batteryVoltage; // Default
|
value1 = commonData.data.batteryVoltage; // Default
|
||||||
|
value2 = commonData.data.batteryCurrent;
|
||||||
|
value3 = commonData.data.batteryPower;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
bool valid1 = true;
|
bool valid1 = true;
|
||||||
|
@ -149,35 +162,45 @@ public:
|
||||||
}
|
}
|
||||||
// Clear display in obp60task.cpp in main loop
|
// Clear display in obp60task.cpp in main loop
|
||||||
|
|
||||||
// Show battery
|
// Show name
|
||||||
int xb = 150; // X position
|
display.setTextColor(textcolor);
|
||||||
int yb = 80; // Y position
|
display.setFont(&Ubuntu_Bold20pt7b);
|
||||||
int t = 4; // Line thickness
|
display.setCursor(10, 65);
|
||||||
// Battery corpus 100x80
|
display.print("Bat.");
|
||||||
display.fillRect(xb, yb, 100, 80, pixelcolor);
|
|
||||||
display.fillRect(xb+t, yb+t, 100-(2*t), 80-(2*t), bgcolor);
|
|
||||||
// Plus pol 20x15
|
|
||||||
int xp = 170;
|
|
||||||
int yp = 69;
|
|
||||||
display.fillRect(xp, yp, 20, 15, pixelcolor);
|
|
||||||
display.fillRect(xp+t, yp+t, 20-(2*t), 15-(2*t), bgcolor);
|
|
||||||
// Minus pol 20x15
|
|
||||||
int xm = 210;
|
|
||||||
int ym = 69;
|
|
||||||
display.fillRect(xm, ym, 20, 15, pixelcolor);
|
|
||||||
display.fillRect(xm+t, ym+t, 20-(2*t), 15-(2*t), bgcolor);
|
|
||||||
|
|
||||||
|
|
||||||
// Show batery type
|
// Show batery type
|
||||||
display.setTextColor(textcolor);
|
display.setTextColor(textcolor);
|
||||||
display.setFont(&Ubuntu_Bold8pt7b);
|
display.setFont(&Ubuntu_Bold8pt7b);
|
||||||
display.setCursor(295, 100);
|
display.setCursor(90, 65);
|
||||||
display.print(batType);
|
display.print(batType);
|
||||||
|
|
||||||
|
// Show voltage type
|
||||||
|
display.setTextColor(textcolor);
|
||||||
|
display.setFont(&DSEG7Classic_BoldItalic20pt7b);
|
||||||
|
display.setCursor(10, 140);
|
||||||
|
int bvoltage = 0;
|
||||||
|
if(String(batVoltage) == "12V") bvoltage = 12;
|
||||||
|
else bvoltage = 24;
|
||||||
|
display.print(bvoltage);
|
||||||
|
display.setFont(&Ubuntu_Bold16pt7b);
|
||||||
|
display.print("V");
|
||||||
|
|
||||||
|
// Show batery capacity
|
||||||
|
display.setTextColor(textcolor);
|
||||||
|
display.setFont(&DSEG7Classic_BoldItalic20pt7b);
|
||||||
|
display.setCursor(10, 200);
|
||||||
|
display.print(batCapacity);
|
||||||
|
display.setFont(&Ubuntu_Bold16pt7b);
|
||||||
|
display.print("Ah");
|
||||||
|
|
||||||
|
// Show battery with fill level
|
||||||
|
static int level = 0;
|
||||||
|
batteryGraphic(150, 45, level, pixelcolor, bgcolor);
|
||||||
|
|
||||||
// Show average settings
|
// Show average settings
|
||||||
display.setTextColor(textcolor);
|
display.setTextColor(textcolor);
|
||||||
display.setFont(&Ubuntu_Bold8pt7b);
|
display.setFont(&Ubuntu_Bold8pt7b);
|
||||||
display.setCursor(320, 100);
|
display.setCursor(150, 145);
|
||||||
switch (average) {
|
switch (average) {
|
||||||
case 0:
|
case 0:
|
||||||
display.print("Avg: 1s");
|
display.print("Avg: 1s");
|
||||||
|
@ -196,10 +219,28 @@ public:
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Show fill level in percent
|
||||||
|
display.setTextColor(textcolor);
|
||||||
|
display.setFont(&DSEG7Classic_BoldItalic20pt7b);
|
||||||
|
display.setCursor(150, 200);
|
||||||
|
display.print(level);
|
||||||
|
display.setFont(&Ubuntu_Bold16pt7b);
|
||||||
|
display.print("%");
|
||||||
|
level += 1;
|
||||||
|
level = level % 100;
|
||||||
|
|
||||||
|
// Show time to full discharge
|
||||||
|
display.setTextColor(textcolor);
|
||||||
|
display.setFont(&DSEG7Classic_BoldItalic20pt7b);
|
||||||
|
display.setCursor(150, 260);
|
||||||
|
display.print(8.3, 1);
|
||||||
|
display.setFont(&Ubuntu_Bold16pt7b);
|
||||||
|
display.print("h");
|
||||||
|
|
||||||
// Reading bus data or using simulation data
|
// Reading bus data or using simulation data
|
||||||
display.setTextColor(textcolor);
|
display.setTextColor(textcolor);
|
||||||
display.setFont(&DSEG7Classic_BoldItalic20pt7b);
|
display.setFont(&DSEG7Classic_BoldItalic20pt7b);
|
||||||
display.setCursor(20, 240);
|
display.setCursor(260, 140);
|
||||||
if(simulation == true){
|
if(simulation == true){
|
||||||
if(batVoltage == "12V"){
|
if(batVoltage == "12V"){
|
||||||
value1 = 12.0;
|
value1 = 12.0;
|
||||||
|
@ -228,6 +269,24 @@ public:
|
||||||
display.print("---"); // Missing bus data
|
display.print("---"); // Missing bus data
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
display.setFont(&Ubuntu_Bold16pt7b);
|
||||||
|
display.print("V");
|
||||||
|
|
||||||
|
// Show actual current in A
|
||||||
|
display.setTextColor(textcolor);
|
||||||
|
display.setFont(&DSEG7Classic_BoldItalic20pt7b);
|
||||||
|
display.setCursor(260, 200);
|
||||||
|
display.print(value2, 1);
|
||||||
|
display.setFont(&Ubuntu_Bold16pt7b);
|
||||||
|
display.print("A");
|
||||||
|
|
||||||
|
// Show actual consumption in W
|
||||||
|
display.setTextColor(textcolor);
|
||||||
|
display.setFont(&DSEG7Classic_BoldItalic20pt7b);
|
||||||
|
display.setCursor(260, 260);
|
||||||
|
display.print(value3, 1);
|
||||||
|
display.setFont(&Ubuntu_Bold16pt7b);
|
||||||
|
display.print("W");
|
||||||
|
|
||||||
// Key Layout
|
// Key Layout
|
||||||
display.setTextColor(textcolor);
|
display.setTextColor(textcolor);
|
||||||
|
|
|
@ -122,8 +122,36 @@
|
||||||
"default": "0.0",
|
"default": "0.0",
|
||||||
"check": "checkMinMax",
|
"check": "checkMinMax",
|
||||||
"min": 0.0,
|
"min": 0.0,
|
||||||
|
"max": 999.0,
|
||||||
|
"description": "Battery capacity [0...999Ah]",
|
||||||
|
"category": "OBP60 Settings",
|
||||||
|
"capabilities": {
|
||||||
|
"obp60":"true"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "solarPower",
|
||||||
|
"label": "Solar Power [W]",
|
||||||
|
"type": "number",
|
||||||
|
"default": "0.0",
|
||||||
|
"check": "checkMinMax",
|
||||||
|
"min": 0.0,
|
||||||
"max": 10000.0,
|
"max": 10000.0,
|
||||||
"description": "Battery capacity [0...10000Ah]",
|
"description": "Solar power [0...10000W]",
|
||||||
|
"category": "OBP60 Settings",
|
||||||
|
"capabilities": {
|
||||||
|
"obp60":"true"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "genPower",
|
||||||
|
"label": "Genarator Power [W]",
|
||||||
|
"type": "number",
|
||||||
|
"default": "0.0",
|
||||||
|
"check": "checkMinMax",
|
||||||
|
"min": 0.0,
|
||||||
|
"max": 10000.0,
|
||||||
|
"description": "Generator power [0...10000W]",
|
||||||
"category": "OBP60 Settings",
|
"category": "OBP60 Settings",
|
||||||
"capabilities": {
|
"capabilities": {
|
||||||
"obp60":"true"
|
"obp60":"true"
|
||||||
|
@ -672,7 +700,7 @@
|
||||||
"capabilities": {
|
"capabilities": {
|
||||||
"obp60":"true"
|
"obp60":"true"
|
||||||
},
|
},
|
||||||
"condition":[{"page1type":"OneValue"},{"page1type":"TwoValue"},{"page1type":"ThreeValue"},{"page1type":"FourValues"},{"page1type":"FourValues2"}]
|
"condition":[{"page1type":"OneValue"},{"page1type":"TwoValues"},{"page1type":"ThreeValues"},{"page1type":"FourValues"},{"page1type":"FourValues2"}]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "page1value2",
|
"name": "page1value2",
|
||||||
|
@ -684,7 +712,7 @@
|
||||||
"capabilities": {
|
"capabilities": {
|
||||||
"obp60":"true"
|
"obp60":"true"
|
||||||
},
|
},
|
||||||
"condition":[{"page1type":"TwoValue"},{"page1type":"ThreeValue"},{"page1type":"FourValues"},{"page1type":"FourValues2"}]
|
"condition":[{"page1type":"TwoValues"},{"page1type":"ThreeValues"},{"page1type":"FourValues"},{"page1type":"FourValues2"}]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "page1value3",
|
"name": "page1value3",
|
||||||
|
@ -696,7 +724,7 @@
|
||||||
"capabilities": {
|
"capabilities": {
|
||||||
"obp60":"true"
|
"obp60":"true"
|
||||||
},
|
},
|
||||||
"condition":[{"page1type":"ThreeValue"},{"page1type":"FourValues"},{"page1type":"FourValues2"}]
|
"condition":[{"page1type":"ThreeValues"},{"page1type":"FourValues"},{"page1type":"FourValues2"}]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "page1value4",
|
"name": "page1value4",
|
||||||
|
@ -733,7 +761,7 @@
|
||||||
"capabilities": {
|
"capabilities": {
|
||||||
"obp60":"true"
|
"obp60":"true"
|
||||||
},
|
},
|
||||||
"condition":[{"page2type":"OneValue"},{"page2type":"TwoValue"},{"page2type":"ThreeValue"},{"page2type":"FourValues"},{"page2type":"FourValues2"}]
|
"condition":[{"page2type":"OneValue"},{"page2type":"TwoValues"},{"page2type":"ThreeValues"},{"page2type":"FourValues"},{"page2type":"FourValues2"}]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "page2value2",
|
"name": "page2value2",
|
||||||
|
@ -745,7 +773,7 @@
|
||||||
"capabilities": {
|
"capabilities": {
|
||||||
"obp60":"true"
|
"obp60":"true"
|
||||||
},
|
},
|
||||||
"condition":[{"page2type":"TwoValue"},{"page2type":"ThreeValue"},{"page2type":"FourValues"},{"page2type":"FourValues2"}]
|
"condition":[{"page2type":"TwoValues"},{"page2type":"ThreeValues"},{"page2type":"FourValues"},{"page2type":"FourValues2"}]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "page2value3",
|
"name": "page2value3",
|
||||||
|
@ -757,7 +785,7 @@
|
||||||
"capabilities": {
|
"capabilities": {
|
||||||
"obp60":"true"
|
"obp60":"true"
|
||||||
},
|
},
|
||||||
"condition":[{"page2type":"ThreeValue"},{"page2type":"FourValues"},{"page2type":"FourValues2"}]
|
"condition":[{"page2type":"ThreeValues"},{"page2type":"FourValues"},{"page2type":"FourValues2"}]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "page2value4",
|
"name": "page2value4",
|
||||||
|
@ -794,7 +822,7 @@
|
||||||
"capabilities": {
|
"capabilities": {
|
||||||
"obp60":"true"
|
"obp60":"true"
|
||||||
},
|
},
|
||||||
"condition":[{"page3type":"OneValue"},{"page3type":"TwoValue"},{"page3type":"ThreeValue"},{"page3type":"FourValues"},{"page3type":"FourValues2"}]
|
"condition":[{"page3type":"OneValue"},{"page3type":"TwoValues"},{"page3type":"ThreeValues"},{"page3type":"FourValues"},{"page3type":"FourValues2"}]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "page3value2",
|
"name": "page3value2",
|
||||||
|
@ -806,7 +834,7 @@
|
||||||
"capabilities": {
|
"capabilities": {
|
||||||
"obp60":"true"
|
"obp60":"true"
|
||||||
},
|
},
|
||||||
"condition":[{"page3type":"TwoValue"},{"page3type":"ThreeValue"},{"page3type":"FourValues"},{"page3type":"FourValues2"}]
|
"condition":[{"page3type":"TwoValues"},{"page3type":"ThreeValues"},{"page3type":"FourValues"},{"page3type":"FourValues2"}]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "page3value3",
|
"name": "page3value3",
|
||||||
|
@ -818,7 +846,7 @@
|
||||||
"capabilities": {
|
"capabilities": {
|
||||||
"obp60":"true"
|
"obp60":"true"
|
||||||
},
|
},
|
||||||
"condition":[{"page3type":"ThreeValue"},{"page3type":"FourValues"},{"page3type":"FourValues2"}]
|
"condition":[{"page3type":"ThreeValues"},{"page3type":"FourValues"},{"page3type":"FourValues2"}]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "page3value4",
|
"name": "page3value4",
|
||||||
|
@ -855,7 +883,7 @@
|
||||||
"capabilities": {
|
"capabilities": {
|
||||||
"obp60":"true"
|
"obp60":"true"
|
||||||
},
|
},
|
||||||
"condition":[{"page4type":"OneValue"},{"page4type":"TwoValue"},{"page4type":"ThreeValue"},{"page4type":"FourValues"},{"page4type":"FourValues2"}]
|
"condition":[{"page4type":"OneValue"},{"page4type":"TwoValues"},{"page4type":"ThreeValues"},{"page4type":"FourValues"},{"page4type":"FourValues2"}]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "page4value2",
|
"name": "page4value2",
|
||||||
|
@ -867,7 +895,7 @@
|
||||||
"capabilities": {
|
"capabilities": {
|
||||||
"obp60":"true"
|
"obp60":"true"
|
||||||
},
|
},
|
||||||
"condition":[{"page4type":"TwoValue"},{"page4type":"ThreeValue"},{"page4type":"FourValues"},{"page4type":"FourValues2"}]
|
"condition":[{"page4type":"TwoValues"},{"page4type":"ThreeValues"},{"page4type":"FourValues"},{"page4type":"FourValues2"}]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "page4value3",
|
"name": "page4value3",
|
||||||
|
@ -879,7 +907,7 @@
|
||||||
"capabilities": {
|
"capabilities": {
|
||||||
"obp60":"true"
|
"obp60":"true"
|
||||||
},
|
},
|
||||||
"condition":[{"page4type":"ThreeValue"},{"page4type":"FourValues"},{"page4type":"FourValues2"}]
|
"condition":[{"page4type":"ThreeValues"},{"page4type":"FourValues"},{"page4type":"FourValues2"}]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "page4value4",
|
"name": "page4value4",
|
||||||
|
@ -916,7 +944,7 @@
|
||||||
"capabilities": {
|
"capabilities": {
|
||||||
"obp60":"true"
|
"obp60":"true"
|
||||||
},
|
},
|
||||||
"condition":[{"page5type":"OneValue"},{"page5type":"TwoValue"},{"page5type":"ThreeValue"},{"page5type":"FourValues"},{"page5type":"FourValues2"}]
|
"condition":[{"page5type":"OneValue"},{"page5type":"TwoValues"},{"page5type":"ThreeValues"},{"page5type":"FourValues"},{"page5type":"FourValues2"}]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "page5value2",
|
"name": "page5value2",
|
||||||
|
@ -928,7 +956,7 @@
|
||||||
"capabilities": {
|
"capabilities": {
|
||||||
"obp60":"true"
|
"obp60":"true"
|
||||||
},
|
},
|
||||||
"condition":[{"page5type":"TwoValue"},{"page5type":"ThreeValue"},{"page5type":"FourValues"},{"page5type":"FourValues2"}]
|
"condition":[{"page5type":"TwoValues"},{"page5type":"ThreeValues"},{"page5type":"FourValues"},{"page5type":"FourValues2"}]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "page5value3",
|
"name": "page5value3",
|
||||||
|
@ -940,7 +968,7 @@
|
||||||
"capabilities": {
|
"capabilities": {
|
||||||
"obp60":"true"
|
"obp60":"true"
|
||||||
},
|
},
|
||||||
"condition":[{"page5type":"ThreeValue"},{"page5type":"FourValues"},{"page5type":"FourValues2"}]
|
"condition":[{"page5type":"ThreeValues"},{"page5type":"FourValues"},{"page5type":"FourValues2"}]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "page5value4",
|
"name": "page5value4",
|
||||||
|
@ -977,7 +1005,7 @@
|
||||||
"capabilities": {
|
"capabilities": {
|
||||||
"obp60":"true"
|
"obp60":"true"
|
||||||
},
|
},
|
||||||
"condition":[{"page6type":"OneValue"},{"page6type":"TwoValue"},{"page6type":"ThreeValue"},{"page6type":"FourValues"},{"page6type":"FourValues2"}]
|
"condition":[{"page6type":"OneValue"},{"page6type":"TwoValues"},{"page6type":"ThreeValues"},{"page6type":"FourValues"},{"page6type":"FourValues2"}]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "page6value2",
|
"name": "page6value2",
|
||||||
|
@ -989,7 +1017,7 @@
|
||||||
"capabilities": {
|
"capabilities": {
|
||||||
"obp60":"true"
|
"obp60":"true"
|
||||||
},
|
},
|
||||||
"condition":[{"page6type":"TwoValue"},{"page6type":"ThreeValue"},{"page6type":"FourValues"},{"page6type":"FourValues2"}]
|
"condition":[{"page6type":"TwoValues"},{"page6type":"ThreeValues"},{"page6type":"FourValues"},{"page6type":"FourValues2"}]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "page6value3",
|
"name": "page6value3",
|
||||||
|
@ -1001,7 +1029,7 @@
|
||||||
"capabilities": {
|
"capabilities": {
|
||||||
"obp60":"true"
|
"obp60":"true"
|
||||||
},
|
},
|
||||||
"condition":[{"page6type":"ThreeValue"},{"page6type":"FourValues"},{"page6type":"FourValues2"}]
|
"condition":[{"page6type":"ThreeValues"},{"page6type":"FourValues"},{"page6type":"FourValues2"}]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "page6value4",
|
"name": "page6value4",
|
||||||
|
@ -1038,7 +1066,7 @@
|
||||||
"capabilities": {
|
"capabilities": {
|
||||||
"obp60":"true"
|
"obp60":"true"
|
||||||
},
|
},
|
||||||
"condition":[{"page7type":"OneValue"},{"page7type":"TwoValue"},{"page7type":"ThreeValue"},{"page7type":"FourValues"},{"page7type":"FourValues2"}]
|
"condition":[{"page7type":"OneValue"},{"page7type":"TwoValues"},{"page7type":"ThreeValues"},{"page7type":"FourValues"},{"page7type":"FourValues2"}]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "page7value2",
|
"name": "page7value2",
|
||||||
|
@ -1050,7 +1078,7 @@
|
||||||
"capabilities": {
|
"capabilities": {
|
||||||
"obp60":"true"
|
"obp60":"true"
|
||||||
},
|
},
|
||||||
"condition":[{"page7type":"TwoValue"},{"page7type":"ThreeValue"},{"page7type":"FourValues"},{"page7type":"FourValues2"}]
|
"condition":[{"page7type":"TwoValues"},{"page7type":"ThreeValues"},{"page7type":"FourValues"},{"page7type":"FourValues2"}]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "page7value3",
|
"name": "page7value3",
|
||||||
|
@ -1062,7 +1090,7 @@
|
||||||
"capabilities": {
|
"capabilities": {
|
||||||
"obp60":"true"
|
"obp60":"true"
|
||||||
},
|
},
|
||||||
"condition":[{"page7type":"ThreeValue"},{"page7type":"FourValues"},{"page7type":"FourValues2"}]
|
"condition":[{"page7type":"ThreeValues"},{"page7type":"FourValues"},{"page7type":"FourValues2"}]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "page7value4",
|
"name": "page7value4",
|
||||||
|
@ -1099,7 +1127,7 @@
|
||||||
"capabilities": {
|
"capabilities": {
|
||||||
"obp60":"true"
|
"obp60":"true"
|
||||||
},
|
},
|
||||||
"condition":[{"page8type":"OneValue"},{"page8type":"TwoValue"},{"page8type":"ThreeValue"},{"page8type":"FourValues"},{"page8type":"FourValues2"}]
|
"condition":[{"page8type":"OneValue"},{"page8type":"TwoValues"},{"page8type":"ThreeValues"},{"page8type":"FourValues"},{"page8type":"FourValues2"}]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "page8value2",
|
"name": "page8value2",
|
||||||
|
@ -1111,7 +1139,7 @@
|
||||||
"capabilities": {
|
"capabilities": {
|
||||||
"obp60":"true"
|
"obp60":"true"
|
||||||
},
|
},
|
||||||
"condition":[{"page8type":"TwoValue"},{"page8type":"ThreeValue"},{"page8type":"FourValues"},{"page8type":"FourValues2"}]
|
"condition":[{"page8type":"TwoValues"},{"page8type":"ThreeValues"},{"page8type":"FourValues"},{"page8type":"FourValues2"}]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "page8value3",
|
"name": "page8value3",
|
||||||
|
@ -1123,7 +1151,7 @@
|
||||||
"capabilities": {
|
"capabilities": {
|
||||||
"obp60":"true"
|
"obp60":"true"
|
||||||
},
|
},
|
||||||
"condition":[{"page8type":"ThreeValue"},{"page8type":"FourValues"},{"page8type":"FourValues2"}]
|
"condition":[{"page8type":"ThreeValues"},{"page8type":"FourValues"},{"page8type":"FourValues2"}]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "page8value4",
|
"name": "page8value4",
|
||||||
|
@ -1160,7 +1188,7 @@
|
||||||
"capabilities": {
|
"capabilities": {
|
||||||
"obp60":"true"
|
"obp60":"true"
|
||||||
},
|
},
|
||||||
"condition":[{"page9type":"OneValue"},{"page9type":"TwoValue"},{"page9type":"ThreeValue"},{"page9type":"FourValues"},{"page9type":"FourValues2"}]
|
"condition":[{"page9type":"OneValue"},{"page9type":"TwoValues"},{"page9type":"ThreeValues"},{"page9type":"FourValues"},{"page9type":"FourValues2"}]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "page9value2",
|
"name": "page9value2",
|
||||||
|
@ -1172,7 +1200,7 @@
|
||||||
"capabilities": {
|
"capabilities": {
|
||||||
"obp60":"true"
|
"obp60":"true"
|
||||||
},
|
},
|
||||||
"condition":[{"page9type":"TwoValue"},{"page9type":"ThreeValue"},{"page9type":"FourValues"},{"page9type":"FourValues2"}]
|
"condition":[{"page9type":"TwoValues"},{"page9type":"ThreeValues"},{"page9type":"FourValues"},{"page9type":"FourValues2"}]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "page9value3",
|
"name": "page9value3",
|
||||||
|
@ -1184,7 +1212,7 @@
|
||||||
"capabilities": {
|
"capabilities": {
|
||||||
"obp60":"true"
|
"obp60":"true"
|
||||||
},
|
},
|
||||||
"condition":[{"page9type":"ThreeValue"},{"page9type":"FourValues"},{"page9type":"FourValues2"}]
|
"condition":[{"page9type":"ThreeValues"},{"page9type":"FourValues"},{"page9type":"FourValues2"}]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "page9value4",
|
"name": "page9value4",
|
||||||
|
@ -1221,7 +1249,7 @@
|
||||||
"capabilities": {
|
"capabilities": {
|
||||||
"obp60":"true"
|
"obp60":"true"
|
||||||
},
|
},
|
||||||
"condition":[{"page10type":"OneValue"},{"page10type":"TwoValue"},{"page10type":"ThreeValue"},{"page10type":"FourValues"},{"page10type":"FourValues2"}]
|
"condition":[{"page10type":"OneValue"},{"page10type":"TwoValues"},{"page10type":"ThreeValues"},{"page10type":"FourValues"},{"page10type":"FourValues2"}]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "page10value2",
|
"name": "page10value2",
|
||||||
|
@ -1233,7 +1261,7 @@
|
||||||
"capabilities": {
|
"capabilities": {
|
||||||
"obp60":"true"
|
"obp60":"true"
|
||||||
},
|
},
|
||||||
"condition":[{"page10type":"TwoValue"},{"page10type":"ThreeValue"},{"page10type":"FourValues"},{"page10type":"FourValues2"}]
|
"condition":[{"page10type":"TwoValues"},{"page10type":"ThreeValues"},{"page10type":"FourValues"},{"page10type":"FourValues2"}]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "page10value3",
|
"name": "page10value3",
|
||||||
|
@ -1245,7 +1273,7 @@
|
||||||
"capabilities": {
|
"capabilities": {
|
||||||
"obp60":"true"
|
"obp60":"true"
|
||||||
},
|
},
|
||||||
"condition":[{"page10type":"ThreeValue"},{"page10type":"FourValues"},{"page10type":"FourValues2"}]
|
"condition":[{"page10type":"ThreeValues"},{"page10type":"FourValues"},{"page10type":"FourValues2"}]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "page10value4",
|
"name": "page10value4",
|
||||||
|
|
Loading…
Reference in New Issue