Hi, my name is Daniel, I am a 19-year-old student from Augsburg, Germany, and I have been working with Android and networking for several years now.
Thus, i am very excited to participate in the GSoC for the first time, hoping to learn new ways of connecting people with “Meshenger”.
We realized that there are no solutions that provide audio/video communication without using any centralized server while still working in networks such as the Freifunk community networks.
In this context I will try to fill that void, also to demonstrate possible uses of the network created by the Freifunk community in contrast to simply using it as a hotspot for Internet access.
Another issue of Freifunk community networks is that it is often perceived as nothing more than a way to access the Internet. Thus, we want to demonstrate a possible use of community-build networks, which do not neccessarily have access to the Internet by creating a way to phone each other over a local network.
The goal is to make an Android app, which allow audio- as well as videocalls through a local network, not requiring a server.
As seen above, there are several redundant servers for our project which I will need to circumvent.
The signaling, e.g. the exchange of nessecary network-related information will then happen through the scan of a QR-code generated by one of the connecting devices.
WebRTC is an open standard used by many mobile and browser applications like “WhatsApp” to establish a connection in order to make video/audio calls.
It is already implemented in all major browsers as well as systems like Android, thus providing a common base to build our app and, as a potential future goal, to expand it to other platforms.
Of course there are several challenges i will have to tackle, like having to get WebRTC running without a STUN-server, which is normally required.
In the next post i will share my progress as well as my collected experiences, explaining my approaches and trade-offs that will eventually have to be made.
Project source: https://github.com/dakhnod/Meshenger