View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0000245 | Funambol SOGo Connector | public | 2009-11-16 18:42 | 2010-05-13 20:37 | |
Reporter | jaywalker | Assigned To | ludovic | ||
Priority | normal | Severity | minor | Reproducibility | always |
Status | resolved | Resolution | fixed | ||
Product Version | 1.0.6 | ||||
Fixed in Version | 1.0.8 | ||||
Summary | 0000245: alarm settings lost during synchronization to Nokia 6267 | ||||
Description | I am trying to sync events a Nokia 6267 (Symbian S40) mobile with SOGo server. With only a few events in the calendar, syncing works well, at least from the server to the phone. However, events with activated alarm will have the alarm disabled on the mobile. Apperently the alarm settings are lost during the conversion of the event from V2 format to V1 which seems to happen inside the funambol connector; see below for a corresponding part of the funambol server log. The incoming V2-event has a correct VALARM entry, the resulting V1-event does not have an alarm setting enabled. | ||||
Additional Information | [2009-11-15 18:16:21,226] [funambol.sogo] [INFO] [40BB1EA9F4E5E442752199D72E16EFE6] [IMEI:355539013613938] [rmarkert] [sogo-cal] About to convert vCalendar (from v2 to v1): BEGIN:VCALENDAR | ||||
Tags | No tags attached. | ||||
Hello, the same problem occurs using a Nokia E52 with recent Symbian OS. Using the funambol client on this phone does not solve the problem. Syncing with the funambol client on thunderbird however works well, and alarms are correctly synced. Best regards, |
|
This seems to be an old bug. Is nobody able to fix it? I've the same problem on an phone with Windows Mobile 6.5 Tested with funambol-sogo 1.0.7 and nightly builds of sogo. |
|
The root cause of this is probably a Funambol bug, see http://forge.ow2.org/tracker/index.php?func=detail&aid=314860&group_id=96&atid=100096 |
|
Very interesting: I created an event in Outlook 2007 and synced it successfully including the reminder. If I try the same with my phone (Windows Mobile 6.5) the alarm information is lost. In the logs I can see that the alarm is stripped off converting from v2 to v1. In v2: And after the internal conversion to v1 the part: Seems to me like a bug of the funambol client for WM or is there a way to fix this in the funambol-sogo connector? |
|
wcronen, vCalendar uses AALARM instead of VALARM, so you should look for that in version 1.0 As far as I can tell the information is lost when vCalendar og iCalendar is converted to the Funambol Calendar type, which is used for converting between versions. |
|
Havard - would you like to send a temporary work around? |
|
I'll probably try when I get some time, but from what I've seen I think this will require some work if the time format from VALARM can't be used directly by AALARM. |
|
2010-04-22 19:39
|
naive_aalarm.patch (1,638 bytes)
Index: src/java/ca/inverse/sogo/engine/source/SOGoUtilities.java =================================================================== --- src/java/ca/inverse/sogo/engine/source/SOGoUtilities.java (revision 31) +++ src/java/ca/inverse/sogo/engine/source/SOGoUtilities.java Thu Apr 22 21:16:25 CEST 2010 @@ -899,6 +899,24 @@ // The boolean parameter triggers v1 vs. v2 conversion (v1 == true) calendar = converter.calendar2vcalendar(cal, true); copyCustomProperties(v2.getVCalendarContent(), calendar.getVCalendarContent()); + + // Funambol loses alarm settings when converting to a Calendar object, see + // http://forge.ow2.org/tracker/index.php?func=detail&aid=314860&group_id=96&atid=100096 + // Try to convert any valarm from v2 to aalarm. + // This is implementation will probably fix 95% of the cases, but doesn't cover + // multiple alarms or alarm times set relative to the end of the event + // Also note that at least Symbian devices does not seem to support relative alarms + VAlarm valarm = (VAlarm)v2.getVCalendarContent().getComponent("VALARM"); + log.info("VALARM is: " + valarm); + if (valarm != null) + { + com.funambol.common.pim.model.Property trigger; + + trigger = valarm.getProperty("TRIGGER"); + calendar.getVCalendarContent().addProperty("AALARM", trigger.getValue()); + } + + // Write result writer = new VComponentWriter(VComponentWriter.NO_FOLDING); s = writer.toString(calendar); log.info(s); |
I've created a first draft for a patch that uses the time from trigger in VALARM directly in AALARM. If I enter a fixed alarm time in Lightning, then the alarm is sync'ed to my phone. In this case the alarm doesn't show up in the web interface, I've filed bug 586 about this. If I create an event in Lightning or SOGo with a relative alarm time (like "15 minutes before"), then the alarm doesn't show on my Symbian phone, I'm guessing that it doesn't support relative alarms. So to get a good fix for this (from my perspective), someone has to parse the relative date format and convert it to a fixed time for AALARM. I'll probably have a shot at this later, when I get some more time. As far as I can see, committing the current patch will be a slight improvement over the current situation, and shouldn't cause any problems for anything else. |
|
Temporary fix pushed - an other bug could eventually be opened for improving the situation. |
|
Date Modified | Username | Field | Change |
---|---|---|---|
2009-11-16 18:42 | jaywalker | New Issue | |
2009-11-25 10:37 | jaywalker | Note Added: 0000297 | |
2010-03-25 04:48 | wcronen | Note Added: 0000795 | |
2010-03-28 07:02 | havardw | Note Added: 0000820 | |
2010-04-14 20:56 | wcronen | Note Added: 0000948 | |
2010-04-15 15:59 | havardw | Note Added: 0000953 | |
2010-04-21 19:23 | ludovic | Note Added: 0000975 | |
2010-04-21 20:22 | havardw | Note Added: 0000976 | |
2010-04-22 19:39 | havardw | File Added: naive_aalarm.patch | |
2010-04-22 19:49 | havardw | Note Added: 0000977 | |
2010-05-13 20:37 | ludovic | Note Added: 0001008 | |
2010-05-13 20:37 | ludovic | Status | new => resolved |
2010-05-13 20:37 | ludovic | Fixed in Version | => 1.0.8 |
2010-05-13 20:37 | ludovic | Resolution | open => fixed |
2010-05-13 20:37 | ludovic | Assigned To | => ludovic |