Google summer of code project XMPP-IoT toolkit

Over the summer I have mentored a very good student from Hyderadad Adhish Singla he has without prior skills in XMPP worked with two visalisation tools and extensions to the SleekXMPP package to make it simple to create and use interoperable IoT devices talking XMPP.


What is that? It is a collection of open extensions to the famous well proven standard that has been used in millions of installations and different applications including settop-boxes and chat clients.

XMPP is a perfect suited messaging backbone for IoT since it can federate clients on different domains to ”friend” each other why not friend your neighbours outside temperature if yours is broken?

Any device running XMPP towards any of the other federated servers can talk to any other device, when you have



SleekXMPP python tools for running on devices. Python is perfect for easy programming of smart devices most of medium and high range devises is equipped with python from the start. like Intel Edison, raspberry Pi, Cubieboard, beagelbone and alike.

The code is currently in a branch on github to incorporate your local IO device you create field’s that can be readable or writeable and you start a GPIO python file r on your device and it is accessable as a device on the xmpp network. You can use any account on any on the available servers around just look at

Cordova Client

We have created a Cordova Strophe based client that can be used to view and change values from devices below is a simple example of running the cordova android emulator client and controling a philips_hue lamp available over the xmpp network.

Converse.js Client

to be able to have a webbased viewer we have incorporated the functionality in the converse.js web chat client it has been incorporated in the websiteChat_and_value_example