From daac628c64069633787588372dea22499ac35396 Mon Sep 17 00:00:00 2001
From: zhangzengfei <zhangzengfei@smartai.com>
Date: 星期三, 18 十月 2023 16:52:56 +0800
Subject: [PATCH] 修复集群功能
---
system-service/sys/system.go | 156 ++++++++++++++++++++++++++--------------------------
1 files changed, 78 insertions(+), 78 deletions(-)
diff --git a/system-service/sys/system.go b/system-service/sys/system.go
index 41d6e46..c79d6f0 100644
--- a/system-service/sys/system.go
+++ b/system-service/sys/system.go
@@ -11,6 +11,7 @@
"strconv"
"vamicro/config"
"vamicro/extend/util"
+ "vamicro/system-service/iwlist"
"vamicro/system-service/models"
sysVo "vamicro/system-service/vo"
@@ -141,7 +142,7 @@
return info, err
}
-//鑾峰彇缃戝崱淇℃伅
+// 鑾峰彇缃戝崱淇℃伅
func GetNetWorkCards() ([]sysVo.NetWorkCard, error) {
interfaces, err := net.Interfaces()
if nil != err {
@@ -184,7 +185,7 @@
return data, nil
}
-//淇敼IP鍙戝竷娑堟伅
+// 淇敼IP鍙戝竷娑堟伅
func IpChangePublish(newIp string) bool {
//淇敼鍥芥爣ip
tmpResourceConf := models.ResourceConfig{}
@@ -213,7 +214,8 @@
return false
}
-/**
+/*
+*
鏇存柊閰嶇疆
@param serverName 鏈嶅姟鍚嶇О
@param newIp 鏈嶅姟Ip
@@ -491,7 +493,7 @@
return err == nil
}
-//璁剧疆璇█
+// 璁剧疆璇█
func SetLang(lang string, language string) error {
// set env
envCMD := exec.Command("/bin/sh", "-c", "LANG=%s", lang)
@@ -525,7 +527,7 @@
return err
}
-//鑾峰彇褰撳墠璇█
+// 鑾峰彇褰撳墠璇█
func GetLang() (string, error) {
content, err := execRootCommand("cat /etc/default/locale|grep LANG")
if nil == err {
@@ -541,7 +543,7 @@
return "", err
}
-//鑾峰彇榛樿閿洏甯冨眬
+// 鑾峰彇榛樿閿洏甯冨眬
func GetDefKeyboard() (string, error) {
content, err := execRootCommand("cat /etc/default/keyboard|grep XKBLAYOUT")
if nil == err {
@@ -557,7 +559,7 @@
return "", err
}
-//鑾峰彇閿洏甯冨眬
+// 鑾峰彇閿洏甯冨眬
func GetKeyboardLayouts() (map[string]string, []sysVo.KeyBoardLayout, error) {
output, err := execRootCommand("man -P cat xkeyboard-config")
if nil != err {
@@ -615,7 +617,7 @@
return keyBoardLayoutMap, keyBoardLayouts, nil
}
-//璁剧疆閿洏甯冨眬
+// 璁剧疆閿洏甯冨眬
func SetKeyboardLayout(layout string) error {
cmdStr := fmt.Sprintf("sed -i 's/XKBLAYOUT=.*/XKBLAYOUT=\"%s\"/' /etc/default/keyboard", layout)
_, err := execRootCommand(cmdStr)
@@ -623,7 +625,7 @@
return err
}
-//鍏抽棴缃戠粶
+// 鍏抽棴缃戠粶
func DownNetCard(networkAdapter string) error {
cmdStr := fmt.Sprintf("ip link set %s down", networkAdapter)
_, err := execRootCommand(cmdStr)
@@ -631,7 +633,7 @@
return err
}
-//寮�鍚綉缁�
+// 寮�鍚綉缁�
func UpNetCard(networkAdapter string) error {
_, _, err := GetLocalIP(networkAdapter)
if err != nil {
@@ -643,7 +645,7 @@
return err
}
-//鑾峰彇鏃犵嚎缃戝崱
+// 鑾峰彇鏃犵嚎缃戝崱
func GetIwDev() ([]string, error) {
content, err := execRootCommand("iw dev")
if nil == err {
@@ -664,76 +666,74 @@
return nil, errors.New("iw dev not found")
}
-//鑾峰彇wifi缃戠粶
-func GetWifi(netcard string) ([]sysVo.WiFi, error) {
- reg, err := regexp.Compile(`Quality=(\d+)/70[^\n]+\n\s+Encryption key:([^\n]+)\n\s+ESSID:\"([^\"]+)\"`)
- if nil == err {
- var wifiList = make([]sysVo.WiFi, 0)
- info, err := execRootCommand(fmt.Sprintf("iwlist %s scan", netcard))
- if nil == err {
- res := reg.FindAllStringSubmatch(string(info), -1)
- for _, item := range res {
- if len(item) >= 4 {
- wifi := sysVo.WiFi{item[3], item[1], item[2]}
- wifiList = append(wifiList, wifi)
- }
- }
- return wifiList, nil
- }
- }
- return nil, err
+// 鑾峰彇wifi缃戠粶
+func ScanWifiList(netcard string) ([]iwlist.Cell, error) {
+ return iwlist.Scan(netcard)
}
-//杩炴帴WIFI
-func ConnectWifi(fname, passwd, ssid string) error {
- content, err := execRootCommand(fmt.Sprintf("wpa_cli -i %s add_network", fname))
- if nil != err {
+// 杩炴帴WIFI
+func ConnectWifi(fname, ssid, passwd string) error {
+ networkConfigScript := "/opt/vasystem/script/wlanconfig"
+
+ // 妫�鏌ユ枃浠舵槸鍚﹀瓨鍦�
+ if _, err := os.Stat(networkConfigScript); err != nil {
return err
}
- newid := strings.TrimSpace(string(content))
- reg, err := regexp.Compile(`^(\d+)$`)
- if nil == err {
- b := reg.MatchString(newid)
- if !b {
- return errors.New("WIFI鍔犲叆澶辫触")
- }
- ret, err := execRootCommand(fmt.Sprintf("wpa_cli -i %s set_network %s ssid '\"%s\"'", fname, newid, ssid))
- if nil != err {
- return err
- }
- if strings.TrimSpace(string(ret)) != "OK" {
- return errors.New(string(ret))
- }
- ret, err = execRootCommand(fmt.Sprintf("wpa_cli -i %s set_network %s psk '\"%s\"'", fname, newid, passwd))
- if nil != err {
- return err
- }
- if strings.TrimSpace(string(ret)) != "OK" {
- return errors.New(string(ret))
- }
- ret, err = execRootCommand(fmt.Sprintf("wpa_cli -i %s disconnect", fname))
- if nil != err {
- return err
- }
- if strings.TrimSpace(string(ret)) != "OK" {
- return errors.New(string(ret))
- }
- ret, err = execRootCommand(fmt.Sprintf("wpa_cli -i %s select_network %s", fname, newid))
- if nil != err {
- return err
- }
- if strings.TrimSpace(string(ret)) != "OK" {
- return errors.New(string(ret))
- }
- _, err = execRootCommand(fmt.Sprintf("udhcpc -i %s -q -n", fname))
- if nil != err {
- return errors.New("瀵嗙爜濂藉儚涓嶅鍝�")
- }
- _, err = execRootCommand(fmt.Sprintf("wpa_cli -i %s save_config", fname))
- return nil
- } else {
- return err
- }
+
+ // # wlanconfig wlan0 Basic Basic2019
+ cmdStr := fmt.Sprintf("%s %s %s %s", networkConfigScript, fname, ssid, passwd)
+ _, err := execRootCommand(cmdStr)
+
+ return err
+
+ //content, err := execRootCommand(fmt.Sprintf("wpa_cli -i %s add_network", fname))
+ //if nil != err {
+ // return err
+ //}
+ //newid := strings.TrimSpace(string(content))
+ //reg, err := regexp.Compile(`^(\d+)$`)
+ //if nil == err {
+ // b := reg.MatchString(newid)
+ // if !b {
+ // return errors.New("WIFI鍔犲叆澶辫触")
+ // }
+ // ret, err := execRootCommand(fmt.Sprintf("wpa_cli -i %s set_network %s ssid '\"%s\"'", fname, newid, ssid))
+ // if nil != err {
+ // return err
+ // }
+ // if strings.TrimSpace(string(ret)) != "OK" {
+ // return errors.New(string(ret))
+ // }
+ // ret, err = execRootCommand(fmt.Sprintf("wpa_cli -i %s set_network %s psk '\"%s\"'", fname, newid, passwd))
+ // if nil != err {
+ // return err
+ // }
+ // if strings.TrimSpace(string(ret)) != "OK" {
+ // return errors.New(string(ret))
+ // }
+ // ret, err = execRootCommand(fmt.Sprintf("wpa_cli -i %s disconnect", fname))
+ // if nil != err {
+ // return err
+ // }
+ // if strings.TrimSpace(string(ret)) != "OK" {
+ // return errors.New(string(ret))
+ // }
+ // ret, err = execRootCommand(fmt.Sprintf("wpa_cli -i %s select_network %s", fname, newid))
+ // if nil != err {
+ // return err
+ // }
+ // if strings.TrimSpace(string(ret)) != "OK" {
+ // return errors.New(string(ret))
+ // }
+ // _, err = execRootCommand(fmt.Sprintf("udhcpc -i %s -q -n", fname))
+ // if nil != err {
+ // return errors.New("瀵嗙爜濂藉儚涓嶅鍝�")
+ // }
+ // _, err = execRootCommand(fmt.Sprintf("wpa_cli -i %s save_config", fname))
+ // return nil
+ //} else {
+ // return err
+ //}
}
func ExistService(name string) string {
@@ -744,7 +744,7 @@
return string(b)
}
-//閰嶇疆mqtt
+// 閰嶇疆mqtt
func SetMqttConf(conf *sysVo.MqttConf) error {
etcPath := "/etc/mosquitto/mosquitto.conf"
pwfile := "/etc/mosquitto/pwfile"
--
Gitblit v1.8.0