Hola... de antemano te doy las gracias y las felicitaciones por tu trabajo.
En este caso, quiero agradecerte por el aporte que haces a la comunidad, tu código me ha servido mucho, he mejorado tu código y quiero compartirlo contigo. Un saludo desde Colombia.
//
#include <ESP8266WiFi.h>
const char* host = "
www.cambatronics.com
";
const char* ssid = "Escribe aquí el Nombre de la Wifi"; //"YOUR_SSID";
const char* password = "Escribe aquí la contraseña de tu Wifi"; //"YOUR_PASSWORD";
WiFiClient client;
char servername[]="
www.cambatronics.com
"; // remote server we will connect to
String result;
const int pinEnvio = 0;
String url = "/email/send_email.php";
String remitente = "correo_del_remitente@..."; //Escribe aquí el correo del remitente
String destino [] = {"correo1@....", "correo2@...."}; //Escribe aquí el o los correos a los que deseas enviar
String AsuntoEscrito = "Escribe aquí el asunto del mensaje";
String TextoEscrito = "Escribe aquí el cuerpo del mensaje";
String asunto, texto;
const int Led = 15; //Enciende el Led para verificar el envío del mensaje
const int Boton = 4; //Pin para Botón de acción de enviar mensaje
int i, j;
void setup() {
Serial.begin(115200);
pinMode(Led, OUTPUT);
pinMode(Boton, INPUT);
pinMode(13, OUTPUT); //Led azul de conexión Wifi
digitalWrite(Led, LOW);
delay(100);
Serial.println("Connecting");
WiFi.begin(ssid, password);
while (WiFi.status() != WL_CONNECTED) {
digitalWrite(13, LOW); //conectando el led azul para indicar conectado a Wifi
delay(100);
}
Serial.println("Conectado");
digitalWrite(13, HIGH); //encender el led azul para indicar conectado a Wifi
delay(1000);
ajuste_texto();
}
void loop() {
if (digitalRead(Boton) == LOW) {
for(i=0; i<sizeof(destino); i++){
digitalWrite(Led, HIGH);
delay(500);
Serial.println("Detectado boton");
sendDataToServer(i);
digitalWrite(Led, LOW);
delay(100);
}
}else{
digitalWrite(Led, LOW);
}
}
void sendDataToServer(int j)
{
if (client.connect(servername, 80)) { //starts client connection, checks for connection
Serial.println("Enviado");
Serial.print("Requesting URL: ");
Serial.println(url);
// This will send the request to the server
client.print(String("GET ") + url + "?remitente=" + remitente + "&destinatario=" + destino[j] + "&asunto=" + asunto + "&texto=" + texto + " HTTP/1.1\r\n" +
"Host: " + host + "\r\n" +
"Connection: close\r\n\r\n");
unsigned long timeout = millis();
while (client.available() == 0) {
if (millis() - timeout > 5000) {
Serial.println(">>> Client Timeout !");
client.stop();
}
}
client.println("
www.cambatronics.com/email/send_email.php
"); //Send data
client.println("Host:
www.cambatronics.com
");
client.println("Connection: close"); //close 1.1 persistent connection
client.println(); //end of get request
}
else {
Serial.println("connection failed"); //error message if no client connect
Serial.println();
}
}
//Función para colocar el %20 en el Mensaje y enviarse correctamente
//No borres esta función.
void ajuste_texto(void){
//
Ajuste para el Asunto---
for(i=0; i<(AsuntoEscrito.length()); i++){
if(AsuntoEscrito.charAt(i) == ' '){
asunto += "%20";
}
else{
asunto += AsuntoEscrito.charAt(i);
}
}
//
Fin Asunto----
//
Ajuste para el Texto---
for(i=0; i<(TextoEscrito.length()); i++){
if(TextoEscrito.charAt(i) == ' '){
texto += "%20";
}
else{
texto += TextoEscrito.charAt(i);
}
}
//
Fin Asunto----
Serial.println(asunto);
Serial.println(texto);
}
//