Control a power outlet with an ESP8266 running MQTT via a relay
The ESP8266 is a little computer gizmo with bundled WiFi that's easy to incorporate into a wireless control system. The on-board computer is tiny, but it's powerful enough to run a MQTT client. MQTT in turn is an extremely light-weight message-oriented communication system. The example shows an ESP8266 with custom software controlling a relay, that in turn controls enough AC power to turn a light on/off. Controlling the relay is fairly simple, since the ESP8266 has an output strong enough to drive the coil of a relay.
MQTT testing for IoT devices on the Raspberry Pi
MQTT is a lightweight communications protocol meant for Internet of Things devices. It acts like a giant merry-go-round sending messages through a hierarchical structure of ports. It offers three levels of Quality of Service, from level 0 where messages can be lost, to level 2 where messages are held and resent if necessary. MQTT is easy to install on a Raspberry Pi or other Linux Single Board Computing device. MQTT itself is powerful, and the NODE RED platform (which is bundled in the Raspberry Pi) can make great use of MQTT and other facilities.