{ "info": { "author": "Victor Yap", "author_email": "victor@vicyap.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Natural Language :: English", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6" ], "description": "=========\nsainsmart\n=========\n\n\n.. image:: https://img.shields.io/pypi/v/sainsmart.svg\n :target: https://pypi.python.org/pypi/sainsmart\n :alt: PyPi\n\n.. image:: https://img.shields.io/travis/vicyap/sainsmart.svg\n :target: https://travis-ci.org/vicyap/sainsmart\n :alt: Travis Build\n\n.. image:: https://readthedocs.org/projects/sainsmart/badge/?version=latest\n :target: https://sainsmart.readthedocs.io/\n :alt: Documentation Status\n\n.. image:: https://pyup.io/repos/github/vicyap/sainsmart/shield.svg\n :target: https://pyup.io/repos/github/vicyap/sainsmart/\n :alt: Updates\n\n.. image:: https://coveralls.io/repos/github/vicyap/sainsmart/badge.svg?branch=master\n :target: https://coveralls.io/github/vicyap/sainsmart?branch=master\n :alt: Coverage\n\n.. image:: https://ci.appveyor.com/api/projects/status/q1p33rqk0ewcwm29?svg=true\n :target: https://ci.appveyor.com/project/victor/sainsmart/branch/master\n :alt: Windows Build\n\n\nsainsmart contains code for working with sainsmart products.\n\nInstall\n-------\n\n``pip install sainsmart``\n\nUsage\n-----\nTo use EthernetRelay in a project::\n\n from sainsmart import devices\n\n relay = devices.EthernetRelay()\n\n # Access the state of the relays\n # relay.state() is a list of bools\n relay_state = relay.state()\n\n # Turn on the relay at index 0.\n relay.turn_on(0)\n\n # Turn off the relay at index 0.\n relay.turn_off(0)\n\n # Toggle the state of relay 0.\n relay.toggle(0)\n\n # Turn on all relays.\n relay.all_on()\n\n # Turn off all relays.\n relay.all_off()\n\nThe SainSmart Ethernet Relay defaults ip address: 192.168.1.4/30000.\nThis can be changed through their web interface.\n\nTo use EthernetRelay with a different IP address::\n\n from sainsmart import devices\n\n relay = devices.EthernetRelay('http://192.168.44.100/30000')\n\n\nExample\n-------\nHere is an example with a real device::\n\n >>> from sainsmart import devices\n >>> relay = devices.EthernetRelay()\n >>> relay.state()\n [False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False]\n >>> relay.turn_on(0)\n >>> relay.state()\n [True, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False]\n >>> relay.toggle(0)\n >>> relay.state()\n [False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False]\n >>> relay.all_on()\n >>> relay.state()\n [True, True, True, True, True, True, True, True, True, True, True, True, True, True, True, True]\n >>> relay.turn_off(0)\n >>> relay.state()\n [False, True, True, True, True, True, True, True, True, True, True, True, True, True, True, True]\n >>> relay.all_off()\n >>> relay.state()\n [False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False] \n\n\n* Free software: MIT license\n* Documentation: https://sainsmart.readthedocs.io.\n\n\nCredits\n---------\n\nThis package was created with Cookiecutter_ and the `audreyr/cookiecutter-pypackage`_ project template.\n\n.. _Cookiecutter: https://github.com/audreyr/cookiecutter\n.. _`audreyr/cookiecutter-pypackage`: https://github.com/audreyr/cookiecutter-pypackage\n\n\n\n=======\nHistory\n=======\n\n0.3.0 (2017-06-14)\n------------------\n* add python 3.4 support\n\n0.2.1 (2017-06-14)\n------------------\n* add install section to README\n* fix coverage badge in README\n\n0.2.0 (2017-06-14)\n------------------\n* python2.7 support\n* renamed sainsmart.py to devices.py\n\n0.1.1 (2017-06-12)\n------------------\n* Update usage and docs\n\n0.1.0 (2017-06-12)\n-------------------\n* First release on PyPI.", "description_content_type": null, "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/vicyap/sainsmart", "keywords": "sainsmart", "license": "MIT license", "maintainer": "", "maintainer_email": "", "name": "sainsmart", "package_url": "https://pypi.org/project/sainsmart/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/sainsmart/", "project_urls": { "Homepage": "https://github.com/vicyap/sainsmart" }, "release_url": "https://pypi.org/project/sainsmart/0.3.1/", "requires_dist": [ "requests (==2.18.0)", "typing (==3.6.1)" ], "requires_python": "", "summary": "sainsmart contains code for working with sainsmart products.", "version": "0.3.1" }, "last_serial": 2963564, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "e9f994bb3af1581a5b0b9fd9befd36b8", "sha256": "1427ee17b5d950fbfd97fd4b531de815b2fbfc5f3bd9fb9b28a734d3847dc221" }, "downloads": -1, "filename": "sainsmart-0.1.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "e9f994bb3af1581a5b0b9fd9befd36b8", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 5249, "upload_time": "2017-06-13T13:39:29", "url": "https://files.pythonhosted.org/packages/89/e3/ce4d8bd20b14c181895150acd291092f08e29166e062ff6e5b41da2f18f3/sainsmart-0.1.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "6e75a8c4dc75a80591bbaa2549fececf", "sha256": "185185c86ff8e5357a15a09c9093bb266b6c1a940b1ae96e745db63b8ac84b2a" }, "downloads": -1, "filename": "sainsmart-0.1.0.tar.gz", "has_sig": false, "md5_digest": "6e75a8c4dc75a80591bbaa2549fececf", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 20212, "upload_time": "2017-06-13T13:39:31", "url": "https://files.pythonhosted.org/packages/72/d0/caf975444c016819edc587f48161f7bff815365ccd558dcba3daccb88bfe/sainsmart-0.1.0.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "44c06f0d724c2a4b11a98aeb53870c7c", "sha256": "79fdbf9ab1068fdf484f84681d698bdcc674eec88efb6b20563d0c140b971192" }, "downloads": -1, "filename": "sainsmart-0.1.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "44c06f0d724c2a4b11a98aeb53870c7c", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 5521, "upload_time": "2017-06-13T14:22:30", "url": "https://files.pythonhosted.org/packages/8c/31/b7a181b8864b8e5eb779e1d434814d89461e6ba16782ee07d6f13bcb72ce/sainsmart-0.1.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "ddad40b71a356e4cb5232f09d4c6915c", "sha256": "70e2f9c1fbd3b91d60dd50f8f647317d569ce1f8a29324f5b1f1b60ff9415170" }, "downloads": -1, "filename": "sainsmart-0.1.2.tar.gz", "has_sig": false, "md5_digest": "ddad40b71a356e4cb5232f09d4c6915c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 21157, "upload_time": "2017-06-13T14:22:32", "url": "https://files.pythonhosted.org/packages/8f/b3/a0a2aac2129948c61ea1df67c05cbcdc2a4b3e03233017ff2a2498341b32/sainsmart-0.1.2.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "2291a41310898507c2b94287c6544bd8", "sha256": "9f805a97f6fc05cefcff8baff03d345c5857915820b749ab3409ac1d618cff3b" }, "downloads": -1, "filename": "sainsmart-0.2.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "2291a41310898507c2b94287c6544bd8", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 5810, "upload_time": "2017-06-14T18:21:19", "url": "https://files.pythonhosted.org/packages/77/db/30fe3dadd673b85cdca72c7b2f15dbcf9215697d18b1d2b4ed204e82cc45/sainsmart-0.2.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f53ca2076e40226efc40f5f0c1e7cd29", "sha256": "be64e07aa97d906c74b334dac8babaf1ba0aa5571638028378a6bbe11b7dbf88" }, "downloads": -1, "filename": "sainsmart-0.2.0.tar.gz", "has_sig": false, "md5_digest": "f53ca2076e40226efc40f5f0c1e7cd29", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 21497, "upload_time": "2017-06-14T18:21:21", "url": "https://files.pythonhosted.org/packages/93/7d/f40242e6c1c780fd323649dcb09f1d57d24aede02851330beb73bb60bcda/sainsmart-0.2.0.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "0237399f65c65886be5c15d3dcdd3cc9", "sha256": "18af9cdc6dc8f65076c7cdf2badb9c82cca5821612c6a9525552b34e759151a8" }, "downloads": -1, "filename": "sainsmart-0.2.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "0237399f65c65886be5c15d3dcdd3cc9", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 5919, "upload_time": "2017-06-14T18:42:56", "url": "https://files.pythonhosted.org/packages/83/f0/8638b3c7cc83f7b344b21370366c787f8f04a3c0f7e2e3b2caffe3b368e0/sainsmart-0.2.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "e3c504dfd8e90a4562da018b5eb8399d", "sha256": "e8939ee29ffddcd47158adf8a5b1ecab27fa5f7738c32efb52303ca0d5a2888a" }, "downloads": -1, "filename": "sainsmart-0.2.1.tar.gz", "has_sig": false, "md5_digest": "e3c504dfd8e90a4562da018b5eb8399d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14732, "upload_time": "2017-06-14T18:42:57", "url": "https://files.pythonhosted.org/packages/dc/3d/407dc5343f02909ce687b86820c146d3d2b67efbbc9cc672cce570812ef7/sainsmart-0.2.1.tar.gz" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "d2ae4d1fdfb7884d81e7aacca0d566a2", "sha256": "5be4d19c80ba62b4b72cb18010966bc01a687a608cd0897b0d4850adb9ac6501" }, "downloads": -1, "filename": "sainsmart-0.3.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "d2ae4d1fdfb7884d81e7aacca0d566a2", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 5949, "upload_time": "2017-06-14T18:38:56", "url": "https://files.pythonhosted.org/packages/4f/dd/13b4e8fa63e47e2195cdd12577e2fd6f5ef17419d0ed99bf31267a5ec4f5/sainsmart-0.3.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "bc5e1e5273fe6cfc1fdcd3b36488db4a", "sha256": "3ac11c3d64e1102241b0378e113a484e01f353f123d64a266d9b51fe073d51bf" }, "downloads": -1, "filename": "sainsmart-0.3.0.tar.gz", "has_sig": false, "md5_digest": "bc5e1e5273fe6cfc1fdcd3b36488db4a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 21636, "upload_time": "2017-06-14T18:38:57", "url": "https://files.pythonhosted.org/packages/56/75/a534f700399b2cbe0e4d55f503ca4608a686a8eee94b4820c1d7637e866c/sainsmart-0.3.0.tar.gz" } ], "0.3.1": [ { "comment_text": "", "digests": { "md5": "a204a6e149b10b664609df9f7d584236", "sha256": "d91c21fc16bff4431d6ef0da119eea0adb536c1c8b9cf9300e115c2413a38d29" }, "downloads": -1, "filename": "sainsmart-0.3.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "a204a6e149b10b664609df9f7d584236", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 5998, "upload_time": "2017-06-21T00:19:59", "url": "https://files.pythonhosted.org/packages/35/72/ef04deb04c60b9ff1c8f221d4de0951b4a61870c59c5e32490e19e6acf60/sainsmart-0.3.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "b2aecf77ef4b9dccb66d45afca920853", "sha256": "11fe83dc07f1a4dee3963ad4f9e3fd762279d9686991cb74665c3f0768913d49" }, "downloads": -1, "filename": "sainsmart-0.3.1.tar.gz", "has_sig": false, "md5_digest": "b2aecf77ef4b9dccb66d45afca920853", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14899, "upload_time": "2017-06-21T00:20:01", "url": "https://files.pythonhosted.org/packages/a7/71/41011538adf851ebdb8e8cbcc53fd84f05ea9a502733936776c735a386c7/sainsmart-0.3.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "a204a6e149b10b664609df9f7d584236", "sha256": "d91c21fc16bff4431d6ef0da119eea0adb536c1c8b9cf9300e115c2413a38d29" }, "downloads": -1, "filename": "sainsmart-0.3.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "a204a6e149b10b664609df9f7d584236", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 5998, "upload_time": "2017-06-21T00:19:59", "url": "https://files.pythonhosted.org/packages/35/72/ef04deb04c60b9ff1c8f221d4de0951b4a61870c59c5e32490e19e6acf60/sainsmart-0.3.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "b2aecf77ef4b9dccb66d45afca920853", "sha256": "11fe83dc07f1a4dee3963ad4f9e3fd762279d9686991cb74665c3f0768913d49" }, "downloads": -1, "filename": "sainsmart-0.3.1.tar.gz", "has_sig": false, "md5_digest": "b2aecf77ef4b9dccb66d45afca920853", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14899, "upload_time": "2017-06-21T00:20:01", "url": "https://files.pythonhosted.org/packages/a7/71/41011538adf851ebdb8e8cbcc53fd84f05ea9a502733936776c735a386c7/sainsmart-0.3.1.tar.gz" } ] }