Bytestream Proxy for file transfers on hosted.IM

We are pleased to announce the release of the Bytestream Proxy for our hosted.IM XMPP service. This is a server implementation of the XEP-0065 standard, used mainly for file transfers, when users are connected with their instant messaging clients behind a NAT or within a private network that prevents point to point communication between users.

File transfer is now made easier on hosted.IM.

SOCKS5 Bytestream Proxy

When you send a file to another person using your IM client, like OneTeam, what it actually happens is that both chat applications (yours and the one used by your contact) try to establish a point to point direct connection: this means that one of such clients will open a port and listen for a connection coming from the other one to transfer the file.

What if this is not possible, typically because both use private IP addresses and work behind a router? In this case both clients need to find a mediator available on the public internet for file transfers: so both can connect to it and proceed with the interchange. This is an very common scenario already addressed by the XEP-0065 standard (Mediated connections), and now available on our hosted.IM service.

How to use it

First of all, you need to enable the feature “File transfer proxy” available on the Team 10 and higher plans. Go to “Manage your domains”, click on your domain and then on the “Plans & Features” tab. The figure below shows the optional feature to check.

Enable "File transfer proxy" feature on your plan

After updating your domain you will see a new item is displayed on the folding menu under “Plans & Features” tab:

If you click on it you will see more information on the status of the proxy service, the ID and port where it operates. If your IM application supports Discovery of Services, like OneTeam does, you will see it with the ID “proxy.hosted.im“:

Configuring your IM application

Depending on your IM application you won’t need to do anything extra, as it is the case with OneTeam which automatically discovers the proxy service, or you will need to set the service Id (“proxy.hosted.im”) manually. The image below shows the advanced settings to configure the proxy service on Psi:

Prices

File Transfer Proxy feature is available for your domain for free on the paid plans: Team 10, Office 25, Office 50, Organisation 75, Organisation 100, Company 200, Company 250, Enterprise 350 and Enterprise 500.

Enjoy hosted.IM!

  • Bob

    Is the file transfer in this manner secure?

    • jpcarlino

      It’s a client issue, clients can send the file encrypted, and it will pass through the proxy on that way. However, we are not currently aware of any available client that do so.
      If the file is not encrypted by the client or by the user itself, an attacker that can eavesdrop your network, will potentially be able to see the unencrypted file.

  • Yannis

    I have an Starter account, and since a month or so, everytime i connect with my client (Jitsi) i get a message “File transfer proxy was not enabled for this domain. Please contact your account administrator.”. This is really annoying! Could you please remove that message?

    • jpcarlino

      Yannis. It seems your client attempts to access the proxy server every time you connect. We will try to solve your problem within this week.
      Thanks for your feedback.

    • jpcarlino

      There is an option on the advanced settings of Jitsi that can be turned off to overcome this problem. Just uncheck “Auto discover Jingle Nodes relays” for your configured XMPP account on your hosted.IM domain.

      • Yannis

        Great, that worked, thanks for the quick response.