DCC File Transfer Information


This knowledge base article contains information that is not accurate for Textual 6.

Direct Client-to-Client (DCC) is an extension of Internet Relay Chat (IRC) that enables the ability to transfer files between users. It works by establishing a direct connection between yourself and another user allowing files to be sent to each other without the need for a 3rd-party service (such as “the cloud”).

How does it work?

When a file transfer is initiated, Textual sends information about yourself and the file to the person receiving it. This information includes your IP address, the port on which to connect, the name of the file, and the total file size. Once the file transfer request is received, the recipient can chose to accept the transfer or ignore it.

If they accept the transfer, their chat client will attempt to establish a connection to the IP address and port that was included part of the transfer request. Once a successful connection is established, the file is transferred.

How do I accept a file sent to me?

When a file transfer request is received, it is placed within the File Transfers window.

This window can be brought forward by browsing to the main menu in the top left corner of the screen, selecting the Window menu, and clicking the item labeled File Transfers.

By right clicking (or control clicking) one or more items in this window, a menu is presented which contains multiple actions which can be performed on each transfer. These actions include the ability to start and stop a transfer.

For visual reference, the File Transfers window appears similar to the following:

image 1

Is there anything that I need to know before sending a file?

When sending a file, the recipient of the file will have difficulties receiving it if you are on a wireless network.

The receiver must establish a connection to you as the sender and to do so, they must connect to your Mac. However, being connected to a wireless network means that your Mac is not directly facing the Internet.

For a receiver to be able to connect to you, something known as port forwarding is required.

When sending a file, Textual attempts automatic port forwarding using UPnP and NAT-PMP. However, this automation does not always work due to limitation in hardware or misconfiguration.

How do I send a file?

There are two ways to send a file through Textual:

The first way is to right click (or control click) the nickname of the user you wish to send a file to. In the menu that appears, browse to the submenu labeled Client-to-Client and click the item labeled Send file….

Alternatively, dragging any file on top of a nickname on the user list of a channel will begin a transfer request.

Are file transfers secure?

File transfers are not secure. The contents of each file is transferred in plain text.

I am using IPv6 - Can I use DCC?

Sending and receiving files between yourself and other users of Textual is supported on native IPv6. Support for this with other chat clients is currently limited so it may not work if a file transfer is attempted with a user that is not on Textual.

Textual only provides support for native IPv6. IPv6 tunnels are not supported due to networking difficulties.

I received an error. What does it mean?

The following are common errors that can be encountered during a file transfer:

Transfer with [user] failed. There is no open port.

This error occurs when Textual tries to send a file but was unable to find a port which was open for listening.

Transfer with [user] failed. Could not read source file.

This error occurs because Textual tried to access a file which may no longer exist or has inappropriate file permissions.

Transfer with [user] failed. Unknown source IP address.

This error occurs when trying to send a file when the IP address of the sending machine is not available. By default, Textual tries to request the value of your IP address from an external source. However, sometimes this may fail. Restarting Textual may resolve this issue. If it does not, an IP address may need to be entered manually in Preferences.

Transfer with [user] failed. Connection was disconnected.

This is a general error that can occur for multiple reasons. If this error occurs during a file transfer, then the sender may have cancelled the transfer or there was a slight Internet hiccup that could not be recovered from.

Transfer with [user] failed. Could not establish connection.

This error occurs when a connection cannot be established to the user sending a file. This is likely due to their Mac being behind a firewall or wireless network which is not forwarded properly.

Last modified: November 22, 2016

The contents of this webpage are released into the Public Domain for unlimited distribution.