sandbox / Mbed OS simple-mbed-client-example

Dependencies:   simple-mbed-client

Fork of simple-mbed-client-example by Jan Jongboom

Revision:
16:71ec73ea9b6d
Parent:
14:ddc258abaaac
Child:
17:6d69aa1b393f
diff -r 27e27ae4a6b0 -r 71ec73ea9b6d main.cpp
--- a/main.cpp	Tue May 24 16:15:08 2016 +0000
+++ b/main.cpp	Tue May 24 15:02:19 2016 -0500
@@ -13,6 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
+#include <string>
 #include "mbed.h"
 #include "security.h"				// security file from connector.mbed.com
 #include "LWIPInterface.h"			// using Ethernet for connectivity
@@ -34,12 +35,12 @@
 
 // play function, invoked thru mbed Client
 void play(void* args) {
-	printf("I'm gonna play a song!\n");
+    printf("I'm gonna play a song!\n");
 }
 
 // patternUpdated is called when the value of led/0/pattern changes
 void patternUpdated(string newPattern) {
-	printf("Got a new pattern... %s\n", newPattern.c_str());
+    printf("Got a new pattern... %s\n", newPattern.c_str());
 }
 
 // Here we define some mbed Client resources
@@ -49,65 +50,63 @@
 
 // Status callbacks if you're interested in that
 void registered() {
-	printf("registered\n");
-	registeredLed = 0;
+    printf("registered\n");
+    registeredLed = 0;
 }
 void unregistered() {
-	printf("unregistered\n");
-	registeredLed = 1;
+    printf("unregistered\n");
+    registeredLed = 1;
 }
 
 // we cannot do blocking stuff here, or device will crash
 // release semaphore and update btn_count in the while() loop...
 void fall() {
-	updates.release();
+    updates.release();
 }
 
 // normal function
 void toggleLed() {
-	led = !led;
+    led = !led;
 }
 
 int main() {
     pc.baud(115200);
-    
-    printf("Hello world\n");
-    
+
     Ticker t;
     t.attach(&toggleLed, 1.0f);
-    
+
     btn.fall(&fall);
-    
-    // I want C++11 lambdas!
+
     // here we define functions that should live in the cloud
-    client.define_function("music/0/play", &play);
+    client.define_function("song/0/play", &play);
 
-    if (lwip.connect() != 0) {		// connect to the internet
-    	printf("Connect to eth failed...\n");
-    	return 1;
-    }					
+    int connect = lwip.connect(); // can swap out for other network iface
+    if (connect != 0) {
+        printf("Connect to eth failed...\n");
+        return 1;
+    }
 
-    printf("IP address %s\r\n", lwip.getIPAddress());
-    
-    bool setup = client.setup(&lwip);		// start mbed client!
+    printf("IP address %s\r\n", lwip.get_ip_address());
+
+    bool setup = client.setup(&lwip); // start mbed client!
     if (!setup) {
-    	printf("Setting up mbed_client failed...\n");
-    	return 1;
+        printf("Setting up mbed_client failed...\n");
+        return 1;
     }
 
     client.on_registered(&registered);
     client.on_unregistered(&unregistered);
-    
+
     while (1) {
-    	int v = updates.wait(25000);
-    	
-    	if (v == 1) {
-    		btn_count = btn_count + 1;
-    		// printf is a bit inflexible, static_cast to get the right value
-    		printf("btn_count is now %d\n", static_cast<int>(btn_count));
-    	}
-    	
-    	// call keep_alive every now and then
-    	client.keep_alive();
+        int v = updates.wait(25000);
+
+        if (v == 1) {
+            btn_count = btn_count + 1;
+            // printf is a bit inflexible, static_cast to get the right value
+            printf("btn_count is now %d\n", static_cast<int>(btn_count));
+        }
+
+        // call keep_alive at least every 30s.
+        client.keep_alive();
     }
 }