{ "info": { "author": "Randy Syring", "author_email": "randy.syring@level12.io", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: Microsoft :: Windows", "Operating System :: POSIX :: Linux", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5" ], "description": "JSONRPCBase\n===========\n\n.. image:: https://ci.appveyor.com/api/projects/status/mgn5i4m1wx2nu70y?svg=true\n :target: https://ci.appveyor.com/project/level12/jsonrpcbase\n\n.. image:: https://circleci.com/gh/level12/jsonrpcbase.svg?style=shield\n :target: https://circleci.com/gh/level12/jsonrpcbase\n\n.. image:: https://codecov.io/gh/level12/jsonrpcbase/branch/master/graph/badge.svg\n \u00a0\u00a0:target: https://codecov.io/gh/level12/jsonrpcbase\n\nIntro\n---------------\n\nSimple JSON-RPC service without transport layer\n\nThis library is intended as an auxiliary library for easy an implementation of JSON-RPC services with Unix/TCP socket\nlike transport protocols that do not have complex special requirements. You need to utilize some suitable transport\nprotocol with this library to actually provide a working JSON-RPC service.\n\nFeatures\n---------\n\n- Easy to use, small size, well tested.\n- Supports JSON-RPC v2.0. Compatible with v1.x style calls with the exception of v1.0 class-hinting.\n- Optional argument type validation that significantly eases development of jsonrpc method_data.\n\nExample\n--------\n\nExample usage::\n\n import jsonrpcbase\n\n chat_service = jsonrpcbase.JSONRPCService()\n\n def login(username, password, timelimit=0):\n (...)\n return True\n\n def receive_message(**kwargs):\n (...)\n return chat_message\n\n def send_message(msg):\n (...)\n\n if __name__ == '__main__':\n\n # Adds the method login to the service as a 'login'.\n chat_service.add(login, types=[basestring, basestring, int])\n\n # Adds the method receive_message to the service as a 'recv_msg'.\n chat_service.add(receive_message, name='recv_msg', types={\"msg\": basestring, \"id\": int})\n\n # Adds the method send_message as a 'send_msg' to the service.\n chat_service.add(send_message, 'send_msg')\n\n (...)\n\n # Receive a JSON-RPC call.\n jsonmsg = my_socket.recv()\n\n # Process the JSON-RPC call.\n result = chat_service.call(jsonmsg)\n\n # Send back results.\n my_socket.send(result)\n\nQuestions & Comments\n---------------------\n\nPlease visit: http://groups.google.com/group/blazelibs\n\nCurrent Status\n---------------\n\nSeems stable, but hasn't been widely used to my knowledge.\n\nThe `development version `_\nis installable with ``easy_install JSONRPCBase==dev``.\n\nCredits\n---------\n\nThis project was originally developed by:\n\nJuhani \u00c5hman\nhttp://bitbucket.org/fuzzybyte/jsonrpcbase/src\n\n\nChangelog\n---------\n\n0.2.0 released 2016-11-30\n=========================\n\n* add Python 3 support (3.4 and 3.5)\n* set up continuous integration testing on CircleCI and AppVeyor\n* test coverage is on CodeCov\n\n0.1.2 released 2012-03-08\n=========================\n\n- fixed argument validation logic when using instance methods and no arguments\n (mlewellyn)\n", "description_content_type": null, "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/level12/jsonrpcbase", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "JSONRPCBase", "package_url": "https://pypi.org/project/JSONRPCBase/", "platform": "", "project_url": "https://pypi.org/project/JSONRPCBase/", "project_urls": { "Homepage": "https://github.com/level12/jsonrpcbase" }, "release_url": "https://pypi.org/project/JSONRPCBase/0.2.0/", "requires_dist": null, "requires_python": "", "summary": "Simple JSON-RPC service without transport layer", "version": "0.2.0" }, "last_serial": 2492638, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "4df111719f2c4bcd41bcc77d242ccc0c", "sha256": "01ba52801b585139263b458f09b8d920c0e48f87e2a5f60f95baef4e43a09223" }, "downloads": -1, "filename": "JSONRPCBase-0.1.0.tar.gz", "has_sig": false, "md5_digest": "4df111719f2c4bcd41bcc77d242ccc0c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6234, "upload_time": "2011-02-12T21:17:30", "url": "https://files.pythonhosted.org/packages/a5/45/46e38005f6aef8435fa406768a566b2bf09ef39598ff884c3644d2105f2d/JSONRPCBase-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "3830c67b5b8e73929903e2a488c319e0", "sha256": "1edd1d1ac36887eb88bdc00a42ed1724df29ab2760c00eff92daec128164572f" }, "downloads": -1, "filename": "JSONRPCBase-0.1.1.tar.gz", "has_sig": false, "md5_digest": "3830c67b5b8e73929903e2a488c319e0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6496, "upload_time": "2011-02-12T21:36:06", "url": "https://files.pythonhosted.org/packages/7e/99/651a2032a8e1f4ed761dab33046235dd22e1999d5c0eebc4e0aca9fe1989/JSONRPCBase-0.1.1.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "f28e2d9ca827517b17a2995dcd5d8afb", "sha256": "54afa48e119de58597a00809f0ad125865a1bece149bb3d69b4004ea9ce0bfe2" }, "downloads": -1, "filename": "JSONRPCBase-0.1.2.tar.gz", "has_sig": false, "md5_digest": "f28e2d9ca827517b17a2995dcd5d8afb", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7087, "upload_time": "2012-03-09T04:38:29", "url": "https://files.pythonhosted.org/packages/d6/b5/c9a8a2876224a9c2580fabc4650beb37440f7e8b2757ccc0dd18fbccca45/JSONRPCBase-0.1.2.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "96059e46b8e1e8d09aae08fa8024e523", "sha256": "7ea67fc1a7c87756e9a876e18a342e431e80d0ef3ba867dfd6f3fac5bf3fcc0d" }, "downloads": -1, "filename": "JSONRPCBase-0.2.0.tar.gz", "has_sig": false, "md5_digest": "96059e46b8e1e8d09aae08fa8024e523", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7372, "upload_time": "2016-11-30T21:19:00", "url": "https://files.pythonhosted.org/packages/5c/73/ef26d23bc5ea384970da9dcd2a962ec84cf834922d94df85ab7c45e7a38e/JSONRPCBase-0.2.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "96059e46b8e1e8d09aae08fa8024e523", "sha256": "7ea67fc1a7c87756e9a876e18a342e431e80d0ef3ba867dfd6f3fac5bf3fcc0d" }, "downloads": -1, "filename": "JSONRPCBase-0.2.0.tar.gz", "has_sig": false, "md5_digest": "96059e46b8e1e8d09aae08fa8024e523", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7372, "upload_time": "2016-11-30T21:19:00", "url": "https://files.pythonhosted.org/packages/5c/73/ef26d23bc5ea384970da9dcd2a962ec84cf834922d94df85ab7c45e7a38e/JSONRPCBase-0.2.0.tar.gz" } ] }