Statistik från Bredbandskollen

Bredbandskollen
Bredbandskollen

Bredbandskollen har nu dokumenterat ett API och publicerat det under deras
FAQ, sektion 7, längst ned. Det är dock inte JSON utan (schemalös) XML, men det är iaf komplett och det finns nu uttalat att informationen endast får användas i icke-kommersiellt syfte (såvida man inte tecknar avtal med IIS om annat, kontaktuppgifter finns att hitta i FAQ:n).

Informationen nedan är alltså gammal.

Det finns ett sätt att hämta statistik från bredbandskollen.se. Jag har inte sett att det är ett uttalat API, inga villkor för användning eller dokumentation. Tyvärr – IIS har en särställning och därmed borde vi ställa krav på öppenhet (vilken är väldigt god i allmänhet från .SE).

Disclaimer

Jag blev kontaktad av IIS och ombads uppdatera informationen här, enligt:

Hur som helst så skulle vi uppskatta ifall du uppdaterade ditt blogginlägg med hänvisning till att vi fixar ett API på rätt sätt ifall någon har behov av det. Tills dess är det olämpligt att sprida denna bakdörr eftersom vi inte erbjuder någon garanti att denna information är korrekt.

Normalt förfarande är givetvis att man tar kontakt med den som utger sig som ansvarig utgivare av informationen man vill använda, men på Bredbandskollens FAQ fanns ingen sådan information. Inget i någon sidfot. Inget i HTML.

Bas-URL

http://www.bredbandskollen.se/statistik/

getISPs.php

Returnerar ett objekt med ID (heltal) som nyckel, och ISP:ns namn som värde.

getChartData.php?

chartType=0 – okänt
year=2011 – periodbestämning, 2007-2011 (2007-10 verkar vara startpunkt)
month=8 – periodbestämning, 1-12
isps=6 – ISP-bestämning, kommaseparerade index från getISPs
regions= regionsbestämning, kommaseparerade index från lista kodad i HTML (se nedan)
speeds=  typ av förbindelse, kommaseparerade index från lista kodad i HTML (se nedan)

Regioner

{0:"Alla",
2:"Blekinge Län",
10:"Dalarnas Län",
5:"Gotlands Län",
3:"Gävleborgs Län",
6:"Hallands Län",
7:"Jämtlands Län",
8:"Jönköpings Län",
9:"Kalmar Län",
12:"Kronobergs Län",
14:"Norrbottens Län",
27:"Skåne Län",
26:"Stockholms Län",
18:"Södermanlands Län",
21:"Uppsala Län",
22:"Värmlands Län",
23:"Västerbottens Län",
24:"Västernorrlands Län",
25:"Västmanlands Län",
28:"Västra Götaland",
15:"Örebro Län",
16:"Östergötlands Län"}

Hastigheter

{0:"Alla",
1:"256 Kbit/s adsl",
2:"256 Kbit/s kabeltv",
3:"Upp till 384 Kbit/s 3G",
4:"512 Kbit/s adsl",
5:"1 Mbit/s adsl",
6:"2 Mbit/s adsl",
7:"2 Mbit/s kabeltv",
8:"1,5-2 Mbit/s fiber",
9:"Upp till 3 Mbit/s 3G",
10:"Upp till 6 Mbit/s 3G",
11:"8 Mbit/s adsl",
12:"8 Mbit/s kabeltv",
14:"10 Mbit/s fiber",
16:"24 Mbit/s adsl",
17:"24 Mbit/s kabeltv",
18:"24 Mbit/s fiber",
21:"60-100 Mbit/s fiber",
22:"10 Mbit/s kabeltv",
23:"0,20-0,25 Mbit/s adsl",
24:"1,5-2 Mbit/s adsl",
25:"6-8 Mbit/s adsl",
26:"12-24 Mbit/s adsl",
27:"0,4-0,5 Mbit/s kabeltv",
28:"7-10 Mbit/s kabeltv",
29:"12-24 Mbit/s kabeltv",
30:"25-50 Mbit/s kabeltv",
31:"3-5 Mbit/s kabeltv",
32:"50-100 Mbit/s kabeltv",
33:"20-60 Mbit/s adsl",
34:"Upp till 10 Mbit/s 3G",
35:"10-80 Mbit/s 4G",
36:"500-1000 Mbit/s fiber",
37:"100-200 Mbit/s kabeltv",
38:"Upp till 16 Mbit/s 3G",
39:"Upp till 32 Mbit/s 3G",
40:"10-20 Mbit/s 4G",
41:"5-10 Mbit/s 4G",
42:"12-30 Mbit/s adsl",
43:"30-60 Mbit/s adsl"}

SMS Gateway API from 46elks

I just got an alpha invitation to try out the 46elks SMS API. These are my notes.

My Own Summary of The API

  • Several numbers can be tied to your account
  • RESTful HTTP API (with version in base URL) with JSON responses
  • BASIC HTTP Authentication
  • HTTPS
  • Simple GET web hooks / URL callbacks (per account and per number) for inbound delivery with message payload as URL query parameters

Nice

  • “Splitting and joining multi-part SMS messages are automatically handled by the API.”

Opportunities

Delivery Notifications

I’d like to be able to know if a text (SMS) has been received by the target recipient(s). We used this when we had several people “on standby”, if the first person was not reached withing one minute, we moved on trying to contact the next one.

A callback URL for delivery notifications (tracking) would be perfect.

Error Messages

The API docs doesn’t mention error codes/messages or what types of validations are carried out on the backend.

Non-plain Text Content

VCards is the type I’ve ran across previously.

Other Notes

Character encoding is said to be UTF-8 which is fine. The docs should perhaps be more clear on this since they accept parameters with GETs (and in URLs, there is not standard way of telling what character encoding is used).

I’d prefer if the URL callbacks used POST (and JSON payload). GET URLs are limited and even though not many users tend to send 1024+ long texts, my mother does and that would risk being cut off somewhere down the line (or software stack).

Delivery limits – how long will 46elks hold my messages when my server park is out? How many attempts at delivery will 46elks make?

The documentation should have perhaps used https in the examples.

Timeout limits for replying to a message should perhaps be in there, as well as the option to turn this feature off. If my service somehow is throwing error messages out, I’d prefer them not being sent to my clients.

Bottomline

As an alpha preview – this is great and looks really nice and convenient to use. A complete (send and admin account) interface can be written using HTML+JavaScript only. As expected, there are a couple of things missing from the API, such as cost information/account balance and perhaps type (prepaid, invoice, …).

Update: I put out the quick hack files I used to try the API on GitHub.