Amazon’s Dash Button was originally created to give you an easy way to order a specific product at the touch of a physical button. It works by connecting to your home’s wireless network, and fires off a request to Amazon when the button is pushed. They’re inexpensive (for promotional reasons) and hackable, so they gained popularity with hackers and makers for other non-shopping tasks.
If you don’t have an Amazon Dash Button, however, you can follow this guide to build own with an ESP8266 that has far more potential. The core functionality is provided by the IFTTT service, which is free to use. IFTTT uses a straightforward trigger-event logic, and works with a variety of services for both the triggers and events. For example, you could use IFTTT to send yourself a text message whenever you get an important email.
In this case, the trigger is a button press on the ESP8266. IFTTT provides a webhook that works on any ESP8266 that’s setup to be programmed with the Arduino IDE. All you have to do is use the ESP8266WiFi library to get it online, and then have it make the IFTTT request (using your unique API key) whenever the button is pressed. Then just add a LiPo battery and voltage regulator to make it wireless.
That covers the “this” trigger, and the “that” event (sending an email) can be easily configured on the IFTTT website. That’s it! But, the beauty of this setup is the flexibility to use a wide range of triggers and events. Triggers can be virtually anything the ESP8266 recognizes (sensors, logic, etc.) and events can use any one of the hundreds of services provided.