The Thingio Cloud was built to make it really easy to do things like sending an email with an ESP32 or other WiFi equipped development board. You can deploy a new thing
based on the email template.
This template starts with a simple button press triggering the email to be sent, however you can easily adapt it to any event. It was built using the
ESP32 Feather and the
NeoKey Featherwing for a neat form factor, but this can be re-configured for your application. Just swap your GPIO interrupt pins.
Thingio will guide you through the code template and programming steps, but there's a few things to highlight. The publishMessage()
function is what configures the email subject and body. This can be updated to any value, such as a sensor reading or a custom message.
void publishMessage() {
StaticJsonDocument<200> jsonDoc;
jsonDoc["time"] = millis();
jsonDoc["email"] = "{{to email}}";
jsonDoc["subject"] = "Hello from ThingIO";
jsonDoc["body"] = "ThingIO body";
char jsonBuffer[512];
serializeJson(jsonDoc, jsonBuffer); // print to client
Serial.println("Sending message!!!");
bool response = thingioCloud.send(THINGIO_SERVICE, jsonBuffer);
Serial.print("Message published! ");
Serial.println(response);
}
With the suggested parts, some fun applications might be a meeting notifier. For example one button might email your work from home partner "Hey, I'm starting a video call!" and the other button might send the message "I'm done with my call". Or with some simple adaptations, you could periodically email yourself a temperature or humidity reading.