Paso 4: Código I: recepción de un mensaje de texto
De aquí encendido hacia fuera de él es todo el código hasta la implementación, pero vamos a precipitarnos cosas cuando apenas llegamos a conocernos. El código no es su promedio cada día C++ Arduino ya que estamos usando algo mucho más poderoso: LinkIt uno. Las bibliotecas son mucho más extensas y la tecnología más avanzada. Hacer una llamada telefónica con un regulador micro de la caja puede parecer un poco extraño. Utilizaremos la biblioteca LGSM bastante ampliamente, por lo que podría ser útil leer un poco en eso.
Captura de un mensaje de texto
En primer lugar, queremos capturar un mensaje de texto. Siguiendo la lógica dentro de la función loop()...
if(LSMS.available()) // Check if there is new SMS {
Este gigante si bloque comprueba para ver si hay un nuevo mensaje de texto. Si es así, vamos a seguir ir y analizarlo.
LSMS.remoteNumber(p_num, 20); // display Number part Serial.println("There is new message."); Serial.print("Number:"); Serial.println(p_num); Serial.print("Content:"); // display Content part
A continuación, imprimir alguna información de depuración básica. Cuando se implementa esta cosa, probablemente no nos importa mucho la salida de la serie, pero siempre es una buena práctica imprimir esto en caso de que queremos volver y echar un vistazo.
while(true) { int v = LSMS.read(); if(v < 0) break; dtaget[len++] = (char)v; Serial.print((char)v); }
A continuación vamos a leer el mensaje de texto. Es un poco difícil porque con esta tecnología incorporada, no es tan simple como ' cadena = textMessage.read();'. En cambio, tenemos que leer los bytes del mensaje de texto carácter por carácter, formando una matriz de caracteres que es nuestro mensaje final. Esto se hace en el anterior mientras bucle.
LSMS.flush(); // delete message
Ahora, para ahorrar espacio en el dispositivo, te 'flush' o borrar el mensaje.
if(( dtaget[0] == 'E' && dtaget[1] == 'X' && dtaget[2] == 'C' && dtaget[3] == 'U' && dtaget[4] == 'S' && dtaget[5] == 'E' ) )
Por último, vamos a hacer una comprobación lógica fundamental para asegurarse de que el mensaje de texto dice 'Excusa'. Esto se asegurará de que realmente queremos desencadenar a la excuser, versus acabamos de algún texto aleatorio.
Y eso es todo! Ahora vamos a pasar a cómo vamos a desencadenar esa llamada a sacarnos de nuestra salmuera...