2010-11-07 13 views
5

Quiero saber cómo puedo hacer algo como Skype o Yahoo Messenger?para desarrollar un mensajero de internet ¿qué debo hacer?

mencioné yahoo o skype porque realmente quiero que el messenger maneje muchos usuarios en línea.

soy un desarrollador de Java, pero no tengo ninguna idea para este tipo de proyectos o para VOIP y redes?

¿Puedo desarrollar algo así como un messenger solo con java? y qué otras tecnologías, marcos o cualquier otra cosa necesito para manejar este proyecto? al final, ¿puedo desarrollarlo solo? o necesito un equipo para comenzar?

+3

¿Es por diversión? si no, abandónalo, realmente. hay toneladas de mensajes instantáneos, incluidos los de código abierto. – Andrey

Respuesta

6

Supongo que lo que más necesita es conocimiento sobre la programación de red . Este es el primer paso hacia su objetivo: aprenderá cómo comunicarse entre dos hosts y entre varios de forma razonada (algunos enlaces para la programación en java net here, here y a book here). Concentre su atención en los protocolos (de bajo nivel) (y tal vez en la criptografía) y trate de detectar el correcto para sus necesidades. Tendrás que entender incluso si quieres escribir tu propio protocolo de IM (nivel uno alto) o usar uno de los existentes (Jabber, MSN, Yahoo, objetivo, etc.)

En segundo lugar, podrías echar un vistazo a un proyecto de código abierto que intenta implementar algo similar para comprender mejor cómo estructurar la arquitectura de su proyecto, las comunicaciones con el cliente, etc. Puede comenzar a buscar en algunos lib (here es uno para java y Jabber, here para Yahoo) en la web también.

Finalmente puede comenzar a diseñar su proyecto y decidir si el trabajo para hacer es más de lo que una sola persona puede soportar en un tiempo razonable y tratar de convencer a las personas que trabajan con usted. O también puede unirse a un proyecto de código abierto si encuentra alguno.

0

Probablemente quiera investigar en el zócalo. Una gran cantidad de aplicaciones de socket hechas por Java por cierto. Para la aplicación de chat simple es. Sin embargo, el video chat o VOIP necesita mucho más esfuerzo.

0

Explore java.net Aprenda la programación de socket, no es tan complicado. Acerca del manejo de múltiples clientes, su servidor debería tener múltiples hilos. Uno para cada cliente

Desarrollar un simple chat messenger no es una oferta en java. Uno puede hacer esto por sí mismo. Probablemente, incluso puede manejar múltiples clientes con multi-threading.

3

Por qué reinventar la rueda. Hay muchos softwares de código abierto en JAVA disponibles que soportan mensajería instantánea, múltiples chats, presencia y llamadas de voz y video.

Skype se basa en SIP + su propia tecnología propietaria. Entonces skype solo funcionará con skype. Olvídese de la interoperabilidad

Gtalk usa XMPP (www.xmpp.org) para sus chats, pero usa libjingle (para sesiones RTP) para llamadas de audio/video. (El protocolo libjingle y Jingle son muy similares, no son lo mismo y no son interoperables)

Yahoo, Facebook ... hay muchos mensajes instantáneos que ahora se están trasladando a XMPP. (Por qué..???debido interfuncionamiento)

Así que si usted desea crear su propia IMS, que interactúa con Gtalk, Yahoo ... toda la mensajería instantánea disponible, utilice XMPP bibliotecas. Para empezar, puede descargar la versión JAVA de XMPP - SMACK. Use su simple APIs y su mensajería instantánea está lista.

Así que si realmente quiere hacer algo interesante, invente nuevas funciones, continúe con la comunidad de código abierto, patente su idea/tecnología o véndala a grandes armas. :)

Cuestiones relacionadas