There are 5 devices in my network with different IP addresses. I wish to connect to these devices and get data from them over TCP/IP socket when they are available in my network. How can I check if they are available in java?
public void setUpConnection() {
try {
Socket client = new Socket(hostIp, hostPort);
socketReader = client.getInputStream();
socketWriter = new PrintWriter(client.getOutputStream());
} catch (UnknownHostException e) {
System.out.println("Error setting up socket connection: unknown host at " + hostIp);
System.out.println("host: " + hostIp + "port: " + hostPort);
} catch (IOException e) {
System.out.println("Error setting up socket connection: " + e);
System.out.println("host: " + hostIp + "port:" + hostPort);
}
}
InetAddress.getByName(host).isReachable(timeOut);
Further reference here