{ "info": { "author": "Harshad Sharma", "author_email": "harshad@sharma.io", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Intended Audience :: Developers", "License :: OSI Approved :: Apache Software License", "Operating System :: Microsoft :: Windows", "Operating System :: POSIX", "Operating System :: Unix", "Programming Language :: Python", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: Implementation :: CPython", "Topic :: Communications", "Topic :: Internet", "Topic :: Software Development", "Topic :: Utilities" ], "description": "========\nOverview\n========\n\n\n\nZentropi: Script Your World.\n============================\n\nZentropi is for you if:\n\n- You like the idea of making your own bots.\n- You want to build your personal internet-of-things.\n- You are curious about automation at work and/or home.\n- You care about your time; automation lets you do more of things you enjoy.\n- You consider building your own tools to tackle the increasing complexity of your responsibilities.\n- You imagine a world where your real and virtual worlds can interact with each other seamlessly.\n- You dream of raising your own army of minions... doing your work tirelessly while you take a vaca...\n\n..where were we? Ah, yes, if any of these ^^ sound familiar, you are not alone!\n\n\nInstallation\n============\n\n::\n\n pip3 install zentropi\n\nDocumentation\n=============\n\nhttps://zentropi.readthedocs.io/\n\n\nExample\n=======\n\nWe will make a toy agent that responds to the message \"hello\" with a \"hello, world\".\n\n.. image:: https://cloud.githubusercontent.com/assets/23116/25562708/1d83f7b4-2dab-11e7-988a-bccb2862b656.png\n\nThe above illustration shows how the concepts and objects are logically arranged and connected within Zentropi.\nWe will go deeper into these in the READMEs along with examples, for now let us jump straight to the code:\n\n::\n\n from zentropi import Agent, on_message, run_agents, ZentropiShell\n\n\n class HelloBot(Agent):\n @on_message('hello')\n def say_hello(self, message):\n return 'hello, world'\n\n\n if __name__ == '__main__':\n hello_bot = HelloBot(name='hello_bot')\n shell = ZentropiShell(name='shell')\n run_agents(hello_bot, shell)\n\n\nSave this as ``hello.py`` and run with ``$ python hello.py``\n\nYou should see this on your screen:\n\n::\n\n $ python hello.py\n \u26a1 \ufe0e @shell: '*** started'\n \u26a1 \ufe0e @shell: 'shell-starting'\n \u26a1 \ufe0e @shell: 'shell-ready'\n \u3009\n\nWe can type any message at the prompt ``\u3009`` and the shell agent will\nbroadcast it for us. Go ahead and type ``hello``, followed by ENTER.\n\n::\n\n \u3009hello\n \u2709 @shell: 'hello'\n \u2709 @hello_bot: 'hello, world' {'text': 'hello, world'}\n \u26a1 \ufe0e @shell: 'shell-ready'\n \u3009exit\n\nType ``exit`` or press Ctrl-D to leave the shell.\n\nWhat next?\n\nZentropi is still being developed and is not production-ready, however\nit is already useful to experiment and build toys.\n\nCheck out what is already possible in the examples directory:\n\nhttps://github.com/zentropi/python-zentropi/tree/master/examples\n\n\nChangelog\n=========\n\n0.1.0 (soon)\n------------\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/zentropi/python-zentropi", "keywords": "agent-based,automation,event-basediot,iot-framework,iot-platform,pub-sub", "license": "Apache 2.0", "maintainer": "", "maintainer_email": "", "name": "zentropi", "package_url": "https://pypi.org/project/zentropi/", "platform": "", "project_url": "https://pypi.org/project/zentropi/", "project_urls": { "Homepage": "https://github.com/zentropi/python-zentropi" }, "release_url": "https://pypi.org/project/zentropi/0.1.3/", "requires_dist": null, "requires_python": "", "summary": "Script Your World.", "version": "0.1.3" }, "last_serial": 2840391, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "4ccb1484ec0bbcb3e8d9cfb2804fa23d", "sha256": "948ee1e7dbbf588eb5bbf0bfb7f3c6e98c564f81fde0b80bd4685c8f2c97138d" }, "downloads": -1, "filename": "zentropi-0.1.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "4ccb1484ec0bbcb3e8d9cfb2804fa23d", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 22049, "upload_time": "2017-04-11T23:27:04", "url": "https://files.pythonhosted.org/packages/fd/0d/79ecab98ef724057d9e1a295120de9b35fe14105088e17f4a679f642773e/zentropi-0.1.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "7f0538b973799d05ddc1985f4c875219", "sha256": "822245fc47a31710d04eeec404fdc0fb0732f4967a53a4df7effbb209f3fbe4e" }, "downloads": -1, "filename": "zentropi-0.1.0.tar.gz", "has_sig": false, "md5_digest": "7f0538b973799d05ddc1985f4c875219", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 67255, "upload_time": "2017-04-11T23:27:26", "url": "https://files.pythonhosted.org/packages/b1/d4/4a9a9d88022d2add03ee1fdd1e2ee5088717c86dbe2e5ca3dbc388b3b47c/zentropi-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "45d311372e464d44cdf9320fba88e710", "sha256": "d44473338c4fa915b939792bcaaf25966bb7c64deb3ca14bfdb4e89df0943875" }, "downloads": -1, "filename": "zentropi-0.1.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "45d311372e464d44cdf9320fba88e710", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 24216, "upload_time": "2017-04-21T02:07:15", "url": "https://files.pythonhosted.org/packages/a0/89/589426bc6e02791ab2be6371e6ac7d94bc0790c673c5ef8f00944c7ec5a1/zentropi-0.1.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "c6f5a1cf07345ef158e47e1e1581bcac", "sha256": "3cfac41bcae38d075fac556b5b33280771b2fcd7af936e3183c412e6ae5b1501" }, "downloads": -1, "filename": "zentropi-0.1.1.tar.gz", "has_sig": false, "md5_digest": "c6f5a1cf07345ef158e47e1e1581bcac", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 70011, "upload_time": "2017-04-21T02:06:54", "url": "https://files.pythonhosted.org/packages/9a/23/c6291f39d197e47a24bf0f4c4c7c75da6fd6cc5704ebd5fa8154cb2cc0ee/zentropi-0.1.1.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "c65435363bea3c85857912547a6167e1", "sha256": "e7d6e85b314b9216a980aa9d0c04601428cef57caff9035b9251cc2fee8a33a1" }, "downloads": -1, "filename": "zentropi-0.1.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "c65435363bea3c85857912547a6167e1", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 25569, "upload_time": "2017-04-24T10:22:47", "url": "https://files.pythonhosted.org/packages/80/a4/5194b535890806a333dd8de74980b2eb9fe121c8960509770d060712a460/zentropi-0.1.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "41a15d2d9090aa3cac116dfb6c32c671", "sha256": "30d28bc318fb0a787e7a90577377ca12182e0f15bf8c9fb6dde976e9582bc583" }, "downloads": -1, "filename": "zentropi-0.1.2.tar.gz", "has_sig": false, "md5_digest": "41a15d2d9090aa3cac116dfb6c32c671", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 70921, "upload_time": "2017-04-24T10:22:32", "url": "https://files.pythonhosted.org/packages/95/15/00d580d617f0a4ea1f497581b4fc4f264092f40dce5e055b1ef396baade2/zentropi-0.1.2.tar.gz" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "bfae49aff34abffc182c93910f1be7e7", "sha256": "b4d814e6468459ac21c399387e10b637313bcea909e693e646fde5a36a165bac" }, "downloads": -1, "filename": "zentropi-0.1.3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "bfae49aff34abffc182c93910f1be7e7", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 32737, "upload_time": "2017-04-30T13:07:01", "url": "https://files.pythonhosted.org/packages/b7/9c/1003ecee2763a494955f820dfb63fadffb63ab84069d56d0760b4abe64cb/zentropi-0.1.3-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "a4c29ca39788f5e3db1548b95da64a69", "sha256": "20838fbd9d66e41d6ac5710b0f4d981c0ef366c6b716a8f5a9d76d737726c54a" }, "downloads": -1, "filename": "zentropi-0.1.3.tar.gz", "has_sig": false, "md5_digest": "a4c29ca39788f5e3db1548b95da64a69", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 103765, "upload_time": "2017-04-30T13:06:48", "url": "https://files.pythonhosted.org/packages/ee/9d/3dde3a63f7ff7d6fe2f9e03e7e40efd2900f000e12f6e5fd341308994bad/zentropi-0.1.3.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "bfae49aff34abffc182c93910f1be7e7", "sha256": "b4d814e6468459ac21c399387e10b637313bcea909e693e646fde5a36a165bac" }, "downloads": -1, "filename": "zentropi-0.1.3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "bfae49aff34abffc182c93910f1be7e7", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 32737, "upload_time": "2017-04-30T13:07:01", "url": "https://files.pythonhosted.org/packages/b7/9c/1003ecee2763a494955f820dfb63fadffb63ab84069d56d0760b4abe64cb/zentropi-0.1.3-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "a4c29ca39788f5e3db1548b95da64a69", "sha256": "20838fbd9d66e41d6ac5710b0f4d981c0ef366c6b716a8f5a9d76d737726c54a" }, "downloads": -1, "filename": "zentropi-0.1.3.tar.gz", "has_sig": false, "md5_digest": "a4c29ca39788f5e3db1548b95da64a69", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 103765, "upload_time": "2017-04-30T13:06:48", "url": "https://files.pythonhosted.org/packages/ee/9d/3dde3a63f7ff7d6fe2f9e03e7e40efd2900f000e12f6e5fd341308994bad/zentropi-0.1.3.tar.gz" } ] }