Skip to content

Commit

Permalink
Update architecture diagram
Browse files Browse the repository at this point in the history
  • Loading branch information
parksb committed Nov 18, 2023
1 parent dc56131 commit a6cc37f
Show file tree
Hide file tree
Showing 2 changed files with 6 additions and 2 deletions.
2 changes: 1 addition & 1 deletion src/architectures/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

Zap is structured as a client-server model. The client unidirectionally sends data, and the server receives and processes it. This architecture keeps Zap's design simple and naturally allows a 1:N structure where multiple clients can send data to a single server.

![](https://user-images.githubusercontent.com/6410412/283739637-66d41f4c-ff69-4cb7-b8c4-dd647c642b67.png)
![](https://user-images.githubusercontent.com/6410412/283972762-95116c23-542e-40ed-b408-5ee1c00c86ea.png)

A data sent from the client to the server is transmitted over UDP socket. Zap is implemented to send this data by defining 'ZAPP Object' defined on top of datagram, which contain the client's UUID, resource type, and the actual data value. ZAPP Object is the data unit of ZAPP(Zap Protocol), for more detailed information about the protocol, please check the [ZAPP page](./zap-protocol.md).

Expand Down
6 changes: 5 additions & 1 deletion src/introduction.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,11 @@ Of course, it can also become a simple remote controller, not a motion controlle

<video src="https://user-images.githubusercontent.com/6410412/281803217-38e92248-7f19-4b56-be38-f6339e9c4086.mp4" muted controls></viedo>

To overcome the limitation that data sources are confined to a single mobile device, Zap provides programming interface to access data sources on other devices. In the following example shows that the client instance on an Android device sends acceleration force data to the server device.
To overcome the limitation that data sources are confined to a single mobile device, Zap provides its own network protocol and programming interface to access data sources on other devices. Please check the [Architectures](./architectures) section for more information about Zap's communication specification and structure.

![](https://user-images.githubusercontent.com/6410412/283972762-95116c23-542e-40ed-b408-5ee1c00c86ea.png)

In the following application code blocks, it shows that the client instance on an Android device sends acceleration force data to the server device.

```kotlin
class MainActivity: AppCompatActivity(), SensorEventListener {
Expand Down

0 comments on commit a6cc37f

Please sign in to comment.