diff --git a/src/main/java/ru/ldeloff/servermonitorbot/commands/cpu/temp/service/CpuTemp.java b/src/main/java/ru/ldeloff/servermonitorbot/commands/cpu/temp/service/CpuTemp.java index 32f18eb..80df2c1 100644 --- a/src/main/java/ru/ldeloff/servermonitorbot/commands/cpu/temp/service/CpuTemp.java +++ b/src/main/java/ru/ldeloff/servermonitorbot/commands/cpu/temp/service/CpuTemp.java @@ -24,20 +24,26 @@ public class CpuTemp extends CommandTemplate { @Override public String executeCommandSpecificHost(String serverName) { - Optional server = sshService.getAllSshServers() - .stream() - .filter(x -> x.getName().equals(serverName)) - .findFirst(); - if (server.isPresent()) { - SshCommand result = sshService.execute(new SshCommand("cat /sys/class/thermal/thermal_zone0/temp", 100, server.get())); - return server.get().getName() + ": \n" + - (Objects.isNull(result.getResponse()) ? "ошибка при выполнении команды" : - String.format("%.1f", - Double.parseDouble(result.getResponse().replaceAll("\n", ""))/1000)) - + "°C"; - } else { - log.error("Ошибка при выполнении команды 'CPUtemp'. Искомый сервер ({}) не найден", serverName); - return null; + try { + Optional server = sshService.getAllSshServers() + .stream() + .filter(x -> x.getName().equals(serverName)) + .findFirst(); + if (server.isPresent()) { + SshCommand result = sshService.execute(new SshCommand("cat /sys/class/thermal/thermal_zone0/temp", 100, server.get())); + return server.get().getName() + ": \n" + + (Objects.isNull(result.getResponse()) ? "ошибка при выполнении команды" : + String.format("%.1f", + Double.parseDouble(result.getResponse().replaceAll("\n", ""))/1000)) + + "°C"; + } else { + log.error("Ошибка при выполнении команды 'CPUtemp'. Искомый сервер ({}) не найден", serverName); + return null; + } + } catch (NumberFormatException e) { + log.error("Ошибка при выполнении команды 'CPUtemp'" ,e.getMessage()); + return "Сервер " + serverName + " не поддерживает команду 'CPUtemp'"; } + } } diff --git a/src/main/java/ru/ldeloff/servermonitorbot/view/TelegramBotKeyboard.java b/src/main/java/ru/ldeloff/servermonitorbot/view/TelegramBotKeyboard.java index 7bb7b03..89ac91d 100644 --- a/src/main/java/ru/ldeloff/servermonitorbot/view/TelegramBotKeyboard.java +++ b/src/main/java/ru/ldeloff/servermonitorbot/view/TelegramBotKeyboard.java @@ -45,10 +45,9 @@ public class TelegramBotKeyboard implements UiFormer { private ArrayList formKeyboard(User user) { Role role = user.getRole(); Map commands = applicationContext.getBeansOfType(CommandTemplate.class); - if (List.of(ADMIN, USER).contains(role)) { - commands.remove("/start"); - commands.remove("Not found"); - } + commands.remove("firstUseCommand"); + commands.remove("switchToMainMenu"); + int buttonOnLine = 3; ArrayList keyboardRows = new ArrayList<>();