123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410 |
- // 'use strict';
- // goog.provide('Blockly.Python.easymode');
- // goog.require('Blockly.Python');
- // Blockly.Python['wifiEasymode_network'] = function(block) {
- // var wifi_esp8266_include_declaration = "#include <ESP8266WiFi.h>\n";
- // var wifi_wifimulti_include_declaration = "#include <ESP8266WiFiMulti.h>";
- // Blockly.Python.addInclude("wifi_esp8266_declaration", wifi_esp8266_include_declaration);
- // Blockly.Python.addInclude("wifi_wifimulti_include_declaration", wifi_wifimulti_include_declaration);
- // var ssid = block.getFieldValue("wifi_ssid");
- // var pw = block.getFieldValue("wifi_pw");
- // var wifiMulti_declaration = "ESP8266WiFiMulti WiFiMulti\n";
- // Blockly.Python.addDeclaration("wifiMulti_declaration", wifiMulti_declaration);
- // var code = " delay(10)\n" +
- // // Start by connecting to a WiFi network
- // " WiFiMulti.addAP(\"" + ssid + "\",\"" + pw + "\")\n" +
- // " Serial.print(\"Wait for WiFi... \")\n" +
- // " while(WiFiMulti.run() != WL_CONNECTED) {\n" +
- // " Serial.print(\".\")\n" +
- // " delay(500)\n" +
- // " }\n" +
- // " Serial.println(\"\")\n" +
- // " Serial.println(\"WiFi connected\");";
- // Blockly.Python.addSetup("wifinetwork_connect", code);
- // return '';
- // };
- // Blockly.Python['wifiEasymode_thingspeak'] = function(block) {
- // var key = block.getFieldValue("API_KEY");
- // var item_field = '',
- // item_value = '';
- // var thingspeak_url = "http://api.thingspeak.com/update?api_key=" + key;
- // for (var n = 0; n < this.itemCount_; n++) {
- // item_field = "field" + (n + 1);
- // item_value = Blockly.Python.valueToCode(this, 'ADD' + n,
- // Blockly.Python.ORDER_NONE) || '';
- // thingspeak_url += '&' + item_field + '=\"+String(' + item_value + ')+\"';
- // }
- // var wifi_httpclient = "#include <ESP8266HTTPClient.h>";
- // Blockly.Python.addInclude("wifi_httpclient", wifi_httpclient);
- // Blockly.Python.addDeclaration("httpclient", "HTTPClient http;");
- // var code = "http.begin(\"" + thingspeak_url + "\")\n" +
- // "http.GET()\n" +
- // "http.end()\n";
- // return code;
- // };
- // Blockly.Python['wifiEasymode_cococloud_post'] = function(block) {
- // var wifi_httpclient = "#include <ESP8266HTTPClient.h>";
- // Blockly.Python.addInclude('wifi_httpclient', wifi_httpclient);
- // var HTTPResponse = "String http_response;";
- // Blockly.Python.addDeclaration('HTTP_Response', HTTPResponse);
- // var HTTPCode = "int httpCode;";
- // Blockly.Python.addDeclaration('HTTP_code', HTTPCode);
- // let serial_setup = "Serial.begin(9600);";
- // Blockly.Python.addSetup('serial_serial', serial_setup);
- // var httpclient = "HTTPClient http;";
- // Blockly.Python.addDeclaration("httpclient", httpclient);
- // Blockly.Python.addDeclaration("payload", "String payload;");
- // var json_include = "#include <ArduinoJson.h>";
- // Blockly.Python.addInclude("json_declaration", json_include);
- // var precode = "char JSONmessageBuffer[240]\n";
- // Blockly.Python.addDeclaration("jsontool_prettyPrint", precode);
- // var code = "";
- // var item_url = block.getFieldValue("event0");
- // var item_data = Blockly.Python.valueToCode(this, 'dataA',
- // Blockly.Python.ORDER_NONE) || '';
- // var code = "StaticJsonBuffer<240> JSONbuffer_easymode\n" +
- // "JsonObject& Json_easymode = JSONbuffer_easymode.createObject()\n" +
- // "Json_easymode[\"EM_data\"]=" + item_data + "\n" +
- // "Json_easymode.prettyPrintTo(JSONmessageBuffer, sizeof(JSONmessageBuffer))\n" +
- // "http.begin(\"" + item_url + "\")\n" +
- // "http.addHeader(\"Content-Type\", \"application/json\")\n" +
- // "httpCode = http.POST(JSONmessageBuffer)\n" +
- // "payload = http.getString()\n" +
- // "Serial.println(httpCode)\n" +
- // "Serial.println(payload)\n" +
- // "http.end()\n";
- // return code;
- // }
- // Blockly.Python['wifiEasymode_cococloud_get'] = function(block) {
- // var wifi_httpclient = "#include <ESP8266HTTPClient.h>";
- // Blockly.Python.addInclude('wifi_httpclient', wifi_httpclient);
- // var HTTPResponse = "String http_response;";
- // Blockly.Python.addDeclaration('HTTP_Response', HTTPResponse);
- // var HTTPCode = "int httpCode;";
- // Blockly.Python.addDeclaration('HTTP_code', HTTPCode);
- // let serial_setup = "Serial.begin(9600);";
- // Blockly.Python.addSetup('serial_serial', serial_setup);
- // var httpclient = "HTTPClient http;";
- // Blockly.Python.addDeclaration("httpclient", httpclient);
- // var cococloud_Response = "String cococloud_response;";
- // Blockly.Python.addDeclaration("cococloud_Response", cococloud_Response);
- // Blockly.Python.addDeclaration("payload", "String payload;");
- // var json_include = "#include <ArduinoJson.h>";
- // Blockly.Python.addInclude("json_declaration", json_include);
- // var code = "";
- // var item_url = block.getFieldValue("event0");
- // var dataGet = Blockly.Python.variableDB_.getName(
- // block.getFieldValue('DATAVAR'), Blockly.Variables.NAME_TYPE);
- // code += "http.begin(\"" + item_url + "\")\n" +
- // "http.addHeader(\"Content-Type\", \"application/json\")\n" +
- // "httpCode = http.GET()\n" +
- // "payload = http.getString()\n" +
- // "cococloud_response = payload\n" +
- // "Serial.println(httpCode)\n" +
- // "Serial.println(payload)\n" +
- // "http.end()\n" +
- // "StaticJsonBuffer<240> jsonBuffer_easymode\n" +
- // "JsonObject& cloud_data = jsonBuffer_easymode.parseObject(cococloud_response)\n" +
- // "" + dataGet + " = cloud_data[\"data\"][0][\"EM_data\"].as<char*>();";
- // return code;
- // }
- // Blockly.Python['wifiEasymode_cococloud2_post'] = function(block) {
- // var wifi_httpclient = "#include <ESP8266HTTPClient.h>";
- // Blockly.Python.addInclude('wifi_httpclient', wifi_httpclient);
- // var HTTPResponse = "String http_response;";
- // Blockly.Python.addDeclaration('HTTP_Response', HTTPResponse);
- // var HTTPCode = "int httpCode;";
- // Blockly.Python.addDeclaration('HTTP_code', HTTPCode);
- // let serial_setup = "Serial.begin(9600);";
- // Blockly.Python.addSetup('serial_serial', serial_setup);
- // var httpclient = "HTTPClient http;";
- // Blockly.Python.addDeclaration("httpclient", httpclient);
- // Blockly.Python.addDeclaration("payload", "String payload;");
- // var json_include = "#include <ArduinoJson.h>";
- // Blockly.Python.addInclude("json_declaration", json_include);
- // var precode = "char JSONmessageBuffer[240]\n";
- // Blockly.Python.addDeclaration("jsontool_prettyPrint", precode);
- // var code = "";
- // // var item_url = "http://cocorobo.cn/api/iot/data/eventAPIKey/" + block.getFieldValue("event0");
- // var item_url = "http://staging.cocorobo.cn/api/iot/data/eventAPIKey/" + block.getFieldValue("event0"); //staging
- // var code = "StaticJsonBuffer<240> JSONbuffer_easymode\n" +
- // "JsonObject& Json_easymode = JSONbuffer_easymode.createObject()\n";
- // for (var n = 0; n < this.itemCount_; n++) {
- // var item_field = block.getFieldValue("field" + n);
- // var item_value = Blockly.Python.valueToCode(this, 'ADD' + n,
- // Blockly.Python.ORDER_NONE) || '0';
- // code += "Json_easymode[\"" + item_field + "\"]=" + item_value + "\n";
- // }
- // code += "Json_easymode.prettyPrintTo(JSONmessageBuffer, sizeof(JSONmessageBuffer))\n" +
- // "http.begin(\"" + item_url + "\")\n" +
- // "http.addHeader(\"Content-Type\", \"application/json\")\n" +
- // "httpCode = http.POST(JSONmessageBuffer)\n" +
- // "payload = http.getString()\n" +
- // "Serial.println(httpCode)\n" +
- // "Serial.println(payload)\n" +
- // "http.end()\n";
- // return code;
- // }
- // Blockly.Python['wifiEasymode_cococloud2_get'] = function(block) {
- // var wifi_httpclient = "#include <ESP8266HTTPClient.h>";
- // Blockly.Python.addInclude('wifi_httpclient', wifi_httpclient);
- // var HTTPResponse = "String http_response;";
- // Blockly.Python.addDeclaration('HTTP_Response', HTTPResponse);
- // var HTTPCode = "int httpCode;";
- // Blockly.Python.addDeclaration('HTTP_code', HTTPCode);
- // let serial_setup = "Serial.begin(9600);";
- // Blockly.Python.addSetup('serial_serial', serial_setup);
- // var httpclient = "HTTPClient http;";
- // Blockly.Python.addDeclaration("httpclient", httpclient);
- // var cococloud_Response = "String cococloud_response;";
- // Blockly.Python.addDeclaration("cococloud_Response", cococloud_Response);
- // Blockly.Python.addDeclaration("payload", "String payload;");
- // var json_include = "#include <ArduinoJson.h>";
- // Blockly.Python.addInclude("json_declaration", json_include);
- // var code = "";
- // // var item_url = "http://cocorobo.cn/api/iot/data/eventAPIKey/" + block.getFieldValue("event0");
- // var item_url = "http://staging.cocorobo.cn/api/iot/data/eventAPIKey/" + block.getFieldValue("event0"); //staging
- // var dataGet, item_value;
- // code += "http.begin(\"" + item_url + "\")\n" +
- // "http.addHeader(\"Content-Type\", \"application/json\")\n" +
- // "httpCode = http.GET()\n" +
- // "payload = http.getString()\n" +
- // "cococloud_response = payload\n" +
- // "Serial.println(httpCode)\n" +
- // "Serial.println(payload)\n" +
- // "http.end()\n" +
- // "StaticJsonBuffer<240> jsonBuffer_easymode\n" +
- // "JsonObject& cloud_data = jsonBuffer_easymode.parseObject(cococloud_response)\n";
- // for (var n = 0; n < this.itemCount_; n++) {
- // dataGet = Blockly.Python.variableDB_.getName(
- // block.getFieldValue('DATA' + n), Blockly.Variables.NAME_TYPE);
- // item_value = Blockly.Python.valueToCode(this, 'ADD' + n,
- // Blockly.Python.ORDER_NONE) || '""';
- // code += "" + dataGet + "=" + item_value + "\n";
- // }
- // return code;
- // }
- // Blockly.Python['wifiEasymode_cococloud2_get_data'] = function(block) {
- // var code = "";
- // var key = block.getFieldValue("KEY");
- // // var varType = block.getFieldValue('VAR_TYPE');
- // // if (varType == "Text") {
- // // varType = "char*";
- // // } else if (varType == "Number") {
- // // varType = "int";
- // // } else if (varType == "Boolean") {
- // // varType = "boolean";
- // // } else if (varType == "Large Number") {
- // // varType = "long";
- // // } else if (varType == "Decimal") {
- // // varType = "float";
- // // }
- // code = "cloud_data[\"data\"][0][\"" + key + "\"].as<char*>()";
- // return [code, Blockly.Python.ORDER_ATOMIC];
- // }
- // Blockly.Python['wifiEasymode_IFTTT'] = function(block) {
- // var key = block.getFieldValue('IFTTT_KEY').replace(/\"/g, '') || "";
- // var event = block.getFieldValue('IFTTT_EVENT').replace(/\"/g, '') || "";
- // var value1 = Blockly.Python.valueToCode(block, 'dataA', Blockly.Python.ORDER_ATOMIC) || "";
- // // var value2 = Blockly.Python.valueToCode(block, 'VALUE2', Blockly.Python.ORDER_ATOMIC) || "";
- // // var value3 = Blockly.Python.valueToCode(block, 'VALUE3', Blockly.Python.ORDER_ATOMIC) || "";
- // var jsontool_declaration = "#include <ArduinoJson.h>";
- // Blockly.Python.addInclude("jsontool_declaration", jsontool_declaration);
- // var wifi_httpclient = "#include <ESP8266HTTPClient.h>";
- // Blockly.Python.addInclude("wifi_httpclient", wifi_httpclient);
- // var httpclient = "HTTPClient http;";
- // Blockly.Python.addDeclaration("httpclient", httpclient);
- // var HTTPCode = "int httpCode;";
- // Blockly.Python.addDeclaration('HTTP_code', HTTPCode);
- // Blockly.Python.addDeclaration("payload", "String payload;");
- // var precode = "char JSONmessageBuffer[240]\n";
- // Blockly.Python.addDeclaration("jsontool_prettyPrint", precode);
- // var url = "http://maker.ifttt.com/trigger/" + event + "/with/key/" + key;
- // var code = "StaticJsonBuffer<240> JSONbuffer_ifttt\n" +
- // "JsonObject& JSONencoder = JSONbuffer_ifttt.createObject()\n" +
- // "JSONencoder[\"value1\"] = String(" + value1 + ")\n" +
- // "JSONencoder[\"value2\"] = \"0\"\n" +
- // "JSONencoder[\"value3\"] = \"0\"\n" +
- // "JSONencoder.prettyPrintTo(JSONmessageBuffer, sizeof(JSONmessageBuffer))\n" +
- // "Serial.println(JSONmessageBuffer)\n" +
- // "if (WiFi.status() == WL_CONNECTED) {\n" +
- // " http.begin(\"" + url + "\")\n" +
- // " http.addHeader(\"Content-Type\", \"application/json\")\n" +
- // " httpCode = http.POST(JSONmessageBuffer)\n" +
- // " payload = http.getString()\n" +
- // " Serial.println(httpCode)\n" +
- // " Serial.println(payload)\n" +
- // " http.end()\n" +
- // "} else {\n" +
- // " Serial.println(\"Error in WiFi connection\")\n" +
- // "}\n";
- // return code;
- // }
- // Blockly.Python['wifiEasymode_transfer_send'] = function(block) {
- // var dataMain = Blockly.Python.variableDB_.getName(
- // block.getFieldValue('DATAMAIN'), Blockly.Variables.NAME_TYPE);
- // Blockly.Python.addSetup('serial', "Serial.begin(9600);");
- // var checkbit = "#define SOP '<'\n" +
- // "#define EOP '>'\n";
- // Blockly.Python.addDeclaration("wifi_dataTransfer_checkbit", checkbit);
- // var length = "sizeof(" + dataMain + ")/sizeof(" + dataMain + "[0])";
- // var dataLength = length + "+2";
- // var code = "unsigned char DataOut_[" + dataLength + "]\n" +
- // "DataOut_[0]= SOP\n" +
- // "DataOut_[" + length + "+1]= EOP\n" +
- // "for (int i=0; i<" + length + ";i++) {\n" +
- // " DataOut_[i+1]=" + dataMain + "[i]\n" +
- // "}\n" +
- // "Serial.write(DataOut_, " + dataLength + ")\n";
- // return code;
- // }
- // Blockly.Python['wifiEasymode_transfer_receive'] = function(block) {
- // var dataMain = Blockly.Python.variableDB_.getName(
- // block.getFieldValue('DATAMAIN'), Blockly.Variables.NAME_TYPE);
- // Blockly.Python.addSetup('serial', "Serial.begin(9600);");
- // var checkbit = "#define SOP '<'\n" +
- // "#define EOP '>'\n";
- // Blockly.Python.addDeclaration("wifi_dataTransfer_checkbit", checkbit);
- // var MsgReceiveStatus = "bool started = false\n" +
- // "bool ended = false\n" +
- // "int index_i\n";
- // Blockly.Python.addDeclaration("wifi_dataTransfer_MsgReceiveStatus", MsgReceiveStatus);
- // var length = 'sizeof(' + dataMain + ')/sizeof(' + dataMain + '[0])' || 1;
- // var dataIn_function = "int handleDataIn() {\n" +
- // " while (Serial.available() > 0) {\n" +
- // " int inChar = Serial.read()\n" +
- // " if(inChar == SOP) {\n" +
- // " index_i = 0\n" +
- // " started = true\n" +
- // " ended = false\n" +
- // " } else if(inChar == EOP) {\n" +
- // " ended = true\n" +
- // " break\n" +
- // " }else if((index_i < " + length + ")&&started&&(!ended)) {\n" +
- // " " + dataMain + "[index_i] = inChar\n" +
- // " index_i++\n" +
- // " }\n" +
- // " }\n" +
- // " if(started && ended) {\n" +
- // " return 1\n" +
- // " } else {\n" +
- // " return 0\n" +
- // " }\n" +
- // "}\n";
- // Blockly.Python.addFunction("mainwifi_dataIn_function", dataIn_function);
- // var code = "boolean receiveMsgsuccess_ = handleDataIn()\n" +
- // "if (!receiveMsgsuccess) {\n" +
- // " Serial.println(\"Error: Fail to receive data!\")\n" +
- // " return\n" +
- // "}\n";
- // return code;
- // }
- // Blockly.Python['wifiEasymode_transfer2_send'] = function(block) {
- // var dataMain = block.getFieldValue('DATAMAIN');
- // var dataMain_list = "int " + dataMain + "[" + this.itemCount_ + "] = {0";
- // for (var i = 1; i < this.itemCount_; i++) {
- // dataMain_list += ",0";
- // }
- // dataMain_list += "}\n";
- // Blockly.Python.addDeclaration("dataMain_list", dataMain_list);
- // Blockly.Python.addSetup('serial', "Serial.begin(9600);");
- // var checkbit = "#define SOP '<'\n" +
- // "#define EOP '>'\n";
- // Blockly.Python.addDeclaration("wifi_dataTransfer_checkbit", checkbit);
- // var length = "sizeof(" + dataMain + ")/sizeof(" + dataMain + "[0])";
- // var dataLength = length + "+2";
- // var code = "";
- // var item_value = '';
- // for (var n = 0; n < this.itemCount_; n++) {
- // item_value = Blockly.Python.valueToCode(this, 'ADD' + n,
- // Blockly.Python.ORDER_NONE) || '0';
- // code += dataMain + "[" + n + "] = " + item_value + "\n";
- // }
- // code += "unsigned char DataOut_[" + dataLength + "]\n" +
- // "DataOut_[0]= SOP\n" +
- // "DataOut_[" + length + "+1]= EOP\n" +
- // "for (int i=0; i<" + length + ";i++) {\n" +
- // " DataOut_[i+1]=" + dataMain + "[i]\n" +
- // "}\n" +
- // "Serial.write(DataOut_, " + dataLength + ")\n";
- // return code;
- // }
- // Blockly.Python['wifiEasymode_transfer2_receive'] = function(block) {
- // var dataMain = block.getFieldValue('DATAMAIN');
- // var list_length = block.getFieldValue("LENGTH");
- // var dataMain_list = "int " + dataMain + "[" + list_length + "] = {0";
- // for (var i = 1; i < list_length; i++) {
- // dataMain_list += ",0";
- // }
- // dataMain_list += "}\n";
- // Blockly.Python.addDeclaration("dataMain_list", dataMain_list);
- // Blockly.Python.addSetup('serial', "Serial.begin(9600);");
- // var checkbit = "#define SOP '<'\n" +
- // "#define EOP '>'\n";
- // Blockly.Python.addDeclaration("wifi_dataTransfer_checkbit", checkbit);
- // var MsgReceiveStatus = "bool started = false\n" +
- // "bool ended = false\n" +
- // "int index_i\n";
- // Blockly.Python.addDeclaration("wifi_dataTransfer_MsgReceiveStatus", MsgReceiveStatus);
- // var length = 'sizeof(' + dataMain + ')/sizeof(' + dataMain + '[0])' || 1;
- // var dataIn_function = "int handleDataIn() {\n" +
- // " while (Serial.available() > 0) {\n" +
- // " int inChar = Serial.read()\n" +
- // " if(inChar == SOP) {\n" +
- // " index_i = 0\n" +
- // " started = true\n" +
- // " ended = false\n" +
- // " } else if(inChar == EOP) {\n" +
- // " ended = true\n" +
- // " break\n" +
- // " }else if((index_i < " + length + ")&&started&&(!ended)) {\n" +
- // " " + dataMain + "[index_i] = inChar\n" +
- // " index_i++\n" +
- // " }\n" +
- // " }\n" +
- // " if(started && ended) {\n" +
- // " return 1\n" +
- // " } else {\n" +
- // " return 0\n" +
- // " }\n" +
- // "}\n";
- // Blockly.Python.addFunction("mainwifi_dataIn_function", dataIn_function);
- // var code = "boolean receiveMsgsuccess_ = handleDataIn()\n" +
- // "if (!receiveMsgsuccess_) {\n" +
- // " Serial.println(\"Error: Fail to receive data!\")\n" +
- // " return\n" +
- // "}\n";
- // return code;
- // }
- // Blockly.Python['wifiEasymode_transfer2_receive_getValue'] = function(block) {
- // var dataMain = block.getFieldValue('DATAMAIN');
- // var list_length = block.getFieldValue("INDEX");
- // var code = "" + dataMain + "[" + list_length + "]";
- // return [code, Blockly.Python.ORDER_ATOMIC];
- // }
|