Skip to content

Commit 7b6bb27

Browse files
authored
Update README.md
1 parent 34bd482 commit 7b6bb27

File tree

1 file changed

+16
-18
lines changed

1 file changed

+16
-18
lines changed

README.md

Lines changed: 16 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,28 +1,26 @@
1-
# PlaneTalk
2-
<p align="center">
3-
<img src="https://user-images.githubusercontent.com/6486741/76912323-62880880-68ab-11ea-938f-15b7519726db.gif">
4-
</p>
1+
<img src="https://user-images.githubusercontent.com/6486741/115228357-8f8b9800-a109-11eb-98ca-0bd4ada84b20.png" width=100>
52

3+
# PlaneTalk ![](https://img.shields.io/badge/iOS-Swift-green)
64

7-
PlaneTalk is an iOS Swift App which lets you send messages to other devices connected to the same Wi-fi network.
8-
It's suitable in places like airplanes where there is no internet connection.
5+
PlaneTalk is an iOS app written in Swift which lets you send messages to other devices connected to the same Wi-fi-Hotspot network.
6+
It's suitable in places where there is no internet connection like airplanes (hence the name PlaneTalk 😃).
97

108
The core functionalities are all built around some TCP and UDP's `syscall` and uses `kevent` as event notification system.
119
The UDP protocol is only being used for discovery's purposes whereas the TCP protocol is being used to connect and communicate with the server.
1210

11+
## Preview
12+
13+
| Sample 1 | Sample 2 | Sample 3 |
14+
| ------------- | ------------- | ------------- |
15+
| <img width=150 src="https://user-images.githubusercontent.com/6486741/115229482-04130680-a10b-11eb-8c1c-e373cf2e8603.png"> | <img width=150 src="https://user-images.githubusercontent.com/6486741/115229496-07a68d80-a10b-11eb-9c07-12645ebf09c6.PNG"> | <img width=150 src="https://user-images.githubusercontent.com/6486741/115229668-391f5900-a10b-11eb-9b77-3739fe9a8480.PNG"> |
16+
1317
## How it works
14-
When a device opens the app, it automatically sends an UDP Broadcast message to detect any other device in the network.
15-
After sending the message, the device may
16-
1) either receive another broadcast message sent from the server containing its IP
17-
2) or it may not receive any message.
18-
19-
In the 2) scenario, the device
20-
- becomes the server of the communication system
21-
- keeps the UDP Broadcast up in order to receive broadcast messages of any new device joining the network
22-
- opens a TCP socket to receive connection's requests
23-
- establish connections with the clients
24-
25-
In the 1) scenario, the device then fetches the IP of the server and establish a connection with it.
18+
When a device launches the app, it can choose to become either the server or a client.
19+
20+
The server is listening to UDP messages to detect clients in the network and opens a TCP socket to receive connection's requests.
21+
Clients instead, will broadcast UDP messages for discovery purposes.
22+
Once the server receives a discovery message, it broadcasts a discovery response message and then the client then connects to the server via TCP.
23+
2624

2725
## License
2826

0 commit comments

Comments
 (0)