Datoteke z dogodki

Vedno, ko se lotim česa, pri tem poskusim poskrbeti, da bo uporabniku stvar kar se da preprosta. Tako sem v najavo #GeekMeeta v3.0 vključil tudi datoteko s katero bi lahko tisti, ki se namreavajo udeležiti druženja, dogodek enostavno dodali v svoj koledar.

Ideja je bila sila preprosta: ustvari dogodek v programu Calendar na mojem MacBooku in ga izvozi; nato pa povezavo do datoteke objavi med besedilom. Očitno je bilo preveč preprosto, da bi lahko delovalo.

Kmalu po objavi je Rok Terkaj (a.k.a. Trkaj) na twitterju sporočil, da mu mobitel noče uvoziti datoteke v njegov koledar.

Sranje. Kaj je narobe? Odprem na svojem mobitelu in res, koledar mi javi napako “Unable to launch event”. Damn, damn, damn. Najprej sem pomislil, da je problem v mojem mobitelu. OnePlus One na katerem teče Android 6.0 Marshmallow v obliki Sultanovega CM13 ROMa. Ampak ne, ni bil problem tukaj. Poleg tega, da je v preteklosti Googlova aplikacija za koledar že imela težave s tem, sem takoj posumil, da je problem aplikacija. Ampak kako? Leta 2016 res ne bi smel biti več problem v uvažanju nekaj tako osnovnega kot je dogodek za koledar. Ali pač?

Poleg tega, da sem si na hitro osvežil spomin o različnih zapisih (.ics, .vcs …) mi je počasi zmanjkovalo idej, kaj sploh še lahko storim. Na srečo mi je danes zjutraj Jure pokazal kako zadeva deluje na spletni strani NTFja. Glej ta čudež, če prenesem Outlook zapis, zadeva deluje. Deluje na MacBooku, Androidu in iOSu.

OK, čas za reverse engineering. Še enkrat prenesem datoteko in jo odprem v urejevalniku kode (Brackets). Počasi ugotavljam, da je verjetno napaka v načinu zapisa, ki ga generira program Calendar v MacOS. V tej točki se še nisem poglobil do te mere, da bi ugotovil, kaj točno je problem v datoteki, ki jo generira Calendar. Rabil sem hitro rešitev, ki sem jo našel v obliki skripte na addevent.com. Brezplačna različica je sicer nekoliko omejena (predvsem zato, ker ne omogoča dodajanja opomnikov), a trenutno res nimam niti časa niti denarja, da bi kupil naročnino na polno različico.

V prihodnjih dneh bo prioriteta na tem, da poiščem dokumentacijo iz katere bom lahko razbral vse potrebne informacije, da na roke napišem testno *.ics datoteko. Cilj tega postopka bo izdelati delujočo in z vsemi sistemi kompatibilno *.ics datoteko, ki bo vsebovala naslednje podatke: ime dogodka, lokacija, termin, spletna stran, organizator in opomniki. V kolikor datoteka ne bo delovala bom poskušal poiskati elemente, ki povzročajo napake na različnih sistemih in jih bodisi izločil, nadomestil ali pa popravil.

Spremljajte me na blogu ali twitterju, kjer sem @uros_m, za nadaljevanje te zgodbe.

Naslovna slika: FreeImages.com / e_anka


Posted

in

by