Implementation of web sockets for Python, upgrades a regular socket to a web socket

Taddeus Kroes 667d611527 Implemented HTTP redirect and authentication in client handshake 12 years ago
test 8f15e28308 Implemented client handshake, and did some corresponding debugging 12 years ago
.gitignore 6d2cf25d8d Added SSL support (wss://...), updated some docs 12 years ago
LICENSE d758ca45b0 Added license 13 years ago
Makefile 8f15e28308 Implemented client handshake, and did some corresponding debugging 12 years ago
README.md 1d1413925a Prettified README 13 years ago
TODO 3be38d234a Added item to TODO list 12 years ago
__init__.py 8f15e28308 Implemented client handshake, and did some corresponding debugging 12 years ago
connection.py 8f15e28308 Implemented client handshake, and did some corresponding debugging 12 years ago
errors.py 6d2cf25d8d Added SSL support (wss://...), updated some docs 12 years ago
frame.py 8f15e28308 Implemented client handshake, and did some corresponding debugging 12 years ago
message.py a942e6bb1a Added initialization to prevent error 12 years ago
server.py 8f15e28308 Implemented client handshake, and did some corresponding debugging 12 years ago
websocket.py 667d611527 Implemented HTTP redirect and authentication in client handshake 12 years ago

README.md

twspy is a standalone implementation of web sockets for Python, defined by RFC 6455.

  • The websocket class upgrades a regular socket to a web socket. A websocket instance is a single end point of a connection. A websocket instance sends and receives frames (Frame instances) as opposed to bytes (which are sent/received in a regular socket).

  • A Connection instance represents a connection between two end points, based on a websocket instance. A connection handles control frames properly, and sends/receives messages (Message instances, which are higher-level than frames). Messages are automatically converted to frames, and received frames are converted to messages. Fragmented messages (messages consisting of multiple frames) are also supported.