{ "info": { "author": "Alexander Shpilkin", "author_email": "ashpilkin@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Intended Audience :: End Users/Desktop", "License :: CC0 1.0 Universal (CC0 1.0) Public Domain Dedication", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Topic :: Communications :: Chat", "Topic :: Communications :: File Sharing", "Topic :: Software Development :: Libraries :: Python Modules", "Topic :: Utilities" ], "description": "Hattifnatt watches a directory for changes and creates, updates or\ndeletes files in a Telegram channel accordingly. File digests and\nmessage IDs are persisted in a state file (named ``.hat``), so even\nupdates that occur when the watcher is not running will be pushed\ncorrectly. Note that Telegram will sometimes corrupt the file names on\nupload; this will not break anything, but cannot be fixed by this tool,\neither. Any Telegram chat could theoretically be used---not necessarily\na channel---but the bot API limits deletion of old messages in personal\nchats.\n\nA single command-line tool is provided, ``hat``, that watches the\ncurrent directory, reads the Telegram bot token from the environment\nvariable TOKEN, the Telegram chat ID from the environment variable CHAT,\nand the glob patterns to watch from the command-line arguments (all\nfiles are watched by default). The tool can be stopped by ^C.\n\nAlternatively, the function ``hattifnatt.push(chat, patterns)`` performs\nthe same function programmatically. It accepts ``chat``, a\n``telegram.Chat`` object (obtained from ``telegram.Bot.get_chat``), and\na list of glob patterns. For now it does not support pushing\ndirectories other than the current one.\n\n\n", "description_content_type": "text/x-rst", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/alexshpilkin/hattifnatt", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "hattifnatt", "package_url": "https://pypi.org/project/hattifnatt/", "platform": "", "project_url": "https://pypi.org/project/hattifnatt/", "project_urls": { "Homepage": "https://github.com/alexshpilkin/hattifnatt" }, "release_url": "https://pypi.org/project/hattifnatt/0.2.1/", "requires_dist": [ "pathtools (>=0.1.2)", "python-telegram-bot (<12,>=10.0.2)", "watchdog (>=0.9.0)" ], "requires_python": ">=3.5, <4", "summary": "Push directory to Telegram channel", "version": "0.2.1" }, "last_serial": 5177349, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "18963600f0956c3002a62acb71aca2ec", "sha256": "9ba4f24e1098500072ee5b722b0172d7365d952d56fc9ff619ae7223d783f301" }, "downloads": -1, "filename": "hattifnatt-0.1.0-py3-none-any.whl", "has_sig": true, "md5_digest": "18963600f0956c3002a62acb71aca2ec", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5, <4", "size": 7270, "upload_time": "2019-04-20T21:39:55", "url": "https://files.pythonhosted.org/packages/29/54/3f78dbfb574b590985741f471f7d1cb3e69e1f2ebb18d91b397c0bf991e8/hattifnatt-0.1.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "635e125c2b3c3e893c924143512a5e29", "sha256": "fcf767b99104d17a386ef59f6359fcd234201b70f2534f767059bc737986fba7" }, "downloads": -1, "filename": "hattifnatt-0.1.0.tar.gz", "has_sig": true, "md5_digest": "635e125c2b3c3e893c924143512a5e29", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5, <4", "size": 6884, "upload_time": "2019-04-20T21:39:58", "url": "https://files.pythonhosted.org/packages/d3/8b/51807a3a4b908ab9dd72c75d3a521ce7b16bc677cef6bcbc8aba1af9d318/hattifnatt-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "bb7d623ca36068730ed5ec267a607e9f", "sha256": "a24939431ae74e0c03c6e2ea0ca9afb445bb69587bcac5c6b358def7c7c0d129" }, "downloads": -1, "filename": "hattifnatt-0.1.1-py3-none-any.whl", "has_sig": true, "md5_digest": "bb7d623ca36068730ed5ec267a607e9f", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5, <4", "size": 7370, "upload_time": "2019-04-21T00:06:49", "url": "https://files.pythonhosted.org/packages/ec/45/99fec0f64ca919308eb8612fc02e1c29cc3b77ffb2349358f333244a57f5/hattifnatt-0.1.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "a473faccb9eae8ff5b0eedf2dfdf5aff", "sha256": "ad57b0ec6a1fbc588f011720ad7559ec67ba9212cac75d04a65cc8a166cf6a65" }, "downloads": -1, "filename": "hattifnatt-0.1.1.tar.gz", "has_sig": true, "md5_digest": "a473faccb9eae8ff5b0eedf2dfdf5aff", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5, <4", "size": 7210, "upload_time": "2019-04-21T00:06:51", "url": "https://files.pythonhosted.org/packages/e9/dc/176978f9f5a646800249d9e162ea5f0d3577a502da14030d5c63f66ece09/hattifnatt-0.1.1.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "05d2a723addc809b0357085c6bb2990f", "sha256": "4d2f7090f3dc17afa3bf75c3ac5b7a5de3e842bb87c8b7707488e5ea1527d63b" }, "downloads": -1, "filename": "hattifnatt-0.2.0-py3-none-any.whl", "has_sig": false, "md5_digest": "05d2a723addc809b0357085c6bb2990f", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5, <4", "size": 7405, "upload_time": "2019-04-22T20:35:10", "url": "https://files.pythonhosted.org/packages/b8/6f/4f37ecf45f88e18ba245998bb88bde8b25d502d79649c5a227f55b7a3444/hattifnatt-0.2.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f730150575329ba9db407df73ffb70e3", "sha256": "b840f26000245368b0c4e55ec8f0428477dc22c3e2df2267819511c4a5a6c945" }, "downloads": -1, "filename": "hattifnatt-0.2.0.tar.gz", "has_sig": false, "md5_digest": "f730150575329ba9db407df73ffb70e3", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5, <4", "size": 7341, "upload_time": "2019-04-22T20:35:12", "url": "https://files.pythonhosted.org/packages/72/3c/1492c8720505477b063728472e205b6044bab2b1d4698c59ea5de70f470c/hattifnatt-0.2.0.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "f502d39c3dc500cbc529fecdc898f6b2", "sha256": "630893b084af75e460a90d24b51b3185cf0323b68167415719e41e9729d7b467" }, "downloads": -1, "filename": "hattifnatt-0.2.1-py3-none-any.whl", "has_sig": false, "md5_digest": "f502d39c3dc500cbc529fecdc898f6b2", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5, <4", "size": 7486, "upload_time": "2019-04-23T13:14:07", "url": "https://files.pythonhosted.org/packages/49/76/980faa10787a28d6dfd2b5b3eca18fd1a71c887a3dcb177d90213711eaf6/hattifnatt-0.2.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "e7fcc7d6e9a1f8cd0607b83680c81d50", "sha256": "4f10ff1f1e29590ce4bc25c7bbeecb5778bf4732118294543f0632cdc9139830" }, "downloads": -1, "filename": "hattifnatt-0.2.1.tar.gz", "has_sig": false, "md5_digest": "e7fcc7d6e9a1f8cd0607b83680c81d50", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5, <4", "size": 7491, "upload_time": "2019-04-23T13:14:09", "url": "https://files.pythonhosted.org/packages/ff/1e/e1e9220f9ccff8094a71c866128c834211450ac2bb2fac8ad95df58f4484/hattifnatt-0.2.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "f502d39c3dc500cbc529fecdc898f6b2", "sha256": "630893b084af75e460a90d24b51b3185cf0323b68167415719e41e9729d7b467" }, "downloads": -1, "filename": "hattifnatt-0.2.1-py3-none-any.whl", "has_sig": false, "md5_digest": "f502d39c3dc500cbc529fecdc898f6b2", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5, <4", "size": 7486, "upload_time": "2019-04-23T13:14:07", "url": "https://files.pythonhosted.org/packages/49/76/980faa10787a28d6dfd2b5b3eca18fd1a71c887a3dcb177d90213711eaf6/hattifnatt-0.2.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "e7fcc7d6e9a1f8cd0607b83680c81d50", "sha256": "4f10ff1f1e29590ce4bc25c7bbeecb5778bf4732118294543f0632cdc9139830" }, "downloads": -1, "filename": "hattifnatt-0.2.1.tar.gz", "has_sig": false, "md5_digest": "e7fcc7d6e9a1f8cd0607b83680c81d50", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5, <4", "size": 7491, "upload_time": "2019-04-23T13:14:09", "url": "https://files.pythonhosted.org/packages/ff/1e/e1e9220f9ccff8094a71c866128c834211450ac2bb2fac8ad95df58f4484/hattifnatt-0.2.1.tar.gz" } ] }