Leaderboards, Achievements, and a New Dashboard
When I launched APRS OTA a month ago, I hoped it would grow enough that a ham who wanted to make a contact over APRS would find somebody else online to make it with. In the past week this service has grown well beyond my wildest expectations.
The aprsota.org/stats page is updated hourly, so we can all see how APRS OTA is growing. As of this writing it shows 1,562 QSOs from 174 operators in 23 countries. The just-ended 21 August Zulu is the biggest day the service has had. 43 ops went on the air and logged 338 QSOs.
Thank you for helping to make this a growing, friendly, and fun place to use APRS. Of the many examples I’ve seen, here’s one that typifies the fun and friendly atmosphere: K0ION hosting their 2nd op.
APRS OTA has been mentioned a few places around the web this week, including:
- Random wire 196 from Tom Salzer KJ7T. It’s free to subscribe and I highly recommend it.
- the APRS subreddit
- the previously linked journal from WB2EHG Calling CQ with APRS: Discovering APRS On The Air.
- this short thread in the APRS group, which if you aren’t a member of you should be
Here’s a summary of all the things that have been deployed in the last week.
Consistent command syntax
Over the last month, I’ve kinda been adding commands as I thought of them, and I
wasn’t systematically reviewing them all together for consistency. This week, I
did that, and found a bit of a mess. Five commands take a callsign, and they all
wanted it in a slightly different syntax. CHASE and
QSL wanted an @ in front of it. BLAST required one.
INFO wanted the callsign before the keyword.
DONE needed the @ to tell a callsign from a sign-off.
There is one rule now. The keyword comes first, the callsign comes second, and
the @ is accepted but never required. The optional text follows the callsign.
| Send this | This still works |
|---|---|
CHASE K7ABC |
@K7ABC |
QSL W1XYZ |
@W1XYZ QSL |
BLAST K7ABC |
BLAST @K7ABC |
INFO K7ABC |
INFO @K7ABC |
DONE W1XYZ |
DONE @W1XYZ |
So a chase is CHASE K7ABC hi from the ridge, and a blast to everyone on an
op you are part of is BLAST K7ABC TU for the QSL! Have a lovely day 73.
Nothing you already learned has stopped working, and the old spellings are
permanent. There is one exception. K7ABC INFO, with the callsign first, is
deprecated and comes out in September. Send INFO K7ABC instead.
Two notes on some corner cases. DONE W1XYZ is what you send to stop receiving
blasts from W1XYZ’s live op that you just chased. A DONE with no callsign
still ends your own op. A blast with no callsign still goes to your own op,
so BLAST 73 all reaches everyone on it.
There is a HELP command now, thanks to feedback received from my visit
to the Daytona Beach Amateur Radio Association meeting. Since an
APRS message can only be 67 characters, it’s a terse response but it
includes a web link to learn more.
Leaderboards
A leaderboard ranks the top operators for a specific on-air activity or metric by month, by year, and for all time. There are now seven of them, at aprsota.org/leaderboards:
- All-Star, the most points.
- QSO Machine, the most confirmed QSOs.
- Diplomat, the most countries worked.
- Pen Pal, the most Foreign Lands QSOs.
- Cartographer, the most grid subsquares worked.
- Rover, the most grid subsquares you hosted from.
- Stationmaster, the most ops you hosted that got at least one contact.
Each board takes the top 10, and each one has a minimum threshold for appearing. You can’t be a Rover if you’ve only hosted from 1 subsquare. A closed month is final. Once the calendar rolls past it, that table does not change again.
I have lots of ideas for additional leaderboards. The next one will probably be the Elmer board to show those who have the most QSOs with operators hosting their first couple of ops.
Achievements
I have big plans for achievements, which are individual accomplishments made with APRS OTA. The first achievements are linked to your appearance on a leaderboard and the end of a time period. This first batch of achievements will be awarded at the beginning of September for those on the August leaderboards.
I’ve got a bunch of ideas for additional achievements that are not tied to leaderboards, like a Wanderer achievement when you host from 10 different grid squares in a single year, or an achievement if you have at least one QSO every day for 30 days in a row.
Revamped operator dashboard
aprsota.org/YOURCALL had become one long page trying to be a dashboard, a
logbook, and an archive all at once. It is a dashboard now, and the collections
(ops, QSOs, and achievements) have sub-pages of their own.
HI3RRR is a great example to look at. They’ve hosted 7 ops and have 143 QSOs.
The scoreboard. One table showing your score for each of the leaderboards, and where you are ranked if you are ranked.
The logbook moved to /HI3RRR/qsos. There is now a search box, host and chaser filters, and filters by year and month. The map shows the location of the contacts for what you have filtered down to. The map here is still a bit rough, but more improvements are coming.
The ops. The dashboard shows the last few, with the complete list moved to /HI3RRR/ops.
The packet log at the bottom folds up now, unless a PING is the only thing
on your page.
Smaller things
The rest of the week’s small changes:
- A message OTA cannot make sense of gets an answer. It used to get
silence. It now points at
HELP, but only for stations that look like a ham callsign and that sent us something first. Yes, it’s rate limited too. CHASEwith no callsign says which part is missing instead of saying nothing.- A host who leaves the
QSLkeyword off while a chaser is waiting is now told the contact is waiting. - A chaser whose client cannot send a position report used to be told to try again, over and over. It could be misleading, so the reply now is more helpful and also points to aprsota.org/beacon.
- The chase receipt carries the op’s URL, so the message that confirms your chase also gets you to the op page.
- A callsign the service has never heard used to get a bare not-found page. It now gets a page addressed to that callsign with three ways in, because whoever lands there is usually the person who owns the call.
- A new handbook page, Send APRS messages, with the menu path for each radio somebody has sent in. If yours is not there, send me the steps and I will add it.
What’s next
I’ve had numerous inquiries about API access. It doesn’t exist yet, but I’d sure
like to make it easier for other applications and services to make use of APRS OTA
data. Join the #api channel on the Discord to discuss and shape what gets built.
I have a German translation of the handbook, thanks to Peter DL7PJ. I want to figure out how to have multiple languages for the handbook on the website, and also have a PDF download in each of those languages so it’s easily accessible even if you aren’t online.
As mentioned above, I want to add more leaderboards and achievements.
The QSO page should really have a map showing the location of the two stations.
I started out on a pretty small server, and I need to move to a bigger one before we outgrow the one we are on. It will probably take 15 minutes of downtime, if I can ever find a time when someone isn’t hosting an op :)
If there are additional features you’d like to see, please reach out. I love hearing from you.
- Email: jared@k0tfu.org
- Discord: APRS OTA