Articulo de referencia

Protocolo TOC

El protocolo TOC , o protocolo Talk to OSCAR , era utilizado por algunos clientes de terceros de AOL Instant Messenger y varios clientes desarrollados por la propia AOL . Alrede...

El protocolo TOC , o protocolo Talk to OSCAR , era utilizado por algunos clientes de terceros de AOL Instant Messenger y varios clientes desarrollados por la propia AOL . Alrededor del 19 de agosto de 2005, AOL dejó de dar soporte al protocolo y ya no lo utiliza en ninguno de los clientes de mensajería instantánea que mantiene activamente, como sus clientes para Windows y Mac de los sistemas AOL Instant Messenger e ICQ . Sin embargo, en su momento desarrolló varios clientes TOC propios, entre ellos TiK y TAC, escritos en Tcl / Tk , TNT, escrito en Emacs Lisp (todos de código abierto), y un cliente Java originalmente llamado TIC , que posteriormente se convirtió en el miniaplicativo web Quick Buddy . AOL también proporcionó la especificación del protocolo TOC abiertamente a los desarrolladores con la esperanza de que la utilizaran en lugar del protocolo propietario OSCAR que ellos mismos empleaban. En julio de 2012, AOL desactivó los servidores TOC2 y ya no es posible conectarse a AIM mediante este protocolo. [ 1 ]

TOC era un protocolo basado en ASCII , mientras que OSCAR es un protocolo binario. Además, TOC contenía menos funciones que su contraparte OSCAR. OSCAR proporciona funcionalidades como iconos de contacto (añadidos posteriormente a TOC2), transferencia bidireccional de archivos y publicidad .

Cómo funciona

TOC actuaba como un envoltorio para el protocolo OSCAR. El servidor TOC era un cliente OSCAR que escuchaba en un socket , traduciendo mensajes entre los dos protocolos. [ 2 ] Al iniciar sesión, el cliente TOC especificaba un servidor de inicio de sesión OSCAR (normalmente login.oscar.aol.com o login.icq.com ) que el servidor TOC utilizaba en nombre del cliente.

TOC utilizaba FLAP para encapsular sus mensajes, al igual que OSCAR; sin embargo, FLAP ha sido modificado para poder implementarse en el mismo puerto que un servidor HTTP . Por defecto, el servidor TOC operaba en modo HTTP, indistinguible de un servidor web típico. Si un cliente que se conectaba, en lugar de una solicitud HTTP, escribía la cadena " FLAPON " seguida de dos CRLF , TOC cambiaba de modo y comenzaba a leer mensajes FLAP. Tras obtener el perfil de un usuario, se esperaba que el cliente se reconectara a TOC y lo utilizara como servidor HTTP, que alojaría el perfil del usuario en HTML .

Una vez conectados, existían dos formatos básicos de mensajes para la comunicación dentro de FLAP. Los mensajes de cliente a servidor se enviaban en un formato similar a la línea de comandos de Unix : comandos con argumentos separados por espacios en blanco , comillas y secuencias de escape con barra invertida . Los mensajes de servidor a cliente eran mucho más sencillos: se enviaban como cadenas ASCII separadas por dos puntos , de forma similar a muchos archivos de configuración de Unix . Por lo tanto, era bastante fácil escribir un cliente, ya que los mensajes entrantes eran muy fáciles de analizar y los comandos salientes eran fáciles de generar.

Esto contrasta con OSCAR, que, debido a la representación binaria de los datos, puede resultar más difícil de entender.

TOC2

El protocolo TOC2 es una versión actualizada del protocolo TOC, o protocolo "Talk to OSCAR". AOL nunca documentó su existencia y solo se utiliza en algunos clientes de AOL Instant Messenger . Algunos clientes están empezando a ofrecer complementos para TOC2 a raíz del reciente cierre de los servidores TOC de AOL. Al igual que su predecesor, TOC2 es un protocolo ASCII y carece de algunas funciones de OSCAR , pero a diferencia de TOC, se sabe que TOC2 admite iconos de contactos y la recepción de transferencias de archivos (no el envío). TOC2 funciona esencialmente de la misma manera que TOC, como una capa de abstracción para OSCAR. Portar código de TOC a TOC2 también es notablemente sencillo.

Debido a las similitudes entre TOC1.0 y TOC2.0, se definen mejor por sus diferencias, de las cuales solo hay unas pocas:

  • En TOC1.0, conectarse con una lista de contactos vacía impedía que los demás te vieran en línea. Esto se ha corregido en TOC2.0.
  • En TOC1.0, existe el comando toc_add_deny, pero no toc_remove_deny. TOC2.0 también corrige esto.
  • El proceso de inicio de sesión es básicamente el mismo que en TOC1.0, pero con algunos parámetros nuevos: la versión, un número y un código generado a partir del nombre de usuario y la contraseña. Se desconoce la finalidad del número. El valor predeterminado es 160 y, al parecer, no tiene ningún efecto si se modifica.
  • En TOC2.0, la función de permitir y denegar permisos se ha renovado y ahora es mucho más sencilla y completa. Los comandos toc2_add_permit, toc2_remove_permit, toc2_add_deny y toc2_remove_deny están disponibles y accesibles en cualquier momento.
  • También se han mejorado los comandos de la lista de contactos. La gestión de grupos es más sencilla con los comandos toc2_new_group y toc2_del_group. Además, es posible añadir o eliminar varios contactos a la vez y seleccionar los grupos a los que pertenecen.
  • También se han introducido algunos cambios de sintaxis y se han añadido parámetros a algunos comandos. Aún no se ha determinado la función de estos parámetros.
  • Aparte de esto, los únicos cambios con respecto a TOC son que se agregó un '2' a la mayoría de los comandos tanto CLIENTE->SERVIDOR como viceversa. Por ejemplo, IM_IN2, UPDATE_BUDDY2, etc.
  • TOC2 también limita la cantidad de ScreenNames que pueden iniciar sesión desde una sola dirección IP (10).

Véase también

Referencias

  1. "Posible fin del soporte para AIM [ Actualización: Confirmado ] " . 27 de julio de 2012.
  2. Fritsch, Tobias; Voigt, Benjamin; Schiller, Jochen (marzo de 2007). "Interfaces de mensajería en juegos de próxima generación" . 4.º Foro Internacional sobre Computación Aplicada a Dispositivos Portátiles 2007 : 1–11 .
  • Especificación del protocolo TOC2 archivada el 15 de marzo de 2022 en Wayback Machine .
  • Historia de AIM, OSCAR y TOC

Implementaciones

Índice
  • Net::AIM (perl)
  • PHPTocLib (php)
  • Tik (Tcl/Tk)
  • TNT (Emacs Lisp)
  • TAC (Tcl, sin interfaz gráfica)
  • miniaim (C++)
  • SimpleAIM (Java)
TOC2
  • TOCSharp (C#)
  • Fluent.Toc (C#)
  • PHPTocLib (PHP)