Conectar eventos de symfony a node.js

519 views
Skip to first unread message

Paco Garat

unread,
Nov 14, 2012, 5:27:51 PM11/14/12
to symfony...@googlegroups.com
Hola, estoy haciendo un sistema por el cual cuando una entidad es modificada en symfony llama a node.js que actualiza los navegadores de todos los usuarios que estén conectados en ese momento. Ya he hecho las dos partes por separado (symfony y websocket con node.js).

Lo que no se es cómo conectar symfony (servidor) con node.js (servidor) para mandarle un mensaje, ya que hasta ahora tengo a todos los clientes (navegadores) conectados a node.js pero no symfony.

Alguna ayuda??

Francisco Javier Aceituno Lapido

unread,
Nov 14, 2012, 6:28:37 PM11/14/12
to symfony...@googlegroups.com

Muy buenas.

Ese problema le tuve yo hace muy poco.

Para comunicar la aplicación PHP (sf2) y la aplicación nodejs lo hice utilizando una cola de mensajes como RabbitMQ. Desde sf2 escribia en la cola y desde nodejs leia y enviaba la info a todos los clientes.

Aqui tienes un video que te puede servir de ayuda

http://symfony.com/video/1/realtime-web-apps-with-websockets/English

Espero que te sirva.

Javi

--
 
 

daniel....@freelancemadrid.es

unread,
Nov 14, 2012, 6:29:20 PM11/14/12
to symfony...@googlegroups.com
a) una petición http

<?php

file_get_contents('path/node/'):

b) una petición del sistema

<?php

exec('path/node/'):




2012/11/14 Paco Garat <paco...@gmail.com>
Hola, estoy haciendo un sistema por el cual cuando una entidad es modificada en symfony llama a node.js que actualiza los navegadores de todos los usuarios que estén conectados en ese momento. Ya he hecho las dos partes por separado (symfony y websocket con node.js).

Lo que no se es cómo conectar symfony (servidor) con node.js (servidor) para mandarle un mensaje, ya que hasta ahora tengo a todos los clientes (navegadores) conectados a node.js pero no symfony.

Alguna ayuda??

--
 
 



--
-------------------------------------------------------------------------------------
Daniel González Cerviño
Developer http://desarrolla2.com
Tel (+34) 653 96 50 48
Mail daniel....@freelancemadrid.es
Twiter: http://twitter.com/desarrolla2
Linkedin: http://www.linkedin.com/in/desarrolla2
Github: https://github.com/desarrolla2
-------------------------------------------------------------------------------------

Nacho Martín

unread,
Nov 14, 2012, 6:31:30 PM11/14/12
to symfony...@googlegroups.com
Hola,

yo estoy haciendo últimamente algo parecido, usando node con websockets para notificaciones y chats. Yo creo que puedes usar o bien mensajería como RabbitMQ o bien si no necesitas tanta cosa puedes hacer que node escuche en un puerto a peticiones http y que Symfony, con curl o con el cliente http que quieras, se conecte por http al servidor de node.

Cuando tiré con esto el problema más grande que encontré fue el de la autentificación de los usuarios en websockets con node, para saber a qué usuario corresponse cada navegador o conexión de websockets. Una posibilidad es compartir la base de datos entre node y Symfony. Otra es montarte una autentificación cuando el usuario se conecta por websockets y envías de alguna forma datos cifrados que node pueda descifrar y extraer el nombre del usuario, su id, o lo que te haga falta. Es un poco folloncete esto. El esquema sería parecido a este http://i.stack.imgur.com/dx5uS. Si quieres puedo pasarte trozos código con esta última solución.

Y si encuentras una forma sabia de hacer estas cosas, por favor comparte amigou :)


2012/11/14 Paco Garat <paco...@gmail.com>
Hola, estoy haciendo un sistema por el cual cuando una entidad es modificada en symfony llama a node.js que actualiza los navegadores de todos los usuarios que estén conectados en ese momento. Ya he hecho las dos partes por separado (symfony y websocket con node.js).


Lo que no se es cómo conectar symfony (servidor) con node.js (servidor) para mandarle un mensaje, ya que hasta ahora tengo a todos los clientes (navegadores) conectados a node.js pero no symfony.

Alguna ayuda??

--
 
 

Nacho Martín

unread,
Nov 14, 2012, 6:34:35 PM11/14/12
to symfony...@googlegroups.com
Por cierto, vi que en ofertixMon (el sistema de monitorización de Ofertix) usan websockets con PHP. ¿Alguien ha usado websockets con PHP y puede compartir la experiencia? ¿Es buena solución para este tipo de situaciones?

2012/11/15 Nacho Martín <nitram...@gmail.com>

Moises Gallego

unread,
Nov 28, 2012, 11:00:40 AM11/28/12
to symfony...@googlegroups.com
El mes que viene vamos a intentar dar una charla en SF-Madrid sobre el tema, la dará Javier Aceituno, por si le quieres preguntar (que bonito es repartir marrones xD)


--
 
 



--
-- 
Moisés Gallego
Blog:    http://moidev.com
twitter: @moisesgallego
Reply all
Reply to author
Forward
0 new messages