A pure Python cross-platform program to send and receive data over local area network(LAN) with on-the-fly gzip streaming and broadcasting
Project description
pySendCast
A pure Python cross-platform program to send and receive data over local area network(LAN) with on-the-fly gzip streaming and broadcasting
How to install
pip install pySendCast
How to use
sendcast send [file or messages...]
sends without PIN.
sendcast send <-p|--pin> [file or messages...]
sends with newly generated PIN
sendcast send <-up|--userpin> <user PIN> [file or messages...]
sends with user specified PIN
file or message can be any of
- nothing : check up each other's ip address
- file path : send and receive files with glob searching (ex.
*.py
) - url : receiver opens default web browser with it
- message : simple text messages
sendcast recv
receives without PIN
sendcast recv <user PIN>
receives with user specified PIN
sendcast recv <n|new|g|gen>
receives with newly generated PIN
How to use with usecases
- General usecase : send two files without PIN. The First non-PIN receiver on network takes the file
- Sender
$ sendcast send a.txt b.txt
- Receiver
$ sendcast recv
- Sender
$ sendcast send a.txt b.txt
192.168.0.11
sending a.txt
sending b.txt
$ _
- Receiver
$ sendcast recv
extracting a.txt (23 bytes)
extracting a.txt done (23 bytes, 0.0000413 seconds, 0.557163 MB/s)
extracting b.txt (27 bytes)
extracting b.txt done (27 bytes, 0.0000405 seconds, 0.666000 MB/s)
$ _
In this case, receiver can be running before the sender sends
- generated PIN usecase : send with newly generated PIN. receiver must know PIN to receive the file (be aware that its stream itself is not securely encrypted.)
- Sender
$ sendcast send -p a.txt b.txt
generated PIN : 3061
- Receiver
$ sendcast recv 3061
- Sender
$ sendcast send -p a.txt b.txt
generated PIN : 3061
192.168.0.11
sending a.txt
sending b.txt
$ _
- Receiver
$ sendcast recv 3061
extracting a.txt (23 bytes)
extracting a.txt done (23 bytes, 0.0000413 seconds, 0.557163 MB/s)
extracting b.txt (27 bytes)
extracting b.txt done (27 bytes, 0.0000405 seconds, 0.666000 MB/s)
$ _
In this case, receiver cannot be running before the sender sends
- user PIN usecase : send with user PIN. receiver must know PIN to receive the file (be aware that its stream itself is not securely encrypted.)
- Sender
$ sendcast send -up 9999 a.txt b.txt
user PIN : 9999
- Receiver
$ sendcast recv 9999
- Sender
$ sendcast send -up 9999 a.txt b.txt
user PIN : 9999
192.168.0.11
sending a.txt
sending b.txt
$ _
- Receiver
$ sendcast recv 9999
extracting a.txt (23 bytes)
extracting a.txt done (23 bytes, 0.0000413 seconds, 0.557163 MB/s)
extracting b.txt (27 bytes)
extracting b.txt done (27 bytes, 0.0000405 seconds, 0.666000 MB/s)
$ _
In this case, receiver can be running before the sender sends
- receiver generated PIN usecase : send with receiver created user PIN. sender must know PIN to send the file (be aware that its stream itself is not securely encrypted.)
- Receiver
$ sendcast recv n
generated PIN : 2342
- Sender
$ sendcast send -up 2342 a.txt b.txt
user PIN : 2342
192.168.0.11
sending a.txt
sending b.txt
$ _
- Receiver
$ sendcast recv n
generated PIN : 2342
extracting a.txt (23 bytes)
extracting a.txt done (23 bytes, 0.0000413 seconds, 0.557163 MB/s)
extracting b.txt (27 bytes)
extracting b.txt done (27 bytes, 0.0000405 seconds, 0.666000 MB/s)
$ _
In this case, receiver can be running before the sender sends
special usecase
- send/recv from Android
- using Termux
Security note
The receiver takes any gzip tar stream from port number 18902. Becuase this stream is not encrypted, it can be captured with network tools or can be easily targeted for hacking. Any responses from security issues are not taken by developer.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distributions
Hashes for pySendCast-0.0.4-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9b9d8ae66b0cdbe60724f1e84ac106a627ef0c78828a6424f543cd5ac659fc19 |
|
MD5 | 7a08fc769b8e827d7010f065c64c0897 |
|
BLAKE2b-256 | 01e92c0240cb1449e236aa1340f9190487f80a4a4d14fca7c038fd667eece238 |