Stránka 1 z 1

vCalendar: problém s časem upozornění

Napsal: 22. 12. 2009 16:45
od mikrupa
Zdarvím.

Pokouším se vytvořit soubor "test.vcs", který by mi přidal do kalendáře v PDA položku (událost).
Prostudoval jsem spousty specifikací formátu vCalendar

Kód: Vybrat vše

http://www.imc.org/pdi/vcal-10.txt
ale stále se mi nedaří ten soubor donutit k tomu, aby mě reminder upozornil 3 minuty před začátkem události.
Ať dělám cokoliv, tak se upozornění na událost spouští vždy 15 minut před časem nastaveným v DTSTART.

Tady je obsah souboru "test.vcs".

Kód: Vybrat vše

BEGIN:VCALENDAR
VERSION:2.0
METHOD:PUBLISH
BEGIN:VEVENT
DTSTART:20091222T180000
DTEND:20091222T180500
UID:20091222-0A3CB
DTSTAMP:20091222T180000
CATEGORIES:Public
DESCRIPTION: 18:00 testovaci vCAL
PRIORITY:5
BEGIN:VALARM
TRIGGER:PT3M
ACTION:DISPLAY
DESCRIPTION:Reminder
END:VALARM
END:VEVENT
END:VCALENDAR


Doufal jsem, že upozornění na událost proběhne v 17:57, jenže upozornění proběhlo v 17:45.
Zkoušel jsem ještě nahradit řádku TRIGGER těmito variantami:

TRIGGER:20091222T175700
TRIGGER:-PT3M
TRIGGER:-T3M

Ani v jednom případě ale nedošlo k požadovanému efeku. Vždy se spustilo upozornění 15 minut před událostí.

Pak mě napadlo, že bych si tu událost zadal přímo v PDA a pak jí jako soubor ".vcs" vyexportoval do PC, kde bych si prohlédl jeho obsah.
Výsledkem bylo toto:

Kód: Vybrat vše

BEGIN:VCALENDAR
VERSION:1.0
BEGIN:VEVENT
LOCATION:
SUMMARY:Test 14
DESCRIPTION:Test 14
CLASS:PUBLIC
STATUS:NEEDS ACTION
DTSTART:20091222T183000
DTEND:20091222T183500
AALARM:20091222T182700
ATTACH;ENCODING=QUOTED-PRINTABLE:Udalost start 18:30 - upozorneni 18:27=0D=0A=

X-MICROSOFT-BODYINK;ENCODING=BASE64:VWRhbG9zdCBzdGFydCAxODozMCAtIHVwb3pvcm5lbmkgMTg6MjcNCg==
 
END:VEVENT
END:VCALENDAR


Už jsem se domníval, že mám vyhráno. Položka AALARM obsahuje čas, kdy jsem chtěl, aby upozornění proběhlo.
Jenže když jsem se pokusil ten samý neupravený soubor přetáhnout zpátky do PDA, tak se upozornění na událost, která má nastat v 18:30, spustilo opět 15 minut před začátkem události.


Takže se ptám, nevíte někdo, kde dělám chybu?
Jak donutit pomocí ".vcs" souboru reminder v PDA, aby se spouštěl 3 minuty před začátkem události?



Hodně krkolomné řešení samozřejmě existuje - Pokud by událost nastala ve skutečnosti například v 18:41, tak bych jí mohl nastavit DTSTART na 20091222T185300. Pak by upozornění nastalo o 15 minut dřív, než je nastavený DTSTART, takže vlastně o 3 minuty dřív, než je skutečný start.
Ale to mi přijde trochu divný a použil bych to až jako poslední možnost, kdyby fakt neexistovalo lepší řešení.

Re: vCalendar: problém s časem upozornění

Napsal: 23. 12. 2009 10:44
od mikrupa
Tak jsem zjistil, že těch 15 minut se dá změnit v nastavení kalendáře (Menu -> Tools -> Options... -> Appointments).
Tam byla zaškrtnutá položka "Set reminders for new items" a pod tím bylo nastaveno 15 minut.

Když jsem to změnil na 3 minuty, tak to funguje tak, jak potřebuji. Akorát to prostě ignoruje ten čas spuštění reminderu ze souboru ".vcs".

Taky jsem zkusil to zaškrtávací políčko zrušit, ale to se potom při importu ".vcs" souboru reminder vůbec nenastavil. (zase jsem zkoušel různé varianty zápisu toho TRIGGERu)

Závěr je teda asi ten, že PDA ignoruje v souboru ".vcs" položky TRIGGER a AALARM.

Mimochodem, zkoušel jsem některé varianty ".vcs" souborů naimportovat i do Outlooku na PC a tam se čas reminderu nastavil bez problému.