Commits

Jeffrey Gelens  committed 128f307

Updated README

  • Participants
  • Parent commits fedec45

Comments (0)

Files changed (2)

 gevent-websocket
 ================
 
-`gevent-websocket`_ is a websocket library for the gevent_ networking library
-written written and maintained by `Jeffrey Gelens`_ It is licensed under the BSD license.
+`gevent-websocket`_ is a WebSocket library for the gevent_ networking library.
+
+Features include:
+
+- Integration on both socket level or using an abstract interface.
+- RPC and PubSub implementation using `WAMP`_ (WebSocket Application
+  Messaging Protocol).
+- Easily extendible using a simple WebSocket protocol framework
 
 ::
 
         Resource({'/': EchoApplication})
     )
 
-Installation
-------------
-
-Install Python 2.5 or newer and Gevent and its dependencies. The latest release
-can be download from PyPi_ or by cloning the repository_ and running::
-
-    $ python setup.py install
-
-The easiest way to install gevent-websocket is directly from PyPi_ using pip or
-setuptools by running the commands below::
-
-    $ pip install gevent-websocket
-
-or::
-
-    $ easy_install gevent-websocket
-
-This also installs the dependencies automatically.
-
-
-Usage
------
-
-Gevent Server
-^^^^^^^^^^^^^
-
-At the moment gevent-websocket has one handler based on the Pywsgi gevent
-Hook up the WebSocketHandler to the Pywsgi Server by setting the `handler_class`
-when creating the server instance.
-
 ::
 
     from gevent import pywsgi
     from geventwebsocket.handler import WebSocketHandler
 
-    server = pywsgi.WSGIServer(("", 8000), websocket_app,
-        handler_class=WebSocketHandler)
-    server.serve_forever()
-
-The handler enhances your WSGI app with a Websocket environment variable when the
-browser requests a Websocket connection.
-
-::
-
     def websocket_app(environ, start_response):
         if environ["PATH_INFO"] == '/echo':
             ws = environ["wsgi.websocket"]
             message = ws.receive()
             ws.send(message)
 
-Gunicorn Server
+    server = pywsgi.WSGIServer(("", 8000), websocket_app,
+        handler_class=WebSocketHandler)
+    server.serve_forever()
+
+More examples can be found in the ``examples`` directory. Hopefully more
+documentation will be available soon.
+
+Installation
+------------
+
+The easiest way to install gevent-websocket is directly from PyPi_ using pip or
+setuptools by running the commands below::
+
+    $ pip install gevent-websocket
+
+
+Gunicorn Worker
 ^^^^^^^^^^^^^^^
 
 Using Gunicorn it is even more easy to start a server. Only the
 `websocket_app` from the previous example is required to start the server.
-Start Gunicorn using the following command and worker class to enable Websocket
+Start Gunicorn using the following command and worker class to enable WebSocket
 funtionality for the application.
 
 ::
     gunicorn -k "geventwebsocket.gunicorn.workers.GeventWebSocketWorker" wsgi:websocket_app
 
 
+.. _WAMP: http://www.wamp.ws
 .. _gevent-websocket: http://www.bitbucket.org/Jeffrey/gevent-websocket/
 .. _gevent: http://www.gevent.org/
 .. _Jeffrey Gelens: http://www.gelens.org/

File geventwebsocket/websocket.py

         if hasattr(self.handler.server.application, 'current_app'):
             return self.handler.server.application.current_app
         else:
+            # For backwards compatibility reasons
             class MockApp():
                 def on_close(self, *args):
                     pass