This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision | ||
| access:project_journal [2017/11/04 00:18] mjallison | access:project_journal [2017/11/20 17:32] (current) mjallison [Implementation thoughts] | ||
|---|---|---|---|
| Line 15: | Line 15: | ||
| * Mobile applications adding data directly to the journal. | * Mobile applications adding data directly to the journal. | ||
| * Done when the local data store is uploaded | * Done when the local data store is uploaded | ||
| + | |||
| + | Things to note: | ||
| + | * Journal will archive and restore with the project | ||
| + | * Journal will delete when the project deletes. | ||
| + | ===== Data sources ===== | ||
| + | Journal Elements can be created and stored from the following source: | ||
| + | * Mobile applications (Android/iOS), SmartDirt, Plan, TrackManager | ||
| + | * Web application | ||
| A bridge strategy will be required until mobile applications are enabled. | A bridge strategy will be required until mobile applications are enabled. | ||
| * The server will extract project events from saved KMZ files generated by the mobile apps. | * The server will extract project events from saved KMZ files generated by the mobile apps. | ||
| + | |||
| + | ===== Consumers ===== | ||
| + | The journal can be consumed by: | ||
| + | * Web application (Project tab) | ||
| + | * Desktop? | ||
| + | * Mobile? | ||
| + | |||
| ===== Implementation thoughts ===== | ===== Implementation thoughts ===== | ||
| Line 25: | Line 40: | ||
| * User id (handle) of author | * User id (handle) of author | ||
| * LLA of data element. | * LLA of data element. | ||
| - | * Reference to the data element itself (files?) | + | * Data element itself (JSON in DB, POJO, C++ object) | 
| - | * Journal must allow for multiple entry paths per project (different clients) | + | |
| + | Photo | ||
| + | { lat: <number>, | ||
| + | lon: <number>, | ||
| + | alt: <number>, | ||
| + | fileHandle: <number> | ||
| + | } | ||
| + | |||
| + | Note | ||
| + | { lat: <number>, | ||
| + | lon: <number>, | ||
| + | alt: <number>, | ||
| + | Text: <String> | ||
| + | } | ||
| + | |||
| + | User Track | ||
| + | { lat: <number>, | ||
| + | lon: <number>, | ||
| + | alt: <number>, | ||
| + | points: []; | ||
| + | } | ||
| + | point{ lat: <number>, /* decimal degrees (-180 .. 180] */ | ||
| + | lon: <number>, /* decimal degrees [-90 .. 90] */ | ||
| + | alt: <number>, /* meters */ | ||
| + | hdg: <number>, /* [0..360), optional may not appear */ | ||
| + | time: <number> /* msSec since Jan 1, 1970 */ | ||
| + | } | ||
| + | |||
| + | Machine Track | ||
| + | { lat: <number>, | ||
| + | lon: <number>, | ||
| + | alt: <number>, | ||
| + | trackHandle: <number> | ||
| + | } | ||
| + | |||
| + | Measure | ||
| + | { lat: <number>, | ||
| + | lon: <number>, | ||
| + | alt: <number>, | ||
| + | points: []; /* Same point struct from User Track */ | ||
| + | } | ||
| + | |||
| - | Questions: | ||
| - | * Desktop apps to participate in project journal? How? | ||
| - | * Photos and Notes make sense from a standalone data perspective, what about tracks/measures? | ||
| - | * What is the implemention of the backing store | ||
| - | * What other data elements are missing? | ||
| - | * Journal will archive and restore with the project | ||
| - | * Journal will delete when the project deletes. | ||
| - | * Does journal ever time out? Or kept as long as the project? | ||