{ "info": { "author": "nielstron", "author_email": "n.muendler@web.de", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Topic :: Software Development :: Object Brokering" ], "description": "# PySyncThru - a very basic python SyncThru bridge\n[![Build Status](https://travis-ci.com/nielstron/pysyncthru.svg?branch=master)](https://travis-ci.com/nielstron/pysyncthru)\n[![Coverage Status](https://coveralls.io/repos/github/nielstron/pysyncthru/badge.svg?branch=master)](https://coveralls.io/github/nielstron/pysyncthru?branch=master)\n[![Python Versions](https://img.shields.io/pypi/pyversions/pysyncthru.svg)](https://pypi.org/project/PySyncThru/)\n\nA package that connects to a Samsung printer in the local network that\nmakes use of the SyncThru web service and provides data\nthat is provided via the JSON API of the device.\nIt is able to read the system, toner and tray status and provides method \nwrappers to access them.\n\nThe package supports the following data provided by the printers:\n\n- Device / System status\n- Drum / Toner status\n- Model name\n- Tray status\n\nSadly it seems like there is no official API, so fixes are welcome and likely \nneeded!\n\nIf your printer's language is not English, the functions might not work.\n\n## Usage\n\n```python\nimport aiohttp\nimport asyncio\nfrom pysyncthru import SyncThru\n\nIP_PRINTER = '192.168.0.25'\n\nasync def main():\n async with aiohttp.ClientSession() as session:\n printer = SyncThru(IP_PRINTER, session)\n await printer.update()\n\n # Is printer online?\n print(\"Printer online?:\", printer.is_online())\n # Show the printer status\n print(\"Printer status:\", printer.device_status())\n if printer.is_online():\n # Show details about the printer\n print(\"Printer model:\", printer.model())\n # Get the details of a cartridge\n print(\"Toner Cyan details:\", printer.toner_status()['cyan'])\n # Get the details about a tray\n print(\"Tray 1 Capacity:\", printer.input_tray_status()[1]['capa'])\n # Print all available details from the printer\n print(\"All data:\\n\", printer.raw())\n \nloop = asyncio.get_event_loop()\nloop.run_until_complete(main())\n```\n\n## Troubleshooting\n\nIf the general state of your printer stays at 'Unknown',\nit might be the case that the language of your printer is not supported.\n\nEven though officially your language is supported it might be that\nsome states are not exactly matching the expected states stored in the library.\nFor this case, have a look at the language support issue template for a detailed how-to on adding support for your printer\nor open a general issue.\n\nCurrent supported languages are: English", "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/nielstron/pysyncthru/", "keywords": "python syncthru json api samsung printer", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "PySyncThru", "package_url": "https://pypi.org/project/PySyncThru/", "platform": "", "project_url": "https://pypi.org/project/PySyncThru/", "project_urls": { "Homepage": "https://github.com/nielstron/pysyncthru/" }, "release_url": "https://pypi.org/project/PySyncThru/0.5.0/", "requires_dist": null, "requires_python": ">=3", "summary": "Automated JSON API based communication with Samsung SyncThru Web Service", "version": "0.5.0" }, "last_serial": 5829664, "releases": { "0.1": [ { "comment_text": "", "digests": { "md5": "6051980ac00eed32fd4660bfa1ebcbef", "sha256": "eab211b226a19d01c3ad1e3ca70f954f7a4a819825b364ce9552f3c23648d844" }, "downloads": -1, "filename": "PySyncThru-0.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "6051980ac00eed32fd4660bfa1ebcbef", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 4774, "upload_time": "2018-02-15T23:00:38", "url": "https://files.pythonhosted.org/packages/9f/d2/6d2ca0ce33913d6a5f608d6c4ec36cc5b2f3b7ad26594bcdad4e5d2e0819/PySyncThru-0.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "1fa8763bd9b61fb85559dccc3cb58c30", "sha256": "1f01c2d0b2e99f05cd3682ec3cf0349a1f1cab4c574058a658dae17a06df21c6" }, "downloads": -1, "filename": "PySyncThru-0.1.tar.gz", "has_sig": false, "md5_digest": "1fa8763bd9b61fb85559dccc3cb58c30", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3330, "upload_time": "2018-02-15T23:00:40", "url": "https://files.pythonhosted.org/packages/77/06/b6c1a3d625cb4371c623cce8bf5c00ff3cd1c1a7a949cc218f2770d5cc24/PySyncThru-0.1.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "fce0ac56569a714e4594068a223d4861", "sha256": "704db28149df4d50244972da77b0cee8c90165fadbb9bbb340d8803ac51e3fc0" }, "downloads": -1, "filename": "PySyncThru-0.1.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "fce0ac56569a714e4594068a223d4861", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 4848, "upload_time": "2018-02-16T10:36:31", "url": "https://files.pythonhosted.org/packages/65/7f/92c8ad662d8e65d7a6e0ffc9a2d05ea0df9a69d9232b79ae525a2b45e410/PySyncThru-0.1.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "616c18a06370697d5b00871077bdd527", "sha256": "1a92418012599593b7606d306bcf23ddda732300623f3c34e4f64571f4d30001" }, "downloads": -1, "filename": "PySyncThru-0.1.1.tar.gz", "has_sig": false, "md5_digest": "616c18a06370697d5b00871077bdd527", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3463, "upload_time": "2018-02-16T10:36:34", "url": "https://files.pythonhosted.org/packages/4c/05/87dfc2155a412c17fec2ee781a54b127442e0816a62b56c2b2a29bf75692/PySyncThru-0.1.1.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "2a5d1cdb9e03dfd796c069731d660a38", "sha256": "11d6218dfb3877f11f2e1363189cfd2081f6d68e99dcdc9a1338cfaedec4e53c" }, "downloads": -1, "filename": "PySyncThru-0.1.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "2a5d1cdb9e03dfd796c069731d660a38", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 4873, "upload_time": "2018-02-16T11:38:10", "url": "https://files.pythonhosted.org/packages/d6/24/953c24c1d18a31b54164a7b2ec0c763fa516812928117942125b1bb9285e/PySyncThru-0.1.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "2967e54b58b6f6be6a0960a8f5aa8dd7", "sha256": "e7f4d49009aefd11694d8554bee4e11d43e766234b20365b280938c906adc6b9" }, "downloads": -1, "filename": "PySyncThru-0.1.2.tar.gz", "has_sig": false, "md5_digest": "2967e54b58b6f6be6a0960a8f5aa8dd7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3496, "upload_time": "2018-02-16T11:38:12", "url": "https://files.pythonhosted.org/packages/1d/c0/7976babaa4c61d1497f6eb961276f79d2a6bae849482ac7134557455b618/PySyncThru-0.1.2.tar.gz" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "d7f2e3f4b1436033e567cd67a7de032b", "sha256": "2da8f0de9592f4dffca9d8a81d67ae89d659c6b5f5bacf6224e551e55170f467" }, "downloads": -1, "filename": "PySyncThru-0.1.3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "d7f2e3f4b1436033e567cd67a7de032b", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 4908, "upload_time": "2018-02-17T11:05:22", "url": "https://files.pythonhosted.org/packages/c6/e0/0c3cb665aa524b514952674ac79dcf8bbc08566d9b1c29846cbe718a5fb9/PySyncThru-0.1.3-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "b2947e3b861fc3ecb6fa8da49ce8e54d", "sha256": "575fed204f71c2fbb8490a480b04e733a7b504d4cf72907755e4d3ea5769ab72" }, "downloads": -1, "filename": "PySyncThru-0.1.3.tar.gz", "has_sig": false, "md5_digest": "b2947e3b861fc3ecb6fa8da49ce8e54d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3527, "upload_time": "2018-02-17T11:05:28", "url": "https://files.pythonhosted.org/packages/f4/e5/16fdf25b5589b3e0c813fd4d04a3060ca77ac48728966129e613a955cc8c/PySyncThru-0.1.3.tar.gz" } ], "0.2": [ { "comment_text": "", "digests": { "md5": "53c0b12783516fcfeb9337fbcc2eb2d1", "sha256": "08244336581b56bfec5e68a9bb5f2df5e1ece2f401295e63f2e9b0a23a1b6164" }, "downloads": -1, "filename": "PySyncThru-0.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "53c0b12783516fcfeb9337fbcc2eb2d1", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 2967, "upload_time": "2018-02-19T14:39:06", "url": "https://files.pythonhosted.org/packages/fd/2f/ed4c010fe69986f34a563683edb515a012d9a24a04984d8db00375e0c19e/PySyncThru-0.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "612bd563b8b889aa826203c41cbfe434", "sha256": "e0ac5640d98a72eedae4c8caaaf4d8a2b0cb83d551e7c1437f702b49be47003b" }, "downloads": -1, "filename": "PySyncThru-0.2.tar.gz", "has_sig": false, "md5_digest": "612bd563b8b889aa826203c41cbfe434", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1247, "upload_time": "2018-02-19T14:39:08", "url": "https://files.pythonhosted.org/packages/d9/be/36ea2c27fe22ffdb0ab9850a587d4a72c2d300f32d30bb7b35fbc8a89c07/PySyncThru-0.2.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "38ad44daf25dbc1e0637155b09210dcb", "sha256": "826e04f0d21da393ef68d77ea9073e9b14f062ff9f0e1031c2b68e47c846fc9a" }, "downloads": -1, "filename": "PySyncThru-0.2.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "38ad44daf25dbc1e0637155b09210dcb", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 4916, "upload_time": "2018-02-19T14:40:53", "url": "https://files.pythonhosted.org/packages/63/62/a4159e576a6acf064f6c45cd40e1fcb841a261bacb7603849fc5ad5041ed/PySyncThru-0.2.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "49e33cb322ba7e9ab80e73459e910ca3", "sha256": "856872a4760a1249f3bba720b043461c6323371d9192a2470aeaa45a98dec311" }, "downloads": -1, "filename": "PySyncThru-0.2.1.tar.gz", "has_sig": false, "md5_digest": "49e33cb322ba7e9ab80e73459e910ca3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3539, "upload_time": "2018-02-19T14:40:54", "url": "https://files.pythonhosted.org/packages/3e/64/5ded8cb7d6b8eeb8123174eff3bf5b30a16cb5be79a326e2caa3b88407c3/PySyncThru-0.2.1.tar.gz" } ], "0.2.2": [ { "comment_text": "", "digests": { "md5": "94b63bbc43c81a4e6f887344bb9208eb", "sha256": "42ab6f9504c61eda5e12f1196dc70f165531bc4108eddde0befa84489c452d07" }, "downloads": -1, "filename": "PySyncThru-0.2.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "94b63bbc43c81a4e6f887344bb9208eb", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 4917, "upload_time": "2018-02-19T14:48:15", "url": "https://files.pythonhosted.org/packages/9f/13/745accc17b94cd65773419e439264671ebf34b55ac8b882b9ae0bf61a97d/PySyncThru-0.2.2-py2.py3-none-any.whl" } ], "0.3": [ { "comment_text": "", "digests": { "md5": "628c84c83361cbc83ecc5fef966e271e", "sha256": "f446bdc4923442ae5f0fe7be0435c43f7e634401c04ca6f3bd22f1a75770027c" }, "downloads": -1, "filename": "PySyncThru-0.3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "628c84c83361cbc83ecc5fef966e271e", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 4903, "upload_time": "2018-03-14T14:47:56", "url": "https://files.pythonhosted.org/packages/25/5d/6436801938747c174970da3f8ecec73cd4b886845ba056637e1e2da0382f/PySyncThru-0.3-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "27586b70fe2e84b2e930191cae1783da", "sha256": "3d57b4bdb0afe461d65b8a8221ebb8adc2d17179726cf68980f5e020d722e72c" }, "downloads": -1, "filename": "PySyncThru-0.3.tar.gz", "has_sig": false, "md5_digest": "27586b70fe2e84b2e930191cae1783da", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3524, "upload_time": "2018-03-14T14:47:58", "url": "https://files.pythonhosted.org/packages/75/57/0167f8ff2bba344dbe1c60546744876e385e83a29600cf1a0169004aad5a/PySyncThru-0.3.tar.gz" } ], "0.3.0.1": [ { "comment_text": "", "digests": { "md5": "9abd90f1e179c6a2ef7c01dba041b18f", "sha256": "fda9513cdac0081f0ce6d6598ce5e6b74080eb264a6622f8f47019079725a1d4" }, "downloads": -1, "filename": "PySyncThru-0.3.0.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "9abd90f1e179c6a2ef7c01dba041b18f", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 4947, "upload_time": "2018-03-14T14:54:18", "url": "https://files.pythonhosted.org/packages/20/0e/1df491dd2043441578ad7856920b16cbcc3b974f70d79749c37497657963/PySyncThru-0.3.0.1-py2.py3-none-any.whl" } ], "0.3.1": [ { "comment_text": "", "digests": { "md5": "46daa2163a404a821a0b954cded27de3", "sha256": "8fc20131f2932dd1851fb486275f151613d3a58c8c093d315f50231b2935c7b2" }, "downloads": -1, "filename": "PySyncThru-0.3.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "46daa2163a404a821a0b954cded27de3", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 4694, "upload_time": "2018-03-17T14:54:02", "url": "https://files.pythonhosted.org/packages/03/e4/a52a4062857a6257f3302eee86889607a46ea4ab65ce93df79c1ad5ca187/PySyncThru-0.3.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "7eeab49c272e9d7266487efe588bed1a", "sha256": "24c18e901bdcafdf3d443c47d772fc7e295ed03a4ee53bc0f3dad89e071e0975" }, "downloads": -1, "filename": "PySyncThru-0.3.1.tar.gz", "has_sig": false, "md5_digest": "7eeab49c272e9d7266487efe588bed1a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3136, "upload_time": "2018-03-17T14:55:19", "url": "https://files.pythonhosted.org/packages/81/d9/df56881c6327d919ea80843669ade305badaa6b6edf4976541cdd34ebb37/PySyncThru-0.3.1.tar.gz" } ], "0.4": [ { "comment_text": "", "digests": { "md5": "84fb73a006c55f7a5366aa18609814cc", "sha256": "338bff3a577a49f968704898583a6aa7471f41e1811f692cde996d172f3441de" }, "downloads": -1, "filename": "PySyncThru-0.4-py3-none-any.whl", "has_sig": false, "md5_digest": "84fb73a006c55f7a5366aa18609814cc", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3", "size": 11266, "upload_time": "2019-01-12T14:57:15", "url": "https://files.pythonhosted.org/packages/45/ac/e77f00aa0aed48bc73bdb0a72a3c663c75553b31e68dcc116a93d2612121/PySyncThru-0.4-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "414bad3476892936215cf9aedb4c2b29", "sha256": "87768de144674abcb7115d60c879217c9d5327a90da39256cd8f46d5cacc7649" }, "downloads": -1, "filename": "PySyncThru-0.4.tar.gz", "has_sig": false, "md5_digest": "414bad3476892936215cf9aedb4c2b29", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3", "size": 8324, "upload_time": "2019-01-12T14:57:18", "url": "https://files.pythonhosted.org/packages/08/c3/674000782b692e5d1f7c77c0aaa2a5b452cfbfd40b1a9e44b31044bfe405/PySyncThru-0.4.tar.gz" } ], "0.4.1": [ { "comment_text": "", "digests": { "md5": "d8a3281514310ccc617ae603afb86d08", "sha256": "ae195221279e323a366ca8a2373459d1911a5508e5a947bebbc8622527e521ab" }, "downloads": -1, "filename": "PySyncThru-0.4.1-py3-none-any.whl", "has_sig": false, "md5_digest": "d8a3281514310ccc617ae603afb86d08", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3", "size": 11238, "upload_time": "2019-02-27T09:34:19", "url": "https://files.pythonhosted.org/packages/fe/d2/d7612ca489a19c80644c2dbab987a08762f303c92af2eb75f11ff8083c92/PySyncThru-0.4.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "207e070d783005b9e99b62217e460481", "sha256": "6df206c4c0a09a5c75a79581d6215cc9a68ef035a9217a8e7e1d22788eb3408f" }, "downloads": -1, "filename": "PySyncThru-0.4.1.tar.gz", "has_sig": false, "md5_digest": "207e070d783005b9e99b62217e460481", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3", "size": 8414, "upload_time": "2019-02-27T09:34:21", "url": "https://files.pythonhosted.org/packages/54/ca/eec2e9d30cd094f89b8e36c2000f6fbb734e3912d4916d7c70388f533a31/PySyncThru-0.4.1.tar.gz" } ], "0.4.2": [ { "comment_text": "", "digests": { "md5": "7a4c6d37018500af3ba7f101f1ee4ca1", "sha256": "777059313c48ee8279e354b5054603b7b767864a7d30a80e26ebd5e82e370515" }, "downloads": -1, "filename": "PySyncThru-0.4.2.tar.gz", "has_sig": false, "md5_digest": "7a4c6d37018500af3ba7f101f1ee4ca1", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3", "size": 8356, "upload_time": "2019-03-04T12:19:43", "url": "https://files.pythonhosted.org/packages/fd/81/452fbf9701b4b3a19357437138ab57b71a3a322883c729ca5551f78ba257/PySyncThru-0.4.2.tar.gz" } ], "0.4.3": [ { "comment_text": "", "digests": { "md5": "0b52b689cb372a0118b16d48e096ac77", "sha256": "6f8f32749f844aa3c44ecaa3a9cab7f7539eb7b9c67a6b826e49737004491e29" }, "downloads": -1, "filename": "PySyncThru-0.4.3.tar.gz", "has_sig": false, "md5_digest": "0b52b689cb372a0118b16d48e096ac77", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3", "size": 8440, "upload_time": "2019-08-13T15:09:00", "url": "https://files.pythonhosted.org/packages/66/8a/ef526e4987386d76e51a9d75ec2bf3271844e8b319401380c4bfb59c55fa/PySyncThru-0.4.3.tar.gz" } ], "0.4.4": [ { "comment_text": "", "digests": { "md5": "dfa1201f690c7742b3f84ca3e2f8acca", "sha256": "c50b21581882dd42bc39fd12d335c2f3456d1ec0a40f231c0e6ecea74618cc88" }, "downloads": -1, "filename": "PySyncThru-0.4.4.tar.gz", "has_sig": false, "md5_digest": "dfa1201f690c7742b3f84ca3e2f8acca", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3", "size": 9141, "upload_time": "2019-08-14T03:48:21", "url": "https://files.pythonhosted.org/packages/2a/fe/09f0d640b8b6ca617d2d1dc0401eea0b080c5e285ccc8f42823b5992bf0a/PySyncThru-0.4.4.tar.gz" } ], "0.5.0": [ { "comment_text": "", "digests": { "md5": "c32146d49cd38fa9a5c425c6503dd4e6", "sha256": "8fe53152a9f8135489d9ec2989f3e1256784db8c277d40c89be7579569f1b2b1" }, "downloads": -1, "filename": "PySyncThru-0.5.0.tar.gz", "has_sig": false, "md5_digest": "c32146d49cd38fa9a5c425c6503dd4e6", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3", "size": 10052, "upload_time": "2019-09-14T16:31:51", "url": "https://files.pythonhosted.org/packages/9a/41/7a41bcbe173fa55ec406317a843ae74907cc01106c7a0bf79ee493c0613c/PySyncThru-0.5.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "c32146d49cd38fa9a5c425c6503dd4e6", "sha256": "8fe53152a9f8135489d9ec2989f3e1256784db8c277d40c89be7579569f1b2b1" }, "downloads": -1, "filename": "PySyncThru-0.5.0.tar.gz", "has_sig": false, "md5_digest": "c32146d49cd38fa9a5c425c6503dd4e6", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3", "size": 10052, "upload_time": "2019-09-14T16:31:51", "url": "https://files.pythonhosted.org/packages/9a/41/7a41bcbe173fa55ec406317a843ae74907cc01106c7a0bf79ee493c0613c/PySyncThru-0.5.0.tar.gz" } ] }