ESPEasy notifications are to be used in combination with rules.
For example, to send a message on system boot use a rule like this:
on System#Boot do notify 1,system_is_started endon
Note: Use v2.0.0-dev11 or higher. There was a bug in dev10 and older versions that lead to crashes.
Creating a paper-mail to email gateway
I used notifications in combination with Deep Sleep to create a system that notifies me when I have new paper mail in my actual mailbox:
- Core: A bare esp-12-f. Not a development board, so it has no voltage regulator and no usb-to-serial interface that draws current while sleeping.
- Casing: Google for Waterproof Clear Cover Plastic Electronic Box Project
- Magnetic microswitch: Google for something like 10pcs/lot Wired Door Window Magnetic Sensor Switch
- Use a GOOD and high temperature hot-glu gun like the Dremel 940. This saves a lot of frustration and allows you to make everything nice and solid.
For power I used an old powerbank, those you use to charge your phone. Most power-banks use lithium cells that are a perfect 3.3 volts. And they are easy to charge as well. :)
- You need to connect some extra pins to VCC or GND if you use a bare ESP-12-f, google for this. :)
- Connect D0 to vcc, to ensure the device goes into deep sleep. (connect to GND to disable deep sleep)
- Connect the magnetic switch:
- Connect one side of the magnetic switch to GND.
- Connect the other side of switch it to the - side of a capacitor (4u7), with a 1 meg. resistor in parallel.
- Connect those the the RST pin.
This will wake up the ESPEasy from deep sleep when the magnetic switch is closed.
An awesome "schematic" of the switch-part:
[ GND ] --- [ magnetic switch ] -----+- [ 4u7 capicitor ] --+-- [ ESP8266 RST pin ] | | ---[ 1M resistor ] ---
The capacitor will make sure it doesnt stay in reset-mode if the switch closed for a longer time.
- Enable deep sleep with a sleep time of 0 seconds. (this way it only wakes up manually by the switch)
- Enable Sleep on connection failure
- Set message delay to 0.
- Add an email notification.
- Enable rules.
- Create a rule that mails you on system boot, like this:
on WiFi#Connected do notify 1 endon
- Consider compiling ESPEasy with FEATURE_ADC_VCC. (enable it in ESPEasy.ino) This way you can add a sysinfo task that sends the battery level to your homecontroller, every time it wakes up. You can also add the %vcc% macro to your email.
ESPEasy can’t send Emails using popular providers like Gmail.com or Yahoo.com…
… because most of common Email service providers stopped support for non-secure SMTP (w/o SSL) around 2014 but the Email-Notification inside ESPEasy does not support SSL due to limited resources. 
Unless you have an own mailserver inside your local network you should:
CREATE a special Email account for ESPeasy without SSL
at one of the rare Email providers still offering SMTP with no or optional SSL (e.g. SMTP2go.com, smart-mail.de). Otherwise you won’t be able to use the Email-Notification from ESPEasy at all!
Afterwards inside the Web-configuration of ESPEasy from the menu select item "Notifications" and choose one table row (in this example No.1) to "Edit" with the following Notification Settings:
|Contend||Example 1||Example 2||Description|
|Notification:||Email (SMTP)||Type of notification|
|Domain:||smtp2go.com||smart-mail.de||Web address of Email service provider|
|Server:||mail.smtp2go.com||smtp.smart-mail.de||full server name to deliver Email via SMTP|
|Port:||25||SMTP-Connection port is traditionally same|
|Sender:||ESP123@smtp2go.com||ESP123@smart-mail.de||full Email address for the device to be used|
|Receiver:||JohnDoe@gmail.com||Recipient's email address. Note: Use semicolon (;) between multiple addresses|
|Subject:||Message from your ESPEasy||Topic in Email headline (fixed)|
|User:||ESP123@smtp2go.com||ESP123@smart-mail.de||Username to use to log in to the SMTP Server (normally same than Senders E-Mail address for the device to be used)|
|Pass:||2S€cr€t4you||2S€cr€t4me||Password to use to log in to the SMTP Server (normally same than access Password for Senders Email account form web page)|
|Body:||Device is on duty since %uptime% minutes.
Connect via WiFi %ssid% to
|Default text is send only if command "notify X" is called without optional text for the body|
|Enabled||<hook>||Needs to be active|
Now you can use the command e.g. like:
Notify 1, Hello_world!
The general syntax is:
Notify <position>, [message_in_the_body]
Where <position> is the No. of notification 1...3 in the list of all Notifications and [message_in_the_body] the optional text to replace the default text from "Body:" in Notification Settings.
Might-be-useful rule example (NTC enabled):
On Time#Initialized do //connected to WiFi & TimeServer notify 1, "Connected after Reboot via %ssid%" //Send Email endon
Some more hints:
- Put [optional] text of body message with space characters in quotation marks or use “_” instead and %CR% for a new line.
- The "Unit Name" from "Main Settings" (if defined) is used as Email Sender Name (usually displayed to Receiver with Email address).
- If you need to differ between subjects you could create (almost same) Notifications for each subject.
- If you don't geht out any E-Mail check if your Internet router is configured to enable Port 25
- If you still have problems chek if you have checked the check box labeled "Enabled" inside Notifications Settings.
- Hope that the Email provider of your choice doesn’t stop providing SMTP w/o SSL.