Guilhem Saurel
/
AV_MQTT_example
Example for AV_MQTT
Diff: main.cpp
- Revision:
- 6:761a452a8a77
- Parent:
- 2:b9b08c7d6e12
- Child:
- 7:66ff43202f50
--- a/main.cpp Mon Aug 12 15:34:07 2013 +0000 +++ b/main.cpp Tue Aug 13 13:38:27 2013 +0000 @@ -2,18 +2,14 @@ #include "rtos.h" #include "AV_MQTT.h" #include "EthernetInterface.h" -#include "picojson.h" EthernetInterface eth; DigitalIn jdown(p12), jleft(p13), jcenter(p14), jup(p15), jright(p16); DigitalOut l1(LED1), l2(LED2), l3(LED3), l4(LED4); -void callback(char *topic, char *message) { - picojson::value v; - picojson::parse(v, message, message + strlen(message)); - - int led = atoi(v.get<picojson::array>()[0].get("write").get<picojson::array>()[0].get("mbed_mqtt_example.led_settings").to_str().c_str()); +void callback(const char *key, const char *value) { + int led = atoi(value); l2 = (led & 4) >> 2; l3 = (led & 2) >> 1; l4 = led & 1; @@ -26,6 +22,7 @@ AV_MQTT client("10.41.240.6", callback, "MBED_MQTT_EXAMPLE", "mbed_password", "id", 1883, false); + while(true) { if (jdown) client.pub("button", "1");