[Standards] Proposed XMPP Extension: Jingle File Transfer Description Format

Ian Paterson ian.paterson at clientside.co.uk
Wed Feb 7 18:35:01 UTC 2007

Matthias Wimmer wrote:
> Hi Scott!
> Scott Ludwig schrieb:
>> HTTP is actually quite flexible. There are many applications on the
>> web that are based on HTTP, people are familiar with the programming
>> model, and you can extrapolate other applications that can be built
>> with it.
> Thank you for your opinion to support using HTTP as an encapsulation 
> for file transfers.
> I have been advocating for using HTTP to do file transfers for a long 
> time, even when XEP-0096 has been written.
> I am also very much for using an HTTP layer inside Jingle file 
> transfers, as we get many features and extensions that are defined for 
> HTTP for free without the need to create new protocols for that again.

Oh yes!

HTTP is the *only* file transfer method that is possible for *all* 
clients (since it is the *only* way available to Web clients).

It also gets through firewalls better than any other method, and TLS/SSL 
makes it relatively secure (if you trust your server). Finally, I guess 
it's simple and easy for everyone to implement (assuming you have access 
to an HTTP library).

Here's the happy path that Web clients must follow:

1. Sender -> HTTP POST (file) -> Sender's Web server
2. Web server makes file available at a URL
3. Web server -> HTTP OK (URL) -> Sender
4. Sender -> XMPP (URL) -> Receiver
5. Receiver -> HTTP GET (URL) -> Sender's Web server
6. Web server -> HTTP OK (file) -> Receiver
7. Receiver -> XMPP (success) -> Sender

- Ian

More information about the Standards mailing list