Witam
Mam problem. Potrzebuje napisać aplikację która za pomocą socketa (ewentualnie innej technologii) będzie wykonywał operację telnet na urządzeniu sieciowym i wykonywał dodatkowe polecenia. Program łączy mi się z urządzeniem i wczytuje dane z urządzenia jednak nie wyświetla mi linii logowania. Znaczy odczytuje wszystkie początkowe komunikaty a jak powinna się wyświetlić linia Password pętla while zatrzymuje mi się i nie idzie zrobić nic więcej. Czy jest jakiś sposób aby wyświetlić tą linię ewentualnie wykryć, że serwer oczekuje na wpisanie danych. Mój kod wygląda następująco:
public static void main(String[] args) throws Exception {
Socket mySocket = null;
PrintWriter out = null;
BufferedReader in = null;
try {
InetAddress address = InetAddress.getByName("192.168.100.166");
mySocket = new Socket(address,23);
out = new PrintWriter(mySocket.getOutputStream(), true);
in = new BufferedReader(new InputStreamReader(mySocket.getInputStream()));
String test="";
while((test=in.readLine())!=null){
System.out.println(test);
}
System.out.println("test");
int i=0;
String userInput="";
while ((userInput = in.readLine()) != null) {
System.out.println("test");
System.out.println("echo: " + in.readLine());
}
out.close();
in.close();
mySocket.close();
}catch(Exception e){
}
}
}