How to have socket server always listen but also initiate a connection

Hey all.

We are working with cell radios that have a dynamic ip address that
last a few hours.
I need a socket server that can receive messages from these, but i
also need to be able to initiate a connection to them on the same ip
and port.
so..

here is what i have so far, and it is working to bring data in from
the radios.

require 'socket'
server = TCPServer.open('192.168.1.113', 1411)

loop {

  Thread.start(server.accept) do |client|
    while line = client.gets

      # now we make a text string for this
      d_out = ""
      line.split("").each do |i|
          d_out += "#{i[0]}-"
      end

      create_message_from_socket_data(d_out)

      # testing only
      # data_line = "you said #{line} - total packet length =
#{line.size}"
      # client.puts data_line

      # puts data_line
    end
  end
}

i am able to send the data right back to the radio correctly, but i
need a way to send info back maybe an hour later or so.

thanks for any tips on this.
sk