[lnkForumImage]
TotalShareware - Download Free Software

Confronta i prezzi di migliaia di prodotti.
Asp Forum
 Home | Login | Register | Search 


 

Forums >

comp.lang.ruby

Connecting via Net::Telnet

Will Shattuck

1/3/2006 6:51:00 AM

Thanks for all the suggestions in the previous email about getting
started. I looked at a lot of resources today and thought I would
just get started. :)

The first thing I have to do is get connected and logged in. However
nethack.alt.org doesn't use a traditional telnet login prompt. it
uses a menu displayed with a => prompt waiting for user input. So
here is what I have so far. it does connect :) but I can't get logged
in

<code>
require 'net/telnet'

# Telnet into the Nethack server and login
# The Nethack server doesn't have a traditional telnet login. It used
a "=> " prompt where you enter
# a letter from a menu displayed
#

host = Net::Telnet::new("Host" => "nethack.alt.org",
"Port" => 23,
"Timeout" => 10) { |str| print str }
host.telnetmode=true
host.waitfor('=>') { |str| print str }
host.puts("l") { |str| print str }
</code>

Here is the output:

<output>
E:\Ruby\mkNethackbot>ruby mkNethackbot.rb
Trying nethack.alt.org...
Connected to nethack.alt.org.
Debian GNU/Linux 3.0 zaphod.alt.org
Error opening terminal: network.
c:/ruby/lib/ruby/1.8/net/telnet.rb:551:in `waitfor': timed out while waiting for
more data (Timeout::Error)
from mkNethackbot.rb:20
</output>

I found the code "{ |str| print str }" on another site using Ruby's
net/telnet, but I don't yet know exactly what it means, but I think it
waits for any strings sent ( |str |) and then displays it ( print str
).

Thanks,
Will


--
Will Shattuck ( willshattuck.at.gmail.com )
Home Page: http://www.thewholecla...

When you get to your wit's end, you'll find God lives there.