ExtJS Websocket聊天应用程序

时间:2014-06-26 02:30:13

标签: extjs websocket extjs4 chat

我使用Extjs 4.2设置MVC应用程序,该应用程序具有对我的客户端的聊天支持。我正在使用ExtJS Websocket并且我遵循了这个https://market.sencha.com/extensions/ext-ux-websocket的教程,但我似乎可以在不同浏览器上向所有连接的客户端广播消息。这是我的代码:

        this.ws = Ext.create('Ext.ux.WebSocket', {
            url : 'ws://localhost:6966',
            autoReconnect : true,
            autoReconnectInterval : 1000,
            keepUnsentMessages : true,
            listeners : {
                open : function(ws) {
                    ws.send('notify', {
                        'message' : 'Connected to server!',
                        'id' : '123456'
                    });
                },
                message : function(ws, data) {
                    var data = Ext.decode(data);
                    console.log(data)
                },
                close : function(ws) {
                    var panel = Ext.getCmp('panel' + ws.url);

                    if ((panel != null) || (panel != undefined)) {
                        panel.destroy();
                    }
                }
            }
        });

        this.ws.on('notify', function(data) {
            Ext.get('chat-history').dom.innerHTML += '> ' + data.msg + '<br/>';
        });

        Ext.ux.WebSocketManager.register(this.ws);

我用它来发送/广播消息:

var data = {
            id : '123456',
            msg : 'sample message'
        };

        Ext.ux.WebSocketManager.broadcast('notify', data);

1 个答案:

答案 0 :(得分:0)

您可以试用此this链接。

您需要NodeJS和NPM。

然后,安装每个依赖项:

$ npm install

为您想要的每个端口打开websocket:

$ node demo/server.js 9001 9002 9003

然后使用您发布的代码连接您的客户。