¿Qué tecnologías estándar debo usar para crear un producto de chat web grupal en tiempo real?

Definitivamente deberías usar el protocolo XMPP. Es el estándar, utilizado por pequeñas y grandes empresas, escalable y muy ampliable. Todavía hay algunas consideraciones

  • Necesita una implementación de servidor XMPP. Para mí es una opción entre ejabberd (muy escalable, utilizado por la mayoría de los gigantes bot, tienes que aprender erlang) u OpenFire (basado en Java, no tan escalable, más fácil de administrar y configurar)
  • Necesitas un cliente Puede usar un archivo flash como proxy y usar Xiff para conectarse a su servidor XMPP. Otra opción es usar un hack de servidor push basado en http como sondeo largo, Comet, Bosh … También puedes usar Strophe para eso. XMPP tiene muchos clientes de código abierto creados para diferentes entornos de desarrollo, no debería tener problemas con eso.
  • Si también está planeando audio / video como un posible próximo paso para su producto, elija una implementación RTMP basada en flash. En el lado del servidor, puede usar uno de FMS, Wowza o Red5. Si tiene desarrolladores flash, diría que implementar el chat grupal de audio / video en flash con un backend FMS es la solución más fácil.
  • Crear un concepto de producto de chat es fácil. Algunas personas terminan implementando sus propios servidores de fondo con Python, node.js, java, etc., pero no lo recomendaría.

Echa un vistazo a http://liftweb.net . Lift tiene un soporte de sondeo largo incorporado con cometd. Novell Pulse, un clon de Google Wave está utilizando Lift para construir su producto de chat en tiempo real.

qwebirc encima de cualquier ircd dado

puede usar la configuración de freenode para probar una demostración: http://webchat.freenode.net/

es una base de código gpl python / twisted, por lo que alojar su propia copia y piratearla para que se ajuste a lo que está tratando de hacer es bastante sencillo.