Ticket #208 (assigned enhancement)

Opened 2 years ago

Last modified 3 weeks ago

kdepim should allow control over which resources are synchronised

Reported by: Graham Cobb Assigned to: abauer (accepted)
Priority: low Milestone: 0.42
Component: Plugin: kdepim Version: 0.22
Severity: normal Keywords:
Cc:

Description

It would be useful if the kdepim plugin allowed control over which resources were synchronised. Three distinct features would be useful:

1) The ability to limit synchronisation to certain types of objects: events, todos, notes, contacts or whatever.

2) The ability to specify which resources are to be synchronised. I use several different contact resources which I would like to keep synchronised with different Exchange contacts folders. Also I only want to synchronise some of these to my phone (as it has limited space and poor lookup -- I don't want every business card I have ever scanned to be synchronised to my phone).

3) The ability to specify which resource would be used to create new items. I would use this as part of synchronising my different contact resources with different Exchange folders.

I would be happy to assist in developing these features. I have looked at the KCal::CalendarResources? class documentation but I am still confused about how to handle multiple resources.

Of course, this would also require the addition of a configuration capability to the kdepim plugin.

Graham Cobb (email: g+opensync AT cobb.uk.net)

Attachments

exp.patch (9.4 kB) - added by pmarat on 06/16/06 22:46:48.
appended is a patch for current svn version (1062) libopensync-plugin-kdepim. kdepim-sync with xml configuration

Change History

06/16/06 22:45:48 changed by pmarat

I am a little confused about ;-)

A half hour ago i announced "kdepim-sync with xml configuration" on mailing list The resulting xml looks like: <config>

<contacts>true</contacts> <calendar>false</calendar> <notes>true</notes> <todo>false</todo>

</config> I have also made a debian(i386) sid/ubuntu package at my experimental repro: deb http://www.in.fh-merseburg.de/~jahn/ experimental main

06/16/06 22:46:48 changed by pmarat

  • attachment exp.patch added.

appended is a patch for current svn version (1062) libopensync-plugin-kdepim. kdepim-sync with xml configuration

06/16/06 22:49:44 changed by pmarat

sorry had to read carefully next time ;-)

...

2) and 3) are not that simple .. but i am working on it.

06/17/06 16:13:16 changed by Graham Cobb

  • type changed from defect to enhancement.

Great minds think alike!

Thanks for already addressing item 1. Sorry, I don't read the -devel mailing list but I will try your patch out now I have seen it.

Let me know if I can be of any help with items 2 and 3.

Thanks Graham

06/20/06 16:19:19 changed by Graham Cobb

I have expanded further on this idea in SelectiveSyncRequirements

07/02/06 03:02:58 changed by ehabkost

Hi,

The patch from pmarat (exp.patch) isn't needed because the objtype_enabled configuration in the sync engine already allows selecting which object types should be synchronized, in a plugin-independent way. It may be used through the --filter-objtype option of msynctool.

Of course, if the plugin isn't behaving as expected regarding the objtype_enabled configuration, please report any problem.

So item (1) is already implemented.

Patches for item (2) and (3) are welcome.

08/02/06 06:31:55 changed by ehabkost

Just a note: objtype_enabled()/--filter-objtype was broken on trunk, and it was juts fixed on commit [1139].

08/23/06 23:33:29 changed by Graham Cobb

--filter-objtype still does not work in the latest SVN (1225 for opensync). This is trivial to reproduce -- see bug #213.

This means that I still need pmarat's patch to allow me to just synchronise notes.

09/07/06 18:00:03 changed by abauer

  • owner changed from ehabkost to abauer.
  • status changed from new to assigned.
  • version set to 0.20.

09/09/06 15:55:30 changed by cstender

  • version changed from 0.20 to 0.31.

11/08/06 20:44:40 changed by Graham Cobb

--filter-objtype now works. So, the basic capability now works.

This is now more of a wishlist item to find some way to control which kdepim resources are used in synchronisation.

03/22/07 16:25:46 changed by cstender

  • version changed from 0.31 to 0.22.
  • milestone set to 0.31.

08/07/07 17:25:58 changed by cstender

  • milestone changed from 0.31 to OpenSync 0.40.

Milestone 0.31 deleted

12/03/07 12:04:12 changed by qratz

As far as i can tell from the kdepim-APIs, the relevant classes for realizing the discussed problem are Resource and and KRES::Manager. Using wrapper classes for the variable resource types, e.g. AddressBookWrapper? for address books, it is possible to retrieve a KRES::Manager for the respective type of pim-data. The relevant method is getResourceManager. With such an KRES::Manager it is possible to either select the resources one by one and process them, or one could use the method setActive(*Resource,bool) to activate only those resources that should be synced. But i'm not completly sure how the latter variant works. I hope this information helps. I would develop this myself, but unfortunatly i'm busy on other projects this year. However, if noone is able to do it this year, i'll start working on it in january.

07/30/08 19:01:02 changed by tuju

  • milestone changed from 0.40 to 0.42.