Controllare la connessione a internet con Ruby
Per controllare se il nostro pc è connesso a internet con Ruby, abbiamo diverse possibilità.
Noi useremo il modulo resolv, che fa parte della libreria standard.
In questo modo non dovremmo installare nient'altro.
Questo un codice di esempio, che si limita a stampare ONLINE / OFFLINE:
require 'resolv'
resolver = Resolv::DNS.new()
begin
resolver.getaddress("www.google.it")
puts 'ONLINE'
rescue Resolv::ResolvError => e
puts 'OFFLINE'
end
Con il metodo getaddress, interroghiamo l'url passato come parametro.
Il codice stamperà OFFLINE se l'indirizzo non è raggiungibile, il che implica anche se è sbagliato.
Quindi vi conviene usare un indirizzo conosciuto e "sicuro", in modo da evitare che il risultato negativo derivi da un url sbagliato o non più esistente (direi che Google è abbastanza sicuro).
Enjoy!
ruby getaddress resolv dns
Commentami!