
Updated Sensors Module. Added person counter.
Dependencies: EthernetInterface HC_SR04_Ultrasonic_Library Middleware mbed-rtos mbed
Fork of SmartLabProyect by
Coments.cpp
- Committer:
- RoHe
- Date:
- 2015-12-09
- Revision:
- 1:106e93f9c7c8
- Parent:
- 0:5db5c980e717
File content as of revision 1:106e93f9c7c8:
/* TODO: 1.- Conectar a ambos servidores 1.1 - si no solo conectar a uno y tener present la conección activa 2.-hacer funciones para dvidir las cadenas de los mensajes 3.-hace funcion para formar cadenas para enviar mensajes 4. Formato de mensajes para que los pueda leer el server */ /* // Connect to Server1 //TODO: try to connect to both servers //TODO: only try 5 times after ti server1 goes down //TODO: cual es la diferencia entre recieved_all y recieved //TOTRY: que valor regresa cuando hace el connect??? //QUESTION: que son los numero que aparecen despues de los dos puntos, //parece ser uqe es el numero que noceciones que lleva acabo 192.168.1.81:49160 //NOSIRVE: si se conecta los dos micros con el programa de TCP Server4 y se les pide un reply //los micros no contestan y para terminarla si pides dos veces un reply se queda colgado .. //ACCOMPLISH: los colores de los leds ya responen de acuerdo a la conexion //GetPersonStatus(1); for(int i=0,isConServer1=0; i<2 && isConServer1==0; i++) { if(socketTCP1.connect(ECHO_SERVER_ADDRESS1, ECHO_SERVER_PORT1) == -1) { _isConnectedServer1=false; pc.printf("Unable to connect1 to (%s) on port (%d)\n\r", ECHO_SERVER_ADDRESS1, ECHO_SERVER_PORT1); pc.printf("TRY SERVER 1 number (%d)\n\r",(i+1)); isConServer1=0; } else { _isConnectedServer1=socketTCP1.is_connected(); pc.printf("Ya se conecto con el servidor 1\n\r"); isConServer1=1; wait(1); char hello[] = "Hello World\n\r"; printf("Sending message to Server : '%s' \n",hello); socketTCP1.send_all(hello, sizeof(hello) - 1); } }//END FOR1 for(int i=0,isConServer2=0; i<2 && isConServer2==0; i++) { if(socketTCP2.connect(ECHO_SERVER_ADDRESS2, ECHO_SERVER_PORT2) == -1) { _isConnectedServer2=false; pc.printf("Unable to connect2 to (%s) on port (%d)\n\r", ECHO_SERVER_ADDRESS2, ECHO_SERVER_PORT2); pc.printf("TRY SERVER 2 number (%d)\n\r",(i+1)); isConServer2=0; //wait(1); } else { _isConnectedServer2=socketTCP2.is_connected(); pc.printf("Ya se conecto con el servidor 2\n\r"); isConServer2=1; } }//END FOR2 //RECEIVED from TCP SERVER1 n1 = socketTCP1.receive_all(buf1, 256); buf1[n1] = '\0'; if(n1>0) { pc.printf("Received message from server1 IF: '%s'\n\r", buf1); socketTCP1.close(); } else { //_isConnectedServer1==false; //quiere decir que se desconecto del servidor pc.printf("Not received1 ELSE value of lenght: '%u'\n\r",strlen(buf1)); socketTCP1.close(); //isConnectedServer1=false; } //socketTCP1.close(); //socketTCP2.close(); if(strcmp(buf1,"reply")==0) { // SEND to server1 //Entra pero no puede mandar los datos // pc.printf("Entro a la funcion strcmp: \n\r"); if(socketTCP1.connect(ECHO_SERVER_ADDRESS1, ECHO_SERVER_PORT1) == -1) { pc.printf("Unable to connect1 to (%s) on port (%d)\n\r", ECHO_SERVER_ADDRESS1, ECHO_SERVER_PORT1); } char c_myIP[] = "192.168.1.77\n\r"; pc.printf("Sending message to Server : %s \n\r",c_myIP); socketTCP1.send_all(c_myIP, sizeof(c_myIP) - 1); socketTCP1.close(); } //socketTCP1.close(); //RECEIVED from TCP SERVER2 n2 = socketTCP2.receive(buf2, 256); buf2[n2] = '\0'; if(n2>0) { pc.printf("Received message from server2 IF: '%s'\n\r", buf2); socketTCP2.close(); //isConnectedServer1=false; } else { //_isConnectedServer1==false; //quiere decir que se desconecto del servidor pc.printf("Not received2 ELSE value of lenght: '%u'\n\r",strlen(buf2)); socketTCP2.close(); //isConnectedServer1=false; } // */ /* // Receive message from server char buf1[256]; int n1 = socketTCP1.receive(buf1, 256); buf1[n1] = '\0'; if(n1>0) { pc.printf("Received message from server1 IF: '%s'\n\r", buf1); socketTCP1.close(); //isConnectedServer1=false; } else { //_isConnectedServer1==false; //quiere decir que se desconecto del servidor pc.printf("Not received ELSE value of lenght: '%u'\n\r",strlen(buf1)); socketTCP1.close(); //isConnectedServer1=false; } if(bo_somethingWrong==true) { return 0; } //if(socketTCP.connect(ECHO_SERVER_ADDRESS1, ECHO_SERVER_PORT1) == -1 && _isConnectedServer1==false ) { if(socketTCP.connect(ECHO_SERVER_ADDRESS1, ECHO_SERVER_PORT1) == -1) { _isConnectedServer1=socketTCP.is_connected(); //_isConnectedServer1=false; pc.printf("Unable to connect to (%s) on port (%d)\n\r", ECHO_SERVER_ADDRESS1, ECHO_SERVER_PORT1); wait(1); } else { _isConnectedServer1=socketTCP.is_connected(); //_isConnectedServer1=true; //pc.printf("Connected to Server at %s\n\r",ECHO_SERVER_ADDRESS1); pc.printf("Connected to Server at %s\n\r",socketTCP.get_address()); pc.printf("Connected to PORT at %u\n\r",socketTCP.get_port()); //TODO: split strings char hello[] = "reply:get:status:192.168.1.77:door:1\n\r"; pc.printf("Sending message to Server : %s \n\r",hello); socketTCP.send_all(hello, sizeof(hello)- 1); // Receive message from server char buf[256]; int n = socketTCP.receive(buf, 256); buf[n] = '\0'; pc.printf("Received message from server: '%s'\n\r", buf); if(bo_somethingWrong==true) { return 0; } } } // Clean up socketTCP1.close(); socketTCP2.close(); */ // Send message to server /* strcat(s_myIP,"\n\r"); pc.printf("Sending message to Server : %s \n\r",s_myIP); socketTCP.send_all(s_myIP, sizeof(s_myIP) - 1); */ /* c_myIP = "192.168.1.77\n\r"; //strcat(c_myIP,"\n\r"); pc.printf("Sending message to Server : %s \n\r",c_myIP); socketTCP.send_all(c_myIP, sizeof(c_myIP) - 1); */ //char hello[] = "reply:get:"; //char hello2[] = "status:192.168.1.77:door:1\n\r" ; //strcat(hello,hello2); //THREADS CSDECLARATION //Thread thread2(conect_Server); //Thread *thread2; //thread2 = new Thread(conect_Server); /* // Echo received message back to client pc.printf("bufferReply: '%s'\n\r",bufferReply); //Todas las cadenas que son enviadas tienen el final de \r\n int lengBuffer = stringManager.stringLenght(bufferReply); pc.printf("longhtBuffer: '%u'\n\r",strlen(buffer)); pc.printf("longhtBuffer n : '%u'\n\r",n); pc.printf("longhtBufferReply: '%u'\n\r",lengBuffer); pc.printf("strcmp: '%u'\n\r",strcmp(buffer,"set\r\n")); */ //IMPORT FROM LIBRARY /* cad = driver.echo(); pc.printf("libraryECHO: %s\n\r",cad); int var = driver.is_good(); pc.printf("libraryVAR: %u\n\r",var); */