Wiki » History » Version 15
Tomek Dziemidowicz, 2019-07-04 01:20 PM
| 1 | 2 | Tomek Dziemidowicz | h1. SQLite-sync documentation |
|---|---|---|---|
| 2 | |||
| 3 | *Owner* : AMPLIFIER sp. z o.o. |
||
| 4 | *Contact* : support (at) ampliapps.com |
||
| 5 | *website* : https://ampliapps.com |
||
| 6 | |||
| 7 | 3 | Tomek Dziemidowicz | {{>toc}} |
| 8 | |||
| 9 | 9 | Tomek Dziemidowicz | Welcome to the AMPLI-SYNC documentation! |
| 10 | We have language bindings in JavaScript, .NET C#, Java and Objective-C! |
||
| 11 | 1 | Tomek Dziemidowicz | |
| 12 | 9 | Tomek Dziemidowicz | h2. AMPLI-SYNC concept |
| 13 | |||
| 14 | h3. Solution diagram |
||
| 15 | |||
| 16 | 8 | Tomek Dziemidowicz | !{width:700px}SQLite-sync-structure.png! |
| 17 | 1 | Tomek Dziemidowicz | |
| 18 | 13 | Tomek Dziemidowicz | * Devices communicate with server using HTTP/HTTPS protocol. |
| 19 | * Proxy Load Balancer. If necessary, proxy can redirect request to another instance of SQLite-core. |
||
| 20 | * Authorization provider will generate token based on response from authorization provider. |
||
| 21 | 9 | Tomek Dziemidowicz | |
| 22 | h3. Proxy Balancer flowchart |
||
| 23 | |||
| 24 | !{width:400px}SQLite-sync-proxy-balancer.png! |
||
| 25 | |||
| 26 | h3. Authorization Provider flowchart |
||
| 27 | |||
| 28 | !{width:350px}SQLite-sync-authentication-process.png! |
||
| 29 | |||
| 30 | 2 | Tomek Dziemidowicz | h2. REST API (server API) |
| 31 | |||
| 32 | 10 | Tomek Dziemidowicz | h3. Protocol version |
| 33 | |||
| 34 | This document describes integration with the REST API 3.x protocol. |
||
| 35 | |||
| 36 | h3. Service description |
||
| 37 | |||
| 38 | There are two stages to processing a request: |
||
| 39 | |||
| 40 | 12 | Tomek Dziemidowicz | * Device places an request. |
| 41 | * SQLite-sync server confirms the request has been processed successfully and sends confirmation with eventual conflict list that need to be resolved. |
||
| 42 | 10 | Tomek Dziemidowicz | |
| 43 | 11 | Tomek Dziemidowicz | h3. Synchronization flowchart |
| 44 | |||
| 45 | !{width:200px;}Device-synchronization-diagram.png! |
||
| 46 | 10 | Tomek Dziemidowicz | |
| 47 | 2 | Tomek Dziemidowicz | h2. Conflict Resolution |
| 48 | |||
| 49 | h2. Update procedure |
||
| 50 | |||
| 51 | h2. Data filtering |
||
| 52 | |||
| 53 | 1 | Tomek Dziemidowicz | h2. Installation |
| 54 | 9 | Tomek Dziemidowicz | |
| 55 | h3. Manual |
||
| 56 | |||
| 57 | 14 | Tomek Dziemidowicz | Steps needed to install AMPLI-SYNC manually on Ubuntu. |
| 58 | |||
| 59 | 15 | Tomek Dziemidowicz | # Install Tomcat on Ubuntu: |
| 60 | 14 | Tomek Dziemidowicz | https://www.digitalocean.com/community/tutorials/how-to-install-apache-tomcat-8-on-ubuntu-16-04 |
| 61 | # Create new user |
||
| 62 | <pre> |
||
| 63 | sudo adduser amplisync |
||
| 64 | </pre> |
||
| 65 | System will ask you for password for newly created user. |
||
| 66 | # Add user to group ‘tomcat’ |
||
| 67 | <pre> |
||
| 68 | sudo usermod -a -G tomcat amplisync |
||
| 69 | </pre> |
||
| 70 | # Chang in web.xml path variable to |
||
| 71 | <pre> |
||
| 72 | \home/sqlitesync/demo |
||
| 73 | </pre> |
||
| 74 | # Install new application in Tomcat. Start with switching to amplisync user. |
||
| 75 | <pre> |
||
| 76 | su amplisync |
||
| 77 | </pre> |
||
| 78 | # Create new folder /home/sqlitesync/demo |
||
| 79 | # Upload new service amplisync-demo to Tomcat. You can do that using Tomcat application manager, or you can put WAR file in Tomcat webapps folder. |
||
| 80 | # Restart Romcat: |
||
| 81 | <pre> |
||
| 82 | service tomcat restart |
||
| 83 | </pre> |
||
| 84 | Now you can access your installation using link: |
||
| 85 | <pre> |
||
| 86 | http://your_ip:8080/amplisync-app-name/API3 |
||
| 87 | </pre> |
||
| 88 | # Setup permissions: |
||
| 89 | <pre> |
||
| 90 | chown -R sqlitesync:tomcat /home/amplisync/demo/ |
||
| 91 | </pre> |
||
| 92 | |||
| 93 | 9 | Tomek Dziemidowicz | h3. Docker |
| 94 | 2 | Tomek Dziemidowicz | |
| 95 | h2. Supported databases |
||
| 96 | |||
| 97 | h2. Samples |