django mease:websocket集成使django变得容易
django-mease的Python项目详细描述
正在工作。
websocket集成使django使用tornado、redis pub/sub和易于使用的回调注册表机制变得容易。
查看完整的工作示例here
RTD即将输入
安装
依赖项(debian&ubuntu)
Mease默认带有redis pub/sub后端。如果要使用它,请安装这些依赖项:
sudo apt-get install redis-server python-dev pip install redis
安装django mease
pip install django-mease
将mease添加到已安装的应用程序中
INSTALLED_APPS=(# List of your installed apps'djmease',)
用法
启动websocket服务器
python manage.py run_websocket_server
注册回调
创建mease_registry.py文件以注册回调(该文件必须位于已安装的应用程序中):
fromdjmeaseimportmease@mease.openerdefopen_websocket(client,clients_list):client.storage["name"]="mymane"forcinclients_list:c.send("Someone joined")@mease.closerdefclose_websocket(client,clients_list):forcinclients_list:c.send("{name} left".format(name=client.storage["name"]))@mease.receiverdefreceive_websocket_message(client,clients_list,message):forcinclients_list:c.send(message)@mease.sender(routing=['websocket'])defsend_websocket_message(channel,clients_list,myobj):forcinclients_list:c.send(myobj.myattr)
发布
使用mease.publish从代码中的任何位置发布:
fromdjmeaseimportmeasemease.publish('websocket',"Hello world !")
这将调用在“websocket”路由上注册的所有发件人函数。