This articleneeds additional citations forverification. Please helpimprove this article byadding citations to reliable sources. Unsourced material may be challenged and removed. Find sources: "TOC protocol" – news ·newspapers ·books ·scholar ·JSTOR(July 2016) (Learn how and when to remove this message) |
TheTOC protocol, orTalk to OSCAR protocol, was aprotocol used by somethird-partyAOL Instant Messengerclients and several clients thatAOL produced itself. Sometime near August 19, 2005, AOL discontinued support for the protocol and no longer uses it in any of the instant messaging clients it actively maintains, such as its Windows and Mac clients for the AOL Instant Messenger andICQ systems. However, it once did produce several of its own TOC clients, including TiK and TAC which are written inTcl/Tk, TNT which is written inEmacsLisp, all of which are open source, and a Java client originally calledTIC which later became theQuick Buddy web applet. AOL also provided the TOC protocol specification openly to developers in the hopes that they will use it instead of theproprietaryOSCAR protocol they use themselves. In July 2012, AOL turned off the TOC2 servers and it is no longer possible to connect to AIM using this protocol.[1]
TOC was anASCII-based protocol, while OSCAR is a binary protocol. In addition, TOC contained fewer features than its OSCAR counterpart. OSCAR provides such functionality asbuddy icons, file transfer, andadvertising.
TOC acted as awrapper for the OSCAR protocol. The TOC server was an OSCAR client that listened on asocket, translating messages between the two protocols.[2] Upon login, the TOC client specified an OSCAR login server (usually eitherlogin.oscar.aol.com orlogin.icq.com) that the TOC server used on behalf of the client.
TOC usedFLAP to encapsulate its messages just as OSCAR does, however, FLAP has been hacked in such a way that it can be implemented on the same port as anHTTP server. By default, the TOC server operated in HTTP mode, indistinguishable from a typical web server. If a connecting client, in place of an HTTP request, writes the string "FLAPON" followed by twoCRLFs, TOC would switch gears and start reading FLAP messages. Upon getting a user's profile, the client was expected to re-connect to TOC and use it as an HTTP server, which would host the user's profile inHTML.
Once connected, two basic message formats for communications inside of FLAP existed. Client-to-server messages were sent in a format resembling aUnix-style command line: commands withwhitespace-separated arguments,quoting andbackslashescape sequences. Server-to-client messages were much simpler: they were sent ascolon-separatedASCII strings, in a manner similar to manyUnix config files. Thus, it was quite easy to write a client, as the incoming messages were very easy to parse, and outgoing commands were easy to generate.
This is in contrast to OSCAR, which due to the binary representation of data can be more difficult to understand.
TheTOC2 protocol is an updated version of the TOC protocol, or "Talk to OSCAR" protocol. Its existence was never documented byAOL and it is only used in a fewAOL Instant Messenger clients. Some clients are beginning to offer plugins for TOC2 in light of AOL's recent shutdown of their TOC servers. Like its predecessor, TOC2 is an ASCII protocol and lacks some features ofOSCAR, but unlike TOC, TOC2 is known to supportbuddy icons and receiving file transfers (not sending). TOC2 operates in essentially the same way as TOC, as a wrapper for OSCAR.Porting code from TOC to TOC2 is remarkably easy as well.
Because of the similarities between TOC1.0 and TOC2.0, they are better defined by their differences, of which there are only a few: