Wiki » History » Version 18
Tomek Dziemidowicz, 2019-07-04 01:47 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 | 18 | Tomek Dziemidowicz | h3. Server Prerequisites |
56 | |||
57 | To make ampli-sync server work you need: |
||
58 | * Apache Tomcat 8. |
||
59 | * Java |
||
60 | * Linux/Windows environment. |
||
61 | |||
62 | 9 | Tomek Dziemidowicz | h3. Manual |
63 | |||
64 | 14 | Tomek Dziemidowicz | Steps needed to install AMPLI-SYNC manually on Ubuntu. |
65 | |||
66 | 15 | Tomek Dziemidowicz | # Install Tomcat on Ubuntu: |
67 | 14 | Tomek Dziemidowicz | https://www.digitalocean.com/community/tutorials/how-to-install-apache-tomcat-8-on-ubuntu-16-04 |
68 | # Create new user |
||
69 | <pre> |
||
70 | sudo adduser amplisync |
||
71 | </pre> |
||
72 | System will ask you for password for newly created user. |
||
73 | # Add user to group ‘tomcat’ |
||
74 | <pre> |
||
75 | sudo usermod -a -G tomcat amplisync |
||
76 | </pre> |
||
77 | # Chang in web.xml path variable to |
||
78 | <pre> |
||
79 | \home/sqlitesync/demo |
||
80 | </pre> |
||
81 | # Install new application in Tomcat. Start with switching to amplisync user. |
||
82 | <pre> |
||
83 | su amplisync |
||
84 | </pre> |
||
85 | # Create new folder /home/sqlitesync/demo |
||
86 | 16 | Tomek Dziemidowicz | # 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. Name of your WAR file is app name in Tomcat environment. Remember to not place spaces and special chars in name of your WAR file. |
87 | 17 | Tomek Dziemidowicz | # Restart Tomcat: |
88 | 14 | Tomek Dziemidowicz | <pre> |
89 | service tomcat restart |
||
90 | </pre> |
||
91 | Now you can access your installation using link: |
||
92 | <pre> |
||
93 | http://your_ip:8080/amplisync-app-name/API3 |
||
94 | </pre> |
||
95 | # Setup permissions: |
||
96 | <pre> |
||
97 | chown -R sqlitesync:tomcat /home/amplisync/demo/ |
||
98 | </pre> |
||
99 | |||
100 | 9 | Tomek Dziemidowicz | h3. Docker |
101 | 2 | Tomek Dziemidowicz | |
102 | h2. Supported databases |
||
103 | |||
104 | h2. Samples |