Gateway con agregar controles mediante firebase migracion a OS5

Dependencies:   mbed-http ESP01 Pulse RFDecoder

Committer:
Thrillex13
Date:
Sat May 25 18:08:19 2019 +0000
Revision:
2:bc3973471585
Parent:
1:cf6a75de25ce
Child:
3:5dceee1c49fc
Se cambio la libreria de ESP01 de Quevedo por la de William Thenaers

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Thrillex13 0:f4f503a32dca 1 #include "mbed.h"
Thrillex13 0:f4f503a32dca 2 #include <string>
Thrillex13 1:cf6a75de25ce 3 #include "ESP01.h"
Thrillex13 1:cf6a75de25ce 4 #include "https_request.h"
Thrillex13 1:cf6a75de25ce 5 #include "mbed_trace.h"
Thrillex13 1:cf6a75de25ce 6 #include "TCPSocket.h"
Thrillex13 1:cf6a75de25ce 7 #include "ESP8266Interface.h"
Thrillex13 0:f4f503a32dca 8
Thrillex13 0:f4f503a32dca 9 // Objects
Thrillex13 0:f4f503a32dca 10 Serial pc(USBTX, USBRX);
Thrillex13 1:cf6a75de25ce 11 ESP01 wifi(PTC17, PTC16, 115200); //Con este objeto implementamos los metodos que requieren comandos AT del modulo de WIFI
Thrillex13 1:cf6a75de25ce 12 //ESP8266Interface net(PTC17, PTC16); //Con este objeto implementamos todas las funciones de red para la creacion de Sockets
Thrillex13 0:f4f503a32dca 13
Thrillex13 0:f4f503a32dca 14 DigitalOut led_rojo(LED_RED);
Thrillex13 0:f4f503a32dca 15 DigitalOut led_verde(LED_GREEN);
Thrillex13 0:f4f503a32dca 16 DigitalOut led_azul(LED_BLUE);
Thrillex13 0:f4f503a32dca 17
Thrillex13 0:f4f503a32dca 18 #define ON 0;
Thrillex13 0:f4f503a32dca 19 #define OFF 1;
Thrillex13 0:f4f503a32dca 20
Thrillex13 0:f4f503a32dca 21 // Global variables
Thrillex13 0:f4f503a32dca 22 char snd[255], rcv[1000]; // Strings for sending and receiving commands / data / replies
Thrillex13 0:f4f503a32dca 23
Thrillex13 0:f4f503a32dca 24 void wifiInit(void);
Thrillex13 0:f4f503a32dca 25 bool isConnectedToWifi(void);
Thrillex13 0:f4f503a32dca 26 void wifiConnect(void);
Thrillex13 1:cf6a75de25ce 27
Thrillex13 1:cf6a75de25ce 28 void http_demo(NetworkInterface *net);
Thrillex13 1:cf6a75de25ce 29
Thrillex13 1:cf6a75de25ce 30
Thrillex13 1:cf6a75de25ce 31 /* List of trusted root CA certificates
Thrillex13 1:cf6a75de25ce 32 * currently two: Amazon, the CA for os.mbed.com and Let's Encrypt, the CA for httpbin.org
Thrillex13 1:cf6a75de25ce 33 *
Thrillex13 1:cf6a75de25ce 34 * To add more root certificates, just concatenate them.
Thrillex13 1:cf6a75de25ce 35 */
Thrillex13 1:cf6a75de25ce 36 const char SSL_CA_PEM[] =
Thrillex13 1:cf6a75de25ce 37 "-----BEGIN CERTIFICATE-----\n"
Thrillex13 1:cf6a75de25ce 38 "MIIFmzCCBIOgAwIBAgIRAJRuZHok8dQjAQAAAAApJGwwDQYJKoZIhvcNAQELBQAw\n"
Thrillex13 1:cf6a75de25ce 39 "QjELMAkGA1UEBhMCVVMxHjAcBgNVBAoTFUdvb2dsZSBUcnVzdCBTZXJ2aWNlczET\n"
Thrillex13 1:cf6a75de25ce 40 "MBEGA1UEAxMKR1RTIENBIDFPMTAeFw0xOTAzMTMyMTMwNTdaFw0yMDAzMTEyMTMw\n"
Thrillex13 1:cf6a75de25ce 41 "NTdaMGgxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQH\n"
Thrillex13 1:cf6a75de25ce 42 "Ew1Nb3VudGFpbiBWaWV3MRMwEQYDVQQKEwpHb29nbGUgTExDMRcwFQYDVQQDEw5m\n"
Thrillex13 1:cf6a75de25ce 43 "aXJlYmFzZWlvLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALkd\n"
Thrillex13 1:cf6a75de25ce 44 "/jeM+PrwIYmM6IE28iN7CjKnBWy+tqNrs5z2AJwM5iLgtgcbc+THuXGElTN7zAWB\n"
Thrillex13 1:cf6a75de25ce 45 "SKWv+ezAGe5NiTEEUiWgX1z1VFDj85xpz+Cysn/Oi8MtoN6h8yCmYPtXv8YPInw0\n"
Thrillex13 1:cf6a75de25ce 46 "JLkSM5e2uuWVwc/tR1Fh+awpiYQFqGm6DvMq6yAYB/nuL3Gyc4XFgRrxje+VQ+g3\n"
Thrillex13 1:cf6a75de25ce 47 "oWE+9NVfqu4smFCutSIGlEdRhGdr/m2u+sc+dnBZNoVOqwSyyFyjpAZvMMvuE5Ip\n"
Thrillex13 1:cf6a75de25ce 48 "3ovfA1tq57nl9eQw8fcKsdXOeeXYHc1KBUUC7Xb8F/1+upVML8a5GMULpYkClLXt\n"
Thrillex13 1:cf6a75de25ce 49 "OKRRfCJa53YynILJdPkCAwEAAaOCAmQwggJgMA4GA1UdDwEB/wQEAwIFoDATBgNV\n"
Thrillex13 1:cf6a75de25ce 50 "HSUEDDAKBggrBgEFBQcDATAMBgNVHRMBAf8EAjAAMB0GA1UdDgQWBBS03YhV70g6\n"
Thrillex13 1:cf6a75de25ce 51 "+7MUxtOiluRi1T2GAzAfBgNVHSMEGDAWgBSY0fhuEOvPm+xgnxiQG6DrfQn9KzBk\n"
Thrillex13 1:cf6a75de25ce 52 "BggrBgEFBQcBAQRYMFYwJwYIKwYBBQUHMAGGG2h0dHA6Ly9vY3NwLnBraS5nb29n\n"
Thrillex13 1:cf6a75de25ce 53 "L2d0czFvMTArBggrBgEFBQcwAoYfaHR0cDovL3BraS5nb29nL2dzcjIvR1RTMU8x\n"
Thrillex13 1:cf6a75de25ce 54 "LmNydDArBgNVHREEJDAigg5maXJlYmFzZWlvLmNvbYIQKi5maXJlYmFzZWlvLmNv\n"
Thrillex13 1:cf6a75de25ce 55 "bTAhBgNVHSAEGjAYMAgGBmeBDAECAjAMBgorBgEEAdZ5AgUDMC8GA1UdHwQoMCYw\n"
Thrillex13 1:cf6a75de25ce 56 "JKAioCCGHmh0dHA6Ly9jcmwucGtpLmdvb2cvR1RTMU8xLmNybDCCAQIGCisGAQQB\n"
Thrillex13 1:cf6a75de25ce 57 "1nkCBAIEgfMEgfAA7gB1ALIeBcyLos2KIE6HZvkruYolIGdr2vpw57JJUy3vi5Be\n"
Thrillex13 1:cf6a75de25ce 58 "AAABaXkuFzgAAAQDAEYwRAIgVssWhLEYItcpljMfJfkBhnxUrw32ik3C7IyBhkS6\n"
Thrillex13 1:cf6a75de25ce 59 "jQcCIAHzoq/0QsRXY8RITJ5z6pThPzJhiSeLhWb6v2MDs6+NAHUAXqdz+d9WwOe1\n"
Thrillex13 1:cf6a75de25ce 60 "Nkh90EngMnqRmgyEoRIShBh1loFxRVgAAAFpeS4XEQAABAMARjBEAiBgwY3jVuyU\n"
Thrillex13 1:cf6a75de25ce 61 "HTDrfXt7Hhq3AL9kD8hASq/qIXFvHAel1AIgV2DY0UI7PvVl2uHicvaL9BfUPQjP\n"
Thrillex13 1:cf6a75de25ce 62 "8/7b5W5jd6HEKbowDQYJKoZIhvcNAQELBQADggEBAAFG/f9zTyPTiYjjbPKpIC3T\n"
Thrillex13 1:cf6a75de25ce 63 "MMD8dWvny1DJpL2fQPMcpAkkduW7sFG8mLRh14mSBsWqAusj99nAKt6NJhxZewhp\n"
Thrillex13 1:cf6a75de25ce 64 "JKwbcawanW+w2DUzFr0FauVxNIs4xPxcgkCNAGeUj8ZI+cDcSaMOY4WxNrjOgbbI\n"
Thrillex13 1:cf6a75de25ce 65 "feOxHsCmIWxch6/vNVxh+54BZFCy723DL8Fo/tDRU73b+gxPJusJva4ABuXSqSFT\n"
Thrillex13 1:cf6a75de25ce 66 "EDaRGzdj8AKkoDmRkWLcEg/6a/2dfw8VV7fIAlqVxNQwZWZLtIsBGazxZ5xflrVz\n"
Thrillex13 1:cf6a75de25ce 67 "I5AHejNR7guDaWAimhkSOlG11W8BzPtdAo/xJ6JyI4K5kPGIXucniVRmQfmojxc=\n"
Thrillex13 1:cf6a75de25ce 68 "-----END CERTIFICATE-----\n"
Thrillex13 1:cf6a75de25ce 69 "-----BEGIN CERTIFICATE-----\n"
Thrillex13 1:cf6a75de25ce 70 "MIIESjCCAzKgAwIBAgINAeO0mqGNiqmBJWlQuDANBgkqhkiG9w0BAQsFADBMMSAw\n"
Thrillex13 1:cf6a75de25ce 71 "HgYDVQQLExdHbG9iYWxTaWduIFJvb3QgQ0EgLSBSMjETMBEGA1UEChMKR2xvYmFs\n"
Thrillex13 1:cf6a75de25ce 72 "U2lnbjETMBEGA1UEAxMKR2xvYmFsU2lnbjAeFw0xNzA2MTUwMDAwNDJaFw0yMTEy\n"
Thrillex13 1:cf6a75de25ce 73 "MTUwMDAwNDJaMEIxCzAJBgNVBAYTAlVTMR4wHAYDVQQKExVHb29nbGUgVHJ1c3Qg\n"
Thrillex13 1:cf6a75de25ce 74 "U2VydmljZXMxEzARBgNVBAMTCkdUUyBDQSAxTzEwggEiMA0GCSqGSIb3DQEBAQUA\n"
Thrillex13 1:cf6a75de25ce 75 "A4IBDwAwggEKAoIBAQDQGM9F1IvN05zkQO9+tN1pIRvJzzyOTHW5DzEZhD2ePCnv\n"
Thrillex13 1:cf6a75de25ce 76 "UA0Qk28FgICfKqC9EksC4T2fWBYk/jCfC3R3VZMdS/dN4ZKCEPZRrAzDsiKUDzRr\n"
Thrillex13 1:cf6a75de25ce 77 "mBBJ5wudgzndIMYcLe/RGGFl5yODIKgjEv/SJH/UL+dEaltN11BmsK+eQmMF++Ac\n"
Thrillex13 1:cf6a75de25ce 78 "xGNhr59qM/9il71I2dN8FGfcddwuaej4bXhp0LcQBbjxMcI7JP0aM3T4I+DsaxmK\n"
Thrillex13 1:cf6a75de25ce 79 "FsbjzaTNC9uzpFlgOIg7rR25xoynUxv8vNmkq7zdPGHXkxWY7oG9j+JkRyBABk7X\n"
Thrillex13 1:cf6a75de25ce 80 "rJfoucBZEqFJJSPk7XA0LKW0Y3z5oz2D0c1tJKwHAgMBAAGjggEzMIIBLzAOBgNV\n"
Thrillex13 1:cf6a75de25ce 81 "HQ8BAf8EBAMCAYYwHQYDVR0lBBYwFAYIKwYBBQUHAwEGCCsGAQUFBwMCMBIGA1Ud\n"
Thrillex13 1:cf6a75de25ce 82 "EwEB/wQIMAYBAf8CAQAwHQYDVR0OBBYEFJjR+G4Q68+b7GCfGJAboOt9Cf0rMB8G\n"
Thrillex13 1:cf6a75de25ce 83 "A1UdIwQYMBaAFJviB1dnHB7AagbeWbSaLd/cGYYuMDUGCCsGAQUFBwEBBCkwJzAl\n"
Thrillex13 1:cf6a75de25ce 84 "BggrBgEFBQcwAYYZaHR0cDovL29jc3AucGtpLmdvb2cvZ3NyMjAyBgNVHR8EKzAp\n"
Thrillex13 1:cf6a75de25ce 85 "MCegJaAjhiFodHRwOi8vY3JsLnBraS5nb29nL2dzcjIvZ3NyMi5jcmwwPwYDVR0g\n"
Thrillex13 1:cf6a75de25ce 86 "BDgwNjA0BgZngQwBAgIwKjAoBggrBgEFBQcCARYcaHR0cHM6Ly9wa2kuZ29vZy9y\n"
Thrillex13 1:cf6a75de25ce 87 "ZXBvc2l0b3J5LzANBgkqhkiG9w0BAQsFAAOCAQEAGoA+Nnn78y6pRjd9XlQWNa7H\n"
Thrillex13 1:cf6a75de25ce 88 "TgiZ/r3RNGkmUmYHPQq6Scti9PEajvwRT2iWTHQr02fesqOqBY2ETUwgZQ+lltoN\n"
Thrillex13 1:cf6a75de25ce 89 "FvhsO9tvBCOIazpswWC9aJ9xju4tWDQH8NVU6YZZ/XteDSGU9YzJqPjY8q3MDxrz\n"
Thrillex13 1:cf6a75de25ce 90 "mqepBCf5o8mw/wJ4a2G6xzUr6Fb6T8McDO22PLRL6u3M4Tzs3A2M1j6bykJYi8wW\n"
Thrillex13 1:cf6a75de25ce 91 "IRdAvKLWZu/axBVbzYmqmwkm5zLSDW5nIAJbELCQCZwMH56t2Dvqofxs6BBcCFIZ\n"
Thrillex13 1:cf6a75de25ce 92 "USpxu6x6td0V7SvJCCosirSmIatj/9dSSVDQibet8q/7UK4v4ZUN80atnZz1yg==\n"
Thrillex13 1:cf6a75de25ce 93 "-----END CERTIFICATE-----\n";
Thrillex13 1:cf6a75de25ce 94
Thrillex13 1:cf6a75de25ce 95
Thrillex13 1:cf6a75de25ce 96 void dump_response(HttpResponse* res) {
Thrillex13 1:cf6a75de25ce 97 printf("Status: %d - %s\n", res->get_status_code(), res->get_status_message().c_str());
Thrillex13 1:cf6a75de25ce 98
Thrillex13 1:cf6a75de25ce 99 printf("Headers:\n");
Thrillex13 1:cf6a75de25ce 100 for (size_t ix = 0; ix < res->get_headers_length(); ix++) {
Thrillex13 1:cf6a75de25ce 101 printf("\t%s: %s\n", res->get_headers_fields()[ix]->c_str(), res->get_headers_values()[ix]->c_str());
Thrillex13 1:cf6a75de25ce 102 }
Thrillex13 1:cf6a75de25ce 103 printf("\nBody (%lu bytes):\n\n%s\n", res->get_body_length(), res->get_body_as_string().c_str());
Thrillex13 1:cf6a75de25ce 104 }
Thrillex13 0:f4f503a32dca 105
Thrillex13 0:f4f503a32dca 106 int main() {
Thrillex13 0:f4f503a32dca 107 led_azul = OFF;
Thrillex13 0:f4f503a32dca 108 led_rojo = OFF;
Thrillex13 0:f4f503a32dca 109 led_verde = OFF;
Thrillex13 0:f4f503a32dca 110
Thrillex13 0:f4f503a32dca 111 pc.baud(115200);
Thrillex13 0:f4f503a32dca 112 wifi.Quit();
Thrillex13 0:f4f503a32dca 113 wifiInit();
Thrillex13 0:f4f503a32dca 114 wifiConnect();
Thrillex13 0:f4f503a32dca 115
Thrillex13 2:bc3973471585 116
Thrillex13 2:bc3973471585 117
Thrillex13 1:cf6a75de25ce 118 //NextToDo: Crear un servidor y a la vez hacer get y post
Thrillex13 1:cf6a75de25ce 119
Thrillex13 1:cf6a75de25ce 120 ESP8266Interface net(PTC17, PTC16); //Con este objeto implementamos todas las funciones de red para la creacion de Sockets
Thrillex13 2:bc3973471585 121
Thrillex13 1:cf6a75de25ce 122 http_demo(&net);
Thrillex13 1:cf6a75de25ce 123
Thrillex13 2:bc3973471585 124 wifi.StartServerMode(333);
Thrillex13 2:bc3973471585 125 wifi.RcvReply(rcv, 1000);
Thrillex13 2:bc3973471585 126 pc.printf("%s", rcv);
Thrillex13 2:bc3973471585 127 wait(20);
Thrillex13 2:bc3973471585 128
Thrillex13 2:bc3973471585 129 http_demo(&net);
Thrillex13 2:bc3973471585 130
Thrillex13 2:bc3973471585 131
Thrillex13 2:bc3973471585 132
Thrillex13 0:f4f503a32dca 133
Thrillex13 0:f4f503a32dca 134
Thrillex13 0:f4f503a32dca 135 while(1);
Thrillex13 0:f4f503a32dca 136 }
Thrillex13 0:f4f503a32dca 137
Thrillex13 0:f4f503a32dca 138 void wifiInit(void){
Thrillex13 0:f4f503a32dca 139 pc.printf("Gateway Sistema de Control de Cotos\r\n");
Thrillex13 0:f4f503a32dca 140 pc.printf("Resetting WiFi\r\n");
Thrillex13 0:f4f503a32dca 141 wifi.Reset();
Thrillex13 0:f4f503a32dca 142 wait(2);
Thrillex13 0:f4f503a32dca 143 wifi.DisableEcho();
Thrillex13 1:cf6a75de25ce 144 pc.printf("Set mode to Station+AP\r\n");
Thrillex13 2:bc3973471585 145 wifi.SetMode(BOTH);
Thrillex13 0:f4f503a32dca 146 wifi.RcvReply(rcv, 1000);
Thrillex13 0:f4f503a32dca 147 pc.printf("%s", rcv);
Thrillex13 0:f4f503a32dca 148 wait(2);
Thrillex13 1:cf6a75de25ce 149 pc.printf("Configure for multiple sockets\r\n");
Thrillex13 1:cf6a75de25ce 150 wifi.SetMultiple();
Thrillex13 1:cf6a75de25ce 151 wifi.RcvReply(rcv, 1000);
Thrillex13 1:cf6a75de25ce 152 pc.printf("%s", rcv);
Thrillex13 1:cf6a75de25ce 153 wait(2);
Thrillex13 1:cf6a75de25ce 154 pc.printf("Enable DHCP\r\n");
Thrillex13 1:cf6a75de25ce 155 wifi.EnableDHCP();
Thrillex13 1:cf6a75de25ce 156 wifi.RcvReply(rcv, 1000);
Thrillex13 1:cf6a75de25ce 157 pc.printf("%s", rcv);
Thrillex13 1:cf6a75de25ce 158 wait(2);
Thrillex13 0:f4f503a32dca 159 }
Thrillex13 0:f4f503a32dca 160
Thrillex13 0:f4f503a32dca 161 void wifiConnect(void){
Thrillex13 0:f4f503a32dca 162 Timer t;
Thrillex13 0:f4f503a32dca 163 if(isConnectedToWifi()){
Thrillex13 0:f4f503a32dca 164 pc.printf("Gateway is already connected to wifi with the following IP address\r\n");
Thrillex13 0:f4f503a32dca 165 wifi.GetIP(rcv);
Thrillex13 0:f4f503a32dca 166 pc.printf("%s", rcv);
Thrillex13 0:f4f503a32dca 167 led_azul = OFF;
Thrillex13 0:f4f503a32dca 168 led_verde = ON;
Thrillex13 0:f4f503a32dca 169 wait(2);
Thrillex13 0:f4f503a32dca 170 }else{
Thrillex13 0:f4f503a32dca 171 t.start();
Thrillex13 0:f4f503a32dca 172 pc.printf("Starting Smart Config\r\n");
Thrillex13 0:f4f503a32dca 173 led_azul = ON;
Thrillex13 0:f4f503a32dca 174 wifi.StartSmartConfig();
Thrillex13 1:cf6a75de25ce 175 wifi.RcvReply(rcv, 15000);
Thrillex13 0:f4f503a32dca 176 pc.printf("%s", rcv);
Thrillex13 0:f4f503a32dca 177 wait(5);
Thrillex13 0:f4f503a32dca 178 while(!isConnectedToWifi()){
Thrillex13 0:f4f503a32dca 179 if(t.read_ms() > 30000) {
Thrillex13 0:f4f503a32dca 180 led_azul = OFF;
Thrillex13 0:f4f503a32dca 181 led_rojo = ON;
Thrillex13 0:f4f503a32dca 182 pc.printf("No se pudo conectar al Wifi");
Thrillex13 0:f4f503a32dca 183 break;
Thrillex13 0:f4f503a32dca 184 }
Thrillex13 0:f4f503a32dca 185 }
Thrillex13 0:f4f503a32dca 186 }
Thrillex13 0:f4f503a32dca 187 }
Thrillex13 0:f4f503a32dca 188
Thrillex13 0:f4f503a32dca 189 bool isConnectedToWifi(void){
Thrillex13 0:f4f503a32dca 190 bool status;
Thrillex13 2:bc3973471585 191 wifi.GetConnStatusCode(rcv);
Thrillex13 0:f4f503a32dca 192 //pc.printf("%s", rcv);
Thrillex13 0:f4f503a32dca 193 if(strcmp(rcv,"STATUS:2\r")==0){
Thrillex13 0:f4f503a32dca 194 led_azul = OFF;
Thrillex13 0:f4f503a32dca 195 led_rojo = OFF;
Thrillex13 0:f4f503a32dca 196 led_verde = ON;
Thrillex13 0:f4f503a32dca 197 status=true;
Thrillex13 0:f4f503a32dca 198 }else{
Thrillex13 0:f4f503a32dca 199 status=false;
Thrillex13 0:f4f503a32dca 200 }
Thrillex13 0:f4f503a32dca 201 return status;
Thrillex13 0:f4f503a32dca 202
Thrillex13 1:cf6a75de25ce 203 }
Thrillex13 1:cf6a75de25ce 204
Thrillex13 1:cf6a75de25ce 205 void http_demo(NetworkInterface *network){
Thrillex13 1:cf6a75de25ce 206 TLSSocket* socket = new TLSSocket();
Thrillex13 1:cf6a75de25ce 207
Thrillex13 1:cf6a75de25ce 208 nsapi_error_t r;
Thrillex13 1:cf6a75de25ce 209 // make sure to check the return values for the calls below (should return NSAPI_ERROR_OK)
Thrillex13 1:cf6a75de25ce 210 r = socket->open(network);
Thrillex13 1:cf6a75de25ce 211 r = socket->set_root_ca_cert(SSL_CA_PEM);
Thrillex13 1:cf6a75de25ce 212 r = socket->connect("https://cotoceiba.firebaseio.com", 443);
Thrillex13 1:cf6a75de25ce 213
Thrillex13 1:cf6a75de25ce 214 printf("\n----- HTTPS GET request -----\n");
Thrillex13 1:cf6a75de25ce 215
Thrillex13 1:cf6a75de25ce 216 HttpsRequest* get_req = new HttpsRequest(socket, HTTP_GET, "https://cotoceiba.firebaseio.com/Condominos/94.json?auth=ZpXLLURU9KWmW5t1kzBYD2IuBE0V7wdv5vXwDgsH");
Thrillex13 1:cf6a75de25ce 217
Thrillex13 1:cf6a75de25ce 218 HttpResponse* get_res = get_req->send();
Thrillex13 1:cf6a75de25ce 219 if (!get_res) {
Thrillex13 1:cf6a75de25ce 220 printf("HttpRequest failed (error code %d)\n", get_req->get_error());
Thrillex13 1:cf6a75de25ce 221 //return 1;
Thrillex13 1:cf6a75de25ce 222 }
Thrillex13 1:cf6a75de25ce 223 printf("\n----- HTTPS GET response -----\n");
Thrillex13 1:cf6a75de25ce 224 dump_response(get_res);
Thrillex13 1:cf6a75de25ce 225 delete get_req;
Thrillex13 1:cf6a75de25ce 226
Thrillex13 1:cf6a75de25ce 227 printf("\n----- HTTPS POST request -----\n");
Thrillex13 1:cf6a75de25ce 228
Thrillex13 1:cf6a75de25ce 229 HttpsRequest* post_req = new HttpsRequest(socket, HTTP_POST, "https://cotoceiba.firebaseio.com/Condominos/52.json?auth=ZpXLLURU9KWmW5t1kzBYD2IuBE0V7wdv5vXwDgsH");
Thrillex13 1:cf6a75de25ce 230 post_req->set_header("Content-Type", "application/json");
Thrillex13 1:cf6a75de25ce 231
Thrillex13 1:cf6a75de25ce 232 const char body[] = "{\"nombre\":\"Posteado por Wifi Perros\",\"numcasa\":\"64\"}";
Thrillex13 1:cf6a75de25ce 233
Thrillex13 1:cf6a75de25ce 234 HttpResponse* post_res = post_req->send(body, strlen(body));
Thrillex13 1:cf6a75de25ce 235 if (!post_res) {
Thrillex13 1:cf6a75de25ce 236 printf("HttpRequest failed (error code %d)\n", post_req->get_error());
Thrillex13 1:cf6a75de25ce 237 //return 1;
Thrillex13 1:cf6a75de25ce 238 }
Thrillex13 1:cf6a75de25ce 239
Thrillex13 1:cf6a75de25ce 240 printf("\n----- HTTPS POST response -----\n");
Thrillex13 1:cf6a75de25ce 241 dump_response(post_res);
Thrillex13 1:cf6a75de25ce 242 delete post_req;
Thrillex13 0:f4f503a32dca 243 }