Wiki » History » Version 14
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 | # Install Tomcat on ubuntu: |
||
60 | 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 |