use Net::Telnet(); package L_Switch; sub new { my $class = shift; my $location = shift; my $ip = shift; my $self = {}; $self -> {'ip'} = $ip; $self -> {'location'} = $location; $self -> {'full_info'} = "asd"; $self -> {'fault'} = ""; $self -> {'time_out'} = ""; $self -> {'telnetConn'} => new Net::Telnet( Timeout => 10, errmode => # if connection is unsuccessful ( sub { $self -> {'full_info'} = CLIENT . ",," . $ip . ",TIMEOUT"; $self -> {'fault'} = "-No Response"; $self -> {'time_out'} = 1; } ) ); bless $self, $class; return $self; } sub login { my $self = shift; $self -> {'telnetConn'} -> open($self -> {ip}); $self -> {'telnetConn'} -> login(USERNAME, PASSWORD); } 1;