{ "info": { "author": "Jay Marcyes", "author_email": "jay@marcyes.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Environment :: Web Environment", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python :: 2.7", "Topic :: Communications :: Chat", "Topic :: Internet :: WWW/HTTP" ], "description": "m2websocket\n===========\n\nMakes handling websockets with `Mongrel2 `__ and\nPython easy peasy.\n\nThis module was lovingly crafted for `First\nOpinion `__.\n\nExample\n-------\n\nTypical websocket *hello world* type example, creating an echo server:\n\n.. code:: python\n\n import os\n import logging\n\n logging.basicConfig()\n rl = logging.getLogger()\n rl.setLevel('DEBUG')\n\n from m2websocket import Connection\n\n\n conn = Connection(\"tcp://localhost:port\", \"tcp://localhost:port\")\n\n while True:\n req = conn.recv()\n if req.is_handshake():\n conn.reply_handshake(req)\n\n else:\n conn.reply_websocket(req, req.body, req.opcode)\n\nYup, that's all there is to it, much easier than `this\nexample `__.\n\nYou can see a working example of the echo server (with a working\nmongrel2 conf file and python script) by looking in the ``example/``\ndirectory in the Github repo.\n\nInstall it\n----------\n\nPrerequisites\n~~~~~~~~~~~~~\n\nYou'll need to install the mongrel2 python library from the `mongrel2\nsource `__.\nOnce you've cloned the source or downloaded that folder, you can install\nit using ``setup.py``\n\n::\n\n $ cd /path/to/mongrel2/src/examples/python\n $ python setup.py install\n\nThen, you can install this module using pip:\n\n::\n\n pip install m2websocket\n\nOr:\n\n::\n\n pip install git+https://github.com/firstopinion/m2websocket#egg=m2websocket\n\nTests are actually kind of hard to run, you need to install mongrel2 and\nhave it load the ``example/mongrel2.conf`` configuration and then run\nthe ``example/echo.py`` server. You also need to\n``pip install websocket-client``.\n\nLicense\n-------\n\nMIT\n", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://github.com/Jaymon/m2websocket", "keywords": null, "license": "MIT", "maintainer": null, "maintainer_email": null, "name": "m2websocket", "package_url": "https://pypi.org/project/m2websocket/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/m2websocket/", "project_urls": { "Download": "UNKNOWN", "Homepage": "http://github.com/Jaymon/m2websocket" }, "release_url": "https://pypi.org/project/m2websocket/0.2.2/", "requires_dist": null, "requires_python": null, "summary": "Makes websockets with Mongrel2 and Python super easy", "version": "0.2.2" }, "last_serial": 1177813, "releases": { "0.1": [ { "comment_text": "", "digests": { "md5": "e5f04a36e231e65b5dcc2186f8f3c5a5", "sha256": "a9966061f9067dd341cb5d4d8807af737fb665c560961c1117178e6990e2facc" }, "downloads": -1, "filename": "m2websocket-0.1.tar.gz", "has_sig": false, "md5_digest": "e5f04a36e231e65b5dcc2186f8f3c5a5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5099, "upload_time": "2014-01-16T00:58:11", "url": "https://files.pythonhosted.org/packages/c6/26/88bb48252beb0a716268a82e7e7ebba9ea2703677e0e1f762c5176910a7b/m2websocket-0.1.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "a1031a2b4a0dac3cc188b890c52972e0", "sha256": "35bb1bdce4e547c6ad39ceec763bf25ac79e3b8d8ddc0818dab8746de38f5f21" }, "downloads": -1, "filename": "m2websocket-0.1.1.tar.gz", "has_sig": false, "md5_digest": "a1031a2b4a0dac3cc188b890c52972e0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5389, "upload_time": "2014-05-17T21:57:55", "url": "https://files.pythonhosted.org/packages/04/7a/32053e063db33262bbbdc4b274de8a2e3bbf30824aded0828c3173d34cd1/m2websocket-0.1.1.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "594ffb34a9d55f4343bac81ab4d4a82d", "sha256": "9f07a3f02b6ddb719a8f30fc76fae08f2bb2e73226c6569355a159c93bb1c905" }, "downloads": -1, "filename": "m2websocket-0.1.2.tar.gz", "has_sig": false, "md5_digest": "594ffb34a9d55f4343bac81ab4d4a82d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5386, "upload_time": "2014-05-17T22:29:35", "url": "https://files.pythonhosted.org/packages/91/2b/104ebac1b222524f9c15a846b8778720c150464f0907f1b5e008d30c7219/m2websocket-0.1.2.tar.gz" } ], "0.1.5": [ { "comment_text": "", "digests": { "md5": "be0b4ca7cbbeb9368959d0ab54b202f2", "sha256": "a212d127af582b9bfc24a2e58ff295e22508ace2d9d1bcf4a38514a11a9845b7" }, "downloads": -1, "filename": "m2websocket-0.1.5.tar.gz", "has_sig": false, "md5_digest": "be0b4ca7cbbeb9368959d0ab54b202f2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5519, "upload_time": "2014-05-17T23:42:33", "url": "https://files.pythonhosted.org/packages/37/24/153caaece881b2cadae4c5756fe70b359f71877d139418cc27a52d4a6678/m2websocket-0.1.5.tar.gz" } ], "0.1.6": [ { "comment_text": "", "digests": { "md5": "7b6978802c2e6cba2937468397a793dc", "sha256": "f876ff43641e3acdba457352dc3704e4020c0060a1d892007571b2d7c75e2aee" }, "downloads": -1, "filename": "m2websocket-0.1.6.tar.gz", "has_sig": false, "md5_digest": "7b6978802c2e6cba2937468397a793dc", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5566, "upload_time": "2014-05-22T20:14:00", "url": "https://files.pythonhosted.org/packages/73/6c/d8f6a4590ac9754b1dff8ce6a3c0db14c00fc2be721272f34435016fb5eb/m2websocket-0.1.6.tar.gz" } ], "0.1.7": [ { "comment_text": "", "digests": { "md5": "ddbfe29c3592d61b79ab232de4015c1c", "sha256": "e0117b0d65013c11bb92ed1db08bf731a476843e45532a7f386bc2b93a198f23" }, "downloads": -1, "filename": "m2websocket-0.1.7.tar.gz", "has_sig": false, "md5_digest": "ddbfe29c3592d61b79ab232de4015c1c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5600, "upload_time": "2014-05-30T03:10:25", "url": "https://files.pythonhosted.org/packages/dc/45/e2576615aabb792d75321faafdbda85c10787393b9d9f5b07e3070dd25d0/m2websocket-0.1.7.tar.gz" } ], "0.1.8": [ { "comment_text": "", "digests": { "md5": "52aa36c972f2fd61e763cb0023fdbedf", "sha256": "75a261c1e2ce4f88916d670f931c08401d9c6a5aa6567bb39bfe064b85fd1ad5" }, "downloads": -1, "filename": "m2websocket-0.1.8.tar.gz", "has_sig": false, "md5_digest": "52aa36c972f2fd61e763cb0023fdbedf", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5584, "upload_time": "2014-06-20T01:56:24", "url": "https://files.pythonhosted.org/packages/a4/c7/7e4ba20d25a4efefcda9cd5d464ef38ad23d02e17cb39e688386e5442cd6/m2websocket-0.1.8.tar.gz" } ], "0.1.9": [ { "comment_text": "", "digests": { "md5": "c14aeceaeb1ea01280be7e0b4142dc3c", "sha256": "0897d2ad28431bb91564cc536ede1e46660a3acda62ef7eca662bc5fed9a5981" }, "downloads": -1, "filename": "m2websocket-0.1.9.tar.gz", "has_sig": false, "md5_digest": "c14aeceaeb1ea01280be7e0b4142dc3c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5566, "upload_time": "2014-07-26T20:46:26", "url": "https://files.pythonhosted.org/packages/6a/f7/7977e00fa1f012fe5d63a85a66406e3d556cdb4bae3d5d2a2f22cb0deebb/m2websocket-0.1.9.tar.gz" } ], "0.2": [ { "comment_text": "", "digests": { "md5": "0292bc0c234b04e385ad2c39a037b2dc", "sha256": "b83ff5e1e8d8e06e461181abe3477725fc96409644de2920894bf36f181bb665" }, "downloads": -1, "filename": "m2websocket-0.2.tar.gz", "has_sig": false, "md5_digest": "0292bc0c234b04e385ad2c39a037b2dc", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5979, "upload_time": "2014-07-30T00:49:11", "url": "https://files.pythonhosted.org/packages/63/99/b91e85c635d5b4543fad34f29080a4d27ab78307d1373a750baf5702a80f/m2websocket-0.2.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "6480effe67a1d725bf04f84a3d6bb4fb", "sha256": "76c5ca947508f70284caa72f3f4a7454101894a7d55ca756a11835180ede8fa3" }, "downloads": -1, "filename": "m2websocket-0.2.1.tar.gz", "has_sig": false, "md5_digest": "6480effe67a1d725bf04f84a3d6bb4fb", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6012, "upload_time": "2014-08-01T19:31:29", "url": "https://files.pythonhosted.org/packages/f8/ba/3a99aa3477d2ed04c01f396df1287bb8d98d00e8f8db5199ecbefb2fd191/m2websocket-0.2.1.tar.gz" } ], "0.2.2": [ { "comment_text": "", "digests": { "md5": "e1d9682d05434905dfa6911305acc3b6", "sha256": "adbb9342d4047a9666c1b6eecae7baef9fa5385b1af5d5287fcb0cc9d65f020e" }, "downloads": -1, "filename": "m2websocket-0.2.2.tar.gz", "has_sig": false, "md5_digest": "e1d9682d05434905dfa6911305acc3b6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6020, "upload_time": "2014-08-02T21:19:26", "url": "https://files.pythonhosted.org/packages/ec/f1/c5bc65d9a071d9dfce65f2f86e55f5a1a83877227f9cd00a9fb1ae65ea72/m2websocket-0.2.2.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "e1d9682d05434905dfa6911305acc3b6", "sha256": "adbb9342d4047a9666c1b6eecae7baef9fa5385b1af5d5287fcb0cc9d65f020e" }, "downloads": -1, "filename": "m2websocket-0.2.2.tar.gz", "has_sig": false, "md5_digest": "e1d9682d05434905dfa6911305acc3b6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6020, "upload_time": "2014-08-02T21:19:26", "url": "https://files.pythonhosted.org/packages/ec/f1/c5bc65d9a071d9dfce65f2f86e55f5a1a83877227f9cd00a9fb1ae65ea72/m2websocket-0.2.2.tar.gz" } ] }