https://wiki.xmpp.org/web/index.php?title=Psi_JFT&feed=atom&action=historyPsi JFT - Revision history2024-03-28T14:47:27ZRevision history for this page on the wikiMediaWiki 1.37.1https://wiki.xmpp.org/web/index.php?title=Psi_JFT&diff=13330&oldid=prevNeustradamus at 02:00, 17 December 20202020-12-17T02:00:26Z<p></p>
<table style="background-color: #fff; color: #202122;" data-mw="interface">
<col class="diff-marker" />
<col class="diff-content" />
<col class="diff-marker" />
<col class="diff-content" />
<tr class="diff-title" lang="en">
<td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Older revision</td>
<td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Revision as of 02:00, 17 December 2020</td>
</tr><tr><td colspan="2" class="diff-lineno" id="mw-diff-left-l3">Line 3:</td>
<td colspan="2" class="diff-lineno">Line 3:</td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Overview ==</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Overview ==</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>[<del style="font-weight: bold; text-decoration: none;">http</del>://xmpp.org/extensions/xep-0166.html Jingle] File Transfer is a [http://www.google.com Google] [http://code.google.com/soc Summer of Code 2006] project for [<del style="font-weight: bold; text-decoration: none;">http</del>://<del style="font-weight: bold; text-decoration: none;">www.jabber</del>.org <del style="font-weight: bold; text-decoration: none;">Jabber</del>] and [http://www.psi-im.org Psi] been developed by [[User:Murilo|Murilo Belluzzo]]. You can access other students' projects [[Summer of Code 2006|here]].</div></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>[<ins style="font-weight: bold; text-decoration: none;">https</ins>://xmpp.org/extensions/xep-0166.html Jingle] File Transfer is a [http://www.google.com Google] [http://code.google.com/soc Summer of Code 2006] project for [<ins style="font-weight: bold; text-decoration: none;">https</ins>://<ins style="font-weight: bold; text-decoration: none;">xmpp</ins>.org <ins style="font-weight: bold; text-decoration: none;">XMPP</ins>] and [http://www.psi-im.org Psi] been developed by [[User:Murilo|Murilo Belluzzo]]. You can access other students' projects [[Summer of Code 2006|here]].</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>The objective is to implement the File Transfer system as a media session for Jingle since the manner in which p2p connections are established (even with [http://en.wikipedia.org/wiki/Firewall_(networking) Firewalls] and [http://en.wikipedia.org/wiki/Network_address_translation NAT devices] involved) is one of the main reasons for its success and also makes it relatively easy to implement any kind of media session.</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>The objective is to implement the File Transfer system as a media session for Jingle since the manner in which p2p connections are established (even with [http://en.wikipedia.org/wiki/Firewall_(networking) Firewalls] and [http://en.wikipedia.org/wiki/Network_address_translation NAT devices] involved) is one of the main reasons for its success and also makes it relatively easy to implement any kind of media session.</div></td></tr>
<tr><td colspan="2" class="diff-lineno" id="mw-diff-left-l28">Line 28:</td>
<td colspan="2" class="diff-lineno">Line 28:</td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>'''Synopsis'''</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>'''Synopsis'''</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div> The objective of this project is to help the <del style="font-weight: bold; text-decoration: none;">Jabber </del>team in finishing a XEP that defines a media description format for Jingle File Transfer sessions and, as soon as this XEP is released, write a module that implements this functionality for the Psi client.</div></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div> The objective of this project is to help the <ins style="font-weight: bold; text-decoration: none;">XMPP </ins>team in finishing a XEP that defines a media description format for Jingle File Transfer sessions and, as soon as this XEP is released, write a module that implements this functionality for the Psi client.</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> As the manner of establishing p2p connections is one of the main reasons for Jingle's success, having a File Transfer system based in it would have a much better result in comparison with the methods used nowadays.</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> As the manner of establishing p2p connections is one of the main reasons for Jingle's success, having a File Transfer system based in it would have a much better result in comparison with the methods used nowadays.</div></td></tr>
<tr><td colspan="2" class="diff-lineno" id="mw-diff-left-l35">Line 35:</td>
<td colspan="2" class="diff-lineno">Line 35:</td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>'''Benefits to Community:'''</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>'''Benefits to Community:'''</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>* Define a good and modern standard for file transfer sessions will allow for all <del style="font-weight: bold; text-decoration: none;">Jabber </del>users to get use of this service from any IM Client they choose;</div></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>* Define a good and modern standard for file transfer sessions will allow for all <ins style="font-weight: bold; text-decoration: none;">XMPP </ins>users to get use of this service from any IM Client they choose;</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>* Improvement of the file transfer system of <del style="font-weight: bold; text-decoration: none;">Jabber </del>protocol;</div></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>* Improvement of the file transfer system of <ins style="font-weight: bold; text-decoration: none;">XMPP </ins>protocol;</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>* Bitrate improvements on file transfers for users behind NAT/Firewall, because they will be able to transfer data through direct connections instead of connections intermediated by a server;</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>* Bitrate improvements on file transfers for users behind NAT/Firewall, because they will be able to transfer data through direct connections instead of connections intermediated by a server;</div></td></tr>
<tr><td colspan="2" class="diff-lineno" id="mw-diff-left-l55">Line 55:</td>
<td colspan="2" class="diff-lineno">Line 55:</td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>'''Project Details:'''</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>'''Project Details:'''</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div> Currently, the defined methods for file transfers in the <del style="font-weight: bold; text-decoration: none;">Jabber </del>protocol weren't widely-adopted by <del style="font-weight: bold; text-decoration: none;">Jabber/</del>XMPP clients. Each one has either their own implementation or no implementation at all, which made file transfer very dependent on the client used on both sides.</div></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div> Currently, the defined methods for file transfers in the <ins style="font-weight: bold; text-decoration: none;">XMPP </ins>protocol weren't widely-adopted by XMPP clients. Each one has either their own implementation or no implementation at all, which made file transfer very dependent on the client used on both sides.</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> With Jingle offering a standard for initiating and managing peer-to-peer sessions, in order to serve as a base for all bytestream-based services, nothing more logical than using it to define File Transfers in the same way that is being done with Audio and Video, making it easier to implement by other clients.</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> With Jingle offering a standard for initiating and managing peer-to-peer sessions, in order to serve as a base for all bytestream-based services, nothing more logical than using it to define File Transfers in the same way that is being done with Audio and Video, making it easier to implement by other clients.</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div> The XEP that defines this has already been started by the <del style="font-weight: bold; text-decoration: none;">Jabber </del>team, so I would be working with them to help finish it (with a prototype implementation to help with testing) and afterwards implement a reference module for Psi.</div></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div> The XEP that defines this has already been started by the <ins style="font-weight: bold; text-decoration: none;">XMPP </ins>team, so I would be working with them to help finish it (with a prototype implementation to help with testing) and afterwards implement a reference module for Psi.</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> My motivation for this project is quite strong : I'm behind a NAT/Firewall and I can't make efficient file transfers on any IM clients, so I would be really glad to solve this problem.</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> My motivation for this project is quite strong : I'm behind a NAT/Firewall and I can't make efficient file transfers on any IM clients, so I would be really glad to solve this problem.</div></td></tr>
<tr><td colspan="2" class="diff-lineno" id="mw-diff-left-l72">Line 72:</td>
<td colspan="2" class="diff-lineno">Line 72:</td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>- 0.0.1 - Work in the protocol:</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>- 0.0.1 - Work in the protocol:</div></td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div> - Start working at the protocol definition with the responsible group at <del style="font-weight: bold; text-decoration: none;">Jabber</del>;</div></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div> - Start working at the protocol definition with the responsible group at <ins style="font-weight: bold; text-decoration: none;">XMPP</ins>;</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> - Implement a prototype to help with the validation of the XEP;</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> - Implement a prototype to help with the validation of the XEP;</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
</table>Neustradamushttps://wiki.xmpp.org/web/index.php?title=Psi_JFT&diff=5314&oldid=prevNeustradamus at 21:21, 24 July 20102010-07-24T21:21:22Z<p></p>
<table style="background-color: #fff; color: #202122;" data-mw="interface">
<col class="diff-marker" />
<col class="diff-content" />
<col class="diff-marker" />
<col class="diff-content" />
<tr class="diff-title" lang="en">
<td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Older revision</td>
<td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Revision as of 21:21, 24 July 2010</td>
</tr><tr><td colspan="2" class="diff-lineno" id="mw-diff-left-l28">Line 28:</td>
<td colspan="2" class="diff-lineno">Line 28:</td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>'''Synopsis'''</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>'''Synopsis'''</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div> The objective of this project is to help the Jabber team in finishing a <del style="font-weight: bold; text-decoration: none;">JEP </del>that defines a media description format for Jingle File Transfer sessions and, as soon as this <del style="font-weight: bold; text-decoration: none;">JEP </del>is released, write a module that implements this functionality for the Psi client.</div></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div> The objective of this project is to help the Jabber team in finishing a <ins style="font-weight: bold; text-decoration: none;">XEP </ins>that defines a media description format for Jingle File Transfer sessions and, as soon as this <ins style="font-weight: bold; text-decoration: none;">XEP </ins>is released, write a module that implements this functionality for the Psi client.</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> As the manner of establishing p2p connections is one of the main reasons for Jingle's success, having a File Transfer system based in it would have a much better result in comparison with the methods used nowadays.</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> As the manner of establishing p2p connections is one of the main reasons for Jingle's success, having a File Transfer system based in it would have a much better result in comparison with the methods used nowadays.</div></td></tr>
<tr><td colspan="2" class="diff-lineno" id="mw-diff-left-l46">Line 46:</td>
<td colspan="2" class="diff-lineno">Line 46:</td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>'''Deliverables:'''</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>'''Deliverables:'''</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>* A <del style="font-weight: bold; text-decoration: none;">JEP </del>that defines a media description format for Jingle File Transfer sessions;</div></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>* A <ins style="font-weight: bold; text-decoration: none;">XEP </ins>that defines a media description format for Jingle File Transfer sessions;</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>* A module implementing the Jingle File Transfer functionality for Psi;</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>* A module implementing the Jingle File Transfer functionality for Psi;</div></td></tr>
<tr><td colspan="2" class="diff-lineno" id="mw-diff-left-l59">Line 59:</td>
<td colspan="2" class="diff-lineno">Line 59:</td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> With Jingle offering a standard for initiating and managing peer-to-peer sessions, in order to serve as a base for all bytestream-based services, nothing more logical than using it to define File Transfers in the same way that is being done with Audio and Video, making it easier to implement by other clients.</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> With Jingle offering a standard for initiating and managing peer-to-peer sessions, in order to serve as a base for all bytestream-based services, nothing more logical than using it to define File Transfers in the same way that is being done with Audio and Video, making it easier to implement by other clients.</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div> The <del style="font-weight: bold; text-decoration: none;">JEP </del>that defines this has already been started by the Jabber team, so I would be working with them to help finish it (with a prototype implementation to help with testing) and afterwards implement a reference module for Psi.</div></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div> The <ins style="font-weight: bold; text-decoration: none;">XEP </ins>that defines this has already been started by the Jabber team, so I would be working with them to help finish it (with a prototype implementation to help with testing) and afterwards implement a reference module for Psi.</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> My motivation for this project is quite strong : I'm behind a NAT/Firewall and I can't make efficient file transfers on any IM clients, so I would be really glad to solve this problem.</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> My motivation for this project is quite strong : I'm behind a NAT/Firewall and I can't make efficient file transfers on any IM clients, so I would be really glad to solve this problem.</div></td></tr>
<tr><td colspan="2" class="diff-lineno" id="mw-diff-left-l73">Line 73:</td>
<td colspan="2" class="diff-lineno">Line 73:</td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>- 0.0.1 - Work in the protocol:</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>- 0.0.1 - Work in the protocol:</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> - Start working at the protocol definition with the responsible group at Jabber;</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> - Start working at the protocol definition with the responsible group at Jabber;</div></td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div> - Implement a prototype to help with the validation of the <del style="font-weight: bold; text-decoration: none;">JEP</del>;</div></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div> - Implement a prototype to help with the validation of the <ins style="font-weight: bold; text-decoration: none;">XEP</ins>;</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>- 0.0.2 - Implement the Protocol:</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>- 0.0.2 - Implement the Protocol:</div></td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div> (As soon as the <del style="font-weight: bold; text-decoration: none;">JEP </del>concerning to the Jingle File Transfer is released)</div></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div> (As soon as the <ins style="font-weight: bold; text-decoration: none;">XEP </ins>concerning to the Jingle File Transfer is released)</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> - Start the definitive implementation using Psi;</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> - Start the definitive implementation using Psi;</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td colspan="2" class="diff-lineno" id="mw-diff-left-l100">Line 100:</td>
<td colspan="2" class="diff-lineno">Line 100:</td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>[http://xmpp.org/extensions/xep-0166.html XEP-0166: Jingle]</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>[http://xmpp.org/extensions/xep-0166.html XEP-0166: Jingle]</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>[http://code.google.com/apis/talk/libjingle/ <del style="font-weight: bold; text-decoration: none;">libJingle</del>]</div></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>[http://code.google.com/apis/talk/libjingle/ <ins style="font-weight: bold; text-decoration: none;">libjingle</ins>]</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>[http://ejabberd.jabber.ru/ ejabberd]</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>[http://ejabberd.jabber.ru/ ejabberd]</div></td></tr>
</table>Neustradamushttps://wiki.xmpp.org/web/index.php?title=Psi_JFT&diff=5313&oldid=prevNeustradamus at 21:18, 24 July 20102010-07-24T21:18:14Z<p></p>
<table style="background-color: #fff; color: #202122;" data-mw="interface">
<col class="diff-marker" />
<col class="diff-content" />
<col class="diff-marker" />
<col class="diff-content" />
<tr class="diff-title" lang="en">
<td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Older revision</td>
<td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Revision as of 21:18, 24 July 2010</td>
</tr><tr><td colspan="2" class="diff-lineno" id="mw-diff-left-l100">Line 100:</td>
<td colspan="2" class="diff-lineno">Line 100:</td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>[http://xmpp.org/extensions/xep-0166.html XEP-0166: Jingle]</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>[http://xmpp.org/extensions/xep-0166.html XEP-0166: Jingle]</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>[http://code.google.com/apis/talk/ <del style="font-weight: bold; text-decoration: none;">LibJingle</del>]</div></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>[http://code.google.com/apis/talk/<ins style="font-weight: bold; text-decoration: none;">libjingle/ libJingle</ins>]</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>[http://ejabberd.jabber.ru/ ejabberd]</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>[http://ejabberd.jabber.ru/ ejabberd]</div></td></tr>
</table>Neustradamushttps://wiki.xmpp.org/web/index.php?title=Psi_JFT&diff=5312&oldid=prevNeustradamus at 21:11, 24 July 20102010-07-24T21:11:08Z<p></p>
<p><b>New page</b></p><div>= Jingle File Transfer for Psi =<br />
<br />
== Overview ==<br />
<br />
[http://xmpp.org/extensions/xep-0166.html Jingle] File Transfer is a [http://www.google.com Google] [http://code.google.com/soc Summer of Code 2006] project for [http://www.jabber.org Jabber] and [http://www.psi-im.org Psi] been developed by [[User:Murilo|Murilo Belluzzo]]. You can access other students' projects [[Summer of Code 2006|here]].<br />
<br />
The objective is to implement the File Transfer system as a media session for Jingle since the manner in which p2p connections are established (even with [http://en.wikipedia.org/wiki/Firewall_(networking) Firewalls] and [http://en.wikipedia.org/wiki/Network_address_translation NAT devices] involved) is one of the main reasons for its success and also makes it relatively easy to implement any kind of media session.<br />
<br />
Expecting to achieve an efficient file transfer system, mainly for users behind Firewall/NAT that currently transfer files through a server which causes low transfer rates.<br />
<br />
== Releases ==<br />
Darcs patchs:<br />
<br />
[http://www.fee.unicamp.br/~belluzzo/20060821035414-71e84-933897e2869c7471e5454a5a6492c67d27176e87.gz New files]<br />
<br />
[http://www.fee.unicamp.br/~belluzzo/20060821042041-71e84-8a1eee2bdcd1f5595292d342e0c037ba8eb54e64.gz Psi Adaptation]<br />
<br />
Project on Google Hosting:<br />
<br />
[http://code.google.com/p/psi-jft/ Psi-JFT]<br />
<br />
== Original Project Proposal ==<br />
Summer of Code 2006 Project Proposal for Jabber Software Foundation<br />
<br />
''(Personal info removed)''<br />
<br />
<br />
'''Synopsis'''<br />
<br />
The objective of this project is to help the Jabber team in finishing a JEP that defines a media description format for Jingle File Transfer sessions and, as soon as this JEP is released, write a module that implements this functionality for the Psi client.<br />
<br />
As the manner of establishing p2p connections is one of the main reasons for Jingle's success, having a File Transfer system based in it would have a much better result in comparison with the methods used nowadays.<br />
<br />
<br />
'''Benefits to Community:'''<br />
<br />
* Define a good and modern standard for file transfer sessions will allow for all Jabber users to get use of this service from any IM Client they choose;<br />
<br />
* Improvement of the file transfer system of Jabber protocol;<br />
<br />
* Bitrate improvements on file transfers for users behind NAT/Firewall, because they will be able to transfer data through direct connections instead of connections intermediated by a server;<br />
<br />
* The increased number of successful p2p connections will reduce server's overload.<br />
<br />
<br />
'''Deliverables:'''<br />
<br />
* A JEP that defines a media description format for Jingle File Transfer sessions;<br />
<br />
* A module implementing the Jingle File Transfer functionality for Psi;<br />
<br />
* Documentation for future maintenance and improvement the code;<br />
<br />
<br />
'''Project Details:'''<br />
<br />
Currently, the defined methods for file transfers in the Jabber protocol weren't widely-adopted by Jabber/XMPP clients. Each one has either their own implementation or no implementation at all, which made file transfer very dependent on the client used on both sides.<br />
<br />
With Jingle offering a standard for initiating and managing peer-to-peer sessions, in order to serve as a base for all bytestream-based services, nothing more logical than using it to define File Transfers in the same way that is being done with Audio and Video, making it easier to implement by other clients.<br />
<br />
The JEP that defines this has already been started by the Jabber team, so I would be working with them to help finish it (with a prototype implementation to help with testing) and afterwards implement a reference module for Psi.<br />
<br />
My motivation for this project is quite strong : I'm behind a NAT/Firewall and I can't make efficient file transfers on any IM clients, so I would be really glad to solve this problem.<br />
<br />
In order to achieve this, the following milestones are set up:<br />
<br />
- 0.0.0 - Preparation:<br />
- Get in contact with Peter-StPeter of Jabber Software Foundation;<br />
- Get in contact with the Psi responsible;<br />
- Gather all the available documentation;<br />
- Update all my knowledge about the current status of the work;<br />
<br />
- 0.0.1 - Work in the protocol:<br />
- Start working at the protocol definition with the responsible group at Jabber;<br />
- Implement a prototype to help with the validation of the JEP;<br />
<br />
- 0.0.2 - Implement the Protocol:<br />
(As soon as the JEP concerning to the Jingle File Transfer is released)<br />
- Start the definitive implementation using Psi;<br />
<br />
- 0.1.0 - First Prototype:<br />
- Write the module that implements the Jingle File Transfer functionality for Psi;<br />
- Design Test Cases;<br />
<br />
- 0.1.1 - Test Phase:<br />
- Test the module as much as possible;<br />
- Fix all bugs founded;<br />
<br />
- 0.2.0 - Beta Release:<br />
- Module with a good maturity level and ready to be tested by the community;<br />
- Fix all remaining bugs;<br />
<br />
- 1.0.0 - Finished:<br />
- Jingle File transfer module ready to be merged with the Psi main tree;<br />
- End of the summer of code project;<br />
<br />
== References ==<br />
[http://psi-im.org/ Psi]<br />
<br />
[http://xmpp.org/extensions/xep-0166.html XEP-0166: Jingle]<br />
<br />
[http://code.google.com/apis/talk/ LibJingle]<br />
<br />
[http://ejabberd.jabber.ru/ ejabberd]<br />
<br />
[http://www.students.ic.unicamp.br/~ra016971/application-jft-jabber.txt My application]<br />
<br />
[[Category:Summer of Code 2006]]</div>Neustradamushttps://wiki.xmpp.org/web/index.php?title=Psi_JFT&diff=5274&oldid=prevNyco: s/Trasnfer/Transfer2006-06-02T17:41:27Z<p>s/Trasnfer/Transfer</p>
<p><b>New page</b></p><div>= Jingle File Transfer for Psi =<br />
<br />
== Overview ==<br />
<br />
[http://www.jabber.org/jeps/jep-0166.html Jingle] File Transfer is a [http://www.google.com Google] [http://code.google.com/soc Summer of Code 2006] project for [http://www.jabber.org Jabber] and [http://www.psi-im.org Psi] been developed by [[User:Murilo|Murilo Belluzzo]]. You can access other students' projects [[Summer of Code 2006|here]].<br />
<br />
The objective is to implement the File Transfer system as a media session for Jingle since the manner in which p2p connections are established (even with [http://en.wikipedia.org/wiki/Firewall_(networking) Firewalls] and [http://en.wikipedia.org/wiki/Network_address_translation NAT devices] involved) is one of the main reasons for its success and also makes it relatively easy to implement any kind of media session.<br />
<br />
Expecting to achieve an efficient file transfer system, mainly for users behind Firewall/NAT that currently transfer files through a server which causes low transfer rates.<br />
<br />
== Releases ==<br />
<br />
== Progress ==<br />
''I copied this from [[User:Kevin|Kevin]]''<br />
<br />
=== Week 1 and 2 ===<br />
<br />
====(24th - 31st May)====<br />
<br />
This week was dificult because of google delays and a big exam that I had. I also had some problems with qca-beta2 but Kevin help me. I began to study the code of the libs involved and Psi between one exam and other. I still have to check somethings with more calm but isn't much.<br />
<br />
* Install Darcs - done;<br />
<br />
* Contact the other Jabber students - done;<br />
<br />
* Contact Psi project leader (Kevin) - done;<br />
<br />
* Checkout ejabberd and start a server - postponed;<br />
<br />
* Checkout Psi - done;<br />
<br />
* Install necessary libs (ortp, speex, qt-4.1.2 and qca) - done;<br />
<br />
* How to make a good use of darcs - done (but do not put in practice yet :( );<br />
<br />
* Psi code conventions - done;<br />
<br />
* Contact my mentor - done;<br />
<br />
* Google Burocracy days;<br />
<br />
====(1st - 3th June)====<br />
<br />
At this point I have a real overview of the project in my mind. I hope to put this in a diagram or something like this if I to conclude its necessary just to help me through the project and start write the code (Yeah I'm late but isn't fair to compair us to Kevin! He know the hole project with closed eyes !! :P ).<br />
<br />
* 1sh - Google Last Burocracy day;<br />
<br />
* To study LibJingle - 40%;<br />
<br />
* To study Psi source - 50%;<br />
<br />
* To study JEP-0166 - 50%; <br />
<br />
* Design fase begin - 10%;<br />
<br />
* Start to do some code finally ! I was getting bored! - 0%;<br />
<br />
* To study JEP-0176, 0177 and 0179 just to clarify somethings - 0%;<br />
<br />
=== Week 3 (4 - 10 June)===<br />
<br />
== Original Project Proposal ==<br />
Summer of Code 2006 Project Proposal for Jabber Software Foundation<br />
<br />
''(Personal info removed)''<br />
<br />
<br />
'''Synopsis'''<br />
<br />
The objective of this project is to help the Jabber team in finishing a JEP that defines a media description format for Jingle File Transfer sessions and, as soon as this JEP is released, write a module that implements this functionality for the Psi client.<br />
<br />
As the manner of establishing p2p connections is one of the main reasons for Jingle's success, having a File Transfer system based in it would have a much better result in comparison with the methods used nowadays.<br />
<br />
<br />
'''Benefits to Community:'''<br />
<br />
* Define a good and modern standard for file transfer sessions will allow for all Jabber users to get use of this service from any IM Client they choose;<br />
<br />
* Improvement of the file transfer system of Jabber protocol;<br />
<br />
* Bitrate improvements on file transfers for users behind NAT/Firewall, because they will be able to transfer data through direct connections instead of connections intermediated by a server;<br />
<br />
* The increased number of successful p2p connections will reduce server's overload.<br />
<br />
<br />
'''Deliverables:'''<br />
<br />
* A JEP that defines a media description format for Jingle File Transfer sessions;<br />
<br />
* A module implementing the Jingle File Transfer functionality for Psi;<br />
<br />
* Documentation for future maintenance and improvement the code;<br />
<br />
<br />
'''Project Details:'''<br />
<br />
Currently, the defined methods for file transfers in the Jabber protocol weren't widely-adopted by Jabber/XMPP clients. Each one has either their own implementation or no implementation at all, which made file transfer very dependent on the client used on both sides.<br />
<br />
With Jingle offering a standard for initiating and managing peer-to-peer sessions, in order to serve as a base for all bytestream-based services, nothing more logical than using it to define File Transfers in the same way that is being done with Audio and Video, making it easier to implement by other clients.<br />
<br />
The JEP that defines this has already been started by the Jabber team, so I would be working with them to help finish it (with a prototype implementation to help with testing) and afterwards implement a reference module for Psi.<br />
<br />
My motivation for this project is quite strong : I'm behind a NAT/Firewall and I can't make efficient file transfers on any IM clients, so I would be really glad to solve this problem.<br />
<br />
In order to achieve this, the following milestones are set up:<br />
<br />
- 0.0.0 - Preparation:<br />
- Get in contact with Peter-StPeter of Jabber Software Foundation;<br />
- Get in contact with the Psi responsible;<br />
- Gather all the available documentation;<br />
- Update all my knowledge about the current status of the work;<br />
<br />
- 0.0.1 - Work in the protocol:<br />
- Start working at the protocol definition with the responsible group at Jabber;<br />
- Implement a prototype to help with the validation of the JEP;<br />
<br />
- 0.0.2 - Implement the Protocol:<br />
(As soon as the JEP concerning to the Jingle File Transfer is released)<br />
- Start the definitive implementation using Psi;<br />
<br />
- 0.1.0 - First Prototype:<br />
- Write the module that implements the Jingle File Transfer functionality for Psi;<br />
- Design Test Cases;<br />
<br />
- 0.1.1 - Test Phase:<br />
- Test the module as much as possible;<br />
- Fix all bugs founded;<br />
<br />
- 0.2.0 - Beta Release:<br />
- Module with a good maturity level and ready to be tested by the community;<br />
- Fix all remaining bugs;<br />
<br />
- 1.0.0 - Finished:<br />
- Jingle File transfer module ready to be merged with the Psi main tree;<br />
- End of the summer of code project;<br />
<br />
== References ==<br />
[http://psi-im.org/ Psi]<br />
<br />
[http://www.jabber.org/jeps/jep-0166.html JEP-0166 (Jingle)]<br />
<br />
[http://code.google.com/apis/talk/index.html LibJingle]<br />
<br />
[http://ejabberd.jabber.ru/ Ejabberd]<br />
<br />
[http://www.students.ic.unicamp.br/~ra016971/application-jft-jabber.txt My application]</div>Nyco