{ "info": { "author": "Ch.Idea", "author_email": "sbw228@gmail.com", "bugtrack_url": null, "classifiers": [ "License :: OSI Approved :: MIT License", "Natural Language :: English", "Operating System :: OS Independent", "Programming Language :: Python :: 3", "Topic :: Communications :: File Sharing", "Topic :: System :: Networking" ], "description": "# pySendCast\nA pure Python cross-platform program to send and receive data over local area network(LAN) with on-the-fly gzip streaming and broadcasting\n\n### How to install\n```\npip install pySendCast\n```\n\n### How to use\n```\nsendcast send [file or messages...]\n sends without PIN.\nsendcast send <-p|--pin> [file or messages...]\n sends with newly generated PIN\nsendcast send <-up|--userpin> [file or messages...]\n sends with user specified PIN\n```\nfile or message can be any of\n- nothing : check up each other's ip address\n- file path : send and receive files with glob searching (ex. `*.py`)\n- url : receiver opens default web browser with it\n- message : simple text messages\n\n```\nsendcast recv\n receives without PIN\nsendcast recv \n receives with user specified PIN\nsendcast recv \n receives with newly generated PIN\n```\n\n### How to use with usecases\n1. checkup IP\n- Sender : 192.168.0.10\n```shell\n$ sendcast send\n192.168.0.11\n```\n- Receiver : 192.168.0.11\n```shell\n$ sendcast recv\n192.168.0.10\n```\n\n2. Send message\n- Sender\n```shell\n$ sendcast send hello\n192.168.0.11\n```\n- Receiver\n```shell\n$ sendcast recv\n192.168.0.10\nhello\n```\n\n3. General usecase : send two files without PIN. The First non-PIN receiver on network takes the file\n- Sender\n```shell\n$ sendcast send a.txt b.txt\n192.168.0.11\nsending a.txt\nsending b.txt\n```\n- Receiver\n```shell\n$ sendcast recv\n192.168.0.10\nextracting a.txt (23 bytes)\nextracting a.txt done (23 bytes, 0.0000413 seconds, 0.557163 MB/s)\nextracting b.txt (27 bytes)\nextracting b.txt done (27 bytes, 0.0000405 seconds, 0.666000 MB/s)\n```\n\n4. 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**.)\n- Sender\n```shell\n$ sendcast send -p a.txt b.txt\ngenerated PIN : 3061\n192.168.0.11\nsending a.txt\nsending b.txt\n```\n- Receiver\n```shell\n$ sendcast recv 3061\n192.168.0.10\nextracting a.txt (23 bytes)\nextracting a.txt done (23 bytes, 0.0000413 seconds, 0.557163 MB/s)\nextracting b.txt (27 bytes)\nextracting b.txt done (27 bytes, 0.0000405 seconds, 0.666000 MB/s)\n```\n\n5. 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**.)\n- Sender\n```shell\n$ sendcast send -up 9999 a.txt b.txt\nuser PIN : 9999\n192.168.0.11\nsending a.txt\nsending b.txt\n```\n- Receiver\n```shell\n$ sendcast recv 9999\n192.168.0.10\nextracting a.txt (23 bytes)\nextracting a.txt done (23 bytes, 0.0000413 seconds, 0.557163 MB/s)\nextracting b.txt (27 bytes)\nextracting b.txt done (27 bytes, 0.0000405 seconds, 0.666000 MB/s)\n```\n\n6. 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**.)\n- Receiver\n```shell\n$ sendcast recv n\ngenerated PIN : 2342\n192.168.0.10\nextracting a.txt (23 bytes)\nextracting a.txt done (23 bytes, 0.0000413 seconds, 0.557163 MB/s)\nextracting b.txt (27 bytes)\nextracting b.txt done (27 bytes, 0.0000405 seconds, 0.666000 MB/s)\n```\n- Sender\n```shell\n$ sendcast send -up 2342 a.txt b.txt\nuser PIN : 2342\n192.168.0.11\nsending a.txt\nsending b.txt\n```\n\n### special usecase\n- send/recv from Android\n - using [Termux](https://play.google.com/store/apps/details?id=com.termux&hl=en)\n\n### Security note\nThe receiver takes any gzip tar stream from port number 18902.\nBecuase this stream is not encrypted, it can be captured with network tools or can be easily targeted for hacking.\n**Any responses from security issues are not taken by developer.**", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/chidea/pySendCast", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "pySendCast", "package_url": "https://pypi.org/project/pySendCast/", "platform": "", "project_url": "https://pypi.org/project/pySendCast/", "project_urls": { "Homepage": "https://github.com/chidea/pySendCast" }, "release_url": "https://pypi.org/project/pySendCast/0.1.1/", "requires_dist": null, "requires_python": "", "summary": "A pure Python cross-platform program to send and receive data over local area network(LAN) with on-the-fly gzip streaming and broadcasting", "version": "0.1.1" }, "last_serial": 5806420, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "0dfb9a10ff622ee72b4af58b28070a83", "sha256": "286609b1ce40bc652907c94410c0359d5155a48c36fc122ec8a272b596dec373" }, "downloads": -1, "filename": "pySendCast-0.0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "0dfb9a10ff622ee72b4af58b28070a83", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 10440, "upload_time": "2019-02-10T17:15:18", "url": "https://files.pythonhosted.org/packages/28/d9/96113694e02792b4fbfc6e490519d065230ad8640b5f55524afdad85a5ca/pySendCast-0.0.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "a34b26170bf6134490ec89c1fce3cfbb", "sha256": "483ab099ffa0c10a0969ab2544014ad196297c1273b59e62d24866654d518d52" }, "downloads": -1, "filename": "pySendCast-0.0.1.tar.gz", "has_sig": false, "md5_digest": "a34b26170bf6134490ec89c1fce3cfbb", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4985, "upload_time": "2019-02-10T17:15:20", "url": "https://files.pythonhosted.org/packages/a1/c1/d4ca66e50c7a5588490c9913376cd7d069fc23f1919ca17d9b1fcfd51ed4/pySendCast-0.0.1.tar.gz" } ], "0.0.2": [ { "comment_text": "", "digests": { "md5": "1232fca14a4455470693267321c8548c", "sha256": "b8cf24db30c7cdc23c546e81dc7af653d94fb181c50061beec685a1090a9a453" }, "downloads": -1, "filename": "pySendCast-0.0.2-py3-none-any.whl", "has_sig": false, "md5_digest": "1232fca14a4455470693267321c8548c", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 10644, "upload_time": "2019-02-10T18:35:00", "url": "https://files.pythonhosted.org/packages/8d/b9/2dbeeaf8580612f3c9b128e82eae69d335c2d80ed3b1e8f09b9d2fd573dc/pySendCast-0.0.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "b66eb5b19ad7379452b6d8f6b1be5712", "sha256": "1f0d1afa5a7ad58a92fac55061812fdf8880a56d82d38032462a154353c3f4ef" }, "downloads": -1, "filename": "pySendCast-0.0.2.tar.gz", "has_sig": false, "md5_digest": "b66eb5b19ad7379452b6d8f6b1be5712", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5119, "upload_time": "2019-02-10T18:35:02", "url": "https://files.pythonhosted.org/packages/a5/29/7d3a95464c2ec59a45cb5dd5540f26547205a3b2b47839b360ee01456501/pySendCast-0.0.2.tar.gz" } ], "0.0.3": [ { "comment_text": "", "digests": { "md5": "dcc99b4af351a0780ffffea1623c75d6", "sha256": "7168fbcc5834c8ab1711c211a8d3b752879fe67aec524c337d331c3e67888d15" }, "downloads": -1, "filename": "pySendCast-0.0.3.tar.gz", "has_sig": false, "md5_digest": "dcc99b4af351a0780ffffea1623c75d6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5176, "upload_time": "2019-02-10T19:54:29", "url": "https://files.pythonhosted.org/packages/dd/18/6609edb4f1caa97925c4be3af8b5a88e6935d784baa7893c94c5858104c7/pySendCast-0.0.3.tar.gz" } ], "0.0.4": [ { "comment_text": "", "digests": { "md5": "6427ee7b8df57dbe7efd5f8e779f5260", "sha256": "b6ee1675054c920e6f3fd752d671acbcc79346520d9a4579cb0dc1e19acdf1bd" }, "downloads": -1, "filename": "pySendCast-0.0.4-py3.6.egg", "has_sig": false, "md5_digest": "6427ee7b8df57dbe7efd5f8e779f5260", "packagetype": "bdist_egg", "python_version": "3.6", "requires_python": null, "size": 21421, "upload_time": "2019-02-11T13:07:11", "url": "https://files.pythonhosted.org/packages/26/23/86ca9d75f6e91d5cc6242e2614cb1ac05d58327670be6d72e18f92bacd94/pySendCast-0.0.4-py3.6.egg" }, { "comment_text": "", "digests": { "md5": "7a08fc769b8e827d7010f065c64c0897", "sha256": "9b9d8ae66b0cdbe60724f1e84ac106a627ef0c78828a6424f543cd5ac659fc19" }, "downloads": -1, "filename": "pySendCast-0.0.4-py3-none-any.whl", "has_sig": false, "md5_digest": "7a08fc769b8e827d7010f065c64c0897", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 11033, "upload_time": "2019-02-11T13:07:09", "url": "https://files.pythonhosted.org/packages/01/e9/2c0240cb1449e236aa1340f9190487f80a4a4d14fca7c038fd667eece238/pySendCast-0.0.4-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "57baa8c58a24daab61c37d1ee075c37a", "sha256": "4d55f3fc625797875095eb2541ff335b5989912b1abe15e5d85966a91869ddda" }, "downloads": -1, "filename": "pySendCast-0.0.4.tar.gz", "has_sig": false, "md5_digest": "57baa8c58a24daab61c37d1ee075c37a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5258, "upload_time": "2019-02-11T13:07:12", "url": "https://files.pythonhosted.org/packages/4d/4e/ac661330704cbc0f1ce9e5afe56122f393d2cad535e62f443562a0dc9571/pySendCast-0.0.4.tar.gz" } ], "0.0.5": [ { "comment_text": "", "digests": { "md5": "39a8c256477da3aa0e7e235665817061", "sha256": "69100af2482c74e0722be417dcf16d91bbb7596f08e588ce40ffce991a2cc98e" }, "downloads": -1, "filename": "pySendCast-0.0.5-py3-none-any.whl", "has_sig": false, "md5_digest": "39a8c256477da3aa0e7e235665817061", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 11020, "upload_time": "2019-02-11T15:54:41", "url": "https://files.pythonhosted.org/packages/d4/58/ffd6733c945b9a2d5fa69071e122b49f379d65f573cc2c2ec04b69cfd0d9/pySendCast-0.0.5-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "ada5da1626c4a8777ffeb709edafcd8f", "sha256": "74f1eeefb7f41b012377a0548f98acbfc4d8f38c3108a95a4b2e35ea7c5869c4" }, "downloads": -1, "filename": "pySendCast-0.0.5.tar.gz", "has_sig": false, "md5_digest": "ada5da1626c4a8777ffeb709edafcd8f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5238, "upload_time": "2019-02-11T15:54:42", "url": "https://files.pythonhosted.org/packages/07/a1/0a7bd1c6f738669d6b15be13a1c6926fdbefee30c84286619a31b59a49be/pySendCast-0.0.5.tar.gz" } ], "0.0.6": [ { "comment_text": "", "digests": { "md5": "d50ce2a6a50189aea3cefdf5249893eb", "sha256": "50961e9c60626799eb423e7c92b3677926d8abfabacaf7058540ddc8a60b20da" }, "downloads": -1, "filename": "pySendCast-0.0.6-py3-none-any.whl", "has_sig": false, "md5_digest": "d50ce2a6a50189aea3cefdf5249893eb", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 7205, "upload_time": "2019-02-12T23:02:03", "url": "https://files.pythonhosted.org/packages/0e/6b/74d7f2c7c2ab942a5d314cd99648147e939f45b4df09473462aae5aa96c7/pySendCast-0.0.6-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "eb693a50bf49eb94fa48d03f7f94a63e", "sha256": "095f10f2d3c3fd3eaf6b2488e62482d9ad99ec540b39138ef93af27f0031a709" }, "downloads": -1, "filename": "pySendCast-0.0.6.tar.gz", "has_sig": false, "md5_digest": "eb693a50bf49eb94fa48d03f7f94a63e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5229, "upload_time": "2019-02-12T23:02:05", "url": "https://files.pythonhosted.org/packages/07/83/7e96ae2a28ebd13ab8a7730e1bfbbe25c18d76c895aba92b4ce994fb4f62/pySendCast-0.0.6.tar.gz" } ], "0.0.7": [ { "comment_text": "", "digests": { "md5": "d7e3a7b1d5b3a3268c709f995c9bc801", "sha256": "d537566822ef8c993e6a495863a4950852e742a34e98e09a5be3777d0b3acb6a" }, "downloads": -1, "filename": "pySendCast-0.0.7.tar.gz", "has_sig": false, "md5_digest": "d7e3a7b1d5b3a3268c709f995c9bc801", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5394, "upload_time": "2019-06-07T13:26:38", "url": "https://files.pythonhosted.org/packages/a6/61/8d36a24841416ef7c4d1d8c43a8306580f116ebb08536545cdbaa1f43d2c/pySendCast-0.0.7.tar.gz" } ], "0.0.8": [ { "comment_text": "", "digests": { "md5": "3234ce9f9a9d972606c9304e19c47ce5", "sha256": "35f4bc59225ab4769d01df38dd61731485839c04efea49d5523f8f1696857524" }, "downloads": -1, "filename": "pySendCast-0.0.8.tar.gz", "has_sig": false, "md5_digest": "3234ce9f9a9d972606c9304e19c47ce5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5396, "upload_time": "2019-06-11T20:05:23", "url": "https://files.pythonhosted.org/packages/18/8a/cf024b5effa5d63be57d6d7b2c0cd3e2601c649ca1e570785e7d7566b163/pySendCast-0.0.8.tar.gz" } ], "0.0.9": [ { "comment_text": "", "digests": { "md5": "f3ad2c298c44fbcfbb6d3ca6adc60404", "sha256": "644012c0abcd043f98de1df552e96ba18a85763ee6d5a774d5fdda14544d7bdd" }, "downloads": -1, "filename": "pySendCast-0.0.9.tar.gz", "has_sig": false, "md5_digest": "f3ad2c298c44fbcfbb6d3ca6adc60404", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5399, "upload_time": "2019-06-11T21:59:38", "url": "https://files.pythonhosted.org/packages/c2/98/854e34c4dbc9ead61d28c46ecc2f8ca0ce457877296e6b5430fc60761e1b/pySendCast-0.0.9.tar.gz" } ], "0.1.0": [ { "comment_text": "", "digests": { "md5": "70426bd0b0c7f7559627f7d228f1244b", "sha256": "9fec95d9ee731a920beea66ff3f79ab31b107c0241e0f8c2a43d129b409de248" }, "downloads": -1, "filename": "pySendCast-0.1.0.tar.gz", "has_sig": false, "md5_digest": "70426bd0b0c7f7559627f7d228f1244b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5268, "upload_time": "2019-09-08T11:47:48", "url": "https://files.pythonhosted.org/packages/dc/6f/3ae70d9dd4756cd7136119edc493e7334761b986e0a39649fdbe7bee30ae/pySendCast-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "02f8cb532809d33a49ac7e416718e788", "sha256": "c0eff6f617a637072bc6669c3e85a20f41730bd4c131aaef7725ff5aee24fa97" }, "downloads": -1, "filename": "pySendCast-0.1.1.tar.gz", "has_sig": false, "md5_digest": "02f8cb532809d33a49ac7e416718e788", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5284, "upload_time": "2019-09-10T01:57:40", "url": "https://files.pythonhosted.org/packages/80/6b/efee0179ff185f406994d603a5f825ace771f7080ccf54168c908a022126/pySendCast-0.1.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "02f8cb532809d33a49ac7e416718e788", "sha256": "c0eff6f617a637072bc6669c3e85a20f41730bd4c131aaef7725ff5aee24fa97" }, "downloads": -1, "filename": "pySendCast-0.1.1.tar.gz", "has_sig": false, "md5_digest": "02f8cb532809d33a49ac7e416718e788", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5284, "upload_time": "2019-09-10T01:57:40", "url": "https://files.pythonhosted.org/packages/80/6b/efee0179ff185f406994d603a5f825ace771f7080ccf54168c908a022126/pySendCast-0.1.1.tar.gz" } ] }