[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: syncing pda + phone on linux?



On Sun, Jul 25, 2004 at 11:47:05AM -0600, Monique Y. Mudama wrote:
> 
> Phone numbers and appointments.  I've tried using all the other
> fanciness, but I never seem to stick with it.  Post-its on the wall work
> better for me than a to-do list.

Last year I wrote a GTK app (http://sourceforge.net/projects/pim-tb)
which lets me define a schema in XML, then enter lists of things and 
save the data as XML.  It's a little minature relational database, and I 
use it to keep track of dates, account #s, buglists, books I want, bills 
I need to pay, serials, bunch of stuff.  I tried the 19,000 programs 
Debian ships to do the same thing but didn't like "how they worked" so I 
wrote #19,001.

Then I bought a PocketPC.  I bought a C# api called "PocketOutlooK" 
which lets you programmatically delete and create appointments, 
contacts, &c.  I wrote a custom C# app that runs on the PocketPC that 
imports some XML and creates various things, and use xsltproc on my PC 
to transform my little databases into a pre-processed format.

Then I use vsftp and bluez-utils with bluetooth to set up some little 
scripts that (1) turn on bluetooth on the host pc, (2) run some curl 
scripts to check my current bank balances and current library books,
(3) transform my databases to xml, (4) gzip it it all and put it in an 
"outgoing" ftp folder, (5) start bluetooth on the pocketpc, (6) run the 
C# app which connects to the ftp server (needed an open source C# ftp 
library for that, (7) gunzips it (needed an open source C# library for 
that), (8) deletes all the data on the pocketpc, (9) recreates it all.

It also exports all the "state" of the pocketpc before and after the 
import, gzips it, ftps it up to the host pc, and then I run some scripts 
which do a "delta" and I manually sync the host app.  Mostly I use the 
pocketpc for reading data, not entering it.

I have all this down to a 4-step process which takes about 1 minute, and 
there is a lot of room for optimization.  The trick is you need to write 
some code yourself, don't use the crap KDE gives you if you don't want 
to be hamstrung.



Reply to: