diff --git a/luci-app-modem/root/usr/share/modem/fibocom.sh b/luci-app-modem/root/usr/share/modem/fibocom.sh index 60c6a2c..28c528c 100755 --- a/luci-app-modem/root/usr/share/modem/fibocom.sh +++ b/luci-app-modem/root/usr/share/modem/fibocom.sh @@ -3,6 +3,7 @@ current_dir="$(dirname "$0")" #获取拨号模式 # $1:AT串口 +# $2:平台 fibocom_get_mode() { local at_port="$1" @@ -10,15 +11,17 @@ fibocom_get_mode() local mode_num=$(sh $current_dir/modem_at.sh $at_port $at_command | grep "+GTUSBMODE:" | sed 's/+GTUSBMODE: //g' | sed 's/\r//g') #获取芯片平台 - local platform - local modem_number=$(uci -q get modem.global.modem_number) - for i in $(seq 0 $((modem_number-1))); do - local at_port_tmp=$(uci -q get modem.modem$i.at_port) - if [ "$at_port" = "$at_port_tmp" ]; then - platform=$(uci -q get modem.modem$i.platform) - break - fi - done + local platform="$2" + if [ -z "$platform" ]; then + local modem_number=$(uci -q get modem.global.modem_number) + for i in $(seq 0 $((modem_number-1))); do + local at_port_tmp=$(uci -q get modem.modem$i.at_port) + if [ "$at_port" = "$at_port_tmp" ]; then + platform=$(uci -q get modem.modem$i.platform) + break + fi + done + fi local mode case "$platform" in diff --git a/luci-app-modem/root/usr/share/modem/modem_scan.sh b/luci-app-modem/root/usr/share/modem/modem_scan.sh index 54bf234..d2f1ee5 100755 --- a/luci-app-modem/root/usr/share/modem/modem_scan.sh +++ b/luci-app-modem/root/usr/share/modem/modem_scan.sh @@ -145,7 +145,7 @@ setModemInfoConfig() #获取平台 platform=$(echo $modem_info | jq -r '.platform') #获取当前的拨号模式 - mode=$(source $current_dir/$manufacturer.sh && get_$manufacturer.sh_mode $2 $platform) + mode=$(source $current_dir/$manufacturer.sh && "$manufacturer"_get_mode $2 $platform) #获取支持的拨号模式 modes=$(echo $modem_info | jq -r '.modes[]') fi diff --git a/luci-app-modem/root/usr/share/modem/quectel.sh b/luci-app-modem/root/usr/share/modem/quectel.sh index f5126e1..0bd2481 100755 --- a/luci-app-modem/root/usr/share/modem/quectel.sh +++ b/luci-app-modem/root/usr/share/modem/quectel.sh @@ -3,6 +3,7 @@ current_dir="$(dirname "$0")" #获取拨号模式 # $1:AT串口 +# $2:平台 quectel_get_mode() { local at_port="$1" @@ -10,15 +11,17 @@ quectel_get_mode() local mode_num=$(sh $current_dir/modem_at.sh $at_port $at_command | grep "+QCFG:" | sed 's/+QCFG: "usbnet",//g' | sed 's/\r//g') #获取芯片平台 - local platform - local modem_number=$(uci -q get modem.global.modem_number) - for i in $(seq 0 $((modem_number-1))); do - local at_port_tmp=$(uci -q get modem.modem$i.at_port) - if [ "$at_port" = "$at_port_tmp" ]; then - platform=$(uci -q get modem.modem$i.platform) - break - fi - done + local platform="$2" + if [ -z "$platform" ]; then + local modem_number=$(uci -q get modem.global.modem_number) + for i in $(seq 0 $((modem_number-1))); do + local at_port_tmp=$(uci -q get modem.modem$i.at_port) + if [ "$at_port" = "$at_port_tmp" ]; then + platform=$(uci -q get modem.modem$i.platform) + break + fi + done + fi local mode case "$platform" in