A Python implementation of socket.io-emitter
socket.io provides a hook point to easily allow you to emit events to browsers from anywhere so socket.io-python-emitter communicates with socket.io servers through redis.
Install via pip
pip install socket.io-emitter io=Emitter({'host': 'localhost', 'port':6379})
io.Emit('broadcast event','Hello from socket.io-python-emitter')
The following options are allowed:
client: is a redis-py compatible client This argument is optional.key: the name of the key to pub/sub events on as prefix (socket.io)host: host to connect to redis on (localhost)port: port to connect to redis on (6379)
If you don't want to supply a redis client object, and want
socket.io-python-emitter to initialize one for you, make sure to supply the
host and port options.
Specifies a specific room that you want to emit to.
io=Emitter({'host': 'localhost', 'port':6379})
io.In("room-name").Emit("news","Hello from python emitter"); io=Emitter({'host': 'localhost', 'port':6379})
io.To("room-name").Emit("news","Hello from python emitter");We are flattening the room parameter from [] and *argv, so you can also send to several rooms like this (both examples are valid):
io=Emitter({'host': 'localhost', 'port':6379})
io.To(["room1", "room2"]).Emit("news","Hello from python emitter");
io.To("room1", "room2").Emit("news","Hello from python emitter");Specifies a specific namespace that you want to emit to.
io=Emitter({'host': 'localhost', 'port':6379})
io.Of("/nsp").In("room-name").Emit("news","Hello from python emitter");MIT
###Open Source Projects in Use
- redis-py by Andy McCurdy @andymccurdy
- msgpack-python by MessagePack