thermferm/server.c

changeset 504
862de87f9f89
parent 502
0e2c58f8eb78
child 506
cdcd07bbee30
equal deleted inserted replaced
503:003c20125212 504:862de87f9f89
2392 unit->mqtt_flag |= MQTT_FLAG_SP; 2392 unit->mqtt_flag |= MQTT_FLAG_SP;
2393 } 2393 }
2394 } 2394 }
2395 if (unit->heater_address) 2395 if (unit->heater_address)
2396 mqtt_publish_int(unit->alias, (char *)"heater", 0); 2396 mqtt_publish_int(unit->alias, (char *)"heater", 0);
2397 else
2398 mqtt_publish_clear(unit->alias, (char *)"heater");
2397 if (unit->cooler_address) 2399 if (unit->cooler_address)
2398 mqtt_publish_int(unit->alias, (char *)"cooler", 0); 2400 mqtt_publish_int(unit->alias, (char *)"cooler", 0);
2401 else
2402 mqtt_publish_clear(unit->alias, (char *)"cooler");
2399 if (unit->fan_address) 2403 if (unit->fan_address)
2400 mqtt_publish_int(unit->alias, (char *)"fan", 0); 2404 mqtt_publish_int(unit->alias, (char *)"fan", 0);
2405 else
2406 mqtt_publish_clear(unit->alias, (char *)"fan");
2401 break; 2407 break;
2402 } 2408 }
2403 } 2409 }
2404 2410
2405 } else if (val && (strcmp(kwd, (char *)"FRIDGE_SET") == 0)) { 2411 } else if (val && (strcmp(kwd, (char *)"FRIDGE_SET") == 0)) {
2513 device_out(unit->cooler_address, unit->cooler_state); 2519 device_out(unit->cooler_address, unit->cooler_state);
2514 device_out(unit->fan_address, unit->fan_state); 2520 device_out(unit->fan_address, unit->fan_state);
2515 device_out(unit->light_address, unit->light_state); 2521 device_out(unit->light_address, unit->light_state);
2516 if (unit->heater_address) 2522 if (unit->heater_address)
2517 mqtt_publish_int(unit->alias, (char *)"heater", 0); 2523 mqtt_publish_int(unit->alias, (char *)"heater", 0);
2524 else
2525 mqtt_publish_clear(unit->alias, (char *)"heater");
2518 if (unit->cooler_address) 2526 if (unit->cooler_address)
2519 mqtt_publish_int(unit->alias, (char *)"cooler", 0); 2527 mqtt_publish_int(unit->alias, (char *)"cooler", 0);
2528 else
2529 mqtt_publish_clear(unit->alias, (char *)"cooler");
2520 if (unit->fan_address) 2530 if (unit->fan_address)
2521 mqtt_publish_int(unit->alias, (char *)"fan", 0); 2531 mqtt_publish_int(unit->alias, (char *)"fan", 0);
2532 else
2533 mqtt_publish_clear(unit->alias, (char *)"fan");
2522 unit->mqtt_flag |= (MQTT_FLAG_PROFILE | MQTT_FLAG_SP); 2534 unit->mqtt_flag |= (MQTT_FLAG_PROFILE | MQTT_FLAG_SP);
2523 } 2535 }
2524 2536
2525 } else if (val && (strcmp(kwd, (char *)"PROF_STATE") == 0)) { 2537 } else if (val && (strcmp(kwd, (char *)"PROF_STATE") == 0)) {
2526 for (i = 0; i < 5; i++) { 2538 for (i = 0; i < 5; i++) {

mercurial