From 4910c350e379c180bdb7c3194e8ea0770928129f Mon Sep 17 00:00:00 2001
From: kongdeqiang <123456>
Date: 星期二, 02 十二月 2025 10:53:22 +0800
Subject: [PATCH] 大屏接口修改

---
 src/main/java/com/wgcloud/service/RouterConnectionService.java |   30 +++++++++++++++++++++++++-----
 1 files changed, 25 insertions(+), 5 deletions(-)

diff --git a/src/main/java/com/wgcloud/service/RouterConnectionService.java b/src/main/java/com/wgcloud/service/RouterConnectionService.java
index afc6364..61ff536 100644
--- a/src/main/java/com/wgcloud/service/RouterConnectionService.java
+++ b/src/main/java/com/wgcloud/service/RouterConnectionService.java
@@ -48,6 +48,28 @@
     }
 
     /**
+     * 杩炴帴鍒拌矾鐢卞櫒
+     */
+    public boolean connect(String username,String hostname,String password) {
+        try {
+            JSch jsch = new JSch();
+            session = jsch.getSession(username, hostname, 22);
+            session.setPassword(password);
+
+            // 璁剧疆涓嶈繘琛屼富鏈哄瘑閽ユ鏌�
+            Properties config = new Properties();
+            config.put("StrictHostKeyChecking", "no");
+            session.setConfig(config);
+
+            session.connect(5000); // 5绉掕秴鏃�
+            return true;
+        } catch (JSchException e) {
+            System.err.println("杩炴帴璺敱鍣ㄥけ璐�: " + e.getMessage());
+            return false;
+        }
+    }
+
+    /**
      * 鏂紑杩炴帴
      */
     public void disconnect() {
@@ -59,9 +81,9 @@
     /**
      * 鎵ц璺敱鍣ㄥ懡浠�
      */
-    public String executeCommand(String command) {
+    public String executeCommand(String command,String username,String password,String hostname) {
         if (!isConnected()) {
-            if (!connect()) {
+            if (!connect(username,hostname,password)) {
                 return null;
             }
         }
@@ -69,8 +91,6 @@
         try {
             ChannelExec channel = (ChannelExec) session.openChannel("exec");
             channel.setCommand(command);
-            channel.connect();
-
             BufferedReader reader = new BufferedReader(new InputStreamReader(channel.getInputStream()));
             StringBuilder output = new StringBuilder();
             String line;
@@ -95,4 +115,4 @@
     public boolean isConnected() {
         return session != null && session.isConnected();
     }
-}
\ No newline at end of file
+}

--
Gitblit v1.9.1