Sample code for 30+ languages & platforms
Tcl

TCP/IP Socket Connect to Remote Host:Port

See more Socket/SSL/TLS Examples

Demonstrates how to create a TCP/IP socket, connect to a remote host:port, and receive a "Hello World!" message.

Chilkat Tcl Downloads

Tcl

load ./chilkat.dll

set success 0

# This example requires the Chilkat API to have been previously unlocked.
# See Global Unlock Sample for sample code.

set socket [new_CkSocket]

# Connect to port 5555 of localhost.
# The string "localhost" is for testing on a single computer.
# It would typically be replaced with an IP hostname, such
# as "www.chilkatsoft.com".
set ssl 0
set maxWaitMillisec 20000
set success [CkSocket_Connect $socket "localhost" 5555 $ssl $maxWaitMillisec]
if {$success != 1} then {
    puts [CkSocket_lastErrorText $socket]
    delete_CkSocket $socket
    exit
}

# Set maximum timeouts for reading an writing (in millisec)
CkSocket_put_MaxReadIdleMs $socket 10000
CkSocket_put_MaxSendIdleMs $socket 10000

# Pretend, for the sake of the example, that the
# ficticious server is going to send a "Hello World!" 
# after accepting the connection.  
# Note: Technically, the ReceiveString may not receive the
# complete string, although it's highly probable given the short
# length of the "Hello World!" message. 
# See this Chilkat blog post for more information:
# <a href="http://www.cknotes.com/?p=302">http://www.cknotes.com/?p=302</a>
set receivedMsg [CkSocket_receiveString $socket]
if {[CkSocket_get_LastMethodSuccess $socket] != 1} then {
    puts [CkSocket_lastErrorText $socket]
    delete_CkSocket $socket
    exit
}

# Close the connection with the server
# Wait a max of 20 seconds (20000 millsec)
set success [CkSocket_Close $socket 20000]

puts "$receivedMsg"

delete_CkSocket $socket