Bueno como TODOS ustedes lo pidieron aqui les traigo La SEGUNDA Parte del tutorial! ! ! !, y quiero que le saquen los mayores errores de ortografia, el que mas saque erroes se lleva un premio!!! entonces a encontrar erroes!! mas que todo los que van ganando Juanma y TseTse
![]()
----------------
Mensaje Instantaneo
Mensaje instantaneo en MSN esta basado en sessiones. Las personas entre las cuales la conversacion va a tomar lugar, tiene que ser modo session. Nosotros no podemos mandar/recivir mensajes, a no ser de que iniciemos una session de chat con algun usuario.
Hay basicamente dos metodos en las cuales el usuario puede estar en una session de chat.
Ø El Usuario manda una peticion para iniciar una session de chat o
Ø El Usuario recive una peticion para iniciar una session de chat.
El cliente(usuario) manda un comando al servidor preguntandole por la direccion del “Switchboard” (SB) Server o el Servidor del Tablero de Intercambi. Todas las conversaciones instantaneas toman lugar atravez del “Switchboard” Server.
XFR 9 SB
El servidor (SB) responde con el IP del Switchboard Server. El puerto en cual conectarse y un CKI “hash” o picadillo. CKI es una paquete de seguridad y el cliente tiene que usar el hash para conectarse al Switchboard Server.
XFR 9 SB 64.4.13.88:1863 CKI 989 487 642.2070896604
Ahora nosotros devemos hacer una nueva conexion, pero ahora al servidor Switchboard, Nuestra precia conexion al MSN Messenger Server se dece dejar como esta, si nosotros perdemos conexion con ese servidor, nos vamos a desconectar.
Despues de que nos hemos conectado al Switchboard Server (SB), mandamos el siguiente comando al SB Server.
USR 1 gi_ova16@hotmail.com 989487642.2070896604
Si el hash CKI mandado por nosotros es correcto el servidor (SB) responde con esto.
USR 1 OK gi_ova16@hotmail.com eLGiOva
Despues de que esto esta hecho, el usuario tiene que “llamar” al otro usuario a la session de chat. Esto se hace mandando el siguiente comando.
CAL maurolo@hotmail.com
El servidor responde con el “id” o identificasion de la session la cual va a ser pasada al otro usuario.
CAL 2 RINGING 11717653
Cuando el otro usuario responde y esta listo para una session de chat, el servidor (SB) nos manda este comando.
JOI maurolo@hotmail.com MaUrOlo
Esto indica que el otro usuario a participado en la conversacion, y ahora estamos listos para mandar y recivir mensajes.
Usuario recive una peticion para
Iniciar session de chat.
Cuando estamos siendo invitados a una session de chat por un usuario, el servidor (NS) nos manda el siguiente mensaje.
RNG 11742066 64.4.13.74:1863 CKI 989495494.750408580
maurolo@hotmail.com MaUrOlo
Aqui el servidor (NS) nos manda el id de la session, el IP del Switchboard Server pare conectarse, y el puero por el cual conectarse, el CKI hash y el usuario tratando de iniciar una conversacion con nosotros.
Ahora necesitamos hacer una nueva conexion, esta vez al Switchboard Server. Nuestra previa conexion con el servidor de MSN se deve quedar como esta, por lo contrario nos vamos a desconectar.
ANS gi_ova16@hotmail.com 989495494.750408580 11742066
Aqui mandamos nuestro login name o nombre con el cual nos identificamos, el CKI hash que fue mandado a nosotros y el ID o identificacion de la session que fue mandada a nosotros.
El servidor responde con:
IRO 1 1 1 maurolo@hotmail.com MaUrOlo
Y
ANS 1 OK
Ahora estamos listos para mandar y recivir mensajes. Antes de mandar/recivir mensajes, vamos a ver como esta formado el mensaje.
Cuando estamos mandando un mensaje, nosotros armamos la informacion del header o encabesado de la siguiente manera:
MIME-Version: 1.0
Content-Type: text/plain; charset = UTF-8
X-MMS-IM-Format: IN=Microsoft %20Sans%20Serif; EF=; CO=0; PF=22
Mientras mandamos un mensaje, lo hacemos de la siguiente manera.
MSG 2 N 137
MIME-Version: 1.0
Content-Type: Text /Plain; charset =UTF-8
X-MMS-IM-Format: IN=Microsoft %20Sans%20Serif; EF=; CO=0; PF=22
Hola
Aqui 2 es un “trial id” o un ejemplo el cual tiene que incrementar cada vez que mandamos un mensaje, 137 es la longitud limite de un mensaje
Ejemplo: longitud del header y longitud del mensaje actual en este caso es “hola”
Mientras recivimos el mensaje es mas o menos parecido.
Aqui hay un ejemplo del mensaje recivido;
MSG maurolo@hotmail.com MaUrOlo 137
MIME-Verion: 1.0
Content-Type: Text/plain; charset =UTF-8
X-MMS-IM-Format: IN=Microsoft %20Sans%20Serif; EF=; CO=0; PF=22
Hola
Cuando el usuario esta mandando un mensaje, nosotros recivimos un aviso de mensaje
MSG maurolo@hotmail.com MaUrOlo 100
MIME-Verion: 1.0
Content-Type: Text/x-msmsgcontrol
TypingUser: maurolo@hotmail.com
Yo creo que ahora ustedes estan listos para crear su propia version de MSN Messenger.
Voy a tratar de seguil anadiendo al protocolo, para ponerle las siguientes funciones:
Ø Añadir y Remover Usuario
Ø Renombrar el ‘id” de Usuario
Ø Transferencia de Archivos
Ø Chat de voz
-------------
Muchisimas gracias a Th3 CrOw y a eXcalibur, por apoyarme
Marcadores