Quarter Share is made to enable easy message communication between mobile phones and computers.
This project is divided into three parts, Linux server (this repository) , Windows server
(link) and Android application
(link). Pay a visit to our wiki page for more information about setup and usage.
Click the connect button. Then type something on your phone and send it.
The connection between the phone and the computer is secured with AES 256bit Encryption. By default, each new connection needs to be manually confirmed on the server to allow the client to send messages. Also, you can kick any clients you want.
Sure! You can control how the server handles your messages using internal commands.
- Computers and mobile phones can send messages in both directions
- Support multiple lines
- Quick connection speed
- Offline compatibility
- Command-line support
- Internal commands can be used within the server
- Single Python script
Use .25Share Windows server .25Share.
You can check out One Share.
The reason is very simple, just because I like voice input on the phone. For me, typing Chinese on the computer is a bit difficult.
Now the voice input method on the computer is very complicated, and it is still not as convenient as the input method on the mobile phone. I invented this program so that I can use the phone’s voice input method to type on the computer.
If you are using other input methods that can only be used on mobile phones, you can also use this program on your computer.
Each time the server is turned on, a new pair of RSA encryption keys will be created.
When a client connects to the server, the server will send its public key to the client. After that, the client will generate an AES key and pass it with RSA public key encryption to the server. Then, the server decrypts the message and obtains the AES key. Finally, the server and the client can start encrypted communication.
The security code is a MD5 hash value. Both the server and client will generate a security code using the RSA public key from the server and the AES key. To ensure the messages are secured, You need to verify that the security code displayed on the server is exactly the same as the one displayed on the client.
The server does not save any logs or configuration files to your computer.
usage: .25share [-h] [--host HOST] [--port PORT] [-a] [-f FLAG]
optional arguments:
-h, --help show this help message and exit
--host HOST The server's hostname or IP address
--port PORT The port to listen on
-a, --allow Allow all clients to send messages to the server
without the user's permission
-f FLAG, --flag FLAG mode flag
.help show this help message
.flag show how the server handles messages
.chflag [flag] change how the server handles messages
.ls list all connected clients
.allow <client> allow client(s) to send messages
.kick <client> kick specified client(s)
.send <client> <content> send a message to client(s)
.stop stop the server
@a all clients
@p the latest client who sent a message / connected
<ID> specified client id, e.g. `5`
For example, using .kick @a
command will kick all connected clients, using .kick 30
command will kick a connected client with id 30.
- Commands must be preceded by a period.
- Any input that does not start with a period is understood as sending the entire sentence to the latest client (@p).
- If you want to send a message that starts with a period, use command
.send @p YOUR MESSAGE
When you press the "Send" button on your phone to send a message, what should the server do after receiving it
p Print on the console
s1 Copy to primary selection
s2 Copy to secondary selection
s3 Copy to clipboard
t Typing text
You can use multiple flags at the same time. e.g. t
, s1
, ps1
and ps1s2t
are acceptable.
It should look like this:
.25share -f ps1s2t # command line
.chflag ps1s2t # internal command
Please go to the wiki page.
Thanks you SamNg and COMMANDER.WONG for their suggestions and software testing.