{ "info": { "author": "Geoff Soord", "author_email": "geoff@soord.org.uk", "bugtrack_url": null, "classifiers": [], "description": "# GeniusHub\nPython library to provide connect to Genius Hub on a local network.\n\n# Installation\nEither clone this resposition and run `python setup.py install`, or install from pip using `pip install genius`.\n\n# API\nThis library makes use of the undocumented API for communicating to the Genius Hub. This API may change with future updates to the Genius Hub Firmware.\n\nThe library supports the following functions:\n```\ngetClimateList()\ngetSwitchList()\ngetTRVList()\ngetSensorList()\ngetSwitchList()\ngetZone(zoneId)\ngetDevice(zoneId, addr)\nGET_CLIMATE(zone)\nGET_SWITCH(zone)\ngetSensor(cv)\ngetTRV(cv)\nGET_MODE(zone)\nputjson(device_id, data)\n\n```\n\n# Usage\nInitialise a link to the hub by passing in the local IP address, username and password. The username and password are the same that you use to log into your Genius application. Once logged in successfully the module will poll the hub at regular intervals so that getting values from the hub will be cached locally.\n\nWhat is read from the getters is self explanatory. The putjson POST the data to the Genius Hub. The format of the json can be discovered by exploring the Genius application and view the requests posted to the hub.\n```\nimport asyncio\nfrom geniushub import GeniusHub\n\nIP_ADDRESS = 'Your local ip address'\nUSERNAME = 'Your user name'\nPASSWORD = 'Your password'\nINTERVAL = 60\n\n\nasync def main():\n genius_hub = GeniusHub(IP_ADDRESS, USERNAME, PASSWORD, INTERVAL)\n await genius_hub.getjson('/zones')\n\n # Get the zones with a temperature\n climate_list = genius_hub.getClimateList()\n\n print(\"Climate -------------------------------------------------------------\")\n for zone in climate_list:\n print(zone)\n\n trvs = genius_hub.getTRVList()\n\n print(\"TRV -----------------------------------------------------------------\")\n for trv in trvs:\n print(trv)\n\n switches = genius_hub.getSwitchList()\n\n print(\"Switches ------------------------------------------------------------\")\n for switch in switches:\n print(switch)\n\n sensors = genius_hub.getSensorList()\n\n print(\"Sensors -------------------------------------------------------------\")\n for sensor in sensors:\n print(sensor)\n\nloop = asyncio.get_event_loop()\nloop.run_until_complete(main())\nloop.close()\n```\n\n", "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/GeoffAtHome/geniushub", "keywords": "Genius,Genius Hub,Heat Genius,Heat Genius Hub", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "geniushub", "package_url": "https://pypi.org/project/geniushub/", "platform": "", "project_url": "https://pypi.org/project/geniushub/", "project_urls": { "Homepage": "https://github.com/GeoffAtHome/geniushub" }, "release_url": "https://pypi.org/project/geniushub/0.1/", "requires_dist": null, "requires_python": "", "summary": "Python library to provide connect to Genius Hub on a local network.", "version": "0.1" }, "last_serial": 4996939, "releases": { "0.1": [ { "comment_text": "", "digests": { "md5": "868988ba3008f20b1f56cda154c500b2", "sha256": "7e61f9eca99b85cc06def01ed4b7b83dd6f8fbc67640008238f4cd0e20d3965e" }, "downloads": -1, "filename": "geniushub-0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "868988ba3008f20b1f56cda154c500b2", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 5173, "upload_time": "2019-03-01T15:36:55", "url": "https://files.pythonhosted.org/packages/5b/25/1aa433b418823f0615a397c28f7f415f34556ae8380ac5b07cd91041b50e/geniushub-0.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "475fbd786c3d84a80be036a6cfb019a2", "sha256": "5dc12c71f805b9bbf99b6138c758ca4c87deb3b124b504d3c5dcdf6dbb2952b2" }, "downloads": -1, "filename": "geniushub-0.1.tar.gz", "has_sig": false, "md5_digest": "475fbd786c3d84a80be036a6cfb019a2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4145, "upload_time": "2019-03-01T15:36:57", "url": "https://files.pythonhosted.org/packages/f8/d8/9629b59054a532f1162a244c81c18800fc588b2f0642ecb6f282e12724d4/geniushub-0.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "868988ba3008f20b1f56cda154c500b2", "sha256": "7e61f9eca99b85cc06def01ed4b7b83dd6f8fbc67640008238f4cd0e20d3965e" }, "downloads": -1, "filename": "geniushub-0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "868988ba3008f20b1f56cda154c500b2", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 5173, "upload_time": "2019-03-01T15:36:55", "url": "https://files.pythonhosted.org/packages/5b/25/1aa433b418823f0615a397c28f7f415f34556ae8380ac5b07cd91041b50e/geniushub-0.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "475fbd786c3d84a80be036a6cfb019a2", "sha256": "5dc12c71f805b9bbf99b6138c758ca4c87deb3b124b504d3c5dcdf6dbb2952b2" }, "downloads": -1, "filename": "geniushub-0.1.tar.gz", "has_sig": false, "md5_digest": "475fbd786c3d84a80be036a6cfb019a2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4145, "upload_time": "2019-03-01T15:36:57", "url": "https://files.pythonhosted.org/packages/f8/d8/9629b59054a532f1162a244c81c18800fc588b2f0642ecb6f282e12724d4/geniushub-0.1.tar.gz" } ] }