static void send_acc_sample(struct mg_connection *nc, const struct bm222_sample *s) { if (s->ts == 0) return; mg_printf_websocket_frame( nc, WEBSOCKET_OP_TEXT, "{\"t\": 2, \"ts\": %lf, \"x\": %d, \"y\": %d, \"z\": %d}", s->ts, s->x, s->y, s->z); }
static void push_data_to_all_websocket_connections(struct mg_mgr *m) { struct mg_connection *c; int memory_usage = (double) rand() / RAND_MAX * 100.0; for (c = mg_next(m, NULL); c != NULL; c = mg_next(m, c)) { if (c->flags & MG_F_IS_WEBSOCKET) { mg_printf_websocket_frame(c, WEBSOCKET_OP_TEXT, "%d", memory_usage); } } }
static void send_led(struct mg_connection *nc, double ts, unsigned char led) { if (ts == 0) return; mg_printf_websocket_frame(nc, WEBSOCKET_OP_TEXT, "{\"t\": 1, \"ts\": %lf, \"v\": %d}", ts, led); }
static void send_temp(struct mg_connection *nc, const struct temp_data *td) { if (td->ts == 0) return; mg_printf_websocket_frame(nc, WEBSOCKET_OP_TEXT, "{\"t\": 0, \"ts\": %lf, \"sv\": %lf, \"dt\": %lf}", td->ts, td->volt, td->temp); }