* - Return values (boolean + string): true if the communication was successful,
* or false plus an error string in case of failure, which may be "timeout",
* "host failure" or "transfer failure"
* - Return values (boolean + string): true if the communication was successful,
* or false plus an error string in case of failure, which may be "timeout",
* "host failure" or "transfer failure"