]> pere.pagekite.me Git - homepage.git/blob - blog/Litt_informasjon_om_Bitfactorys_Bensinpris_API.html
6d62bf93922e6e881c38b5f9b91b3cbbbe9dae8c
[homepage.git] / blog / Litt_informasjon_om_Bitfactorys_Bensinpris_API.html
1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
2 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
3 <html xmlns="http://www.w3.org/1999/xhtml" dir="ltr">
4 <head>
5 <meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
6 <title>Petter Reinholdtsen: Litt informasjon om Bitfactorys Bensinpris-API</title>
7 <link rel="stylesheet" type="text/css" media="screen" href="http://people.skolelinux.org/pere/blog/style.css" />
8 <link rel="stylesheet" type="text/css" media="screen" href="http://people.skolelinux.org/pere/blog/vim.css" />
9
10
11 </head>
12 <body>
13 <div class="title">
14 <h1>
15 <a href="http://people.skolelinux.org/pere/blog/">Petter Reinholdtsen</a>
16
17 </h1>
18
19 </div>
20
21
22 <div class="entry">
23 <div class="title">Litt informasjon om Bitfactorys Bensinpris-API</div>
24 <div class="date">28th May 2012</div>
25 <div class="body"><p>I fjor lanserte Bitfactory en
26 <a href="http://www.bitfactory.no/bensinpris.html">mobilapp for å få
27 tilgang til bensinpriser</a> på landets bensinstasjoner ved å samle
28 inn prisene på dugnad ved hjelp av mobilapp-ens brukere.
29 Informasjonen app-ens brukere har samlet inn har så langt kun vært
30 tilgjengelig for brukerne av app-ene, og API for å hente ut
31 informasjonen fra andre plattformer har ikke vært publisert. Da
32 løsningen kom spurte jeg utviklerne om de kunne publisere
33 API-dokumentasjon og de skulle se på saken, men det har ikke skjedd så
34 langt. Jeg antar de har vært for travelt opptatt til å publisere
35 API-dokumentasjon.</p>
36
37 <p>Utrolig nok er det i følge
38 <a href="http://www.dn.no/energi/article2194526.ece">Dagens
39 Næringsliv</a> og
40 <a href="http://www.finnmarkdagblad.no/nyheter/article5323140.ece">Finnmark
41 Dagblad</a> bensinstasjoner som nekter å oppgi prisene sine på
42 telefon, slik at det ikke finnes en fornuftig måte å få tak i prisene
43 på uten å samle dem inn på stedet. Flere har dugnader på gang for å
44 samle inn prisinformasjon om bensin, men så vidt jeg kan se er det kun
45 <a href="http://www.dinside.no/php/oko/bensin/vis_prisliste.php">dinside.no</a>
46 og Bitfactorys App som får regelmessige oppdateringer. Dinsides
47 oversikt er tilgjengelig på web for de som vil følge med, mens
48 bitfactorys informasjon ikke er like enkelt tilgjengelig.<p>
49
50 <p>Jeg tok meg derfor litt tid for å revers-utvikle protokollen for
51 Bitfactorys mobilapp for å gjøre den innsamlede informasjonen mer
52 tilgjengelig for flere. Protokollen bruker HTTP og normal
53 forms-notasjon for POST. Jeg lot en telefon koble seg til mitt
54 trådløsnett, og satte opp tcpdump til å samle all trafikken mot
55 www.bitfactory.no, og deretter tittet på alle HTTP-kallene ved hjelp
56 av wireshark. Her er API-kallene jeg har identifisert så langt.</p>
57
58 <p><b>stasjonsDatabaseUpdateStamp</b></p>
59
60 <p><tt>GET http://www.bitfactory.no/Bensin/ver1.1.stasjonsDatabaseUpdateStamp</tt></p>
61
62 <p>Vet ikke helt hva dette API-kallet gjør, men navnet gjør at jeg
63 tror den rapporterer når listen over stasjoner sist ble endret.
64 Returverdien er et tall som pr. 2011-12-09 er 1319145491 og
65 pr. 2012-05-28 er 1336420693. Mitt gjett er at dette er sekunder
66 siden 1. januar 1970 ala det en finner på Linux, som kan konverteres
67 til en leselig dato med <tt>perl -e 'print
68 scalar(localtime(1319145491)), "\n"'</tt>. Den første verdien
69 konverterer da til "Thu Oct 20 23:18:11 2011", mens den andre
70 konverteres til "Mon May 7 21:58:13 2012".</p>
71
72 <p><b>GetXMLDatabase</b></p>
73
74 <p><tt>echo password=XYZXYZXYZXYZX | POST http://www.bitfactory.no/Bensin/GetXMLDatabase.php</tt></p>
75
76 <p>Henter ned listen med stasjoner på XML-format. Argumentet er
77 password som muligens følger med i programpakken og eventuelt
78 genereres av app-en. Nedlasting med samme passord flere ganger ser
79 ikke ut til å fungere. Innholdet er ca. 1600 stasjoner, men manglet
80 bensinstasjonen i min hjemkommune Ballangen da jeg sjekket, så den er
81 ikke komplett. Formatet på selve listen ser slik ut (klippet):</p>
82
83 <p><pre>
84 &lt;?xml version="1.0" encoding="UTF-8"?&gt;
85 &lt;STASJONSDATABASE&gt;
86 &lt;STASJON&gt;
87 &lt;NAME&gt;&lt;/NAME&gt;
88 &lt;ADDRESS&gt;&lt;/ADDRESS&gt;
89 &lt;ID&gt;0&lt;/ID&gt;
90 &lt;LATITUDE&gt;0.000000&lt;/LATITUDE&gt;
91 &lt;LONGITUDE&gt;0.000000&lt;/LONGITUDE&gt;
92 &lt;COMPANY&gt;&lt;/COMPANY&gt;
93 &lt;/STASJON&gt;
94 &lt;STASJON&gt;
95 &lt;NAME&gt;Statoil Best Eidsvoll Verk&lt;/NAME&gt;
96 &lt;ADDRESS&gt;Gamle Trondheimsvei 339 2074 Eidsvoll Verk&lt;/ADDRESS&gt;
97 &lt;ID&gt;1&lt;/ID&gt;
98 &lt;LATITUDE&gt;60.303902&lt;/LATITUDE&gt;
99 &lt;LONGITUDE&gt;11.168100&lt;/LONGITUDE&gt;
100 &lt;COMPANY&gt;Best&lt;/COMPANY&gt;
101 &lt;/STASJON&gt;
102 [...]
103 &lt;STASJON&gt;
104 &lt;NAME&gt;Esso Andenes&lt;/NAME&gt;
105 &lt;ADDRESS&gt;Falcksgate 9, 8480 Andenes&lt;/ADDRESS&gt;
106 &lt;ID&gt;1822&lt;/ID&gt;
107 &lt;LATITUDE&gt;69.320999&lt;/LATITUDE&gt;
108 &lt;LONGITUDE&gt;16.118700&lt;/LONGITUDE&gt;
109 &lt;COMPANY&gt;Esso&lt;/COMPANY&gt;
110 &lt;/STASJON&gt;
111 &lt;/STASJONSDATABASE&gt;
112 </pre></p>
113
114 <p><b>GetBanStatus</b></p>
115
116 <p><tt>echo UDID=Android-123456789012345 | POST http://www.bitfactory.no/Bensin/ver1.1.GetBanStatus.php</tt></p>
117
118 <p>Vet heller ikke helt hva dette API-kallet gjør. Navnet gjør at jeg
119 tror den rapporterer om telefonen med UDID oppgitt som argument er
120 bannlyst fra tjenesten. Bannlysning gjør antagelig at telefonen ikke
121 kan brukes til å registrere bensinpriser, men det er også mulig det
122 blokkerer for å se på priser. Eneste POST-argument er UDID, som ser
123 ut til å være den unike ID-en til en mobil-enhet. Returnverdi er 'NO'
124 for alle UDID-verdier jeg har testet. Gjetter på at alternativ
125 returverdi er 'YES', men har ikke sett en slik verdi så langt.</p>
126
127 <p><b>PriserVedStasjoner</b></p>
128
129 <p><tt>echo 'stasjoner=810,364&day=0' | POST http://www.bitfactory.no/Bensin/ver1.1.PriserVedStasjoner.php</tt></p>
130
131 <p>Dette kallet henter ut priser registrert på en eller flere
132 bensinstasjoner. Den tar to POST-argumenter, "stasjoner" som er
133 kommaseparert liste over stasjons-IDer (numeriske), og "day" som bør
134 settes til "0" for å få ut informasjon om priser. Usikker på hva
135 day-tallet betyr, men mistenker det har med hvor langt tilbake i tid
136 det skal hentes ut informasjon.</p>
137
138 <p>Resultatet som kommer tilbake er en kommaseparert liste for hver
139 enkelt stasjon, med &lt;br&gt; som skillemarkør mellom hver stasjon.
140 Ikke helt sikker på hva alle feltene er. Her er mine gjett:</p>
141
142 <p><table>
143 <tr><ht>Felt</ht><ht>Beskrivelse</ht></tr>
144 <tr><td>1</td><td>Bensinstasjons-ID</td></tr>
145 <tr><td>2</td><td>Pris for blyfri 95 oktan, flyttall med punktum som desimalskille.</td></tr>
146 <tr><td>3</td><td>Klokkeslett da prisen ble oppdatert, format HH:MM. </td></tr>
147 <tr><td>4</td><td>Telefon-ID på formen Android-123456789012345 eller hex-kodet streng/MD5-sum</td></tr>
148 <tr><td>5</td><td>tall, uviss betydning. muligens relatert til day-verdien. <b>Oppdatering 2012-06-02: Denne verdien er antall bekreftelser en gitt pris har fått.</td></tr>
149 <tr><td>6</td><td>Pris for blyfri 98-oktan?</td></tr>
150 <tr><td>7</td><td>samme som felt 3</td></tr>
151 <tr><td>8</td><td>samme som felt 4</td></tr>
152 <tr><td>9</td><td>samme som felt 5</td></tr>
153 <tr><td>10</td><td>Pris for disel</td></tr>
154 <tr><td>11</td><td>Samme som felt 3</td></tr>
155 <tr><td>12</td><td>Samme som felt 4</td></tr>
156 <tr><td>13</td><td>Samme som felt 5</td></tr>
157 </table></p>
158
159 <p>En stasjonsoppføring består dermed av av bensinstasjons-ID og
160 deretter tre blokker for 95-oktan bensin, 98-oktan bensin og
161 disel.</p>
162
163 <p><b>PriserVedStasjon</b></p>
164
165 <p><tt>echo 'id=736&day=0' | POST http://www.bitfactory.no/Bensin/ver1.1.PriserVedStasjon.php</tt></p>
166
167 <p>Ser ut til å returnere informasjon for en enkelt bensinstasjon.
168 Formatet er dato på formen "08_12_2011" for 2011-12-08, og noe som ser
169 ut som samme format som fra PriserVedStasjoner. For stasjoner der
170 intet er registrert returnerer den "NO RESULTS".</p>
171
172 <p><b>AllePriser</b></p>
173
174 <p><tt>echo day=0 | POST http://www.bitfactory.no/Bensin/ver1.1.AllePriser.php</tt></p>
175
176 <p>Returnere liste med av alle stasjoner det er registrert oppdaterte
177 priser på siste 24 timer (eller er det fra ca. midnatt dagen før?).
178 Returnerer "NO RESULTS" når listen er tom. Ellers returnerer den en
179 dato på formen "Thursday_09_12_2011" fulgt av &lt;br&gt; og deretter
180 en liste med stasjoner på samme format som PriserVedStasjoner.</p>
181 </div>
182
183 <div class="tags">Tags: <a href="http://people.skolelinux.org/pere/blog/tags/drivstoffpriser">drivstoffpriser</a>, <a href="http://people.skolelinux.org/pere/blog/tags/norsk">norsk</a>.</div>
184
185
186 </div>
187
188
189
190
191 <div id="sidebar">
192
193
194
195 <h2>Archive</h2>
196 <ul>
197
198 <li>2020
199 <ul>
200
201 <li><a href="http://people.skolelinux.org/pere/blog/archive/2020/02/">February (2)</a></li>
202
203 <li><a href="http://people.skolelinux.org/pere/blog/archive/2020/03/">March (2)</a></li>
204
205 <li><a href="http://people.skolelinux.org/pere/blog/archive/2020/04/">April (2)</a></li>
206
207 <li><a href="http://people.skolelinux.org/pere/blog/archive/2020/05/">May (3)</a></li>
208
209 <li><a href="http://people.skolelinux.org/pere/blog/archive/2020/06/">June (2)</a></li>
210
211 <li><a href="http://people.skolelinux.org/pere/blog/archive/2020/07/">July (1)</a></li>
212
213 <li><a href="http://people.skolelinux.org/pere/blog/archive/2020/09/">September (1)</a></li>
214
215 </ul></li>
216
217 <li>2019
218 <ul>
219
220 <li><a href="http://people.skolelinux.org/pere/blog/archive/2019/01/">January (4)</a></li>
221
222 <li><a href="http://people.skolelinux.org/pere/blog/archive/2019/02/">February (3)</a></li>
223
224 <li><a href="http://people.skolelinux.org/pere/blog/archive/2019/03/">March (3)</a></li>
225
226 <li><a href="http://people.skolelinux.org/pere/blog/archive/2019/05/">May (2)</a></li>
227
228 <li><a href="http://people.skolelinux.org/pere/blog/archive/2019/06/">June (5)</a></li>
229
230 <li><a href="http://people.skolelinux.org/pere/blog/archive/2019/07/">July (2)</a></li>
231
232 <li><a href="http://people.skolelinux.org/pere/blog/archive/2019/08/">August (1)</a></li>
233
234 <li><a href="http://people.skolelinux.org/pere/blog/archive/2019/09/">September (1)</a></li>
235
236 <li><a href="http://people.skolelinux.org/pere/blog/archive/2019/11/">November (1)</a></li>
237
238 <li><a href="http://people.skolelinux.org/pere/blog/archive/2019/12/">December (4)</a></li>
239
240 </ul></li>
241
242 <li>2018
243 <ul>
244
245 <li><a href="http://people.skolelinux.org/pere/blog/archive/2018/01/">January (1)</a></li>
246
247 <li><a href="http://people.skolelinux.org/pere/blog/archive/2018/02/">February (5)</a></li>
248
249 <li><a href="http://people.skolelinux.org/pere/blog/archive/2018/03/">March (5)</a></li>
250
251 <li><a href="http://people.skolelinux.org/pere/blog/archive/2018/04/">April (3)</a></li>
252
253 <li><a href="http://people.skolelinux.org/pere/blog/archive/2018/06/">June (2)</a></li>
254
255 <li><a href="http://people.skolelinux.org/pere/blog/archive/2018/07/">July (5)</a></li>
256
257 <li><a href="http://people.skolelinux.org/pere/blog/archive/2018/08/">August (3)</a></li>
258
259 <li><a href="http://people.skolelinux.org/pere/blog/archive/2018/09/">September (3)</a></li>
260
261 <li><a href="http://people.skolelinux.org/pere/blog/archive/2018/10/">October (5)</a></li>
262
263 <li><a href="http://people.skolelinux.org/pere/blog/archive/2018/11/">November (2)</a></li>
264
265 <li><a href="http://people.skolelinux.org/pere/blog/archive/2018/12/">December (4)</a></li>
266
267 </ul></li>
268
269 <li>2017
270 <ul>
271
272 <li><a href="http://people.skolelinux.org/pere/blog/archive/2017/01/">January (4)</a></li>
273
274 <li><a href="http://people.skolelinux.org/pere/blog/archive/2017/02/">February (3)</a></li>
275
276 <li><a href="http://people.skolelinux.org/pere/blog/archive/2017/03/">March (5)</a></li>
277
278 <li><a href="http://people.skolelinux.org/pere/blog/archive/2017/04/">April (2)</a></li>
279
280 <li><a href="http://people.skolelinux.org/pere/blog/archive/2017/06/">June (5)</a></li>
281
282 <li><a href="http://people.skolelinux.org/pere/blog/archive/2017/07/">July (1)</a></li>
283
284 <li><a href="http://people.skolelinux.org/pere/blog/archive/2017/08/">August (1)</a></li>
285
286 <li><a href="http://people.skolelinux.org/pere/blog/archive/2017/09/">September (3)</a></li>
287
288 <li><a href="http://people.skolelinux.org/pere/blog/archive/2017/10/">October (5)</a></li>
289
290 <li><a href="http://people.skolelinux.org/pere/blog/archive/2017/11/">November (3)</a></li>
291
292 <li><a href="http://people.skolelinux.org/pere/blog/archive/2017/12/">December (4)</a></li>
293
294 </ul></li>
295
296 <li>2016
297 <ul>
298
299 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/01/">January (3)</a></li>
300
301 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/02/">February (2)</a></li>
302
303 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/03/">March (3)</a></li>
304
305 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/04/">April (8)</a></li>
306
307 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/05/">May (8)</a></li>
308
309 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/06/">June (2)</a></li>
310
311 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/07/">July (2)</a></li>
312
313 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/08/">August (5)</a></li>
314
315 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/09/">September (2)</a></li>
316
317 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/10/">October (3)</a></li>
318
319 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/11/">November (8)</a></li>
320
321 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/12/">December (5)</a></li>
322
323 </ul></li>
324
325 <li>2015
326 <ul>
327
328 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/01/">January (7)</a></li>
329
330 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/02/">February (6)</a></li>
331
332 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/03/">March (1)</a></li>
333
334 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/04/">April (4)</a></li>
335
336 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/05/">May (3)</a></li>
337
338 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/06/">June (4)</a></li>
339
340 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/07/">July (6)</a></li>
341
342 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/08/">August (2)</a></li>
343
344 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/09/">September (2)</a></li>
345
346 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/10/">October (9)</a></li>
347
348 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/11/">November (6)</a></li>
349
350 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/12/">December (3)</a></li>
351
352 </ul></li>
353
354 <li>2014
355 <ul>
356
357 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/01/">January (2)</a></li>
358
359 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/02/">February (3)</a></li>
360
361 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/03/">March (8)</a></li>
362
363 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/04/">April (7)</a></li>
364
365 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/05/">May (1)</a></li>
366
367 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/06/">June (2)</a></li>
368
369 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/07/">July (2)</a></li>
370
371 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/08/">August (2)</a></li>
372
373 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/09/">September (5)</a></li>
374
375 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/10/">October (6)</a></li>
376
377 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/11/">November (3)</a></li>
378
379 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/12/">December (5)</a></li>
380
381 </ul></li>
382
383 <li>2013
384 <ul>
385
386 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/01/">January (11)</a></li>
387
388 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/02/">February (9)</a></li>
389
390 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/03/">March (9)</a></li>
391
392 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/04/">April (6)</a></li>
393
394 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/05/">May (9)</a></li>
395
396 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/06/">June (10)</a></li>
397
398 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/07/">July (7)</a></li>
399
400 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/08/">August (3)</a></li>
401
402 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/09/">September (5)</a></li>
403
404 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/10/">October (7)</a></li>
405
406 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/11/">November (9)</a></li>
407
408 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/12/">December (3)</a></li>
409
410 </ul></li>
411
412 <li>2012
413 <ul>
414
415 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/01/">January (7)</a></li>
416
417 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/02/">February (10)</a></li>
418
419 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/03/">March (17)</a></li>
420
421 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/04/">April (12)</a></li>
422
423 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/05/">May (12)</a></li>
424
425 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/06/">June (20)</a></li>
426
427 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/07/">July (17)</a></li>
428
429 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/08/">August (6)</a></li>
430
431 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/09/">September (9)</a></li>
432
433 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/10/">October (17)</a></li>
434
435 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/11/">November (10)</a></li>
436
437 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/12/">December (7)</a></li>
438
439 </ul></li>
440
441 <li>2011
442 <ul>
443
444 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/01/">January (16)</a></li>
445
446 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/02/">February (6)</a></li>
447
448 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/03/">March (6)</a></li>
449
450 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/04/">April (7)</a></li>
451
452 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/05/">May (3)</a></li>
453
454 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/06/">June (2)</a></li>
455
456 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/07/">July (7)</a></li>
457
458 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/08/">August (6)</a></li>
459
460 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/09/">September (4)</a></li>
461
462 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/10/">October (2)</a></li>
463
464 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/11/">November (3)</a></li>
465
466 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/12/">December (1)</a></li>
467
468 </ul></li>
469
470 <li>2010
471 <ul>
472
473 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/01/">January (2)</a></li>
474
475 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/02/">February (1)</a></li>
476
477 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/03/">March (3)</a></li>
478
479 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/04/">April (3)</a></li>
480
481 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/05/">May (9)</a></li>
482
483 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/06/">June (14)</a></li>
484
485 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/07/">July (12)</a></li>
486
487 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/08/">August (13)</a></li>
488
489 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/09/">September (7)</a></li>
490
491 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/10/">October (9)</a></li>
492
493 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/11/">November (13)</a></li>
494
495 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/12/">December (12)</a></li>
496
497 </ul></li>
498
499 <li>2009
500 <ul>
501
502 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/01/">January (8)</a></li>
503
504 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/02/">February (8)</a></li>
505
506 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/03/">March (12)</a></li>
507
508 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/04/">April (10)</a></li>
509
510 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/05/">May (9)</a></li>
511
512 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/06/">June (3)</a></li>
513
514 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/07/">July (4)</a></li>
515
516 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/08/">August (3)</a></li>
517
518 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/09/">September (1)</a></li>
519
520 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/10/">October (2)</a></li>
521
522 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/11/">November (3)</a></li>
523
524 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/12/">December (3)</a></li>
525
526 </ul></li>
527
528 <li>2008
529 <ul>
530
531 <li><a href="http://people.skolelinux.org/pere/blog/archive/2008/11/">November (5)</a></li>
532
533 <li><a href="http://people.skolelinux.org/pere/blog/archive/2008/12/">December (7)</a></li>
534
535 </ul></li>
536
537 </ul>
538
539
540
541 <h2>Tags</h2>
542 <ul>
543
544 <li><a href="http://people.skolelinux.org/pere/blog/tags/3d-printer">3d-printer (16)</a></li>
545
546 <li><a href="http://people.skolelinux.org/pere/blog/tags/amiga">amiga (1)</a></li>
547
548 <li><a href="http://people.skolelinux.org/pere/blog/tags/aros">aros (1)</a></li>
549
550 <li><a href="http://people.skolelinux.org/pere/blog/tags/bankid">bankid (4)</a></li>
551
552 <li><a href="http://people.skolelinux.org/pere/blog/tags/betalkontant">betalkontant (9)</a></li>
553
554 <li><a href="http://people.skolelinux.org/pere/blog/tags/bitcoin">bitcoin (11)</a></li>
555
556 <li><a href="http://people.skolelinux.org/pere/blog/tags/bootsystem">bootsystem (17)</a></li>
557
558 <li><a href="http://people.skolelinux.org/pere/blog/tags/bsa">bsa (2)</a></li>
559
560 <li><a href="http://people.skolelinux.org/pere/blog/tags/chrpath">chrpath (2)</a></li>
561
562 <li><a href="http://people.skolelinux.org/pere/blog/tags/debian">debian (173)</a></li>
563
564 <li><a href="http://people.skolelinux.org/pere/blog/tags/debian edu">debian edu (159)</a></li>
565
566 <li><a href="http://people.skolelinux.org/pere/blog/tags/debian-handbook">debian-handbook (6)</a></li>
567
568 <li><a href="http://people.skolelinux.org/pere/blog/tags/digistan">digistan (11)</a></li>
569
570 <li><a href="http://people.skolelinux.org/pere/blog/tags/dld">dld (17)</a></li>
571
572 <li><a href="http://people.skolelinux.org/pere/blog/tags/docbook">docbook (26)</a></li>
573
574 <li><a href="http://people.skolelinux.org/pere/blog/tags/drivstoffpriser">drivstoffpriser (4)</a></li>
575
576 <li><a href="http://people.skolelinux.org/pere/blog/tags/english">english (420)</a></li>
577
578 <li><a href="http://people.skolelinux.org/pere/blog/tags/fiksgatami">fiksgatami (23)</a></li>
579
580 <li><a href="http://people.skolelinux.org/pere/blog/tags/fildeling">fildeling (14)</a></li>
581
582 <li><a href="http://people.skolelinux.org/pere/blog/tags/freeculture">freeculture (34)</a></li>
583
584 <li><a href="http://people.skolelinux.org/pere/blog/tags/freedombox">freedombox (9)</a></li>
585
586 <li><a href="http://people.skolelinux.org/pere/blog/tags/frikanalen">frikanalen (20)</a></li>
587
588 <li><a href="http://people.skolelinux.org/pere/blog/tags/h264">h264 (20)</a></li>
589
590 <li><a href="http://people.skolelinux.org/pere/blog/tags/intervju">intervju (43)</a></li>
591
592 <li><a href="http://people.skolelinux.org/pere/blog/tags/isenkram">isenkram (16)</a></li>
593
594 <li><a href="http://people.skolelinux.org/pere/blog/tags/kart">kart (22)</a></li>
595
596 <li><a href="http://people.skolelinux.org/pere/blog/tags/kodi">kodi (4)</a></li>
597
598 <li><a href="http://people.skolelinux.org/pere/blog/tags/ldap">ldap (9)</a></li>
599
600 <li><a href="http://people.skolelinux.org/pere/blog/tags/lego">lego (4)</a></li>
601
602 <li><a href="http://people.skolelinux.org/pere/blog/tags/lenker">lenker (8)</a></li>
603
604 <li><a href="http://people.skolelinux.org/pere/blog/tags/lsdvd">lsdvd (2)</a></li>
605
606 <li><a href="http://people.skolelinux.org/pere/blog/tags/ltsp">ltsp (1)</a></li>
607
608 <li><a href="http://people.skolelinux.org/pere/blog/tags/mesh network">mesh network (8)</a></li>
609
610 <li><a href="http://people.skolelinux.org/pere/blog/tags/multimedia">multimedia (42)</a></li>
611
612 <li><a href="http://people.skolelinux.org/pere/blog/tags/nice free software">nice free software (13)</a></li>
613
614 <li><a href="http://people.skolelinux.org/pere/blog/tags/noark5">noark5 (22)</a></li>
615
616 <li><a href="http://people.skolelinux.org/pere/blog/tags/norsk">norsk (314)</a></li>
617
618 <li><a href="http://people.skolelinux.org/pere/blog/tags/nuug">nuug (197)</a></li>
619
620 <li><a href="http://people.skolelinux.org/pere/blog/tags/offentlig innsyn">offentlig innsyn (38)</a></li>
621
622 <li><a href="http://people.skolelinux.org/pere/blog/tags/open311">open311 (2)</a></li>
623
624 <li><a href="http://people.skolelinux.org/pere/blog/tags/opphavsrett">opphavsrett (75)</a></li>
625
626 <li><a href="http://people.skolelinux.org/pere/blog/tags/personvern">personvern (111)</a></li>
627
628 <li><a href="http://people.skolelinux.org/pere/blog/tags/raid">raid (2)</a></li>
629
630 <li><a href="http://people.skolelinux.org/pere/blog/tags/reactos">reactos (1)</a></li>
631
632 <li><a href="http://people.skolelinux.org/pere/blog/tags/reprap">reprap (11)</a></li>
633
634 <li><a href="http://people.skolelinux.org/pere/blog/tags/rfid">rfid (3)</a></li>
635
636 <li><a href="http://people.skolelinux.org/pere/blog/tags/robot">robot (12)</a></li>
637
638 <li><a href="http://people.skolelinux.org/pere/blog/tags/rss">rss (1)</a></li>
639
640 <li><a href="http://people.skolelinux.org/pere/blog/tags/ruter">ruter (7)</a></li>
641
642 <li><a href="http://people.skolelinux.org/pere/blog/tags/scraperwiki">scraperwiki (2)</a></li>
643
644 <li><a href="http://people.skolelinux.org/pere/blog/tags/sikkerhet">sikkerhet (58)</a></li>
645
646 <li><a href="http://people.skolelinux.org/pere/blog/tags/sitesummary">sitesummary (4)</a></li>
647
648 <li><a href="http://people.skolelinux.org/pere/blog/tags/skepsis">skepsis (5)</a></li>
649
650 <li><a href="http://people.skolelinux.org/pere/blog/tags/standard">standard (70)</a></li>
651
652 <li><a href="http://people.skolelinux.org/pere/blog/tags/stavekontroll">stavekontroll (7)</a></li>
653
654 <li><a href="http://people.skolelinux.org/pere/blog/tags/stortinget">stortinget (12)</a></li>
655
656 <li><a href="http://people.skolelinux.org/pere/blog/tags/surveillance">surveillance (60)</a></li>
657
658 <li><a href="http://people.skolelinux.org/pere/blog/tags/sysadmin">sysadmin (5)</a></li>
659
660 <li><a href="http://people.skolelinux.org/pere/blog/tags/usenix">usenix (2)</a></li>
661
662 <li><a href="http://people.skolelinux.org/pere/blog/tags/valg">valg (9)</a></li>
663
664 <li><a href="http://people.skolelinux.org/pere/blog/tags/verkidetfri">verkidetfri (18)</a></li>
665
666 <li><a href="http://people.skolelinux.org/pere/blog/tags/video">video (74)</a></li>
667
668 <li><a href="http://people.skolelinux.org/pere/blog/tags/vitenskap">vitenskap (4)</a></li>
669
670 <li><a href="http://people.skolelinux.org/pere/blog/tags/web">web (42)</a></li>
671
672 </ul>
673
674
675 </div>
676 <p style="text-align: right">
677 Created by <a href="http://steve.org.uk/Software/chronicle">Chronicle v4.6</a>
678 </p>
679
680 </body>
681 </html>