<div dir="ltr"><div><div>Hello Karsten,<br><br></div>It looks like a nice little project to work on. I reguarly check my relay-status via Atlas, at the moment using the Onionoo service makes sense to me too.<br><br></div><div>
For now the onionoo-glue-code, seems like a good place to start.  Do you have any other suggestions or ideas?<br><br></div><div>thanks!<br></div><div><div><div><div class="gmail_extra"><br><br><div class="gmail_quote">On Thu, Jan 9, 2014 at 2:11 PM, Karsten Loesing <span dir="ltr"><<a href="mailto:karsten@torproject.org" target="_blank">karsten@torproject.org</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Hello coders,<br>
<br>
is anyone here looking for a fun new project to hack on?  Here's<br>
something you could do to help grow the Tor network:<br>
<br>
We're planning to decommission the currently unmaintained Tor Weather<br>
which provides an email notification service to any users who want to<br>
monitor the status of a Tor node.  And we'd like to replace it with a<br>
clean rewrite of this service.<br>
<br>
<a href="https://weather.torproject.org/" target="_blank">https://weather.torproject.org/</a><br>
<br>
(You're asking why we're not simply trying to find a new maintainer?<br>
That's also an option, but a clean rewrite that uses the Onionoo service<br>
would be much smaller and easier to maintain in the future.  Read on to<br>
find out more.)<br>
<br>
Here's what the rewritten Weather should do:<br>
<br>
- Maintain a list of subscriptions, consisting of an email address, a<br>
password, a relay identity fingerprint, how soon the user wants to be<br>
notified of problems, when it was last notified, etc.<br>
<br>
- Allow users to create, read, update, and delete subscriptions via a<br>
web interface.  All these operations should have the usual security<br>
features like email address verification, password login, etc.<br>
<br>
- Allow users to search for relays to subscribe for by relay IP address,<br>
relay identity fingerprint, or relay nickname.  This search can be done<br>
with help of Onionoo's search feature, or by simply adding a link to<br>
Atlas (<a href="https://atlas.torproject.org/" target="_blank">https://atlas.torproject.org/</a>) or Globe<br>
(<a href="https://globe.torproject.org/" target="_blank">https://globe.torproject.org/</a>).<br>
<br>
- Once per hour, download a list from Onionoo that contains relays that<br>
have been running in the last week.  Check if there are any relays that<br>
have been offline for long enough to notify a subscribed user.  Send out<br>
emails.<br>
<br>
- Once per day, download bandwidth histories of relays from Onionoo and<br>
check whether a relay has been running long enough and fast enough that<br>
the operator should be offered a t-shirt.  Send out emails, regardless<br>
of subscriptions, and ask if operators would want one.<br>
<br>
As you can see, most of the work can be done with help of Onionoo.  The<br>
parts that need to be written are a web and an email interface, a small<br>
database for subscriptions, and some glue code to talk to Onionoo.<br>
<br>
(And if you still favor the variant where somebody maintains the current<br>
Weather, be aware that it needs to parse Tor descriptors and keep its<br>
own relay database to do searches, to check how long relays are offline,<br>
and to decide which relay operators should get a t-shirt.)<br>
<br>
Here's some more information on the Onionoo service:<br>
<br>
<a href="https://onionoo.torproject.org/" target="_blank">https://onionoo.torproject.org/</a><br>
<br>
Happy to provide more information!<br>
<br>
All the best,<br>
Karsten<br>
_______________________________________________<br>
tor-dev mailing list<br>
<a href="mailto:tor-dev@lists.torproject.org">tor-dev@lists.torproject.org</a><br>
<a href="https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-dev" target="_blank">https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-dev</a><br>
</blockquote></div><br><br clear="all"><br>-- <br>Abhiram Chintangal<br>Graduate Student<br>Florida State University<br>Computer Science Department<br>(850) 980-4954<br><br>
</div></div></div></div></div>