bmsd/co2meters.c

changeset 686
ca1fbb3bd3db
parent 684
ccb9f24d0fe9
child 718
59b02b64131b
equal deleted inserted replaced
685:a4fcdf24b5e7 686:ca1fbb3bd3db
186 186
187 void co2meter_set(char *edge_node, char *alias, char *payload) 187 void co2meter_set(char *edge_node, char *alias, char *payload)
188 { 188 {
189 struct json_object *jobj, *val, *sensor; 189 struct json_object *jobj, *val, *sensor;
190 sys_co2meter_list *co2meter, *tmpp; 190 sys_co2meter_list *co2meter, *tmpp;
191 bool new_co2meter = true, report = false; 191 bool new_co2meter = true;
192 192
193 // fprintf(stdout, "co2meter_set: %s/%s %s\n", edge_node, alias, payload); 193 // fprintf(stdout, "co2meter_set: %s/%s %s\n", edge_node, alias, payload);
194 194
195 /* 195 /*
196 * Search co2meter record in the memory array and use it if found. 196 * Search co2meter record in the memory array and use it if found.
218 co2meter->mode = xstrcpy((char *)"OFF"); 218 co2meter->mode = xstrcpy((char *)"OFF");
219 } 219 }
220 220
221 if (! co2meter->online) { 221 if (! co2meter->online) {
222 co2meter->online = true; 222 co2meter->online = true;
223 report = true;
224 syslog(LOG_NOTICE, "Online co2meter %s/%s mode %s", edge_node, alias, co2meter->mode); 223 syslog(LOG_NOTICE, "Online co2meter %s/%s mode %s", edge_node, alias, co2meter->mode);
225 } 224 }
226 225
227 /* 226 /*
228 * Process the JSON formatted payload. 227 * Process the JSON formatted payload.
300 } 299 }
301 co2meter_mysql_insert(co2meter); 300 co2meter_mysql_insert(co2meter);
302 } else { 301 } else {
303 co2meter_mysql_update(co2meter); 302 co2meter_mysql_update(co2meter);
304 } 303 }
305
306 if (report)
307 status_change();
308 } 304 }
309 305
310 306
311 307
312 /* 308 /*

mercurial