iSync is Next

Started by gbooker, February 25, 2006, 10:23:34 PM

Previous topic - Next topic

gbooker

I am sure many have noticed that iSync is missing from this list of "do it yourself .mac", and this is something I aim to remedy.  Currently I am trying to gather interest in this before diving in too deeply.

I propose an open source project, written in php/mysql (for portability reasons mostly and I know them better than alternatives) which will serve as the server side to syncmgmt.mac.com.

I do have traces of a real sync, as well as a register of a computer with a computer removed.  The good news is that it is mostly an XML front-end to database queries, and there is not much parsing involved.  The bad news is I am rather unexperienced in database programming, so I need someone else to at least verify the code.

Anyway, is there anyone out there interested in working on this?
I have already written a parser for the broken xml that apple uses (files are inserted into the stream raw and unescaped).

walinskydotcom

Glad someone is willing to pick up this project;
I kinda started on this; got the traces too; wrote half of the xml parser(perl) and then abandoned the project.

I have written some php/mysql applications; I'd be glad to help you reviewing code / database-layout and querying...

just let me know

matt

I have a fair bit of database programming experience so I might be able to help out, depending on what you need and how many other irons I have in the fire.

gbooker

Sounds like there is enough interest.

My deadline on this is basically when my .mac account ends, which is Oct.  I am not in a big rush, and I expect that we should have no trouble making that.

I am including a text document which describes much of the server's behavior.  Hopefully this will help get things started.

I was thinking about setting up an subversion repository for the code.  I also have a server which can be used to beta test this as well (has apache2, MySQL, etc...).  It has 500G of transfer allowed each month, so we should be fine there.  The biggest trick I have figured out so far is making the SSL key work with multiple DNS names on the same IP (iSync does verify SSL keys, and fails if the SSL key cannot be verified).

I will post again once I have some of this stuff set up.

gbooker

Just a quick bump to let people know I have not forgotten this.

Sorry about the lack of reply...

I got ticked off with my server's service provider, so I dumped them.  (Everyone, don't use rosehosting.com, they are unreliable to say the least.)

I have a new server set up, and am about to break the subversion repository online.

gbooker

#5
OK, my subversion repository is online.  BTW, I chose the name mySync for the project name.  Hope nobody dislikes that name.


svn co http://svn.cod3r.com/mySync/trunk mySync (or https if your prefer, my CA's cert is available upon request; I can't afford a real SSL cert :( ).

Also, trac is up too:  http://trac.cod3r.com/mySync (again, https available if your prefer).


Now, for those who want commit access, run:

htpasswd -cm passwdfile username

where passwdfile can be any temp file and username is the username you would like.  Send me the contents of this file, and I will get on adding you as a developer.


Trac has a wiki included with it, so we can make use of that as well.  Hope this works out well enough for people.

snod

Quote from: gbooker on March 04, 2006, 07:38:03 AM
The biggest trick I have figured out so far is making the SSL key work with multiple DNS names on the same IP (iSync does verify SSL keys, and fails if the SSL key cannot be verified).

Hi,

could you tell us how you did this?

TIA
snod

gbooker

Quote from: snod on May 19, 2006, 07:22:28 AM
Quote from: gbooker on March 04, 2006, 07:38:03 AM
The biggest trick I have figured out so far is making the SSL key work with multiple DNS names on the same IP (iSync does verify SSL keys, and fails if the SSL key cannot be verified).

Hi,

could you tell us how you did this?

TIA
snod
I created a new topic for this:  http://www.tnpi.biz/support/forums/index.php/topic,657.0.html

gbooker

I am abandoning this idea.


  • iSync screws up all the time even if you have a .mac account.  The problems are client side, not server.  This means than implementing the server side stuff is going to suck just as much.
  • Apple can (and has) change the protocol at will out from under us.  It is not worth the effort to keep up with a sub-par system.
  • There is a application called mySync which seems to do the job that I need; syncing between two computers.

Because of these items, I just don't see it being worth the time it takes to implement an iSync replacement for .Mac.

matt

I have had one (only one) issue where iSync & .mac "screwed up", and in that case, it was related to an iSync triggered by my iPod. It basically wiped out my entire Address Book, making me very glad I have three systems all synced with .mac. I made a backup on another computer, restored to .mac, and all was well. I suspect that making sure all mac systems that use iSync are kept up-to-date will prevent most problems.

As far as being sub-par, I have to ask, compared to what?  While iSync w/.mac is not perfect, it is better than what is included in XP and most other OS platforms. On those, you must have a dedicated Exchange (or Open Directory) server to do the same type of thing.

mySync looks quite nifty. When/if it emerges from beta, I'll be having a look at it for keeping all my contact info synced between my laptops and desktops.

Matt

gbooker

I would have said that my screw-ups were minor, until yesterday.  I qualified screwing up all the time as it would suddenly stop syncing due to a .mac outage and never try again.  The iDisk sync was far worse about this, but I found the iSync did it from time to time as well.  Also, I would often see it take days for a change that was made on one mac to make it to another even when it was syncing.

Then yesterday.  .Mac sync decided it would duplicate or even triplicate all of my address book entries, calendars, and mail accounts.  Didn't do this to the keychain, mail rules, or bookmark oddly enough.  Here, I had the issues recurring over and over.  I tried restoring from .mac or restoring from a good computer, and that seemed to fix it, but then it occurred again.  I finally just had to manually go through and clean up the duplicates (and removed a bunch of out of date information as well).  Now I am glad my .Mac account ends is 21 days.  No way I am paying for it after this.

As far a sub-par, I can get better reliability out of modifying one of my rsync script which I already use to sync my iTunes and iPhoto libraries.  It can't handle concurrent changes between two systems, but it does work flawlessly otherwise.

I am hoping mySync will do the job in the end.  If it does, then it may be one of the few pieces of software that I would be willing to shell out money for (poor college student :( ).