A web messenger with Flash CS3?

Hello all,

I’d like to write my own messenger with the use of Flash, but as I’ve up to now only created either simple games or static website elements, my knowledge in the topic is rather poor.
So, to the point - I understand that I need 3 key elements to have all of this working - a client software that I intend to write in Flash CS3, some database to hold the necessary information, and something acting as a server to mediate between the two.
I have up to now browsed through the internet and looked for possible solutions to the concept, I’ve also asked on other forums, but with no major luck up to now.
All my hope is in kirupa now (which I visit from time to time since Flash MX appeared on the surface of our planet :wink: ).
The problem is that I have no idea what would be best for the middle tier in this messenger concept. I’ve come across tons of possible applications that I perhaps could use, but am not sure as all of this is totally new for me, yet I would like to start off with getting quickly stuck because what I wanted to do first was just impossible.
For communication between Flash written apps and some server side apps I see that there are XMLSockets (yet this seems to be a very old approach and I’m guessing there is something better these days) and that there is Flash Remoting ( also around for a couple of years, but I see that there is AMFPHP which perhaps is what I need - again, perhaps, as I won’t be sure till somebody confirms that or I check myself ).
Then there’s a bunch of things Adobe offers - Coldfusion 8 (free Developer Edition), Flash Media Server 3 (free and with a limit of up to 10 connections, but that’s ok in my case).
Then there’s Flex SDK and Adobe AIR, which I’m not even sure if can in anyway help me out, as I’ve just read a bit on what those are actually … and I also found Red5 …

Well, to sum up, all this has made me more confused than actually helped. I’m not quite sure now where to start with - tho it seems logical to first set up a server and then start to write the client and test some simple communication routines … and the problem with browsing new technologies is that in this case I really need to know their limitations, so to not end up being stuck after say 3 months, but we all know limitations are only known to the experienced.

If anybody can clear up the world of flash related technologies that I’ve just mentioned, or even suggest what would be the best course of action here - I’d be really very grateful. All of this is purely educational of course, hence why I’m looking for free technologies.

Cheers !