Hello everyone, how do you feel about the following doc skeleton? Any gaps?
If you have specific suggestions, let me know for example
' take me from just having a sqllite db schema for a table to syncing it
over the internet with your service'
Thanks!
~ ej
=========================
Guidance Index
Application Scenario
* Scenario: Phone to Tethered PC Sync
* Scenario: Building Maps Collaboratively using KML
* Scenario: Web-based UI for desktop-based data
* Scenario: Creating an updateable store for for data-collection tools
* Scenario: Sync Heterogenous Applications
* Scenario: Tethered Phone to Tethered Phone sync
* Scenario: Cloud Sync of single-user databases
Checklist Item
* Checklist - Making sure Tethered Phone to Tethered Phone Sync will
work
* Checklist - Setting up your development environment
Code Example
* Code Example: Making a CSV file adapter
Guideline
* Roadmap - Joining the Mesh4x Community
* Roadmap - Getting to try out Mesh4x Technolgies
How To
* How To Sync a MySQL Table to the Cloud
* How to start your own EC2 Instance of the Mesh4x Server on S3
* How to edit data in a mesh server with JavaROSA
* How to create an adapter for an existing applications store
* How to create your own adapter
* How To Set up your own Mesh4x Server on MySQL
* How To Sync an Access Table
Info
* Info - List of Mesh4x adapters
* Info - List of applications using Mesh4x
* Info - FeedSync Reference
* Info - RDF and RDFs primer
* Info - Mesh4x Support for binary files
* Info - How does the Mesh4x over SMS protocol work
Principle
* Allow data augmentation
* Conflicts are interesting
* Keep Schemas small
* Default to standard payload representations
- you will have roaming laptops (entering and exiting networks)
- You will have database (sql lite) and some photos you want to share 'everything with everyone' (you don't have constraints which laptops see which filtered subsets of data from what I understod)
- You want the sync to be triggered by ' walking in the room' (getting network visibility)
- you will have roaming laptops (entering and exiting networks)
see prior email, we just jumped to mysql. For our use case, an edge(remote) laptop will share everything. But in reality, it's a subset linked to that laptop/facility. We're envisioning a star topology where central DB will divy partition up images based on an identifier unique to the edge node.
- You will have database (sql lite) and some photos you want to share 'everything with everyone' (you don't have constraints which laptops see which filtered subsets of data from what I understod)
Our effective "walk in the room" is the successful synchronization of a Dropbox shared directory. This actually simplifies the sync process somewhat in terms of needing the app have to do an opportunisitc connectivity check over HTTP. Let dropbox's smarter daemon handle the byte pushing over the wide area link, and treat the dropbox directory as a USB drive. Put a sniffer on the shared directory. If its contents change, we know that something's different and can sync.
- You want the sync to be triggered by ' walking in the room' (getting network visibility)
I also got feedback from th CDC the scnenario titles are misleading. Back to the drawing board!
From: Daniel Myung <dmy...@dimagi.com <http://dmy...@dimagi.com> >
Reply-To: <mes...@googlegroups.com <http://mes...@googlegroups.com> >
Date: Tue, 16 Dec 2008 12:37:57 -0500
Subject: [mesh4x] Re: Documentation Proposal
Hi all,
Just have a few questions regarding the scenarios listed.
Some of the howtos in that section seem to make an assumption of syncing client app to some more "heavier" server app, like the ec2 instance or the cloud services. If I recall your web demo from the call a few weeks back, you demo'ed a mysql and excel sync.
Was something similar to that demo your intent behind the "sync heterogeneous applications" scenario? Is it a "how to sync excel to mysql to sqlite" sort of scenario, or is it gonig to be a "how to sync epi-info to openmrs using the cloud services" sort of thing?
I guess this is a question of syncing in the absence of these servers. A question on the need to define service endpoints and discovery, something you guys highlight as a pro/con of this sync. One needing a high degree of planning ahead (which I'm all for), but it might present itself as being daunting to the implementor to try to address the myriad of sync scenarios that might prop up.
In other words, is there anything special that needs to be done to support a diversity of adapters/sync methods in a given application?
Dan