Erick / Mbed 2 deprecated ICE_BLE_TEST

Dependencies:   NaturalTinyShell_ice libmDot-12Sept mbed-rtos mbed

Fork of ICE by Erick

Revision:
139:f1f4a523399f
Parent:
138:27c39d0e4e81
Child:
144:b32d6a6f445f
--- a/src/CloudDataHandler/CloudFileReceiver.cpp	Tue Sep 27 17:54:17 2016 +0000
+++ b/src/CloudDataHandler/CloudFileReceiver.cpp	Tue Sep 27 18:48:19 2016 +0000
@@ -114,8 +114,45 @@
             MailBox.put(msg);
             break;
         }
-        case TIMER_CONTROL_MTYPE:
+        case TIMER_CONTROL_MTYPE: {
+            logInfo("PROCESSING TIMER CONTROL FILE");
+            snprintf( filename, sizeof(FILENAME_STRING), "control_tm_%s.json",
+                      from_json["pay"]["tmcontrol"]["id"].get<std::string>().c_str() );
+            logInfo("TIMER CONTROL FILENAME=%s", filename);
+
+            memset( CloudFileReceiverWriteBuf, '\0', 1024 );
+            snprintf(CloudFileReceiverWriteBuf, sizeof(CloudFileReceiverWriteBuf),
+                     "{ "
+                     "\"id\":           \"%s\", "
+                     "\"output\":       \"%s\", "
+                     "\"priority\":     \"%s\", "
+                     "\"starttime\":    \"%s\", "
+                     "\"duration\":     \"%s\", ",
+                     from_json["pay"]["tmcontrol"]["id"].get<std::string>().c_str(),
+                     from_json["pay"]["tmcontrol"]["output"].get<std::string>().c_str(),
+                     from_json["pay"]["tmcontrol"]["priority"].get<std::string>().c_str(),
+                     from_json["pay"]["tmcontrol"]["starttime"].get<std::string>().c_str(),
+                     from_json["pay"]["tmcontrol"]["duration"].get<std::string>().c_str()
+                    );
+
+            logInfo("saving string%s", CloudFileReceiverWriteBuf);
+            bool status = GLOBAL_mdot->saveUserFile(filename, (void *)CloudFileReceiverWriteBuf, 1024);
+            if( status != true ) {
+                logError("(%d)save file failed, status=%d", __LINE__, status);
+            }
+
+            // send a message to the configuration handler to create the control
+            Message_t *msg  = MailBox.alloc();
+            memset(msg, 0, sizeof(Message_t));
+            msg->action  = ACTION_CREATE;
+            msg->control = CONTROL_TIMER;
+            strncpy(msg->controlFile, filename, sizeof(msg->controlFile)-1);
+
+            printf("%s: Sending a create request for control %s type = %u\r\n", __func__, msg->controlFile, msg->control);
+
+            MailBox.put(msg);
             break;
+        }
         case INPUT_CONFIG_MTYPE: {
             logInfo("id=%s", from_json["pay"]["input"]["id"].get<std::string>().c_str() );
             snprintf( filename, sizeof(FILENAME_STRING), "input_%s%s",