使用Python的Django和layim實現即時通訊


看到Django和layim實現websocketde資料很少,自己就琢磨了下,順便搭建出來了。自己要去找閑心大神授權呀。 
先來看圖 

 


這是初次搭建的,今天一天就搞定。我自己接入了圖靈機器人。 
Python這需要安裝Django和dwebsocket,安裝之后現在Django的settings里面將WEBSOCKET_ACCEPT_ALL=True寫進去

@require_websocketdef send(request):     for message in request.websocket:     request.websocket.send(這里要String類型)  # 發送消息到客戶端12345

這段代碼是后台接受即時消息的,需要有注解。

看一下前段js

<!doctype html><html><head>     <meta charset="utf-8">     <title>LayIM測試</title>     <link rel="stylesheet" href="../static/layui/css/layui.css" media="all"></head><body><script src="../static/layui/layui.js"></script><script>     layui.use('layim', function (layim) {         var socket = new WebSocket('ws://localhost:8000/send');         layim.config({             init: {                 url: "/main",                 type: "get",                 data: {}             },             members: {                 url: "",                 type: 'post',                 data: {id: 1},             }, isAudio: true             , isVideo: true,             right: "10px"             //擴展工具欄             , brief: false //是否簡約模式(如果true則不顯示主面板)         });         layim.on('sendMessage', function (res) {             var mine = res.mine;             socket.send(JSON.stringify({                 type: 'chatMessage' //隨便定義,用於在服務端區分消息類型                 , data: res             }));         });         socket.onmessage = function (res) {             layim.getMessage({                 username: "圖靈機器人"                 , avatar: "../static/img/100.jpg"                 , id: "1                 , type: "friend"                 , content: res.data                 , cid: 0                 , mine: false                 , fromid: "1"             });         };     });</script></body></html>

我這里后台是直接將圖靈機器人的回復發送到前台,就是這邊就是只要解析一下就行 
這樣就可以基本實現。 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM