>process.memory(); ={ "free": 1301, "usage": 1739, "total": 3040, "history": 859, "stackEndAddress": 536924572, "flash_start": 134217728, "flash_binary_end": 298496, "flash_code_start": 134234112, "flash_length": 393216 } >trace(); #1[r2,l1] Object { #2[r1,l2] Name String [1 blocks] ">" #3[r1,l2] Object { #6[r1,l2] Name String [2 blocks] "timers" #8[r2,l1] Array(13) [ ] #9[r1,l2] Name String [2 blocks] "watches" #11[r2,l1] Array(0) [ ] #12[r1,l2] Name String [2 blocks] "history" #16[r1,l1] Array(14) [ #17[r1,l2] Name Integer 0 #13[r1,l1] String [2 blocks] "echo(0);" #244[r1,l2] Name Integer 1 #248[r1,l1] String [231 blocks] "Modules.removeAllCached();Modules.addCached(\"easyvr\",'exports.connect=function(a,b,c,d){return new EasyVR(a,b,c,d)};function EasyVR(a,b,c,d){this.ser=a;this.onCommand=b;this.onTimeout=c;this.onErr=d;this.ser.on(\"data\",this.onData.bind(this));this.stop();this.vrstate=-1;this.stsr=\"o\";this.rcvv=\"\";this.tout=0;this.lstC=\"\"}EasyVR.prototype.argchar=function(a){if(-1>a||31=this.sts_idx[this.stsr].len?(console.log(\"running callback \"+this.sts_idx[this.stsr].cb),this.sts_idx[this.stsr].cb.bind(this)(),this.rcvv=\"\",this.stsr=\\n\"o\"):(console.log(\"need more data\"),this.ser.print(\" \")))};\\nEasyVR.prototype.sts_idx={o:{len:0,cb:function(){console.log(\"STS_SUCCESS\");console.log(this.lstC);\"o\"==this.lstC&&(console.log(this.vrstate),-1!=this.vrstate&&(console.log(\"kicking off recognize\"),this.sendCmd(\"d\",this.vrstate)))}},t:{len:0,cb:function(){console.log(\"STS_TIMEOUT\");-1!=this.vrstate&&(console.log(\"calling onTimeout callback\"),this.onTimeout(this.vrstate),this.vrstate=-1)}},v:{len:0,cb:function(){console.log(\"STS_INVALID \"+this.rcvv);-1!=this.vrstate&&(this.vrstate=-1)}},i:{len:0,cb:function(){console.log(\"STS_INTERR \"+\\nthis.rcvv);-1!=this.vrstate&&(this.vrstate=-1)}},e:{len:2,cb:function(){console.log(\"STS_ERROR \"+this.rcvv);if(-1!=this.vrstate){console.log(\"calling onErr callback\");var a=this.vrstate;this.vrstate=-1;this.onErr(a)}}},s:{len:1,cb:function(){console.log(\"STS_SIMILAR \"+this.rcvv);if(-1!=this.vrstate){console.log(\"calling onErr callback\");var a=this.vrstate;this.vrstate=-1;this.onErr(a)}}},r:{len:1,cb:function(){console.log(\"STS_RESULT \"+this.rcvv);if(-1!=this.vrstate){console.log(\"calling onCommand\");\\nconsole.log(r);var a=this.onCommand(this.vrstate,this.chararg(this.rcvv));this.vrstate=-1;void 0!==a.type&&this.setRecognize(a.type,a.timeout)}}}};EasyVR.prototype.setRecognize=function(a,b){this.tout&&(clearTimeout(this.tout),this.tout=0);this.vrstate=a;this.timeout(b)};EasyVR.prototype.sendCmd=function(a,b){this.ser.print(a);console.log(\"Sending command: \"+a);this.lstC=a;void 0!==b&&(console.log(\"With arg: \"+this.argchar(b)),this.ser.print(this.argchar(b)))};EasyVR.prototype.stop=function(){this.sendCmd(\"b\")};\\nEasyVR.prototype.timeout=function(a){this.sendCmd(\"o\",a)};EasyVR.prototype.setStrict=function(a){this.sendCmd(\"v\",E.clip(a,1,5))};\\n');" #875[r1,l2] Name Integer 2 #876[r1,l1] String [297 blocks] "Modules.addCached(\"ESP8266WiFi\",'var at,socks=[],sockData=[\"\",\"\",\"\",\"\",\"\"],MAXSOCKETS=5,ENCR_FLAGS=[\"open\",\"wep\",\"wpa_psk\",\"wpa2_psk\",\"wpa_wpa2_psk\"],netCallbacks={create:function(a,c){if(void 0===a)return b=MAXSOCKETS,socks[b]=\"Wait\",sockData[b]=\"\",at.cmd(\"AT+CIPSERVER=1,\"+c+\"\\\\r\\\\n\",1E4,function(a){if(\"OK\"==a)socks[b]=!0;else throw socks[b]=void 0,Error(\"CIPSERVER failed\");}),MAXSOCKETS;for(var b=0;void 0!==socks[b];)b++;if(b>=MAXSOCKETS)throw Error(\"No free sockets\");socks[b]=\"Wait\";sockData[b]=\"\";at.cmd(\"AT+CIPSTART=\"+b+\\',\"TCP\",\\'+\\nJSON.stringify(a)+\",\"+c+\"\\\\r\\\\n\",1E4,function(a){if(\"OK\"==a)at.registerLine(\"Linked\",function(){at.unregisterLine(\"Linked\");socks[b]=!0}),at.registerLine(\"Unlink\",function(){at.unregisterLine(\"Unlink\");socks[b]=void 0});else throw socks[b]=void 0,Error(\"CIPSTART failed\");});return b},close:function(a){at.cmd(\"AT+CIPCLOSE=\"+a+\"\\\\r\\\\n\",1E3,function(){socks[a]=void 0})},accept:function(a){for(a=0;ac?(b=sockData[a].substr(0,c),sockData[a]=sockData[a].substr(c)):(b=sockData[a],sockData[a]=\"\");return b}return socks[a]?\"\":-1},send:function(a,c){if(at.isBusy()||\"Wait\"==socks[a])return 0;if(!socks[a])return-1;var b=function(a){if(\"> \"==a)return b};at.cmd(\"AT+CIPSEND=\"+a+\",\"+c.length+\"\\\\r\\\\n\"+c,1E4,b);return c.length}};\\nfunction ipdHandler(a){var c=a.indexOf(\":\");if(0>c)return a;var b=a.substring(5,c).split(\",\");b[1]|=0;var d=a.length-(c+1);if(d>=b[1])return sockData[b[0]]+=a.substr(c+1,b[1]),a.substr(c+b[1]+1);sockData[b[0]]+=a.substr(c+1,d);return\"+IPD,\"+b[0]+\",\"+(b[1]-d)+\":\"}\\nvar wifiFuncs={ipdHandler:ipdHandler,debug:function(){return{socks:socks,sockData:sockData}},init:function(a){var c=function(b){if(\"ATE0\"==b)return c;\"OK\"==b?at.cmd(\"AT+CIPMUX=1\\\\r\\\\n\",1E3,function(b){\"OK\"!=b?a(\"CIPMUX failed: \"+b):a(null)}):a(\"ATE0 failed: \"+b)};at.cmd(\"ATE0\\\\r\\\\n\",1E3,c)},reset:function(a){var c=function(b){if(\"ready\"==b)setTimeout(function(){wifiFuncs.init(a)},1E3);else if(void 0===b)a(\"No \\'ready\\' after AT+RST\");else return c};at.cmd(\"AT+RST\\\\r\\\\n\",1E4,c)},getVersion:function(a){at.cmd(\"AT+GMR\\\\r\\\\n\",\\n1E3,function(c){a(null,c)})},connect:function(a,c,b){at.cmd(\"AT+CWMODE=1\\\\r\\\\n\",1E3,function(d){\"no change\"!=d&&\"OK\"!=d?b(\"CWMODE failed: \"+d):at.cmd(\"AT+CWJAP=\"+JSON.stringify(a)+\",\"+JSON.stringify(c)+\"\\\\r\\\\n\",2E4,function(a){\"OK\"!=a?b(\"WiFi connect failed: \"+a):b(null)})})},getAPs:function(a){var c=[];at.cmdReg(\"AT+CWLAP\\\\r\\\\n\",5E3,\"+CWLAP:\",function(a){a=a.slice(8,-1).split(\",\");c.push({ssid:JSON.parse(a[1]),enc:ENCR_FLAGS[a[0]],signal:parseInt(a[2]),mac:JSON.parse(a[3])})},function(b){a(null,c)})},\\ngetConnectedAP:function(a){var c;at.cmdReg(\"AT+CWJAP?\\\\r\\\\n\",1E3,\"+CWJAP:\",function(a){c=JSON.parse(a.slice(7))},function(b){a(null,c)})},createAP:function(a,c,b,d,f){at.cmd(\"AT+CWMODE=2\\\\r\\\\n\",1E3,function(e){\"no change\"!=e&&\"OK\"!=e&&f(\"CWMODE failed: \"+e);e=d?ENCR_FLAGS.indexOf(d):0;0>e?f(\"Encryption type \"+d+\" not known - \"+ENCR_FLAGS):at.cmd(\"AT+CWSAP=\"+JSON.stringify(a)+\",\"+JSON.stringify(c)+\",\"+b+\",\"+e+\"\\\\r\\\\n\",5E3,function(a){\"OK\"!=a?f(\"CWSAP failed: \"+a):f(null)})})},getIP:function(a){at.cmd(\"AT+CIFSR\\\\r\\\\n\",\\n1E3,function(c){return function(b){return\"OK\"!=b?a(\"CIFSR failed: \"+b):a(null,c)}})}};exports.connect=function(a,c){wifiFuncs.at=at=require(\"AT\").connect(a);require(\"NetworkJS\").create(netCallbacks);at.register(\"+IPD\",ipdHandler);wifiFuncs.reset(c);return wifiFuncs};\\n');" #120[r1,l2] Name Integer 3 #121[r1,l1] String [116 blocks] "Modules.addCached(\"AT\",'exports.connect=function(m){var l=!1,b=\"\",e,c={},g={},k=[];m.on(\"data\",function(a){b+=a;l&&console.log(\"] \"+JSON.stringify(b)+\" <--- \"+JSON.stringify(a));if(c)for(var f in c)b.substr(0,f.length)==f&&(b=c[f](b));\"\\\\n\"==b[0]&&(b=b.substr(1));for(a=b.indexOf(\"\\\\r\");0<=a;){var d=b.substr(0,a);if(0a&&(setFargo(a,!fargo[a]),console.log(\"set fargo\"+a))):3==b?console.log(\"desk lamp \"+\na):4==b&&(0==a?setDesk(\"nixs=1;uplcd();\"):1==a?setDesk(\"nixs=0;uplcd();\"):2==a?setDesk(\"nixs=1;MnuS=0;MnuO=0;uplcd();\"):3==a?setDesk(\"nixs=1;MnuS=0;MnuO=1;uplcd();\"):4==a&&setDesk(\"nixs=1;MnuS=0;MnuO=2;uplcd();\"));digitalWrite(LED1,0);return{type:1,timeout:0}},otm=function(){digitalWrite(LED1,0);this.setRecognize(1,0)};fargosturl=\"http://192.168.2.12/fargostatus.php\";dateurl=\"http://192.168.2.12/date.php\";fargourl=\"http://192.168.2.14/api/relay/\";deskurl=\"http://192.168.2.16/code.run?code=\";" #1820[r1,l2] Name Integer 5 #1759[r1,l1] String [42 blocks] "fargo=new Uint8Array(8);function setDesk(b){console.log(\"setDesk:\"+deskurl+b);require(\"http\").get(deskurl+b,function(a){a.on(\"close\",function(){200!=this.code&&console.log(\"Error commanding desklamp/nixie: \"+this.code)})});console.log(\"desk command\"+b)}function getFargostatus(){var b=\"\";require(\"http\").get(fargosturl,function(a){a.on(\"data\",function(a){b+=a});a.on(\"close\",function(){var a=JSON.parse(b);vtfs=a;for(var c=0;8>c;c++)fargo[c]=a.relaystate[c].state;3==MnuS&&uplcd(1)})})}" #1883[r1,l2] Name Integer 6 #1847[r1,l1] String [27 blocks] "function setFargo(b,a){var d=a?\"/on\":\"/off\";require(\"http\").get(fargourl+(b+1).toString()+d,function(d){d.on(\"close\",function(){200!=this.code&&(fargo[b]=a)})})}function getDate(){var b=\"\";require(\"http\").get(dateurl,function(a){a.on(\"data\",function(a){b+=a});a.on(\"close\",function(){clk=new Clock(b)})})}" #1960[r1,l2] Name Integer 7 #1920[r1,l1] String [37 blocks] "function onInit(){Serial1.setup(9600,{tx:B6,rx:B7});evr=require(\"easyvr\").connect(Serial1,ocm,otm,otm);Serial2.setup(9600,{rx:A3,tx:A2});wifi=require(\"ESP8266WiFi\").connect(Serial2,function(b){if(b)throw b;wifi.reset(function(a){if(a)throw a;console.log(\"Connecting to WiFi\");wifi.connect(\"TwilightZone\",\"L0st1nTheZ0ne\",function(a){if(a)throw a;console.log(\"Connected\");evr.setRecognize(1,0);setTimeout(getFargostatus,1E3)})})})};" #1961[r1,l2] Name Integer 8 #1962[r1,l1] String [2 blocks] "echo(1);" #1984[r1,l2] Name Integer 9 #1965[r1,l1] String [2 blocks] "onInit();" #2711[r1,l2] Name Integer 11 #2725[r1,l1] String [2 blocks] "trace();" #2730[r1,l2] Name Integer 13 #2684[r1,l1] String [3 blocks] "process.memory();" ] #241[r1,l2] Name String [2 blocks] "modules" #239[r1,l1] Object { #238[r1,l2] Name String [2 blocks] "easyvr" #487[r3,l1] Object { #490[r1,l2] Name String [2 blocks] "connect" #492[r1,l1] Function { #493[r1,l2] Name Param "a" undefined #494[r1,l2] Name Param "b" undefined #495[r1,l2] Name Param "c" undefined #496[r1,l2] Name Param "d" undefined #500[r1,l2] Name String [1 blocks] ">cod" #497[r1,l1] String [3 blocks] "{return new EasyVR(a,b,c,d)}" #501[r1,l2] Name String [1 blocks] ">sco" #486[r17,l1] ... } } #872[r1,l2] Name String [2 blocks] "ESP8266WiFi" #1173[r2,l1] Object { #1564[r1,l2] Name String [2 blocks] "connect" #1566[r1,l1] Function { #1567[r1,l2] Name Param "a" undefined #1568[r1,l2] Name Param "c" undefined #1583[r1,l2] Name String [1 blocks] ">cod" #1569[r1,l1] String [14 blocks] "{wifiFuncs.at=at=require(\"AT\").connect(a);require(\"NetworkJS\").create(netCallbacks);at.register(\"+IPD\",ipdHandler);wifiFuncs.reset(c);return wifiFuncs}" #1584[r1,l2] Name String [1 blocks] ">sco" #243[r34,l1] ... } } #117[r1,l2] Name String [1 blocks] "AT" #812[r2,l1] Object { #815[r1,l2] Name String [2 blocks] "connect" #817[r1,l1] Function { #818[r1,l2] Name Param "m" undefined #1645[r1,l2] Name String [1 blocks] ">cod" #819[r1,l1] String [111 blocks] "{var l=!1,b=\"\",e,c={},g={},k=[];m.on(\"data\",function(a){b+=a;l&&console.log(\"] \"+JSON.stringify(b)+\" <--- \"+JSON.stringify(a));if(c)for(var f in c)b.substr(0,f.length)==f&&(b=c[f](b));\"\\n\"==b[0]&&(b=b.substr(1));for(a=b.indexOf(\"\\r\");0<=a;){var d=b.substr(0,a);if(0sco" #811[r28,l1] ... } } #2322[r1,l2] Name String [2 blocks] "NetworkJS" #2324[r1,l1] NativeFunction 0x3ba15 { } #2424[r1,l2] Name String [1 blocks] "http" #2421[r1,l1] NativeFunction 0x3ba1d { } } #2329[r1,l2] Name String [1 blocks] "net" #2327[r1,l1] String [2 blocks] "\x04\x00ÿÿÿ" #2330[r1,l2] Name String [1 blocks] "JSN" #1213[r2,l1] Object { #1214[r1,l2] Name String [2 blocks] "create" #1216[r1,l1] Function { #1217[r1,l2] Name Param "a" undefined #1218[r1,l2] Name Param "c" undefined #1273[r1,l2] Name String [1 blocks] ">cod" #1219[r1,l1] String [54 blocks] "{if(void 0===a)return b=MAXSOCKETS,socks[b]=\"Wait\",sockData[b]=\"\",at.cmd(\"AT+CIPSERVER=1,\"+c+\"\\r\\n\",1E4,function(a){if(\"OK\"==a)socks[b]=!0;else throw socks[b]=void 0,Error(\"CIPSERVER failed\");}),MAXSOCKETS;for(var b=0;void 0!==socks[b];)b++;if(b>=MAXSOCKETS)throw Error(\"No free sockets\");socks[b]=\"Wait\";sockData[b]=\"\";at.cmd(\"AT+CIPSTART=\"+b+',\"TCP\",'+\nJSON.stringify(a)+\",\"+c+\"\\r\\n\",1E4,function(a){if(\"OK\"==a)at.registerLine(\"Linked\",function(){at.unregisterLine(\"Linked\");socks[b]=!0}),at.registerLine(\"Unlink\",function(){at.unregisterLine(\"Unlink\");socks[b]=void 0});else throw socks[b]=void 0,Error(\"CIPSTART failed\");});return b}" #1274[r1,l2] Name String [1 blocks] ">sco" #243[r34,l1] ... } #1275[r1,l2] Name String [2 blocks] "close" #1277[r1,l1] Function { #1278[r1,l2] Name Param "a" undefined #1286[r1,l2] Name String [1 blocks] ">cod" #1279[r1,l1] String [7 blocks] "{at.cmd(\"AT+CIPCLOSE=\"+a+\"\\r\\n\",1E3,function(){socks[a]=void 0})}" #1287[r1,l2] Name String [1 blocks] ">sco" #243[r34,l1] ... } #1288[r1,l2] Name String [2 blocks] "accept" #1290[r1,l1] Function { #1291[r1,l2] Name Param "a" undefined #1301[r1,l2] Name String [1 blocks] ">cod" #1292[r1,l1] String [9 blocks] "{for(a=0;asco" #243[r34,l1] ... } #1303[r1,l2] Name String [1 blocks] "recv" #1304[r1,l1] Function { #1305[r1,l2] Name Param "a" undefined #1306[r1,l2] Name Param "c" undefined #1326[r1,l2] Name String [1 blocks] ">cod" #1307[r1,l1] String [19 blocks] "{if(at.isBusy()||\n\"Wait\"==socks[a])return\"\";if(sockData[a]){var b;sockData[a].length>c?(b=sockData[a].substr(0,c),sockData[a]=sockData[a].substr(c)):(b=sockData[a],sockData[a]=\"\");return b}return socks[a]?\"\":-1}" #1327[r1,l2] Name String [1 blocks] ">sco" #243[r34,l1] ... } #1328[r1,l2] Name String [1 blocks] "send" #1329[r1,l1] Function { #1330[r1,l2] Name Param "a" undefined #1331[r1,l2] Name Param "c" undefined #1347[r1,l2] Name String [1 blocks] ">cod" #1332[r1,l1] String [15 blocks] "{if(at.isBusy()||\"Wait\"==socks[a])return 0;if(!socks[a])return-1;var b=function(a){if(\"> \"==a)return b};at.cmd(\"AT+CIPSEND=\"+a+\",\"+c.length+\"\\r\\n\"+c,1E4,b);return c.length}" #1348[r1,l2] Name String [1 blocks] ">sco" #243[r34,l1] ... } } #2384[r1,l2] Name String [2 blocks] "HttpCC" #2383[r1,l1] Array(3) [ #2641[r1,l2] Name Integer 1 #2647[r1,l1] Object { #2646[r1,l2] Name String [2 blocks] "__proto__" #2339[r3,l1] ... #2643[r1,l2] Name String [1 blocks] "type"= int 1 #2644[r1,l2] Name String [2 blocks] "#onconnect" #2682[r1,l1] Function { #2575[r1,l2] Name Param "d" undefined #2671[r1,l2] Name String [1 blocks] ">cod" #2691[r1,l1] String [6 blocks] "{d.on(\"close\",function(){200!=this.code&&(fargo[b]=a)})}" #2628[r1,l2] Name String [1 blocks] ">sco" #2656[r2,l1] Function { #2584[r1,l2] Name Param "b" = int 4 #2715[r1,l2] Name Param "a" #2525[r1,l1] Bool true #2693[r1,l2] Name String [2 blocks] "return" undefined #2720[r1,l2] Name String [1 blocks] "d" #2531[r1,l1] String [1 blocks] "/on" } } #2640[r1,l2] Name String [1 blocks] "res" #2650[r2,l1] Object { #2649[r1,l2] Name String [2 blocks] "__proto__" #2375[r4,l1] ... #2727[r1,l2] Name String [2 blocks] "headers" #2401[r1,l1] Object { #2564[r1,l2] Name String [3 blocks] "Access-Control-Allow-Origin" #2464[r1,l1] String [1 blocks] "*" #2452[r1,l2] Name String [2 blocks] "Connection" #2420[r1,l1] String [2 blocks] "close" #2391[r1,l2] Name String [2 blocks] "Cache-Control" #2496[r1,l1] String [2 blocks] "max-age=600" } #2416[r1,l2] Name String [2 blocks] "httpVersion" #2408[r1,l1] String [1 blocks] "1.1" #2491[r1,l2] Name String [2 blocks] "statusCode" #2497[r1,l1] String [1 blocks] "200" #2466[r1,l2] Name String [2 blocks] "statusMessage" #2465[r1,l1] String [1 blocks] "OK" #2368[r1,l2] Name String [2 blocks] "#onclose" #2500[r1,l1] Function { #2386[r1,l2] Name String [1 blocks] ">cod" #2425[r1,l1] String [4 blocks] "{200!=this.code&&(fargo[b]=a)}" #2369[r1,l2] Name String [1 blocks] ">sco" #2372[r1,l1] Array(2) [ #2371[r1,l2] Name Integer 0 #2656[r2,l1] ... #2370[r1,l2] Name Integer 1 #2426[r1,l1] Function { #2387[r1,l2] Name Param "d" #2650[r2,l2] ... #2394[r1,l2] Name Param "" undefined #2392[r1,l2] Name String [2 blocks] "return" undefined } ] } } #2639[r1,l2] Name String [1 blocks] "opt" #2668[r1,l1] Object { #2611[r1,l2] Name String [2 blocks] "method" #2002[r1,l1] String [1 blocks] "GET" #2353[r1,l2] Name String [1 blocks] "host" #2679[r1,l1] String [2 blocks] "192.168.2.14" #2673[r1,l2] Name String [1 blocks] "path" #2675[r1,l1] String [2 blocks] "/api/relay/5/on" #2666[r1,l2] Name String [2 blocks] "pathname" #2672[r1,l1] String [2 blocks] "/api/relay/5/on" #2663[r1,l2] Name String [2 blocks] "search" #2664[r1,l1] Unknown 2 #2653[r1,l2] Name String [1 blocks] "port"= int 80 #2652[r1,l2] Name String [2 blocks] "query" #2654[r1,l1] Unknown 2 } #2627[r1,l2] Name String [1 blocks] "dSnd" undefined #2534[r1,l2] Name String [1 blocks] "sckt"= int 1 #2453[r1,l2] Name String [1 blocks] "dRcv" #2469[r1,l1] String [1 blocks] "" #2455[r1,l2] Name String [1 blocks] "hdrs" #2636[r1,l1] Bool true } #2558[r1,l2] Name Integer 2 #2565[r1,l1] Object { #2563[r1,l2] Name String [2 blocks] "__proto__" #2339[r3,l1] ... #2560[r1,l2] Name String [1 blocks] "type"= int 1 #2561[r1,l2] Name String [2 blocks] "#onconnect" #2604[r1,l1] Function { #2602[r1,l2] Name Param "d" undefined #2582[r1,l2] Name String [1 blocks] ">cod" #2724[r1,l1] String [6 blocks] "{d.on(\"close\",function(){200!=this.code&&(fargo[b]=a)})}" #2589[r1,l2] Name String [1 blocks] ">sco" #2625[r2,l1] Function { #2622[r1,l2] Name Param "b" = int 4 #2629[r1,l2] Name Param "a" #2626[r1,l1] Bool true #2632[r1,l2] Name String [2 blocks] "return" undefined #2624[r1,l2] Name String [1 blocks] "d" #2698[r1,l1] String [1 blocks] "/on" } } #2557[r1,l2] Name String [1 blocks] "res" #2568[r2,l1] Object { #2567[r1,l2] Name String [2 blocks] "__proto__" #2375[r4,l1] ... #2550[r1,l2] Name String [2 blocks] "headers" #1183[r1,l1] Object { #2438[r1,l2] Name String [3 blocks] "Access-Control-Allow-Origin" #2772[r1,l1] String [1 blocks] "*" #2746[r1,l2] Name String [2 blocks] "Connection" #2774[r1,l1] String [2 blocks] "close" #2783[r1,l2] Name String [2 blocks] "Cache-Control" #2766[r1,l1] String [2 blocks] "max-age=600" } #1967[r1,l2] Name String [2 blocks] "httpVersion" #2102[r1,l1] String [1 blocks] "1.1" #2767[r1,l2] Name String [2 blocks] "statusCode" #2773[r1,l1] String [1 blocks] "200" #2336[r1,l2] Name String [2 blocks] "statusMessage" #2090[r1,l1] String [1 blocks] "OK" #2791[r1,l2] Name String [2 blocks] "#onclose" #2110[r1,l1] Function { #2786[r1,l2] Name String [1 blocks] ">cod" #2779[r1,l1] String [4 blocks] "{200!=this.code&&(fargo[b]=a)}" #2790[r1,l2] Name String [1 blocks] ">sco" #2787[r1,l1] Array(2) [ #2788[r1,l2] Name Integer 0 #2625[r2,l1] ... #2789[r1,l2] Name Integer 1 #2770[r1,l1] Function { #2785[r1,l2] Name Param "d" #2568[r2,l2] ... #2780[r1,l2] Name Param "" undefined #2782[r1,l2] Name String [2 blocks] "return" undefined } ] } } #2556[r1,l2] Name String [1 blocks] "opt" #2579[r1,l1] Object { #2590[r1,l2] Name String [2 blocks] "method" #2594[r1,l1] String [1 blocks] "GET" #2592[r1,l2] Name String [1 blocks] "host" #2593[r1,l1] String [2 blocks] "192.168.2.14" #2585[r1,l2] Name String [1 blocks] "path" #2586[r1,l1] String [2 blocks] "/api/relay/5/on" #2578[r1,l2] Name String [2 blocks] "pathname" #2583[r1,l1] String [2 blocks] "/api/relay/5/on" #2574[r1,l2] Name String [2 blocks] "search" #2576[r1,l1] Unknown 2 #2571[r1,l2] Name String [1 blocks] "port"= int 80 #2570[r1,l2] Name String [2 blocks] "query" #2572[r1,l1] Unknown 2 } #2546[r1,l2] Name String [1 blocks] "dSnd" undefined #2657[r1,l2] Name String [1 blocks] "sckt"= int 1 #1964[r1,l2] Name String [1 blocks] "dRcv" #2007[r1,l1] String [1 blocks] "" #2508[r1,l2] Name String [1 blocks] "hdrs" #2103[r1,l1] Bool true } ] } #246[r1,l2] Name String [2 blocks] "Modules" #247[r1,l1] NativeFunction 0x3b9ad { } #84[r1,l2] Name String [1 blocks] "ocm" #83[r2,l1] Function { #82[r1,l2] Name Param "b" undefined #81[r1,l2] Name Param "a" undefined #480[r1,l2] Name String [1 blocks] ">cod" #80[r1,l1] String [64 blocks] "{console.log(\"menu:\"+b+\" option: \"+a);if(1==b)if(0==a)console.log(\"LIGHTS ON\");else if(1==a)console.log(\"LIGHTS OFF\");else{if(2==a)return console.log(\"SWITCH :\"),digitalWrite(LED1,1),{type:2,timeout:15};if(3==a)return console.log(\"DESK :\"),digitalWrite(LED1,1),{type:3,timeout:15};if(4==a)return console.log(\"NIXIE :\"),digitalWrite(LED1,1),{type:4,timeout:15}}else 2==b?(console.log(\"toggle device \"+a),8>a&&(setFargo(a,!fargo[a]),console.log(\"set fargo\"+a))):3==b?console.log(\"desk lamp \"+\na):4==b&&(0==a?setDesk(\"nixs=1;uplcd();\"):1==a?setDesk(\"nixs=0;uplcd();\"):2==a?setDesk(\"nixs=1;MnuS=0;MnuO=0;uplcd();\"):3==a?setDesk(\"nixs=1;MnuS=0;MnuO=1;uplcd();\"):4==a&&setDesk(\"nixs=1;MnuS=0;MnuO=2;uplcd();\"));digitalWrite(LED1,0);return{type:1,timeout:0}}" } #481[r1,l2] Name String [1 blocks] "otm" #482[r3,l1] Function { #870[r1,l2] Name String [1 blocks] ">cod" #483[r1,l1] String [5 blocks] "{digitalWrite(LED1,0);this.setRecognize(1,0)}" } #873[r1,l2] Name String [2 blocks] "fargosturl" #809[r1,l1] String [4 blocks] "http://192.168.2.12/fargostatus.php" #119[r1,l2] Name String [2 blocks] "dateurl" #1702[r1,l1] String [3 blocks] "http://192.168.2.12/date.php" #1705[r1,l2] Name String [2 blocks] "fargourl" #1707[r1,l1] String [4 blocks] "http://192.168.2.14/api/relay/" #1711[r1,l2] Name String [2 blocks] "deskurl" #1713[r1,l1] String [4 blocks] "http://192.168.2.16/code.run?code=" #1758[r1,l2] Name String [2 blocks] "fargo" #1741[r1,l1] Uint8Array #1742[r1,l1] ArrayBuffer #1744[r1,l1] String [2 blocks] "\x00\x01\x00\x00\x00\x00\x00\x00" #1755[r1,l2] Name String [2 blocks] "Uint8Array" #1756[r2,l1] NativeFunction 0x3e51d { #1752[r1,l2] Name String [2 blocks] "prototype" #1750[r1,l1] Object { #1749[r1,l2] Name String [2 blocks] "constructor" #1756[r2,l2] ... } } #1753[r1,l2] Name String [2 blocks] "setDesk" #1746[r1,l1] Function { #1745[r1,l2] Name Param "b" undefined #1721[r1,l2] Name String [1 blocks] ">cod" #1740[r1,l1] String [19 blocks] "{console.log(\"setDesk:\"+deskurl+b);require(\"http\").get(deskurl+b,function(a){a.on(\"close\",function(){200!=this.code&&console.log(\"Error commanding desklamp/nixie: \"+this.code)})});console.log(\"desk command\"+b)}" } #1720[r1,l2] Name String [2 blocks] "getFargostatus" #1718[r1,l1] Function { #1819[r1,l2] Name String [1 blocks] ">cod" #1801[r1,l1] String [18 blocks] "{var b=\"\";require(\"http\").get(fargosturl,function(a){a.on(\"data\",function(a){b+=a});a.on(\"close\",function(){var a=JSON.parse(b);vtfs=a;for(var c=0;8>c;c++)fargo[c]=a.relaystate[c].state;3==MnuS&&uplcd(1)})})}" } #1846[r1,l2] Name String [2 blocks] "setFargo" #1844[r1,l1] Function { #1843[r1,l2] Name Param "b" undefined #1842[r1,l2] Name Param "a" undefined #1828[r1,l2] Name String [1 blocks] ">cod" #1841[r1,l1] String [13 blocks] "{var d=a?\"/on\":\"/off\";require(\"http\").get(fargourl+(b+1).toString()+d,function(d){d.on(\"close\",function(){200!=this.code&&(fargo[b]=a)})})}" } #1827[r1,l2] Name String [2 blocks] "getDate" #1825[r1,l1] Function { #1882[r1,l2] Name String [1 blocks] ">cod" #1824[r1,l1] String [12 blocks] "{var b=\"\";require(\"http\").get(dateurl,function(a){a.on(\"data\",function(a){b+=a});a.on(\"close\",function(){clk=new Clock(b)})})}" } #1919[r1,l2] Name String [2 blocks] "onInit" #1917[r1,l1] Function { #1959[r1,l2] Name String [1 blocks] ">cod" #1916[r1,l1] String [35 blocks] "{Serial1.setup(9600,{tx:B6,rx:B7});evr=require(\"easyvr\").connect(Serial1,ocm,otm,otm);Serial2.setup(9600,{rx:A3,tx:A2});wifi=require(\"ESP8266WiFi\").connect(Serial2,function(b){if(b)throw b;wifi.reset(function(a){if(a)throw a;console.log(\"Connecting to WiFi\");wifi.connect(\"TwilightZone\",\"L0st1nTheZ0ne\",function(a){if(a)throw a;console.log(\"Connected\");evr.setRecognize(1,0);setTimeout(getFargostatus,1E3)})})})}" } #1969[r1,l2] Name String [2 blocks] "Serial" #1971[r2,l1] NativeFunction 0x3b99d { #1972[r1,l2] Name String [2 blocks] "prototype" #1974[r3,l1] Object { #1975[r1,l2] Name String [2 blocks] "constructor" #1971[r2,l2] ... } } #1980[r1,l2] Name String [2 blocks] "Serial1" #1977[r2,l1] Object { #1978[r1,l2] Name String [2 blocks] "__proto__" #1974[r3,l1] Object { #1975[r1,l2] Name String [2 blocks] "constructor" #1971[r2,l1] ... } #1992[r1,l2] Name String [2 blocks] "_baudrate"= int 9600 #1991[r1,l2] Name String [2 blocks] "_options" #1986[r1,l1] Object { #1987[r1,l2] Name String [1 blocks] "tx" #1988[r1,l1] Pin 22 #1989[r1,l2] Name String [1 blocks] "rx" #1990[r1,l1] Pin 23 } #2021[r1,l2] Name String [2 blocks] "#ondata" #2020[r1,l1] Function { #2023[r1,l2] Name Param "a" undefined #2024[r1,l2] Name String [1 blocks] ">cod" #2025[r1,l1] String [46 blocks] "{console.log(\"serial data watch: \"+a);var b=a.charCodeAt(0);console.log(\"serial data: \"+b);96=this.sts_idx[this.stsr].len?(console.log(\"running callback \"+this.sts_idx[this.stsr].cb),this.sts_idx[this.stsr].cb.bind(this)(),this.rcvv=\"\",this.stsr=\n\"o\"):(console.log(\"need more data\"),this.ser.print(\" \")))}" #2071[r1,l2] Name String [1 blocks] ">sco" #2072[r1,l1] Object { #2073[r1,l2] Name String [2 blocks] "exports" #487[r3,l1] ... #2075[r1,l2] Name String [2 blocks] "EasyVR" #504[r3,l1] ... } #2077[r1,l2] Name String [1 blocks] ">ths" #1999[r2,l1] ... } } #1982[r1,l2] Name String [1 blocks] "evr" #1999[r2,l1] Object { #2000[r1,l2] Name String [2 blocks] "__proto__" #527[r2,l1] Object { #528[r1,l2] Name String [2 blocks] "constructor" #504[r3,l1] Function { #505[r1,l2] Name Param "a" undefined #506[r1,l2] Name Param "b" undefined #507[r1,l2] Name Param "c" undefined #508[r1,l2] Name Param "d" undefined #525[r1,l2] Name String [1 blocks] ">cod" #509[r1,l1] String [16 blocks] "{this.ser=a;this.onCommand=b;this.onTimeout=c;this.onErr=d;this.ser.on(\"data\",this.onData.bind(this));this.stop();this.vrstate=-1;this.stsr=\"o\";this.rcvv=\"\";this.tout=0;this.lstC=\"\"}" #526[r1,l2] Name String [1 blocks] ">sco" #486[r17,l1] Object { #488[r1,l2] Name String [2 blocks] "exports" #487[r3,l1] ... #502[r1,l2] Name String [2 blocks] "EasyVR" #504[r3,l2] ... } #530[r1,l2] Name String [2 blocks] "prototype" #527[r2,l2] ... } #532[r1,l2] Name String [2 blocks] "argchar" #534[r1,l1] Function { #535[r1,l2] Name Param "a" undefined #542[r1,l2] Name String [1 blocks] ">cod" #536[r1,l1] String [6 blocks] "{if(-1>a||31sco" #486[r17,l1] Object { #488[r1,l2] Name String [2 blocks] "exports" #487[r3,l1] ... #502[r1,l2] Name String [2 blocks] "EasyVR" #504[r3,l1] ... } } #544[r1,l2] Name String [2 blocks] "chararg" #546[r1,l1] Function { #547[r1,l2] Name Param "a" undefined #551[r1,l2] Name String [1 blocks] ">cod" #548[r1,l1] String [3 blocks] "{return a.charCodeAt(0)-65}" #552[r1,l2] Name String [1 blocks] ">sco" #486[r17,l1] Object { #488[r1,l2] Name String [2 blocks] "exports" #487[r3,l1] ... #502[r1,l2] Name String [2 blocks] "EasyVR" #504[r3,l1] ... } } #553[r1,l2] Name String [2 blocks] "onData" #555[r1,l1] Function { #556[r1,l2] Name Param "a" undefined #603[r1,l2] Name String [1 blocks] ">cod" #557[r1,l1] String [46 blocks] "{console.log(\"serial data watch: \"+a);var b=a.charCodeAt(0);console.log(\"serial data: \"+b);96=this.sts_idx[this.stsr].len?(console.log(\"running callback \"+this.sts_idx[this.stsr].cb),this.sts_idx[this.stsr].cb.bind(this)(),this.rcvv=\"\",this.stsr=\n\"o\"):(console.log(\"need more data\"),this.ser.print(\" \")))}" #604[r1,l2] Name String [1 blocks] ">sco" #486[r17,l1] Object { #488[r1,l2] Name String [2 blocks] "exports" #487[r3,l1] ... #502[r1,l2] Name String [2 blocks] "EasyVR" #504[r3,l1] ... } } #605[r1,l2] Name String [2 blocks] "sts_idx" #607[r1,l1] Object { #608[r1,l2] Name String [1 blocks] "o" #609[r1,l1] Object { #610[r1,l2] Name String [1 blocks] "len"= int 0 #611[r1,l2] Name String [1 blocks] "cb" #612[r1,l1] Function { #629[r1,l2] Name String [1 blocks] ">cod" #613[r1,l1] String [16 blocks] "{console.log(\"STS_SUCCESS\");console.log(this.lstC);\"o\"==this.lstC&&(console.log(this.vrstate),-1!=this.vrstate&&(console.log(\"kicking off recognize\"),this.sendCmd(\"d\",this.vrstate)))}" #630[r1,l2] Name String [1 blocks] ">sco" #486[r17,l1] ... } } #631[r1,l2] Name String [1 blocks] "t" #632[r1,l1] Object { #633[r1,l2] Name String [1 blocks] "len"= int 0 #634[r1,l2] Name String [1 blocks] "cb" #635[r1,l1] Function { #648[r1,l2] Name String [1 blocks] ">cod" #636[r1,l1] String [12 blocks] "{console.log(\"STS_TIMEOUT\");-1!=this.vrstate&&(console.log(\"calling onTimeout callback\"),this.onTimeout(this.vrstate),this.vrstate=-1)}" #649[r1,l2] Name String [1 blocks] ">sco" #486[r17,l1] ... } } #650[r1,l2] Name String [1 blocks] "v" #651[r1,l1] Object { #652[r1,l2] Name String [1 blocks] "len"= int 0 #653[r1,l2] Name String [1 blocks] "cb" #654[r1,l1] Function { #662[r1,l2] Name String [1 blocks] ">cod" #655[r1,l1] String [7 blocks] "{console.log(\"STS_INVALID \"+this.rcvv);-1!=this.vrstate&&(this.vrstate=-1)}" #663[r1,l2] Name String [1 blocks] ">sco" #486[r17,l1] ... } } #664[r1,l2] Name String [1 blocks] "i" #665[r1,l1] Object { #666[r1,l2] Name String [1 blocks] "len"= int 0 #667[r1,l2] Name String [1 blocks] "cb" #668[r1,l1] Function { #676[r1,l2] Name String [1 blocks] ">cod" #669[r1,l1] String [7 blocks] "{console.log(\"STS_INTERR \"+\nthis.rcvv);-1!=this.vrstate&&(this.vrstate=-1)}" #677[r1,l2] Name String [1 blocks] ">sco" #486[r17,l1] ... } } #678[r1,l2] Name String [1 blocks] "e" #679[r1,l1] Object { #680[r1,l2] Name String [1 blocks] "len"= int 2 #681[r1,l2] Name String [1 blocks] "cb" #682[r1,l1] Function { #696[r1,l2] Name String [1 blocks] ">cod" #683[r1,l1] String [13 blocks] "{console.log(\"STS_ERROR \"+this.rcvv);if(-1!=this.vrstate){console.log(\"calling onErr callback\");var a=this.vrstate;this.vrstate=-1;this.onErr(a)}}" #697[r1,l2] Name String [1 blocks] ">sco" #486[r17,l1] ... } } #698[r1,l2] Name String [1 blocks] "s" #699[r1,l1] Object { #700[r1,l2] Name String [1 blocks] "len"= int 1 #701[r1,l2] Name String [1 blocks] "cb" #702[r1,l1] Function { #716[r1,l2] Name String [1 blocks] ">cod" #703[r1,l1] String [13 blocks] "{console.log(\"STS_SIMILAR \"+this.rcvv);if(-1!=this.vrstate){console.log(\"calling onErr callback\");var a=this.vrstate;this.vrstate=-1;this.onErr(a)}}" #717[r1,l2] Name String [1 blocks] ">sco" #486[r17,l1] ... } } #718[r1,l2] Name String [1 blocks] "r" #719[r1,l1] Object { #720[r1,l2] Name String [1 blocks] "len"= int 1 #721[r1,l2] Name String [1 blocks] "cb" #722[r1,l1] Function { #744[r1,l2] Name String [1 blocks] ">cod" #723[r1,l1] String [21 blocks] "{console.log(\"STS_RESULT \"+this.rcvv);if(-1!=this.vrstate){console.log(\"calling onCommand\");\nconsole.log(r);var a=this.onCommand(this.vrstate,this.chararg(this.rcvv));this.vrstate=-1;void 0!==a.type&&this.setRecognize(a.type,a.timeout)}}" #745[r1,l2] Name String [1 blocks] ">sco" #486[r17,l1] ... } } } #746[r1,l2] Name String [2 blocks] "setRecognize" #748[r1,l1] Function { #749[r1,l2] Name Param "a" undefined #750[r1,l2] Name Param "b" undefined #759[r1,l2] Name String [1 blocks] ">cod" #751[r1,l1] String [8 blocks] "{this.tout&&(clearTimeout(this.tout),this.tout=0);this.vrstate=a;this.timeout(b)}" #760[r1,l2] Name String [1 blocks] ">sco" #486[r17,l1] Object { #488[r1,l2] Name String [2 blocks] "exports" #487[r3,l1] ... #502[r1,l2] Name String [2 blocks] "EasyVR" #504[r3,l1] ... } } #761[r1,l2] Name String [2 blocks] "sendCmd" #763[r1,l1] Function { #764[r1,l2] Name Param "a" undefined #765[r1,l2] Name Param "b" undefined #780[r1,l2] Name String [1 blocks] ">cod" #766[r1,l1] String [14 blocks] "{this.ser.print(a);console.log(\"Sending command: \"+a);this.lstC=a;void 0!==b&&(console.log(\"With arg: \"+this.argchar(b)),this.ser.print(this.argchar(b)))}" #781[r1,l2] Name String [1 blocks] ">sco" #486[r17,l1] Object { #488[r1,l2] Name String [2 blocks] "exports" #487[r3,l1] ... #502[r1,l2] Name String [2 blocks] "EasyVR" #504[r3,l1] ... } } #782[r1,l2] Name String [1 blocks] "stop" #783[r1,l1] Function { #787[r1,l2] Name String [1 blocks] ">cod" #784[r1,l1] String [3 blocks] "{this.sendCmd(\"b\")}" #788[r1,l2] Name String [1 blocks] ">sco" #486[r17,l1] Object { #488[r1,l2] Name String [2 blocks] "exports" #487[r3,l1] ... #502[r1,l2] Name String [2 blocks] "EasyVR" #504[r3,l1] ... } } #789[r1,l2] Name String [2 blocks] "timeout" #791[r1,l1] Function { #792[r1,l2] Name Param "a" undefined #796[r1,l2] Name String [1 blocks] ">cod" #793[r1,l1] String [3 blocks] "{this.sendCmd(\"o\",a)}" #797[r1,l2] Name String [1 blocks] ">sco" #486[r17,l1] Object { #488[r1,l2] Name String [2 blocks] "exports" #487[r3,l1] ... #502[r1,l2] Name String [2 blocks] "EasyVR" #504[r3,l1] ... } } #798[r1,l2] Name String [2 blocks] "setStrict" #800[r1,l1] Function { #801[r1,l2] Name Param "a" undefined #806[r1,l2] Name String [1 blocks] ">cod" #802[r1,l1] String [4 blocks] "{this.sendCmd(\"v\",E.clip(a,1,5))}" #807[r1,l2] Name String [1 blocks] ">sco" #486[r17,l1] Object { #488[r1,l2] Name String [2 blocks] "exports" #487[r3,l1] ... #502[r1,l2] Name String [2 blocks] "EasyVR" #504[r3,l1] ... } } } #2009[r1,l2] Name String [1 blocks] "ser" #1977[r2,l1] ... #2010[r1,l2] Name String [2 blocks] "onCommand" #83[r2,l1] ... #2012[r1,l2] Name String [2 blocks] "onTimeout" #482[r3,l1] ... #2014[r1,l2] Name String [2 blocks] "onErr" #482[r3,l1] ... #2089[r1,l2] Name String [1 blocks] "lstC" #2731[r1,l1] String [1 blocks] "d" #2016[r1,l2] Name String [2 blocks] "vrstate"= int 1 #2078[r1,l2] Name String [1 blocks] "stsr" #2605[r1,l1] String [1 blocks] "o" #2019[r1,l2] Name String [1 blocks] "rcvv" #2712[r1,l1] String [1 blocks] "" #2081[r1,l2] Name String [1 blocks] "tout"= int 0 } #2087[r1,l2] Name String [2 blocks] "console" #2086[r1,l1] NativeFunction 0x3b985 { } #1996[r1,l2] Name String [2 blocks] "Serial2" #1983[r2,l1] Object { #1997[r1,l2] Name String [2 blocks] "__proto__" #1974[r3,l1] Object { #1975[r1,l2] Name String [2 blocks] "constructor" #1971[r2,l1] ... } #2085[r1,l2] Name String [2 blocks] "_baudrate"= int 9600 #2080[r1,l2] Name String [2 blocks] "_options" #2008[r1,l1] Object { #2006[r1,l2] Name String [1 blocks] "rx" #2005[r1,l1] Pin 3 #2004[r1,l2] Name String [1 blocks] "tx" #2003[r1,l1] Pin 2 } #2179[r1,l2] Name String [2 blocks] "#ondata" #2136[r1,l1] Function { #2137[r1,l2] Name Param "a" undefined #2174[r1,l2] Name String [1 blocks] ">cod" #2138[r1,l1] String [36 blocks] "{b+=a;l&&console.log(\"] \"+JSON.stringify(b)+\" <--- \"+JSON.stringify(a));if(c)for(var f in c)b.substr(0,f.length)==f&&(b=c[f](b));\"\\n\"==b[0]&&(b=b.substr(1));for(a=b.indexOf(\"\\r\");0<=a;){var d=b.substr(0,a);if(0sco" #2175[r1,l1] Array(2) [ #2176[r1,l2] Name Integer 0 #811[r28,l1] Object { #813[r1,l2] Name String [2 blocks] "exports" #812[r2,l1] ... } #2177[r1,l2] Name Integer 1 #2118[r27,l1] Function { #2119[r1,l2] Name Param "m" #1983[r2,l2] ... #2120[r1,l2] Name String [2 blocks] "return" undefined #2122[r1,l2] Name String [1 blocks] "l" #2123[r1,l1] Bool false #2124[r1,l2] Name String [1 blocks] "b" #2717[r1,l1] String [1 blocks] "" #2126[r1,l2] Name String [1 blocks] "e" undefined #2127[r1,l2] Name String [1 blocks] "c" #2128[r1,l1] Object { #2334[r1,l2] Name String [1 blocks] "+IPD" #1351[r3,l1] ... } #2129[r1,l2] Name String [1 blocks] "g" #2130[r1,l1] Object { } #2131[r1,l2] Name String [1 blocks] "k" #2132[r1,l1] Array(0) [ ] #2133[r1,l2] Name String [1 blocks] "h" #2134[r3,l1] ... } ] } } #1985[r1,l2] Name String [1 blocks] "wifi" #1378[r2,l1] Object { #1379[r1,l2] Name String [2 blocks] "ipdHandler" #1351[r3,l1] Function { #1352[r1,l2] Name Param "a" undefined #1374[r1,l2] Name String [1 blocks] ">cod" #1353[r1,l1] String [21 blocks] "{var c=a.indexOf(\":\");if(0>c)return a;var b=a.substring(5,c).split(\",\");b[1]|=0;var d=a.length-(c+1);if(d>=b[1])return sockData[b[0]]+=a.substr(c+1,b[1]),a.substr(c+b[1]+1);sockData[b[0]]+=a.substr(c+1,d);return\"+IPD,\"+b[0]+\",\"+(b[1]-d)+\":\"}" #1375[r1,l2] Name String [1 blocks] ">sco" #243[r34,l1] Object { #1174[r1,l2] Name String [2 blocks] "exports" #1173[r2,l1] ... #1176[r1,l2] Name String [1 blocks] "at" #2134[r3,l1] ... #1177[r1,l2] Name String [2 blocks] "socks" #1179[r1,l1] Array(1) [ #2345[r1,l2] Name Integer 0 undefined ] #1180[r1,l2] Name String [2 blocks] "sockData" #1182[r1,l1] Array(5) [ #1184[r1,l2] Name Integer 0 #2710[r1,l1] String [1 blocks] "" #1186[r1,l2] Name Integer 1 #1185[r1,l1] String [1 blocks] "" #1188[r1,l2] Name Integer 2 #1187[r1,l1] String [1 blocks] "" #1190[r1,l2] Name Integer 3 #1189[r1,l1] String [1 blocks] "" #1192[r1,l2] Name Integer 4 #1191[r1,l1] String [1 blocks] "" ] #1193[r1,l2] Name String [2 blocks] "MAXSOCKETS"= int 5 #1195[r1,l2] Name String [2 blocks] "ENCR_FLAGS" #1197[r1,l1] Array(5) [ #1199[r1,l2] Name Integer 0 #1198[r1,l1] String [1 blocks] "open" #1201[r1,l2] Name Integer 1 #1200[r1,l1] String [1 blocks] "wep" #1204[r1,l2] Name Integer 2 #1202[r1,l1] String [2 blocks] "wpa_psk" #1207[r1,l2] Name Integer 3 #1205[r1,l1] String [2 blocks] "wpa2_psk" #1210[r1,l2] Name Integer 4 #1208[r1,l1] String [2 blocks] "wpa_wpa2_psk" ] #1211[r1,l2] Name String [2 blocks] "netCallbacks" #1213[r2,l1] ... #1349[r1,l2] Name String [2 blocks] "ipdHandler" #1351[r3,l2] ... #1376[r1,l2] Name String [2 blocks] "wifiFuncs" #1378[r2,l2] ... } } #1381[r1,l2] Name String [2 blocks] "debug" #1383[r1,l1] Function { #1388[r1,l2] Name String [1 blocks] ">cod" #1384[r1,l1] String [4 blocks] "{return{socks:socks,sockData:sockData}}" #1389[r1,l2] Name String [1 blocks] ">sco" #243[r34,l1] Object { #1174[r1,l2] Name String [2 blocks] "exports" #1173[r2,l1] ... #1176[r1,l2] Name String [1 blocks] "at" #2134[r3,l1] ... #1177[r1,l2] Name String [2 blocks] "socks" #1179[r1,l1] Array(1) [ #2345[r1,l2] Name Integer 0 undefined ] #1180[r1,l2] Name String [2 blocks] "sockData" #1182[r1,l1] Array(5) [ #1184[r1,l2] Name Integer 0 #2710[r1,l1] String [1 blocks] "" #1186[r1,l2] Name Integer 1 #1185[r1,l1] String [1 blocks] "" #1188[r1,l2] Name Integer 2 #1187[r1,l1] String [1 blocks] "" #1190[r1,l2] Name Integer 3 #1189[r1,l1] String [1 blocks] "" #1192[r1,l2] Name Integer 4 #1191[r1,l1] String [1 blocks] "" ] #1193[r1,l2] Name String [2 blocks] "MAXSOCKETS"= int 5 #1195[r1,l2] Name String [2 blocks] "ENCR_FLAGS" #1197[r1,l1] Array(5) [ #1199[r1,l2] Name Integer 0 #1198[r1,l1] String [1 blocks] "open" #1201[r1,l2] Name Integer 1 #1200[r1,l1] String [1 blocks] "wep" #1204[r1,l2] Name Integer 2 #1202[r1,l1] String [2 blocks] "wpa_psk" #1207[r1,l2] Name Integer 3 #1205[r1,l1] String [2 blocks] "wpa2_psk" #1210[r1,l2] Name Integer 4 #1208[r1,l1] String [2 blocks] "wpa_wpa2_psk" ] #1211[r1,l2] Name String [2 blocks] "netCallbacks" #1213[r2,l1] ... #1349[r1,l2] Name String [2 blocks] "ipdHandler" #1351[r3,l1] ... #1376[r1,l2] Name String [2 blocks] "wifiFuncs" #1378[r2,l2] ... } } #1390[r1,l2] Name String [1 blocks] "init" #1391[r1,l1] Function { #1392[r1,l2] Name Param "a" undefined #1409[r1,l2] Name String [1 blocks] ">cod" #1393[r1,l1] String [16 blocks] "{var c=function(b){if(\"ATE0\"==b)return c;\"OK\"==b?at.cmd(\"AT+CIPMUX=1\\r\\n\",1E3,function(b){\"OK\"!=b?a(\"CIPMUX failed: \"+b):a(null)}):a(\"ATE0 failed: \"+b)};at.cmd(\"ATE0\\r\\n\",1E3,c)}" #1410[r1,l2] Name String [1 blocks] ">sco" #243[r34,l1] Object { #1174[r1,l2] Name String [2 blocks] "exports" #1173[r2,l1] ... #1176[r1,l2] Name String [1 blocks] "at" #2134[r3,l1] ... #1177[r1,l2] Name String [2 blocks] "socks" #1179[r1,l1] Array(1) [ #2345[r1,l2] Name Integer 0 undefined ] #1180[r1,l2] Name String [2 blocks] "sockData" #1182[r1,l1] Array(5) [ #1184[r1,l2] Name Integer 0 #2710[r1,l1] String [1 blocks] "" #1186[r1,l2] Name Integer 1 #1185[r1,l1] String [1 blocks] "" #1188[r1,l2] Name Integer 2 #1187[r1,l1] String [1 blocks] "" #1190[r1,l2] Name Integer 3 #1189[r1,l1] String [1 blocks] "" #1192[r1,l2] Name Integer 4 #1191[r1,l1] String [1 blocks] "" ] #1193[r1,l2] Name String [2 blocks] "MAXSOCKETS"= int 5 #1195[r1,l2] Name String [2 blocks] "ENCR_FLAGS" #1197[r1,l1] Array(5) [ #1199[r1,l2] Name Integer 0 #1198[r1,l1] String [1 blocks] "open" #1201[r1,l2] Name Integer 1 #1200[r1,l1] String [1 blocks] "wep" #1204[r1,l2] Name Integer 2 #1202[r1,l1] String [2 blocks] "wpa_psk" #1207[r1,l2] Name Integer 3 #1205[r1,l1] String [2 blocks] "wpa2_psk" #1210[r1,l2] Name Integer 4 #1208[r1,l1] String [2 blocks] "wpa_wpa2_psk" ] #1211[r1,l2] Name String [2 blocks] "netCallbacks" #1213[r2,l1] ... #1349[r1,l2] Name String [2 blocks] "ipdHandler" #1351[r3,l1] ... #1376[r1,l2] Name String [2 blocks] "wifiFuncs" #1378[r2,l2] ... } } #1411[r1,l2] Name String [2 blocks] "reset" #1413[r1,l1] Function { #1414[r1,l2] Name Param "a" undefined #1430[r1,l2] Name String [1 blocks] ">cod" #1415[r1,l1] String [15 blocks] "{var c=function(b){if(\"ready\"==b)setTimeout(function(){wifiFuncs.init(a)},1E3);else if(void 0===b)a(\"No 'ready' after AT+RST\");else return c};at.cmd(\"AT+RST\\r\\n\",1E4,c)}" #1431[r1,l2] Name String [1 blocks] ">sco" #243[r34,l1] Object { #1174[r1,l2] Name String [2 blocks] "exports" #1173[r2,l1] ... #1176[r1,l2] Name String [1 blocks] "at" #2134[r3,l1] ... #1177[r1,l2] Name String [2 blocks] "socks" #1179[r1,l1] Array(1) [ #2345[r1,l2] Name Integer 0 undefined ] #1180[r1,l2] Name String [2 blocks] "sockData" #1182[r1,l1] Array(5) [ #1184[r1,l2] Name Integer 0 #2710[r1,l1] String [1 blocks] "" #1186[r1,l2] Name Integer 1 #1185[r1,l1] String [1 blocks] "" #1188[r1,l2] Name Integer 2 #1187[r1,l1] String [1 blocks] "" #1190[r1,l2] Name Integer 3 #1189[r1,l1] String [1 blocks] "" #1192[r1,l2] Name Integer 4 #1191[r1,l1] String [1 blocks] "" ] #1193[r1,l2] Name String [2 blocks] "MAXSOCKETS"= int 5 #1195[r1,l2] Name String [2 blocks] "ENCR_FLAGS" #1197[r1,l1] Array(5) [ #1199[r1,l2] Name Integer 0 #1198[r1,l1] String [1 blocks] "open" #1201[r1,l2] Name Integer 1 #1200[r1,l1] String [1 blocks] "wep" #1204[r1,l2] Name Integer 2 #1202[r1,l1] String [2 blocks] "wpa_psk" #1207[r1,l2] Name Integer 3 #1205[r1,l1] String [2 blocks] "wpa2_psk" #1210[r1,l2] Name Integer 4 #1208[r1,l1] String [2 blocks] "wpa_wpa2_psk" ] #1211[r1,l2] Name String [2 blocks] "netCallbacks" #1213[r2,l1] ... #1349[r1,l2] Name String [2 blocks] "ipdHandler" #1351[r3,l1] ... #1376[r1,l2] Name String [2 blocks] "wifiFuncs" #1378[r2,l2] ... } } #1432[r1,l2] Name String [2 blocks] "getVersion" #1434[r1,l1] Function { #1435[r1,l2] Name Param "a" undefined #1441[r1,l2] Name String [1 blocks] ">cod" #1436[r1,l1] String [5 blocks] "{at.cmd(\"AT+GMR\\r\\n\",\n1E3,function(c){a(null,c)})}" #1442[r1,l2] Name String [1 blocks] ">sco" #243[r34,l1] Object { #1174[r1,l2] Name String [2 blocks] "exports" #1173[r2,l1] ... #1176[r1,l2] Name String [1 blocks] "at" #2134[r3,l1] ... #1177[r1,l2] Name String [2 blocks] "socks" #1179[r1,l1] Array(1) [ #2345[r1,l2] Name Integer 0 undefined ] #1180[r1,l2] Name String [2 blocks] "sockData" #1182[r1,l1] Array(5) [ #1184[r1,l2] Name Integer 0 #2710[r1,l1] String [1 blocks] "" #1186[r1,l2] Name Integer 1 #1185[r1,l1] String [1 blocks] "" #1188[r1,l2] Name Integer 2 #1187[r1,l1] String [1 blocks] "" #1190[r1,l2] Name Integer 3 #1189[r1,l1] String [1 blocks] "" #1192[r1,l2] Name Integer 4 #1191[r1,l1] String [1 blocks] "" ] #1193[r1,l2] Name String [2 blocks] "MAXSOCKETS"= int 5 #1195[r1,l2] Name String [2 blocks] "ENCR_FLAGS" #1197[r1,l1] Array(5) [ #1199[r1,l2] Name Integer 0 #1198[r1,l1] String [1 blocks] "open" #1201[r1,l2] Name Integer 1 #1200[r1,l1] String [1 blocks] "wep" #1204[r1,l2] Name Integer 2 #1202[r1,l1] String [2 blocks] "wpa_psk" #1207[r1,l2] Name Integer 3 #1205[r1,l1] String [2 blocks] "wpa2_psk" #1210[r1,l2] Name Integer 4 #1208[r1,l1] String [2 blocks] "wpa_wpa2_psk" ] #1211[r1,l2] Name String [2 blocks] "netCallbacks" #1213[r2,l1] ... #1349[r1,l2] Name String [2 blocks] "ipdHandler" #1351[r3,l1] ... #1376[r1,l2] Name String [2 blocks] "wifiFuncs" #1378[r2,l2] ... } } #1443[r1,l2] Name String [2 blocks] "connect" #1445[r1,l1] Function { #1446[r1,l2] Name Param "a" undefined #1447[r1,l2] Name Param "c" undefined #1448[r1,l2] Name Param "b" undefined #1468[r1,l2] Name String [1 blocks] ">cod" #1449[r1,l1] String [19 blocks] "{at.cmd(\"AT+CWMODE=1\\r\\n\",1E3,function(d){\"no change\"!=d&&\"OK\"!=d?b(\"CWMODE failed: \"+d):at.cmd(\"AT+CWJAP=\"+JSON.stringify(a)+\",\"+JSON.stringify(c)+\"\\r\\n\",2E4,function(a){\"OK\"!=a?b(\"WiFi connect failed: \"+a):b(null)})})}" #1469[r1,l2] Name String [1 blocks] ">sco" #243[r34,l1] Object { #1174[r1,l2] Name String [2 blocks] "exports" #1173[r2,l1] ... #1176[r1,l2] Name String [1 blocks] "at" #2134[r3,l1] ... #1177[r1,l2] Name String [2 blocks] "socks" #1179[r1,l1] Array(1) [ #2345[r1,l2] Name Integer 0 undefined ] #1180[r1,l2] Name String [2 blocks] "sockData" #1182[r1,l1] Array(5) [ #1184[r1,l2] Name Integer 0 #2710[r1,l1] String [1 blocks] "" #1186[r1,l2] Name Integer 1 #1185[r1,l1] String [1 blocks] "" #1188[r1,l2] Name Integer 2 #1187[r1,l1] String [1 blocks] "" #1190[r1,l2] Name Integer 3 #1189[r1,l1] String [1 blocks] "" #1192[r1,l2] Name Integer 4 #1191[r1,l1] String [1 blocks] "" ] #1193[r1,l2] Name String [2 blocks] "MAXSOCKETS"= int 5 #1195[r1,l2] Name String [2 blocks] "ENCR_FLAGS" #1197[r1,l1] Array(5) [ #1199[r1,l2] Name Integer 0 #1198[r1,l1] String [1 blocks] "open" #1201[r1,l2] Name Integer 1 #1200[r1,l1] String [1 blocks] "wep" #1204[r1,l2] Name Integer 2 #1202[r1,l1] String [2 blocks] "wpa_psk" #1207[r1,l2] Name Integer 3 #1205[r1,l1] String [2 blocks] "wpa2_psk" #1210[r1,l2] Name Integer 4 #1208[r1,l1] String [2 blocks] "wpa_wpa2_psk" ] #1211[r1,l2] Name String [2 blocks] "netCallbacks" #1213[r2,l1] ... #1349[r1,l2] Name String [2 blocks] "ipdHandler" #1351[r3,l1] ... #1376[r1,l2] Name String [2 blocks] "wifiFuncs" #1378[r2,l2] ... } } #1470[r1,l2] Name String [2 blocks] "getAPs" #1472[r1,l1] Function { #1473[r1,l2] Name Param "a" undefined #1493[r1,l2] Name String [1 blocks] ">cod" #1474[r1,l1] String [19 blocks] "{var c=[];at.cmdReg(\"AT+CWLAP\\r\\n\",5E3,\"+CWLAP:\",function(a){a=a.slice(8,-1).split(\",\");c.push({ssid:JSON.parse(a[1]),enc:ENCR_FLAGS[a[0]],signal:parseInt(a[2]),mac:JSON.parse(a[3])})},function(b){a(null,c)})}" #1494[r1,l2] Name String [1 blocks] ">sco" #243[r34,l1] Object { #1174[r1,l2] Name String [2 blocks] "exports" #1173[r2,l1] ... #1176[r1,l2] Name String [1 blocks] "at" #2134[r3,l1] ... #1177[r1,l2] Name String [2 blocks] "socks" #1179[r1,l1] Array(1) [ #2345[r1,l2] Name Integer 0 undefined ] #1180[r1,l2] Name String [2 blocks] "sockData" #1182[r1,l1] Array(5) [ #1184[r1,l2] Name Integer 0 #2710[r1,l1] String [1 blocks] "" #1186[r1,l2] Name Integer 1 #1185[r1,l1] String [1 blocks] "" #1188[r1,l2] Name Integer 2 #1187[r1,l1] String [1 blocks] "" #1190[r1,l2] Name Integer 3 #1189[r1,l1] String [1 blocks] "" #1192[r1,l2] Name Integer 4 #1191[r1,l1] String [1 blocks] "" ] #1193[r1,l2] Name String [2 blocks] "MAXSOCKETS"= int 5 #1195[r1,l2] Name String [2 blocks] "ENCR_FLAGS" #1197[r1,l1] Array(5) [ #1199[r1,l2] Name Integer 0 #1198[r1,l1] String [1 blocks] "open" #1201[r1,l2] Name Integer 1 #1200[r1,l1] String [1 blocks] "wep" #1204[r1,l2] Name Integer 2 #1202[r1,l1] String [2 blocks] "wpa_psk" #1207[r1,l2] Name Integer 3 #1205[r1,l1] String [2 blocks] "wpa2_psk" #1210[r1,l2] Name Integer 4 #1208[r1,l1] String [2 blocks] "wpa_wpa2_psk" ] #1211[r1,l2] Name String [2 blocks] "netCallbacks" #1213[r2,l1] ... #1349[r1,l2] Name String [2 blocks] "ipdHandler" #1351[r3,l1] ... #1376[r1,l2] Name String [2 blocks] "wifiFuncs" #1378[r2,l2] ... } } #1495[r1,l2] Name String [2 blocks] "getConnectedAP" #1497[r1,l1] Function { #1498[r1,l2] Name Param "a" undefined #1509[r1,l2] Name String [1 blocks] ">cod" #1499[r1,l1] String [10 blocks] "{var c;at.cmdReg(\"AT+CWJAP?\\r\\n\",1E3,\"+CWJAP:\",function(a){c=JSON.parse(a.slice(7))},function(b){a(null,c)})}" #1510[r1,l2] Name String [1 blocks] ">sco" #243[r34,l1] Object { #1174[r1,l2] Name String [2 blocks] "exports" #1173[r2,l1] ... #1176[r1,l2] Name String [1 blocks] "at" #2134[r3,l1] ... #1177[r1,l2] Name String [2 blocks] "socks" #1179[r1,l1] Array(1) [ #2345[r1,l2] Name Integer 0 undefined ] #1180[r1,l2] Name String [2 blocks] "sockData" #1182[r1,l1] Array(5) [ #1184[r1,l2] Name Integer 0 #2710[r1,l1] String [1 blocks] "" #1186[r1,l2] Name Integer 1 #1185[r1,l1] String [1 blocks] "" #1188[r1,l2] Name Integer 2 #1187[r1,l1] String [1 blocks] "" #1190[r1,l2] Name Integer 3 #1189[r1,l1] String [1 blocks] "" #1192[r1,l2] Name Integer 4 #1191[r1,l1] String [1 blocks] "" ] #1193[r1,l2] Name String [2 blocks] "MAXSOCKETS"= int 5 #1195[r1,l2] Name String [2 blocks] "ENCR_FLAGS" #1197[r1,l1] Array(5) [ #1199[r1,l2] Name Integer 0 #1198[r1,l1] String [1 blocks] "open" #1201[r1,l2] Name Integer 1 #1200[r1,l1] String [1 blocks] "wep" #1204[r1,l2] Name Integer 2 #1202[r1,l1] String [2 blocks] "wpa_psk" #1207[r1,l2] Name Integer 3 #1205[r1,l1] String [2 blocks] "wpa2_psk" #1210[r1,l2] Name Integer 4 #1208[r1,l1] String [2 blocks] "wpa_wpa2_psk" ] #1211[r1,l2] Name String [2 blocks] "netCallbacks" #1213[r2,l1] ... #1349[r1,l2] Name String [2 blocks] "ipdHandler" #1351[r3,l1] ... #1376[r1,l2] Name String [2 blocks] "wifiFuncs" #1378[r2,l2] ... } } #1511[r1,l2] Name String [2 blocks] "createAP" #1513[r1,l1] Function { #1514[r1,l2] Name Param "a" undefined #1515[r1,l2] Name Param "c" undefined #1516[r1,l2] Name Param "b" undefined #1517[r1,l2] Name Param "d" undefined #1518[r1,l2] Name Param "f" undefined #1546[r1,l2] Name String [1 blocks] ">cod" #1519[r1,l1] String [27 blocks] "{at.cmd(\"AT+CWMODE=2\\r\\n\",1E3,function(e){\"no change\"!=e&&\"OK\"!=e&&f(\"CWMODE failed: \"+e);e=d?ENCR_FLAGS.indexOf(d):0;0>e?f(\"Encryption type \"+d+\" not known - \"+ENCR_FLAGS):at.cmd(\"AT+CWSAP=\"+JSON.stringify(a)+\",\"+JSON.stringify(c)+\",\"+b+\",\"+e+\"\\r\\n\",5E3,function(a){\"OK\"!=a?f(\"CWSAP failed: \"+a):f(null)})})}" #1547[r1,l2] Name String [1 blocks] ">sco" #243[r34,l1] Object { #1174[r1,l2] Name String [2 blocks] "exports" #1173[r2,l1] ... #1176[r1,l2] Name String [1 blocks] "at" #2134[r3,l1] ... #1177[r1,l2] Name String [2 blocks] "socks" #1179[r1,l1] Array(1) [ #2345[r1,l2] Name Integer 0 undefined ] #1180[r1,l2] Name String [2 blocks] "sockData" #1182[r1,l1] Array(5) [ #1184[r1,l2] Name Integer 0 #2710[r1,l1] String [1 blocks] "" #1186[r1,l2] Name Integer 1 #1185[r1,l1] String [1 blocks] "" #1188[r1,l2] Name Integer 2 #1187[r1,l1] String [1 blocks] "" #1190[r1,l2] Name Integer 3 #1189[r1,l1] String [1 blocks] "" #1192[r1,l2] Name Integer 4 #1191[r1,l1] String [1 blocks] "" ] #1193[r1,l2] Name String [2 blocks] "MAXSOCKETS"= int 5 #1195[r1,l2] Name String [2 blocks] "ENCR_FLAGS" #1197[r1,l1] Array(5) [ #1199[r1,l2] Name Integer 0 #1198[r1,l1] String [1 blocks] "open" #1201[r1,l2] Name Integer 1 #1200[r1,l1] String [1 blocks] "wep" #1204[r1,l2] Name Integer 2 #1202[r1,l1] String [2 blocks] "wpa_psk" #1207[r1,l2] Name Integer 3 #1205[r1,l1] String [2 blocks] "wpa2_psk" #1210[r1,l2] Name Integer 4 #1208[r1,l1] String [2 blocks] "wpa_wpa2_psk" ] #1211[r1,l2] Name String [2 blocks] "netCallbacks" #1213[r2,l1] ... #1349[r1,l2] Name String [2 blocks] "ipdHandler" #1351[r3,l1] ... #1376[r1,l2] Name String [2 blocks] "wifiFuncs" #1378[r2,l2] ... } } #1548[r1,l2] Name String [2 blocks] "getIP" #1550[r1,l1] Function { #1551[r1,l2] Name Param "a" undefined #1562[r1,l2] Name String [1 blocks] ">cod" #1552[r1,l1] String [10 blocks] "{at.cmd(\"AT+CIFSR\\r\\n\",\n1E3,function(c){return function(b){return\"OK\"!=b?a(\"CIFSR failed: \"+b):a(null,c)}})}" #1563[r1,l2] Name String [1 blocks] ">sco" #243[r34,l1] Object { #1174[r1,l2] Name String [2 blocks] "exports" #1173[r2,l1] ... #1176[r1,l2] Name String [1 blocks] "at" #2134[r3,l1] ... #1177[r1,l2] Name String [2 blocks] "socks" #1179[r1,l1] Array(1) [ #2345[r1,l2] Name Integer 0 undefined ] #1180[r1,l2] Name String [2 blocks] "sockData" #1182[r1,l1] Array(5) [ #1184[r1,l2] Name Integer 0 #2710[r1,l1] String [1 blocks] "" #1186[r1,l2] Name Integer 1 #1185[r1,l1] String [1 blocks] "" #1188[r1,l2] Name Integer 2 #1187[r1,l1] String [1 blocks] "" #1190[r1,l2] Name Integer 3 #1189[r1,l1] String [1 blocks] "" #1192[r1,l2] Name Integer 4 #1191[r1,l1] String [1 blocks] "" ] #1193[r1,l2] Name String [2 blocks] "MAXSOCKETS"= int 5 #1195[r1,l2] Name String [2 blocks] "ENCR_FLAGS" #1197[r1,l1] Array(5) [ #1199[r1,l2] Name Integer 0 #1198[r1,l1] String [1 blocks] "open" #1201[r1,l2] Name Integer 1 #1200[r1,l1] String [1 blocks] "wep" #1204[r1,l2] Name Integer 2 #1202[r1,l1] String [2 blocks] "wpa_psk" #1207[r1,l2] Name Integer 3 #1205[r1,l1] String [2 blocks] "wpa2_psk" #1210[r1,l2] Name Integer 4 #1208[r1,l1] String [2 blocks] "wpa_wpa2_psk" ] #1211[r1,l2] Name String [2 blocks] "netCallbacks" #1213[r2,l1] ... #1349[r1,l2] Name String [2 blocks] "ipdHandler" #1351[r3,l1] ... #1376[r1,l2] Name String [2 blocks] "wifiFuncs" #1378[r2,l2] ... } } #2117[r1,l2] Name String [1 blocks] "at" #2134[r3,l1] Object { #2135[r1,l2] Name String [2 blocks] "debug" #2182[r1,l1] Function { #2190[r1,l2] Name String [1 blocks] ">cod" #2183[r1,l1] String [7 blocks] "{l=!0;return{line:b,lineCallback:e,handlers:c,lineHandlers:g,waiting:k}}" #2194[r1,l2] Name String [1 blocks] ">sco" #2191[r1,l1] Array(2) [ #2192[r1,l2] Name Integer 0 #811[r28,l1] ... #2193[r1,l2] Name Integer 1 #2118[r27,l1] ... ] } #2195[r1,l2] Name String [1 blocks] "cmd" #2196[r1,l1] Function { #2197[r1,l2] Name Param "a" undefined #2198[r1,l2] Name Param "b" undefined #2199[r1,l2] Name Param "d" undefined #2223[r1,l2] Name String [1 blocks] ">cod" #2200[r1,l1] String [23 blocks] "{if(e)k.push([a,b,d]);else if(l&&console.log(\"[\"+JSON.stringify(a)),m.write(a),b){var c=setTimeout(function(){e=void 0;d&&d()},b),g=function(a){e=void 0;var b;d&&(b=d(a))?(e=g,d=b):clearTimeout(c);void 0===e&&0sco" #2224[r1,l1] Array(2) [ #2225[r1,l2] Name Integer 0 #811[r28,l1] ... #2226[r1,l2] Name Integer 1 #2118[r27,l1] ... ] } #2228[r1,l2] Name String [2 blocks] "cmdReg" #2230[r1,l1] Function { #2231[r1,l2] Name Param "a" undefined #2232[r1,l2] Name Param "b" undefined #2233[r1,l2] Name Param "d" undefined #2234[r1,l2] Name Param "c" undefined #2235[r1,l2] Name Param "e" undefined #2243[r1,l2] Name String [1 blocks] ">cod" #2236[r1,l1] String [7 blocks] "{h.registerLine(d,c);h.cmd(a,b,function(a){h.unregisterLine(d);e(a)})}" #2247[r1,l2] Name String [1 blocks] ">sco" #2244[r1,l1] Array(2) [ #2245[r1,l2] Name Integer 0 #811[r28,l1] ... #2246[r1,l2] Name Integer 1 #2118[r27,l1] ... ] } #2248[r1,l2] Name String [2 blocks] "registerLine" #2250[r1,l1] Function { #2251[r1,l2] Name Param "a" undefined #2252[r1,l2] Name Param "b" undefined #2259[r1,l2] Name String [1 blocks] ">cod" #2253[r1,l1] String [6 blocks] "{if(g[a])throw Error(a+\n\" already registered\");g[a]=b}" #2263[r1,l2] Name String [1 blocks] ">sco" #2260[r1,l1] Array(2) [ #2261[r1,l2] Name Integer 0 #811[r28,l1] ... #2262[r1,l2] Name Integer 1 #2118[r27,l1] ... ] } #2264[r1,l2] Name String [2 blocks] "unregisterLine" #2266[r1,l1] Function { #2267[r1,l2] Name Param "a" undefined #2274[r1,l2] Name String [1 blocks] ">cod" #2268[r1,l1] String [6 blocks] "{if(!g[a])throw Error(a+\" not registered\");delete g[a]}" #2278[r1,l2] Name String [1 blocks] ">sco" #2275[r1,l1] Array(2) [ #2276[r1,l2] Name Integer 0 #811[r28,l1] ... #2277[r1,l2] Name Integer 1 #2118[r27,l1] ... ] } #2279[r1,l2] Name String [2 blocks] "register" #2281[r1,l1] Function { #2282[r1,l2] Name Param "a" undefined #2283[r1,l2] Name Param "b" undefined #2290[r1,l2] Name String [1 blocks] ">cod" #2284[r1,l1] String [6 blocks] "{if(c[a])throw Error(a+\" already registered\");c[a]=b}" #2294[r1,l2] Name String [1 blocks] ">sco" #2291[r1,l1] Array(2) [ #2292[r1,l2] Name Integer 0 #811[r28,l1] ... #2293[r1,l2] Name Integer 1 #2118[r27,l1] ... ] } #2295[r1,l2] Name String [2 blocks] "unregister" #2297[r1,l1] Function { #2298[r1,l2] Name Param "a" undefined #2305[r1,l2] Name String [1 blocks] ">cod" #2299[r1,l1] String [6 blocks] "{if(!c[a])throw Error(a+\" not registered\");delete c[a]}" #2309[r1,l2] Name String [1 blocks] ">sco" #2306[r1,l1] Array(2) [ #2307[r1,l2] Name Integer 0 #811[r28,l1] ... #2308[r1,l2] Name Integer 1 #2118[r27,l1] ... ] } #2310[r1,l2] Name String [2 blocks] "isBusy" #2312[r1,l1] Function { #2316[r1,l2] Name String [1 blocks] ">cod" #2313[r1,l1] String [3 blocks] "{return void 0!==e}" #2320[r1,l2] Name String [1 blocks] ">sco" #2317[r1,l1] Array(2) [ #2318[r1,l2] Name Integer 0 #811[r28,l1] ... #2319[r1,l2] Name Integer 1 #2118[r27,l1] ... ] } } } #2473[r1,l2] Name String [1 blocks] "JSON" #2474[r1,l1] NativeFunction 0x3b9bd { } #2514[r1,l2] Name String [2 blocks] "String" #2519[r1,l1] NativeFunction 0x3106d { } #2378[r1,l2] Name String [2 blocks] "httpCRs" #2381[r2,l1] NativeFunction 0x3b96d { #2379[r1,l2] Name String [2 blocks] "prototype" #2375[r4,l1] Object { #2374[r1,l2] Name String [2 blocks] "constructor" #2381[r2,l2] ... } } #2362[r1,l2] Name String [2 blocks] "httpCRq" #2342[r2,l1] NativeFunction 0x3b975 { #2341[r1,l2] Name String [2 blocks] "prototype" #2339[r3,l1] Object { #2338[r1,l2] Name String [2 blocks] "constructor" #2342[r2,l2] ... } } #2677[r1,l2] Name String [1 blocks] "vtfs" #2442[r1,l1] Object { #2538[r1,l2] Name String [2 blocks] "relaystate" #2483[r1,l1] Array(8) [ #2390[r1,l2] Name Integer 0 #2398[r1,l1] Object { #2400[r1,l2] Name String [2 blocks] "state"= int 0 #2389[r1,l2] Name String [2 blocks] "rdtiev"= int 0 } #2412[r1,l2] Name Integer 1 #2380[r1,l1] Object { #2100[r1,l2] Name String [2 blocks] "state"= int 1 #2405[r1,l2] Name String [2 blocks] "rdtiev"= int 0 } #2415[r1,l2] Name Integer 2 #2410[r1,l1] Object { #2407[r1,l2] Name String [2 blocks] "state"= int 0 #2413[r1,l2] Name String [2 blocks] "rdtiev"= int 0 } #2332[r1,l2] Name Integer 3 #2488[r1,l1] Object { #2486[r1,l2] Name String [2 blocks] "state"= int 0 #2326[r1,l2] Name String [2 blocks] "rdtiev"= int 0 } #2478[r1,l2] Name Integer 4 #2485[r1,l1] Object { #2479[r1,l2] Name String [2 blocks] "state"= int 0 #2477[r1,l2] Name String [2 blocks] "rdtiev"= int 0 } #2462[r1,l2] Name Integer 5 #2475[r1,l1] Object { #2467[r1,l2] Name String [2 blocks] "state"= int 0 #2459[r1,l2] Name String [2 blocks] "rdtiev"= int 0 } #2481[r1,l2] Name Integer 6 #2435[r1,l1] Object { #2433[r1,l2] Name String [2 blocks] "state"= int 0 #2422[r1,l2] Name String [2 blocks] "rdtiev"= int 0 } #2706[r1,l2] Name Integer 7 #2335[r1,l1] Object { #2333[r1,l2] Name String [2 blocks] "state"= int 0 #2735[r1,l2] Name String [2 blocks] "rdtiev"= int 0 } ] #2737[r1,l2] Name String [2 blocks] "fargostatus" #2739[r1,l1] Object { #2740[r1,l2] Name String [2 blocks] "temperature" #2742[r1,l1] Double 44.5 #2743[r1,l2] Name String [2 blocks] "volts" #2745[r1,l1] Double 10.9 } } #2733[r1,l2] Name String [2 blocks] "process" #2728[r1,l1] NativeFunction 0x3b94d { } }