Login Register
Obama’s Pentagon Developed The COVID Attack Plan, Warns Dr. Peter McCullough --- --- NATO’s Attempted Assassination Of Slovakian Leader Signals Total Desperation, Warns Jack Posobiec --- --- Watch: CNN Admits Trump Team Shredded Michael Cohen’s Credibility --- --- WATCH: How To Oppose The New Religion Of Secular Progressive Humanism --- --- Texas Pardons Jailed Military Veteran Who Shot & Killed Armed BLM Activist --- --- Tide Turning: Stephen A. Smith Defends Aaron Rodgers’ Covid Vaccine Skepticism --- --- No Joke: NBC Show ‘Queer Planet’ Promotes Gayness in Animal Kingdom --- --- Illegal Alien Arrested for Murdering Woman, Attacking Homeless Victims In West Virginia --- --- Watch Comedian Bill Burr Savagely Roast Bill Maher In Person --- --- Breaking! ANOTHER Anti-Globalist Politician Targeted By Assassin --- --- Trump Slams Biden for Blocking RFK Jr. from Debates --- --- Deciphering King Charles’ Baphomet Portrait --- --- Biden Invokes Executive Privilege to Block Audio of Interview with Special Counsel --- --- Alex Stein Confronts Mayor Pete At Airport – “You Suck!” --- --- Thursday War Room LIVE: Breaking! House Discovers New Biden Bank Accounts that Could Expose Direct Payments to Biden from Foreign Nations Ahead of Election! TUNE IN! --- ---



[Reply]
Forum Index > AIM/ICQ Discussion
Feature Requests
Posted on: 06-30 5:55 pm
c0n

I'm a developer... .NET, asp/vb, php, powershell, java/html/css... and I hate these threads because I know that not everything someone wants can be implemented all the time. But, for the sake of putting it out there, something I've always wanted to see on AIM is a chatroom index. In other words, a way to see what chatrooms are active. That would be cool...

BTW iWarg, I have some hardware at a colo (colocated server rack). It's a 1U Dell Poweredge running VMware (ie, i can spin up a VM) if you need it. ...and we should think up a domain name sooner than later for OSCAR/TOK/BOS. I'm sure you know how, but let me know if I can help. I use to be part owner of a web hosting company. small.. about 1000 websites and several servers. I know my way around DNS/Web a bit.

BOOM!
Posted on: 06-30 6:29 pm
tonyshowoff

The only way to have a chat index would be to have it on the web, because the client itself does not have what the AOL client does, the "Nav" feature which in part handled showing lists of chat rooms. It should be somewhat straight forward to introduce because you could do it based on the chat exchange. Speaking of chat exchanges, I hope that the limit of 25 per exchange 4/5 is not still the case because it's ridiculously low even if it's supposed to (but rarely did) overflow into a new instance.

The best place to do it would be Digital Ocean but seeing how it seems to be written in .NET (based on the screen shot and the icon) iWarg is limited to Windows hosts, unless any of those cross-platform .NET compilers work worth a damn yet, I haven't kept up with any of those.

FWIW I've been programming in PHP professionally since PHP3 in around 2000, and I also have experience with C++, but haven't done it in a little while. I've also had extensive experience with C#. In the mid-90s I was a part of the early AOL proggie community and used VB5 and VB6, then I later may or may not have worked at AOL in the late 90s which is where I applied my C++ knowledge.... or not. I'm nearly 40 years old, which I know puts me a bit older than a lot of people in this community, I'm not pulling rank on age, but making it clear that I've been doing this stuff a while and can contribute since I've worked on vast number of projects and have a vast experience and knowledge with OSCAR.
Posted on: 06-30 8:05 pm
c0n

nice tony. I think most of us nostalgic folk are in our 30's and 40's.. i don't think your far off.. because if we all grew up around the time AIM was "the thing", that would set us around the same age.

So you said you have knowledge of the protocol, have you written any of it down? That is one thing I wish I understood better. Although recently I've been digging into Xeon's VB6 server on an XP VM to understand the protocol... it seems pretty hacky TBH... I hate byte value, but back in the days of 56k and slower, it was necessary. One thing I would change is XEON is running a HTTP server to register a SN from the app... I would quickly change that to a real webserver and link the two with mysql. APACHE would be faster.

Personally, i like how his is written in .NET, i like the GUI... from the two tabs he shows, looks like he's built some interesting features. There are advantages either way. His app uses multithreaded tcp from what I read, better than Xeon. I'm sure it's possible to do a multi-threaded service on Linux, but I wouldn't know a language that could do that if I were doing it. C++ is kinda a PITA..

Do you have any resources, either yours or others? How did you acquire your knowledge of the protocol, reverse engineering sniffing?

