Talk:Action Message Format

From Wikipedia, the free encyclopedia
Jump to: navigation, search

I started writing about AMF as I found too little information out there. I would love to speak with anyone knowledgeable in the format to expand this section.

AMF0 RPC vs RTMP[edit]

What you have documented is AMF as used by RTMP, but it is more common to be interested in AMF0-style RPC messaging (and the extra wrapper objects used by Flex for this). In AMF0 RPC calls, the packet format starts with a 2 byte AMF version number (0x00 followed by 0x00, 0x02, or 0x03). After that comes another 2 byte integer for the number of headers in the packet, followed by the headers themselves - a name, "must understand" flag, and the header data. Finally, another 2 byte integer for the number of "messages" in the packet, and then the messages - a target URI, response URI, and the message data. This format is documented near the end of the AMF0 spec document from Adobe. If you're looking for examples of this, check out https://github.com/rubyamf/rocketamf/tree/master/spec/fixtures/request, which I collected for testing RocketAMF. warhammerkid (talk) 16:46, 14 November 2011 (UTC)

That is very interesting. It would be good if we could collaborate on this. After your suggestion I have already moved a big part of the article into the RTMP article where I started a new section called 'Packet Structure'. Can you please post some formal illustration of what you re saying here so that we can integrate it? Thanks! Mmick66 (talk) 14:47, 7 December 2011 (UTC)

Header[edit]

I noticed that someone added a note about the AMF header not being 0x03 but 0x00 0x03. My packet traces show differently so I would love to investigate further before changing it. Can whoever wrote it add his knowledge in this page please? A packet trace would also be nice Mmick66 (talk) 11:19, 6 September 2011 (UTC)