Last week I stumbled across the checkBandwidth() API between FMS/AMS and clients: http://help.adobe.com/en_US/FlashMediaServer/3.5_Deving/WS5b3ccc516d4f bf351e63e3d11a0773d56e-7ffa.html
When I tried this out with apps that basically just do nothing but poll that, I get erratic readings all the time. This is between different clients, different networks, and different versions of FMS/AMS. The documentation for AMS 5.0 isn't even much different from the documentation for FMS 3.5, which was in that link above. The readings tend to come back saying anything at all between 0 and maybe 140,000 Kbps, constantly changing from one extreme to the other, and to everything in between. Sometimes they'll just sit at 0, when I know they have very good, very stable upload and download speeds and are able to communicate with the FMS quite well. This is wrong behavior.
I would just write this off as something that just doesn't work, but like I said, the documentation between FMS 3.5 and AMS 5.0 is very similar, and we've actually tested this with FMS 4.0, FMS 4.5, and AMS 5.0. If it were a piece of API that just so blatantly refused to work, my hope would be that Adobe would either abandon it or fix it.
We're not doing anything complex at all here. We use the API exactly as is documented, and we have a timer that will put in a two delay after getting results back, then make another call. Is there something more to the story?