{ "info": { "author": "Carl Seelye", "author_email": "cseelye@gmail.com", "bugtrack_url": null, "classifiers": [], "description": "==========\npykevoplus\n==========\n\nPython module for controlling Kwikset Kevo locks\n\nKwikset does not provide an official API for their Kevo locks; I reverse\nengineered this module from the mykevo.com web app.\n\nTo use this module you will need to have a `Kevo Plus`_ installed and a\nregistered account on `mykevo.com`_. You will need your mykevo.com\ncredentials to use this module.\n\nThis module is published to `pypi`_ so you can install it simply via ``pip install pykevoplus``\n\nUsage\n=====\n\nThe ``Kevo.GetLocks()`` function will attempt to scrape the mykevo.com web\nsite to find your locks; as of this writing it can find all of your\nlocks, but scraping the HTML might break at any time if Kwikset changes\nthe website.\n\n.. code:: python\n\n from pykevoplus import Kevo\n locks = Kevo.GetLocks(\"username@email.com\", \"password123\")\n for lock in locks:\n print repr(lock)\n\nOutput::\n\n KevoLock(name=Front Door, id=cca7cd1d-c1d5-43ce-a087-c73b974b3529, state=Locked)\n KevoLock(name=Back Door, id=c60130cd-8139-4688-8ba3-199276a65ad6, state=Locked)\n\nA better way is to explicitly instantiate a ``KevoLock`` object using the\nUUID of the lock. You can get the lock IDs manually by logging into\nmykevo.com, click Details for the lock, click Settings, the lock ID is\non the right.\n\n.. code:: python\n\n from pykevoplus import KevoLock\n lock = KevoLock.FromLockID(\"cca7cd1d-c1d5-43ce-a087-c73b974b3529\", \"username@email.com\", \"password123\")\n\nLocking and Unlocking\n'''''''''''''''''''''\n\n.. code:: python\n\n from pykevoplus import KevoLock\n lock = KevoLock.FromLockID(lock_id, username, password)\n lock.Unlock()\n print lock.GetBoltState()\n lock.Lock()\n print lock.GetBoltState()\n\nOutput::\n\n Unlocked\n Locked\n\nMultiple operations in the same session\n'''''''''''''''''''''''''''''''''''''''\n\nThe ``KevoLockSession`` context manager allows you to perform multiple\noperations on a lock with a single auth session\n\n.. code:: python\n\n from pykevoplus import KevoLock, KevoLockSession\n lock = KevoLock.FromLockID(lock_id, username, password)\n with KevoLockSession(lock):\n lock.Unlock()\n lock.Lock()\n\nKnown Issues\n============\n\n* Error handling is extremely basic and needs much more work. Communication errors as well as lock bolt errors need to be addressed\n* No unit tests yet\n* Currently only python 2.7 support\n\n\n\n.. _Kevo Plus: http://www.kwikset.com/kevo/plus\n.. _mykevo.com: mykevo.com\n.. _pypi: https://pypi.python.org/pypi/pykevoplus", "description_content_type": null, "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/cseelye/pykevoplus", "keywords": "kevo kwikset", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "pykevoplus", "package_url": "https://pypi.org/project/pykevoplus/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/pykevoplus/", "project_urls": { "Homepage": "https://github.com/cseelye/pykevoplus" }, "release_url": "https://pypi.org/project/pykevoplus/1.0.1/", "requires_dist": [ "beautifulsoup4", "requests" ], "requires_python": "", "summary": "Control Kwikset Kevo locks", "version": "1.0.1" }, "last_serial": 2560020, "releases": { "1.0": [ { "comment_text": "", "digests": { "md5": "228b65d41b93d6b0fa8444dbbb4e7cfd", "sha256": "bad371d42ac9483f413381e4811e846280b9d18d105a4d81cd8b4ac550286d8e" }, "downloads": -1, "filename": "pykevoplus-1.0-py2.7.egg", "has_sig": false, "md5_digest": "228b65d41b93d6b0fa8444dbbb4e7cfd", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 9104, "upload_time": "2017-01-07T18:03:10", "url": "https://files.pythonhosted.org/packages/89/c0/8b3050ffbea03e99e57197b7aaeb0bce43a186e3a9f6f84ea19988225352/pykevoplus-1.0-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "5483f69677a6f5427234d6816631b365", "sha256": "1b258741cf68e03c6d5fa71d41c4e6c7ba12e11144959b3f9679a8297ce26f19" }, "downloads": -1, "filename": "pykevoplus-1.0-py2-none-any.whl", "has_sig": false, "md5_digest": "5483f69677a6f5427234d6816631b365", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 6828, "upload_time": "2017-01-07T18:03:03", "url": "https://files.pythonhosted.org/packages/79/b0/18ff8a1f02d627bc9c3a52ab70a1bd17e35093fbc2c72cf43891f8f80595/pykevoplus-1.0-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "fc42e24f4f0a4b07f05ce61b59651c71", "sha256": "32da7c78b161256644e3127b8975a852e0e0ac068ebfe4101d6e03060d342a85" }, "downloads": -1, "filename": "pykevoplus-1.0.tar.gz", "has_sig": false, "md5_digest": "fc42e24f4f0a4b07f05ce61b59651c71", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3573, "upload_time": "2016-12-02T02:03:43", "url": "https://files.pythonhosted.org/packages/85/be/a32add69ec537f600009e3dee6cee98dbd728c0d9b165da867651c7c2e5d/pykevoplus-1.0.tar.gz" } ], "1.0.1": [ { "comment_text": "", "digests": { "md5": "bb617c34706580673abdb1e8de11f939", "sha256": "7ec9bad3df4a7b0b39e9d565ab40abe957f385b0babdb69b99e050cbddeddb37" }, "downloads": -1, "filename": "pykevoplus-1.0.1-py2.7.egg", "has_sig": false, "md5_digest": "bb617c34706580673abdb1e8de11f939", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 9111, "upload_time": "2017-01-08T00:40:14", "url": "https://files.pythonhosted.org/packages/c8/da/86cbfb883c891040439e036edf0d0a9e146ac0dbf790755f8e6680bcda85/pykevoplus-1.0.1-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "09025cad372e97f0d837823792c7cccb", "sha256": "496e0812fe751b71248a79854da12f4006f27cbbd6e5bc66040db15d339950dd" }, "downloads": -1, "filename": "pykevoplus-1.0.1-py2-none-any.whl", "has_sig": false, "md5_digest": "09025cad372e97f0d837823792c7cccb", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 6856, "upload_time": "2017-01-08T00:40:12", "url": "https://files.pythonhosted.org/packages/f7/6c/c532a2ec40693b96bd80cbed9ccce88f1a5b7acd1a5815720796d7a71403/pykevoplus-1.0.1-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "e5d5d18b2ad96489f162970b404478cb", "sha256": "ec847a92d0a3b89e4b32475915fd7b85f66b27fa22a8779d91913e7c8d2f3397" }, "downloads": -1, "filename": "pykevoplus-1.0.1.tar.gz", "has_sig": false, "md5_digest": "e5d5d18b2ad96489f162970b404478cb", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4742, "upload_time": "2017-01-08T00:40:16", "url": "https://files.pythonhosted.org/packages/3c/7f/84b59f43a2dbdcfebaf2ad6fb8cbb09c5dc8d1a33d9e4a08026ff99b5a53/pykevoplus-1.0.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "bb617c34706580673abdb1e8de11f939", "sha256": "7ec9bad3df4a7b0b39e9d565ab40abe957f385b0babdb69b99e050cbddeddb37" }, "downloads": -1, "filename": "pykevoplus-1.0.1-py2.7.egg", "has_sig": false, "md5_digest": "bb617c34706580673abdb1e8de11f939", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 9111, "upload_time": "2017-01-08T00:40:14", "url": "https://files.pythonhosted.org/packages/c8/da/86cbfb883c891040439e036edf0d0a9e146ac0dbf790755f8e6680bcda85/pykevoplus-1.0.1-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "09025cad372e97f0d837823792c7cccb", "sha256": "496e0812fe751b71248a79854da12f4006f27cbbd6e5bc66040db15d339950dd" }, "downloads": -1, "filename": "pykevoplus-1.0.1-py2-none-any.whl", "has_sig": false, "md5_digest": "09025cad372e97f0d837823792c7cccb", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 6856, "upload_time": "2017-01-08T00:40:12", "url": "https://files.pythonhosted.org/packages/f7/6c/c532a2ec40693b96bd80cbed9ccce88f1a5b7acd1a5815720796d7a71403/pykevoplus-1.0.1-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "e5d5d18b2ad96489f162970b404478cb", "sha256": "ec847a92d0a3b89e4b32475915fd7b85f66b27fa22a8779d91913e7c8d2f3397" }, "downloads": -1, "filename": "pykevoplus-1.0.1.tar.gz", "has_sig": false, "md5_digest": "e5d5d18b2ad96489f162970b404478cb", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4742, "upload_time": "2017-01-08T00:40:16", "url": "https://files.pythonhosted.org/packages/3c/7f/84b59f43a2dbdcfebaf2ad6fb8cbb09c5dc8d1a33d9e4a08026ff99b5a53/pykevoplus-1.0.1.tar.gz" } ] }