BOOM!
Posted on: 06-30 8:45 pm
Wildman

Beta Tester

a good deal of OSCAR has been documented on iserved. if someone can get AIM 6+ ssl lib to talk to C# ssl sockets you'd win a free internet.

Hououin - your friendly neighborhood AIM server operator
Posted on: 06-30 9:05 pm
tonyshowoff

Beta Tester

> So you said you have knowledge of the protocol, have you written any of it down?

Yes, but I also just know a lot of it from years of experience. I also have code I am not sure I can share just yet, though I have began trying to email or rather even find the right damn people to email or call to find out if I can, even if shared in a private context with iWarg or some sort of committee or whatever.

As iWarg said too that the iServerd documentation is good, and it is very good, but it's missing a lot of food groups/families, et al. It is, however, on the focus of ICQ, not AIM, and not full proper implementation. His code is also fairly good too.

> That is one thing I wish I understood better. Although recently I've been digging into Xeon's VB6 server on an XP VM to understand the protoco

IIRC that was pretty limited, but Xeon is/was a very clever guy and did a lot of good research.

> it seems pretty hacky TBH

It's more organised than you'd think, though it is actually based on a hack of the original AOL protocol itself, and not many people know this. It uses Z instead of * as the start marker and also includes a CRC of the packet.

> I hate byte value, but back in the days of 56k and slower, it was necessary.

It pre-dates even that, it goes way the hell back to QuantumLink or a little after that actually, that name slips my mind at this moment.

> I would quickly change that to a real webserver and link the two with mysql. APACHE would be faster.

MySQL though introduces blocking into something which should be non-blocking. AIM used a system separate which reported things like screenname status, kept track of the state of buddies (known as Feedbag), this is opposite of, say, IRC which each server keeps the entire state. This is also why in AIM the authorizer uses a separate system and passes along a "cookie" of auth information.

> His app uses multithreaded tcp from what I read, better than Xeon.

Imagine 2,000 users if you're creating a new thread for each one, but at the present time it's not a bad way to do it.

Posted on: 06-30 9:16 pm
ohhihohello57

"I also have code I am not sure I can share just yet, though I have began trying to email or rather even find the right damn people to email or call to find out if I can"

If you do get permission from AOL/Oath staff to release the code for OSCAR, then that'd be a godsend! Would be much more easier to implement all of the services by then.

"it (OSCAR) is actually based on a hack of the original AOL protocol itself, and not many people know this."

I actually didn't know that. That's pretty cool! =O

I did read up on the protocol the original AOL clients used (on Archiveteam, FYI), but I never knew OSCAR was based on that. Although the one-byte markers did raise some suspicion to me when I read up on the QL/AOL packet structures. =p

if (Nerd->Personality == (NERD_PERSON_FRONTFACING + NERD_PERSON_SMARTALEC)) { return; }
Posted on: 06-30 9:39 pm
tonyshowoff

Well AOL's and by extension OSCAR's features of things like CRC, sequence IDs (VB programmers often call this hi and lo btyes) originate pre-TCP/IP, and are actually fairly pointless on AIM, it's why CRC was dropped (though not sequence IDs) and "token" replaced with the foodgroups which are in of themselves not all that different. And also null termination that was even included in TOC. There's always a culture of fear at any large corporation of diverging too much even if it's utterly pointless not to.
Posted on: 06-30 9:56 pm
ohhihohello57

"'token' replaced with the foodgroups"

Oh yeah, that's right. Tokens were basically the service specifiers. Didn't keep note of that. :$

"Well AOL's and by extension OSCAR's features ... originate pre-TCP/IP"

I am currently unsure if that means AOL used pure sockets for AOL communication (at one point) or if AOL did use TCP/IP, and the protocol data was carried over from QL. If it's the former, then I'd imagine having a hard time implementing some kind of alternate server for AOL.

"sequence IDs (VB programmers often call this hi and lo btyes)"

lol haven't heard that in a while. I've had my fair share of VB6 development, and even though I was pretty less-than-amateur at it (I still am, but improving a bit), it still aggravated me when I wanted to do something as simple as bit shifting or packing integers into a type, and was greeted with code that basically re-invented the wheel, consisting of meshing together "Hi" and "Lo" variables together. I had to deal with it months ago with a little IM server revival project of mine that I overall cancelled later on.

Man, will I NOT miss those. VB.NET, C#, and C++ are infinitely better at the more advanced stuff. And Python is my main man atm. =p

if (Nerd->Personality == (NERD_PERSON_FRONTFACING + NERD_PERSON_SMARTALEC)) { return; }
< - 1 - 2 - >

[Reply]