在Symfony2应用程序中包含Node.JS + Socket.IO

我做了很多研究,看来我找不到合适的解决办法。 我对PHP很有信心。 我也做了一些关于Node.JSSocket.IO教程,目前我正在学习Symfony2但是我看不出如何合并这两个来实现我的目标。

我的目标是为我的应用程序的后端用户设置实时通知。 这个应用程序是一个电子商务网站,我希望在pipe理面板右上angular的一个可视通知命令后立即警告幕后pipe理员。 我的服务器使用FreeBSD

我的计划是使用Node.JSSocket.IO来实现这一点。 如果有更好的计划,我愿意听到。 否则,我找不到合适的资源来告诉我如何将Node.JSSocket.IOSymfony2应用程序中。 我使用composer php安装包,但我没有使用Symfony2 NPM。

我已经find了这个问题 , 这个链接和其他问题来帮助我,但没有一个告诉我如何在Symfony2应用程序中安装Node.JS

如果有人可以帮我完成这些步骤来开始开发这个function,我会很高兴。

谢谢!

对于那些可能对这个答案感兴趣的人:

$ su -

安装Node.JS

$ cd /usr/ports/www/node

$ make install clean

安装NPM

$ cd /usr/ports/www/npm

$ make install clean

安装Socket.IO

$ cd /path/to/your/project/js/public/files

$ npm install socket.io

开发代码

app.js

 var http = require('http'); var fs = require('fs'); var server = http.createServer(function(req, res) { fs.readFile('./index.html', 'utf-8', function(error, content) { res.writeHead(200, {"Content-Type": "text/html"}); res.end(content); }); }); var io = require('socket.io').listen(server); io.sockets.on('connection', function (socket) { socket.on('newOrder', function () { socket.broadcast.emit('message', 'Nouvelle commande'); }); }); server.listen(4321); 

前端

 <script src="{{ asset('http://localhost:4321/socket.io/socket.io.js') }}"></script> <script> jQuery(function($) { var socket = io.connect('http://localhost:4321'); $('form').on('submit', function() { socket.emit('newOrder', '1'); }); }); </script> 

后端

 <script> jQuery(function($) { var socket = io.connect('http://localhost:4321'); socket.on('message', function(message) { alert(message); }); }); </script> 

启动服务器

$ node app.js

就这样!