GSoC 2018 – Better map for nodewatcher (Final update)

Hello everyone,

In my last update I represented solutions for most of my goals that I set in my first post. There was still one feature to implement and I worked hard to have it finished in time for GSoC.

Problem

The last feature that I am talking about is the ability to show recently offline nodes in the map. This was the hardest part to implement but also the most important. Because with it you would be able to see which nodes are offline and need maintenance and you could see exactly where they are located. Until now there was only an email alert system, but it sent out an email for every change to the node. There wasn’t a filtering option and also it would do this for every node so the inbox would get cluttered really fast. By adding this feature you can get a list of all nodes that went offline in the past 24 hours and it updates that list alongside the map.

Solution

In my last post I talked about adding a sidebar that had a list of all nodes that are currently online and showing on the map. So I just added a new tab that represented the recently offline nodes. The hardest part of adding this was that I had to use nodewatchers API v2 which was still in development and hasn’t been fully documented. I still wanted to use it because in the newest nodewatcher version every API v1 request will be replaced by v2. This way there would be less work in the future and also I took some time to document everything I have learned about it. This document has everything that I was able to gather from nodewatcher code and examples of how to use it. In the picture below you can see how the sidebar currently looks and also the list of recently offline nodes. It has the same functionalities as the online node list like the search bar, option to show the selected node on the map and to go to that specific nodes page.

What’s next?

GSoC has provided me with a unique opportunity to work on a large scale open source project and I have learned a lot in the past three months. Mostly about time management and not putting too much on my plate. It was truly an experience that will help me later on in my life. I will for sure work on other open source projects and continue my work with nodewatcher because I have analysed and figured out most of the code. It would be a shame to just let that knowledge go and move on to another project before being sure that someone else does take over and continues the work.

Important links:

Freifunk blog posts:

https://blog.freifunk.net/2018/05/14/gsoc-2018-better-map-for-nodewatcher/

https://blog.freifunk.net/2018/06/11/gsoc-2018-better-map-for-nodewatcher-1st-update/

https://blog.freifunk.net/2018/07/09/gsoc-2018-better-map-for-nodewatcher-2nd-update/

Github pull requests:

Main map code: https://github.com/wlanslovenija/nodewatcher/pull/69

API v2 documentation: https://github.com/wlanslovenija/nodewatcher/pull/70

 

Leave a Reply

Your email address will not be published. Required fields are marked *