🎈 Sync 2024-02-27 16:23

This commit is contained in:
github-actions[bot] 2024-02-27 16:23:20 +08:00
parent 5f48afeb91
commit 6a73c383a9
30 changed files with 238 additions and 486 deletions

View File

@ -10,11 +10,11 @@ include $(TOPDIR)/rules.mk
PKG_ARCH_quickstart:=$(ARCH)
PKG_NAME:=quickstart
PKG_VERSION:=0.8.6
PKG_VERSION:=0.8.7
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-binary-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://github.com/linkease/istore-packages/releases/download/prebuilt/
PKG_HASH:=8d4c644af0b0413bff8e605c27d465a59f89869d92c1f3cfa00f9590d3a3b405
PKG_HASH:=994ea38fcc4002e9dffd1ffe2d7cdf828e9365b6a2ba61c61c257f7c2af131a5
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-binary-$(PKG_VERSION)

View File

@ -8,14 +8,14 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=ddns-go
KG_VERSION:=6.1.1
KG_VERSION:=6.1.2
PKG_RELEASE:=1
PKG_SOURCE_PROTO:=git
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://github.com/jeessy2/ddns-go.git
PKG_MIRROR_HASH:=738e16f09df958a8425e19fb717c1d2365632756babea2332e17d500b4ee1266
PKG_SOURCE_VERSION:=6410dad8a20411c75c8eca2026a2588ae355ccb1
PKG_MIRROR_HASH:=d5868e26981a31e9fb5f772c713e91fe38a7270a9bbf089e641f754bc6b06010
PKG_SOURCE_VERSION:=52ef2b7fbf854df52a2996d926b869524a003326
PKG_LICENSE:=AGPL-3.0-only
PKG_LICENSE_FILES:=LICENSE

View File

@ -1,14 +1,14 @@
# SPDX-License-Identifier: GPL-3.0-only
#
# Copyright (C) 2021-2022 sirpdboy <herboy2008@gmail.com> https://github.com/sirpdboy/luci-app-ddns-go
#
# Copyright (C) 2021-2024 sirpdboy <herboy2008@gmail.com>
# https://github.com/sirpdboy/luci-app-ddns-go
# This is free software, licensed under the Apache License, Version 2.0 .
#
include $(TOPDIR)/rules.mk
PKG_NAME:=luci-app-ddns-go
PKG_VERSION:=1.4.1
PKG_RELEASE:=10
PKG_VERSION:=1.4.2
PKG_RELEASE:=20240227
LUCI_TITLE:=LuCI Support for Dynamic ddns-go Client
LUCI_DEPENDS:=+ddns-go

View File

@ -12,7 +12,7 @@ function index()
e.dependent=false
e.acl_depends={ "luci-app-ddns-go" }
entry({"admin", "services", "ddns-go", "setting"}, cbi("ddns-go"), _("Base Setting"), 20).leaf=true
entry({"admin", "services", "ddns-go", "ddns-go"}, template("ddns-go"), _("DDNS-GO"), 30).leaf = true
entry({"admin", "services", "ddns-go", "ddns-go"}, template("ddns-go"), _("DDNS-GO Control panel"), 30).leaf = true
entry({"admin", "services", "ddnsgo_status"}, call("act_status"))
end

View File

@ -28,7 +28,7 @@ o.default=5
o = s:option(Flag,"skipverify",translate("Skip verifying certificates"))
o.default = 0
o = s:option(Value, "dns",translate("Specify DNS resolution server"))
o = s:option(ListValue, "dns",translate("Specify DNS resolution server"))
o:value("223.5.5.5", ""..translate("Ali").." DNS (223.5.5.5)")
o:value("223.6.6.6", ""..translate("Ali").." DNS (223.6.6.6)")
o:value("119.29.29.29", ""..translate("Tencent").." DNS (119.29.29.29)")

View File

@ -1,13 +1,16 @@
<%#
Copyright 2021-2022 sirpdboy Wich <sirpdboy@qq.com>
Copyright 2008-2024 by sirpdboy <herboy2008@gmail.com>
https://github.com/sirpdboy/luci-app-ddns-go
Licensed to the public under the Apache License 2.0.
-%>
<%
local running = luci.sys.exec("pidof ddns-go | awk -F ' ' '{print $1}'")
%>
<%+header%>
<div class="cbi-map">
<iframe id="ddnsgo" style="width: 100%; min-height: 780px; border: none; border-radius: .375rem;box-shadow: rgba(0, 0, 0, 0.75) 0px 0px 15px -5px;"><br/><em style=\"color:red\">
<% if tonumber(running) ~= nil then %>
<iframe id="ddnsgo" style="width: 100%; min-height: 580px; border: none; border-radius: .375rem;box-shadow: rgba(0, 0, 0, 0.75) 0px 0px 15px -5px;"><br/><em style=\"color:red\">
<p ><em><%:The DDNS-GO service is not running.%></em></p>
</iframe>
@ -19,4 +22,13 @@
document.getElementById("ddnsgo").height = document.documentElement.clientHeight;
}
</script>
<% else %>
<style>.running{text-align: center;} .running>h1{font-size: 25px; color: #333; margin: 1rem;} .running>p{ font-size: 1.2rem; color: #8391a2; margin: 1rem;}</style>
<div class="running">
<img src="data:image/svg+xml;base64,PCEtLSBHZW5lcmF0ZWQgYnkgSWNvTW9vbi5pbyAtLT4KPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMjQiIGhlaWdodD0iMTAyNCIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCI+Cjx0aXRsZT48L3RpdGxlPgo8ZyBpZD0iaWNvbW9vbi1pZ25vcmUiPgo8L2c+CjxwYXRoIGZpbGw9IiNkZjAwMDAiIGQ9Ik05NDIuNDIxIDIzNC42MjRsODAuODExLTgwLjgxMS0xNTMuMDQ1LTE1My4wNDUtODAuODExIDgwLjgxMWMtNzkuOTU3LTUxLjYyNy0xNzUuMTQ3LTgxLjU3OS0yNzcuMzc2LTgxLjU3OS0yODIuNzUyIDAtNTEyIDIyOS4yNDgtNTEyIDUxMiAwIDEwMi4yMjkgMjkuOTUyIDE5Ny40MTkgODEuNTc5IDI3Ny4zNzZsLTgwLjgxMSA4MC44MTEgMTUzLjA0NSAxNTMuMDQ1IDgwLjgxMS04MC44MTFjNzkuOTU3IDUxLjYyNyAxNzUuMTQ3IDgxLjU3OSAyNzcuMzc2IDgxLjU3OSAyODIuNzUyIDAgNTEyLTIyOS4yNDggNTEyLTUxMiAwLTEwMi4yMjktMjkuOTUyLTE5Ny40MTktODEuNTc5LTI3Ny4zNzZ6TTE5NC45NDQgNTEyYzAtMTc1LjEwNCAxNDEuOTUyLTMxNy4wNTYgMzE3LjA1Ni0zMTcuMDU2IDQ4IDAgOTMuNDgzIDEwLjY2NyAxMzQuMjI5IDI5Ljc4MWwtNDIxLjU0NyA0MjEuNTQ3Yy0xOS4wNzItNDAuNzg5LTI5LjczOS04Ni4yNzItMjkuNzM5LTEzNC4yNzJ6TTUxMiA4MjkuMDU2Yy00OCAwLTkzLjQ4My0xMC42NjctMTM0LjIyOS0yOS43ODFsNDIxLjU0Ny00MjEuNTQ3YzE5LjA3MiA0MC43ODkgMjkuNzgxIDg2LjI3MiAyOS43ODEgMTM0LjIyOS0wLjA0MyAxNzUuMTQ3LTE0MS45OTUgMzE3LjA5OS0zMTcuMDk5IDMxNy4wOTl6Ij48L3BhdGg+Cjwvc3ZnPgo=" height="100">
<h1><font color="color:red"><%:The DDNS-GO service is not running.%></font></h1>
<p><%:Please enable the DDNS-GO service%></p>
</div>
<% end -%>
</div>
<%+footer%>

View File

@ -13,6 +13,9 @@ msgstr "基本设置"
msgid "Running state"
msgstr "运行状态"
msgid "DDNS-GO Control panel"
msgstr "DDNS-GO操作台"
msgid "The DDNS-GO service is running."
msgstr "DDNS-GO服务已启动"
@ -22,6 +25,9 @@ msgstr "DDNS-GO服务未启动"
msgid "DDNS-GO Status"
msgstr "DDNS-GO服务状态"
msgid "Please enable the DDNS-GO service"
msgstr "请将DDNS-GO服务启用"
msgid "Click the new page to open ddns-go"
msgstr "点击打开ddns-go后台"

View File

@ -13,6 +13,9 @@ msgstr "基本设置"
msgid "Running state"
msgstr "运行状态"
msgid "DDNS-GO Control panel"
msgstr "DDNS-GO操作台"
msgid "The DDNS-GO service is running."
msgstr "DDNS-GO服务已启动"
@ -22,6 +25,9 @@ msgstr "DDNS-GO服务未启动"
msgid "DDNS-GO Status"
msgstr "DDNS-GO服务状态"
msgid "Please enable the DDNS-GO service"
msgstr "请将DDNS-GO服务启用"
msgid "Click the new page to open ddns-go"
msgstr "点击打开ddns-go后台"

View File

@ -11,8 +11,8 @@ LUCI_DEPENDS:=+netdata
LUCI_PKGARCH:=all
PKG_NAME:=luci-app-netdata
PKG_VERSION:=1.1
PKG_RELEASE:=20221124
PKG_VERSION:=1.2
PKG_RELEASE:=20240227
define Build/Compile
endef

View File

@ -7,9 +7,9 @@ function index()
if not nixio.fs.access("/etc/config/netdata") then
return
end
local page
entry({"admin", "status", "netdata"}, alias("admin", "status", "netdata", "setting"),_("NetData"), 10).dependent = true
local e = entry({"admin", "status", "netdata"}, alias("admin", "status", "netdata", "setting"),_("NetData"), 10)
e.dependent = false
e.acl_depends = { "luci-app-netdata" }
entry({"admin", "status", "netdata", "setting"}, cbi("netdata/netdata"), _("Base Setting"), 20).leaf=true
entry({"admin", "status", "netdata", "netdata"}, template("netdata"), _("NetData"), 30).leaf = true
entry({"admin", "status", "netdata_status"}, call("act_status"))

View File

@ -1,12 +1,16 @@
<%#
Copyright 2008-2022 by sirpdboy <herboy2008@gmail.com>
Copyright 2008-2024 by sirpdboy <herboy2008@gmail.com>
https://github.com/sirpdboy/luci-app-netdata
Licensed to the public under the Apache License 2.0.
-%>
<%
local running = luci.sys.exec("pidof netdata | awk -F ' ' '{print $1}'")
%>
<%+header%>
<div class="cbi-map">
<% if tonumber(running) ~= nil then %>
<iframe id="netdata" style="width: 100%; min-height: 780px; border: none; border-radius: .375rem;box-shadow: rgba(0, 0, 0, 0.75) 0px 0px 15px -5px;"></iframe>
</div>
@ -17,4 +21,13 @@
document.getElementById("netdata").height = document.documentElement.clientHeight;
}
</script>
<% else %>
<style>.running{text-align: center;} .running>h1{font-size: 25px; color: #333; margin: 1rem;} .running>p{ font-size: 1.2rem; color: #8391a2; margin: 1rem;}</style>
<div class="running">
<img src="data:image/svg+xml;base64,PCEtLSBHZW5lcmF0ZWQgYnkgSWNvTW9vbi5pbyAtLT4KPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMjQiIGhlaWdodD0iMTAyNCIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCI+Cjx0aXRsZT48L3RpdGxlPgo8ZyBpZD0iaWNvbW9vbi1pZ25vcmUiPgo8L2c+CjxwYXRoIGZpbGw9IiNkZjAwMDAiIGQ9Ik05NDIuNDIxIDIzNC42MjRsODAuODExLTgwLjgxMS0xNTMuMDQ1LTE1My4wNDUtODAuODExIDgwLjgxMWMtNzkuOTU3LTUxLjYyNy0xNzUuMTQ3LTgxLjU3OS0yNzcuMzc2LTgxLjU3OS0yODIuNzUyIDAtNTEyIDIyOS4yNDgtNTEyIDUxMiAwIDEwMi4yMjkgMjkuOTUyIDE5Ny40MTkgODEuNTc5IDI3Ny4zNzZsLTgwLjgxMSA4MC44MTEgMTUzLjA0NSAxNTMuMDQ1IDgwLjgxMS04MC44MTFjNzkuOTU3IDUxLjYyNyAxNzUuMTQ3IDgxLjU3OSAyNzcuMzc2IDgxLjU3OSAyODIuNzUyIDAgNTEyLTIyOS4yNDggNTEyLTUxMiAwLTEwMi4yMjktMjkuOTUyLTE5Ny40MTktODEuNTc5LTI3Ny4zNzZ6TTE5NC45NDQgNTEyYzAtMTc1LjEwNCAxNDEuOTUyLTMxNy4wNTYgMzE3LjA1Ni0zMTcuMDU2IDQ4IDAgOTMuNDgzIDEwLjY2NyAxMzQuMjI5IDI5Ljc4MWwtNDIxLjU0NyA0MjEuNTQ3Yy0xOS4wNzItNDAuNzg5LTI5LjczOS04Ni4yNzItMjkuNzM5LTEzNC4yNzJ6TTUxMiA4MjkuMDU2Yy00OCAwLTkzLjQ4My0xMC42NjctMTM0LjIyOS0yOS43ODFsNDIxLjU0Ny00MjEuNTQ3YzE5LjA3MiA0MC43ODkgMjkuNzgxIDg2LjI3MiAyOS43ODEgMTM0LjIyOS0wLjA0MyAxNzUuMTQ3LTE0MS45OTUgMzE3LjA5OS0zMTcuMDk5IDMxNy4wOTl6Ij48L3BhdGg+Cjwvc3ZnPgo=" height="100">
<h1><font color="color:red"><%:The Netdata service is not running.%></font></h1>
<p><%:Please enable the NetData service%></p>
</div>
<% end -%>
</div>
<%+footer%>

View File

@ -13,6 +13,9 @@ msgstr "NetData服务未启动"
msgid "NetData Status"
msgstr "NetData服务状态"
msgid "Please enable the NetData service"
msgstr "请将homebox服务启用"
msgid "NetData"
msgstr "实时监控"

View File

@ -1 +0,0 @@
zh-cn

View File

@ -0,0 +1,32 @@
msgid ""
msgstr "Content-Type: text/plain; charset=UTF-8"
msgid "Running state"
msgstr "运行状态"
msgid "The Netdata service is running."
msgstr "NetData服务已启动"
msgid "The Netdata service is not running."
msgstr "NetData服务未启动"
msgid "NetData Status"
msgstr "NetData服务状态"
msgid "Please enable the NetData service"
msgstr "请将homebox服务启用"
msgid "NetData"
msgstr "实时监控"
msgid "Set the netdata access port"
msgstr "设置访问端口"
msgid "Base Setting"
msgstr "基本设置"
msgid "Netdata is high-fidelity infrastructure monitoring and troubleshooting.Open-source, free, preconfigured, opinionated, and always real-time."
msgstr "Netdata是高保真的基础设施监控和故障排除。开源、免费、预配置、始终实时."
msgid "</br>For specific usage, see:"
msgstr "</br>具体使用方法参见:"

View File

@ -7,4 +7,5 @@
[ -f /usr/share/netdata/webcn/index.html ] && mv -f /usr/share/netdata/webcn/index.html /usr/share/netdata/web/index.html
[ -f /usr/share/netdata/webcn/netdata.init ] && mv -f /usr/share/netdata/webcn/netdata.init /etc/init.d/netdata
rm -rf /tmp/luci-modulecache /tmp/luci-indexcache*
chmod +x chmod +x /etc/init.d/netdata
exit 0

View File

@ -9,10 +9,10 @@ include $(TOPDIR)/rules.mk
PKG_NAME:=luci-app-netspeedtest
LUCI_TITLE:=LuCI Support for netspeedtest
LUCI_DEPENDS:=+python3 +iperf3 +homebox +netperf
LUCI_DEPENDS:=+python3 +iperf3-ssl +homebox
LUCI_PKGARCH:=all
PKG_VERSION:=2.1.3
PKG_RELEASE:=20230302
PKG_VERSION:=2.1.5
PKG_RELEASE:=2024027
PKG_MAINTAINER:=<https://github.com/sirpdboy/netspeedtest>
include $(TOPDIR)/feeds/luci/luci.mk

View File

@ -1,162 +0,0 @@
## luci-app-netspeedtest
### 访问数:[![](https://visitor-badge.glitch.me/badge?page_id=sirpdboy-visitor-badge)] [![](https://img.shields.io/badge/TG群-点击加入-FFFFFF.svg)](https://t.me/joinchat/AAAAAEpRF88NfOK5vBXGBQ)
![screenshots](https://raw.githubusercontent.com/sirpdboy/openwrt/master/doc/说明1.jpg)
luci-app-netspeedtest 网络速度诊断测试包括内网网页版测速、内网iperf3吞吐测速、外网speedtest.net网速测试、特定服务器的端口延迟测速
[luci-app-netspeedtest 网络速度诊断测试](https://github.com/sirpdboy/netspeedtest)
**认真阅读完毕** 本页面,本页面包含注意事项和如何使用。
## 写在前面
- 一直在找OPENWRT上测试速度的插件苦寻不到于是有了它! 此插件可进行内外和外网网络速度测试。
- TG群友说插件2年没更新了花了几天时间结合时下需要将网络测试功能升级到2.0版本。
<!-- TOC -->
## [菜单向导](#luci-app-netspeedtest)
- [功能说明](#功能说明)
- [注意事项](#iperf3吞吐测试注意事项)
- [版本说明](#版本说明)
- [使用方法](#使用方法)
- [源码说明](#源码说明)
- [界面](#界面)
- [其它](#其它)
- [感谢](#感谢)
- [捐助](#捐助)
<!-- /TOC -->
## 功能说明
- 内网网页版测速插件 基于speedtest-web网页版启用后再点start进行测速。网页版启动后程序会驻留内存不测速建议不启用服务。
- 内网iperf3吞吐测试 服务端路由器如果没有安装请先安装此iperf3插件。
- 外网测速使用speedtest.net测速内核基于speedtest-cli,需要有python3才能执行。
- 特定服务器的端口延迟测速,是测试指定服务器的端口的延迟情况。
## iperf3吞吐测试注意事项
- 测速的终端使用机器必须和测速服务器在同一个局域网络中!
- 客户端使用步骤:启动测速服务器端-->下载测试客户端-->运行测速客户端-->输入服务端IP地址-->查看结果。
- 客户端运行国内端下载中有“iperf3测速客户端”运行它输入服务器IP即可。
国外原版,需要手动进入 CMD命令模式再输入命令iperf3.exe -c 服务器IP
- 网络测速iperf3客户端下载地址https://sipdboy.lanzoui.com/b01c3esih 密码:cpd6
- 需要依赖: python3 iperf3 speedtest-web
## 版本说明
### 2023.3.2 网速测试V2.1.3
- 修复测速Speedtest看不到测试报名问题。
- 重新调试IPERF3测试页面代码解决某些主题显示不优雅的问题。
- 修复取消服务自动启用的问题
### 2023.1.15 网速测试V2.1
- 内网测试速度WEB页采用homebox。
- 修复WEB页内网测试自动启用问题。
- 外网测速加入Netperf测试。
- 外网测速Speedtest某些节点会禁止测速。要测速建议关了留国的插件。
### 2022.10.18 网速测试V2.0.3
- 代码基本重写和优化。
- Iperf3可实时体现服务状态。
- 增加内网测试网页版。
- 外网测速,加入更详细测试报告。
### 2021.3.2 网速测试V1.6
- 升级宽带测试带2.13内核。
- 解决1.806以上版本不能编译问题。
## 使用方法
将NetSpeedTest 主题添加至 LEDE/OpenWRT 源码的方法。
### 下载源码:
# 下载源码
git clone https://github.com/sirpdboy/netspeedtest.git package/netspeedtest
make menuconfig
```
### 配置菜单
```Brach
make menuconfig
# 找到 LuCI -> Applications, 选择 luci-app-netspeedtest, 保存后退出。
```
### 编译
```Brach
# 编译固件
make package/netspeedtest/luci-app-netspeedtest/compile V=s
```
## 源码说明
- 源码来源和依赖:
- luci-app-netspeedtesthttps://github.com/sirpdboy/netspeedtest
- speedtest-webhttps://github.com/ZeaKyX/speedtest-web
- speedtest-clhttps://github.com/sivel/speedtest-cli
- 你可以随意使用其中的源码,但请注明出处。
![screenshots](https://raw.githubusercontent.com/sirpdboy/openwrt/master/doc/说明2.jpg)
## 界面
![screenshots](https://raw.githubusercontent.com/sirpdboy/openwrt/master/doc/netspeedtest1.jpg)
![screenshots](https://raw.githubusercontent.com/sirpdboy/openwrt/master/doc/netspeedtest2.jpg)
![screenshots](https://raw.githubusercontent.com/sirpdboy/openwrt/master/doc/netspeedtest3.jpg)
![screenshots](https://raw.githubusercontent.com/sirpdboy/openwrt/master/doc/netspeedtest4.jpg)
## 使用与授权相关说明
- 本人开源的所有源码,任何引用需注明本处出处,如需修改二次发布必告之本人,未经许可不得做于任何商用用途。
# My other project
- 网络速度测试 https://github.com/sirpdboy/NetSpeedTest
- 定时设置插件 : https://github.com/sirpdboy/luci-app-autotimeset
- 关机功能插件 : https://github.com/sirpdboy/luci-app-poweroffdevice
- opentopd主题 : https://github.com/sirpdboy/luci-theme-opentopd
- kucat 主题: https://github.com/sirpdboy/luci-theme-kucat
- 家长控制: https://github.com/sirpdboy/luci-theme-parentcontrol
- 系统高级设置 : https://github.com/sirpdboy/luci-app-advanced
- ddns-go动态域名: https://github.com/sirpdboy/luci-app-ddns-go
- 进阶设置(系统高级设置+主题设置kucat/agron/opentopd: https://github.com/sirpdboy/luci-app-advancedplus
- 设置向导: https://github.com/sirpdboy/luci-app-wizard
- 分区扩容: https://github.com/sirpdboy/luci-app-partexp
- lukcy大吉: https://github.com/sirpdboy/luci-app-lukcy
## 捐助
![screenshots](https://raw.githubusercontent.com/sirpdboy/openwrt/master/doc/说明3.jpg)
| <img src="https://img.shields.io/badge/-支付宝-F5F5F5.svg" href="#赞助支持本项目-" height="25" alt="图飞了😂"/> | <img src="https://img.shields.io/badge/-微信-F5F5F5.svg" height="25" alt="图飞了😂" href="#赞助支持本项目-"/> |
| :-----------------: | :-------------: |
|![xm1](https://raw.githubusercontent.com/sirpdboy/openwrt/master/doc/支付宝.png) | ![xm1](https://raw.githubusercontent.com/sirpdboy/openwrt/master/doc/微信.png) |
<a href="#readme">
<img src="https://img.shields.io/badge/-返回顶部-orange.svg" alt="图飞了😂" title="返回顶部" align="right"/>
</a>

View File

@ -4,14 +4,16 @@ module("luci.controller.netspeedtest", package.seeall)
local fs=require"nixio.fs"
local sys = require "luci.sys"
function index()
entry({"admin","network","netspeedtest"},alias("admin", "network", "netspeedtest", "homebox"),_("Net Speedtest"), 90).dependent = true
if not nixio.fs.access("/etc/config/netspeedtest") then return end
local e = entry({"admin","network","netspeedtest"},alias("admin", "network", "netspeedtest", "homebox"),_("Net Speedtest"), 90)
e.dependent=false
e.acl_depends = { "luci-app-netspeedtest" }
entry({"admin","network","netspeedtest","homebox"},cbi("netspeedtest/homebox"),_("Lan homebox Web"),20).leaf = true
entry({"admin","network","netspeedtest","speedtestiperf3"},cbi("netspeedtest/speedtestiperf3", {hideapplybtn=true, hidesavebtn=true, hideresetbtn=true}),_("Lan Speedtest Iperf3"),30).leaf = true
entry({"admin","network","netspeedtest","speedtestwan"},cbi("netspeedtest/speedtestwan", {hideapplybtn=true, hidesavebtn=true, hideresetbtn=true}),_("Wan Speedtest"), 40).leaf = true
entry({"admin","network","netspeedtest","netperftestwan"},cbi("netspeedtest/netperftestwan", {hideapplybtn=true, hidesavebtn=true, hideresetbtn=true}),_("Netperf Speedtest"), 40).leaf = true
entry({"admin", "network", "netspeedtest", "checknet"}, call("check_net"))
entry({"admin", "network", "homebox_status"}, call("homebox_status"))
entry({"admin", "network", "iperf3_status"}, call("iperf3_status"))
entry({"admin", "network","test_iperf0"}, post("test_iperf0"), nil).leaf = true
@ -25,15 +27,6 @@ function index()
end
function homebox_status()
local e = {
run = (sys.call("pidof homebox >/dev/null") == 0),
port = 3300
}
luci.http.prepare_content("application/json")
luci.http.write_json(e)
end
function iperf3_status()
local e={}
e.run=sys.call("pgrep iperf3 >/dev/null")==0

View File

@ -1,14 +1,10 @@
-- Copyright (C) 2020-2022 sirpdboy <herboy2008@gmail.com> https://github.com/sirpdboy/netspeedtest
local m, s ,o
m = Map("netspeedtest", "<font color='green'>" .. translate("Net Speedtest") .."</font>",translate( "Network speed diagnosis test (including intranet and extranet)<br/>For specific usage, see:") ..translate("<a href=\'https://github.com/sirpdboy/netspeedtest.git' target=\'_blank\'>GitHub @sirpdboy/netspeedtest</a>") )
-- m:section(SimpleSection).template = "netspeedtest/homebox_status"
s = m:section(TypedSection, "homebox", translate('Lan homebox Web'))
s.addremove=false
s.anonymous=true
s.anonymous = true
o=s:option(Flag,"enabled",translate("Enable"))
o.default=0
@ -19,7 +15,6 @@ o.template ='netspeedtest/homebox'
m.apply_on_parse = true
m.on_after_apply = function(self,map)
io.popen("/etc/init.d/netspeedtest start")
io.popen("/etc/init.d/netspeedtest restart")
end
return m

View File

@ -1,18 +0,0 @@
-- Copyright (C) 2020-2022 sirpdboy <herboy2008@gmail.com> https://github.com/sirpdboy/netspeedtest
require("luci.util")
local o,t,e
o = Map("netspeedtest", "<font color='green'>" .. translate("Net Speedtest") .."</font>",translate( "Network speed diagnosis test (including intranet and extranet)<br/>For specific usage, see:") ..translate("<a href=\'https://github.com/sirpdboy/netspeedtest.git' target=\'_blank\'>GitHub @sirpdboy/netspeedtest</a>") )
t=o:section(TypedSection,"wanspeedtest",translate("Netperf Speedtest"))
t.anonymous=true
e = t:option(DummyValue, '', '')
e.rawhtml = true
e.template ='netspeedtest/netperftestwan'
e =t:option(DummyValue, '', '')
e.rawhtml = true
e.template = 'netspeedtest/log'
return o

View File

@ -3,11 +3,15 @@
https://github.com/sirpdboy/netspeedtest
Licensed to the public under the Apache License 2.0.
-%>
<%
local running = luci.sys.exec("pidof homebox")
%>
<%+cbi/valueheader%>
<div class="cbi-map">
<iframe id="homebox" style="width: 100%; min-height: 400px; border: none; border-radius: 3px;"></iframe>
</div>
<% if tonumber(running) ~= nil then %>
<iframe id="homebox" style="width: 100%; min-height: 400px; height: 650px;border: none; border-radius: 3px;"></iframe>
<script type="text/javascript">
document.getElementById("homebox").src = window.location.protocol + "//" + window.location.hostname + ":3300";
document.getElementById("homebox").height = document.documentElement.clientHeight;
@ -15,4 +19,13 @@
document.getElementById("homebox").height = document.documentElement.clientHeight;
}
</script>
<% else %>
<style>.running{text-align: center;} .running>h1{font-size: 25px; color: #333; margin: 1rem;} .running>p{ font-size: 1.2rem; color: #8391a2; margin: 1rem;}</style>
<div class="running">
<img src="data:image/svg+xml;base64,PCEtLSBHZW5lcmF0ZWQgYnkgSWNvTW9vbi5pbyAtLT4KPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMjQiIGhlaWdodD0iMTAyNCIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCI+Cjx0aXRsZT48L3RpdGxlPgo8ZyBpZD0iaWNvbW9vbi1pZ25vcmUiPgo8L2c+CjxwYXRoIGZpbGw9IiNkZjAwMDAiIGQ9Ik05NDIuNDIxIDIzNC42MjRsODAuODExLTgwLjgxMS0xNTMuMDQ1LTE1My4wNDUtODAuODExIDgwLjgxMWMtNzkuOTU3LTUxLjYyNy0xNzUuMTQ3LTgxLjU3OS0yNzcuMzc2LTgxLjU3OS0yODIuNzUyIDAtNTEyIDIyOS4yNDgtNTEyIDUxMiAwIDEwMi4yMjkgMjkuOTUyIDE5Ny40MTkgODEuNTc5IDI3Ny4zNzZsLTgwLjgxMSA4MC44MTEgMTUzLjA0NSAxNTMuMDQ1IDgwLjgxMS04MC44MTFjNzkuOTU3IDUxLjYyNyAxNzUuMTQ3IDgxLjU3OSAyNzcuMzc2IDgxLjU3OSAyODIuNzUyIDAgNTEyLTIyOS4yNDggNTEyLTUxMiAwLTEwMi4yMjktMjkuOTUyLTE5Ny40MTktODEuNTc5LTI3Ny4zNzZ6TTE5NC45NDQgNTEyYzAtMTc1LjEwNCAxNDEuOTUyLTMxNy4wNTYgMzE3LjA1Ni0zMTcuMDU2IDQ4IDAgOTMuNDgzIDEwLjY2NyAxMzQuMjI5IDI5Ljc4MWwtNDIxLjU0NyA0MjEuNTQ3Yy0xOS4wNzItNDAuNzg5LTI5LjczOS04Ni4yNzItMjkuNzM5LTEzNC4yNzJ6TTUxMiA4MjkuMDU2Yy00OCAwLTkzLjQ4My0xMC42NjctMTM0LjIyOS0yOS43ODFsNDIxLjU0Ny00MjEuNTQ3YzE5LjA3MiA0MC43ODkgMjkuNzgxIDg2LjI3MiAyOS43ODEgMTM0LjIyOS0wLjA0MyAxNzUuMTQ3LTE0MS45OTUgMzE3LjA5OS0zMTcuMDk5IDMxNy4wOTl6Ij48L3BhdGg+Cjwvc3ZnPgo=" height="100">
<h1><font color="color:red"><%:The homebox service is not running.%></font></h1>
<p><%:Please enable the Homebox service%></p>
</div>
<% end %>
</div>
<%+cbi/valuefooter%>

View File

@ -1,28 +0,0 @@
<script type="text/javascript">//<![CDATA[
XHR.poll(3, '<%=url([[admin]], [[network]], [[homebox_status]])%>', null,
function(x, data) {
var tb = document.getElementById('homebox_status');
if (data && tb)
{
if (data.run)
{
tb.innerHTML = '<br/><em style=\"color:green\"><%:The homebox service is running.%></em>';
}
else
{
tb.innerHTML = '<br/><em style=\"color:red\"><%:The homebox service is not running.%></em>';
}
}
}
);
//]]></script>
<style>.mar-10 {margin-left: 50px; margin-right: 10px;}</style>
<fieldset class="cbi-section">
<legend><%:homebox Status%></legend>
<p id="homebox_status">
<em><%:Collecting data...%></em>
</p>
</fieldset>

View File

@ -1,54 +0,0 @@
<%#
Copyright 2020-2022 sirpdboy Wich <sirpdboy@qq.com>
https://github.com/sirpdboy/netspeedtest
Licensed to the public under the Apache License 2.0.
-%>
<%
local fs = require "nixio.fs"
local has_ping6 = fs.access("/bin/ping6") or fs.access("/usr/bin/ping6")
%>
<%+cbi/valueheader%>
<input class="cbi-button cbi-button-apply" id="netperf_service" type="button" onclick="netperf()" value="<%= translate('Perform Netperf Speedtest') %>" />
<fieldset class="cbi-section" style="display:none">
<legend id="netperftest-legend">
<%:Collecting data...%>
</legend>
<span id="netperftest-output"></span>
</fieldset>
<script type="text/javascript" src="<%=resource%>/cbi.js"></script>
<script type="text/javascript">//<![CDATA[
const RUN_URL = '<%=luci.dispatcher.build_url("admin", "network", "netspeedtest","netperfrun")%>';
const S_URL = '<%=luci.dispatcher.build_url("admin","network","netspeedtest","netperftestwan")%>';
function netperf(s) {
var legend = document.getElementById('netperftest-legend');
var output = document.getElementById('netperftest-output');
output.innerHTML =
'<img src="<%=resource%>/icons/loading.gif" alt="<%:Loading%>" style="vertical-align:middle" /> ' +
'<%:Network speed test, please wait...%>'
;
legend.parentNode.style.display = 'block';
legend.style.display = 'inline';
XHR.get(RUN_URL, null,
function(x)
{
if (x.responseText)
{
legend.style.display = 'none';
output.innerHTML = String.format('<pre>%h</pre>', x.responseText);
}
else
{
legend.style.display = 'none';
output.innerHTML ='</p><%:Operation execution complete%></p>';
}
setTimeout(() => { window.location = S_URL }, 5000);
}
);
return false;
}
</script>
<%+cbi/valuefooter%>

View File

@ -43,6 +43,9 @@ msgstr "homebox网页测速服务已启动"
msgid "The homebox service is not running."
msgstr "homebox网页测速服务未启动"
msgid "Please enable the Homebox service"
msgstr "请将homebox服务启用"
msgid "homebox Status"
msgstr "homebox网页测速服务状态"

View File

@ -1 +0,0 @@
zh-cn

View File

@ -0,0 +1,109 @@
#
# Copyright (C) 2020-2022 sirpdboy herboy2008@gmail.com https://github.com/sirpdboy/netspeedtest
# This is free software, licensed under the GNU General Public License v3.
#
msgid ""
msgstr ""
"Project-Id-Version: LuCi Chinese Translation\n"
"Report-Msgid-Bugs-To: \n"
"Language: zh_CN\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
"X-Generator: Pootle 2.0.6\n"
msgid "Net Speedtest"
msgstr "网速测试"
msgid "Network speed diagnosis test (including intranet and extranet)<br/>For specific usage, see:"
msgstr "网络速度诊断测试(包括内网、外网、特定端口服务器测速)<br/>使用说明见:"
msgid "Lan Speedtest Iperf3"
msgstr "内网iperf3吞吐测速"
msgid "Lan homebox Web"
msgstr "内网测速网页版"
msgid "Running state"
msgstr "运行状态"
msgid "The Iperf3 service is running."
msgstr "iperf3服务已启动"
msgid "The Iperf3 service is not running."
msgstr "iperf3服务未启动"
msgid "Iperf3 Status"
msgstr "iperf3服务状态"
msgid "The homebox service is running."
msgstr "homebox网页测速服务已启动"
msgid "The homebox service is not running."
msgstr "homebox网页测速服务未启动"
msgid "Please enable the Homebox service"
msgstr "请将homebox服务启用"
msgid "homebox Status"
msgstr "homebox网页测速服务状态"
msgid "</br>For specific usage, see:"
msgstr "</br>具体使用方法参见:"
msgid "iperfstart"
msgstr "iperf服务启动"
msgid "iperfstop"
msgstr "iperf服务停止"
msgid "Select function"
msgstr "选择功能"
msgid "Perform operation"
msgstr "执行操作"
msgid "iperf3 instructions"
msgstr "iperf3使用说明"
msgid "Test speed service started"
msgstr "测试速度服务已经启动"
msgid "The speed measurement terminal must be in the same LAN as the router that starts the speed measurement"
msgstr "测速终端机必须与启动测速的路由器在同一局域网内"
msgid "Operation steps: start router speed measurement service download test client run speed measurement client input IP address of router speed measurement service"
msgstr "使用步骤A.启动路由器测速服务 B.下载测试客户端 C.运行测速客户端 D.输入路由器测速服务IP地址。 "
msgid "Domestic download password:"
msgstr "国内下密码:"
msgid "Iperf3 speed measurement software download"
msgstr "iperf3测速软件下载"
msgid "Wan Speedtest"
msgstr "Speedtest宽带测速"
msgid "Perform Wan Speedtest"
msgstr "执行Speedtest宽带测速"
msgid "Netperf Speedtest"
msgstr "Netperf宽带测速"
msgid "Perform Netperf Speedtest"
msgstr "执行Netperf宽带测速"
msgid "Operation execution complete"
msgstr "操作执行完毕"
msgid "Network speed test, please wait..."
msgstr "网速测试中,请稍侯..."
msgid "Download from foreign official websites"
msgstr "国外官网"
msgid "Server Port Speedtest"
msgstr "端口延迟测试"

View File

@ -64,10 +64,12 @@ homebox_prepare() {
}
start_service() {
homebox_prepare
config_load netspeedtest
config_foreach get_config homebox
[ "x$enabled" != "x1" ] && exit 1
[ "x$enabled" != "x1" ] && {
homebox_prepare
exit
}
procd_open_instance
procd_set_param command $PROG
[ "x$logger" == x1 ] && procd_set_param stderr 1

View File

@ -1,5 +0,0 @@
#!/bin/sh
chmod +x /etc/init.d/netspeedtest /usr/bin/*test >/dev/null 2>&1
rm -rf /tmp/luci-modulecache /tmp/luci-indexcache*
exit 0

View File

@ -1,167 +0,0 @@
#! /bin/sh
# Netperfrunner.sh - a shell script that runs several netperf commands simultaneously.
# This mimics the stress test of Flent (www.flent.org - formerly, "netperf-wrapper")
# from Toke <toke@toke.dk> but doesn't have the nice GUI result.
# This can live in /usr/lib/OpenWrtScripts
#
# When you start this script, it concurrently uploads and downloads multiple
# streams (files) to a server on the Internet. This places a heavy load
# on the bottleneck link of your network (probably your connection to the
# Internet). It also starts a ping to a well-connected host. It displays:
#
# a) total bandwidth available
# b) the distribution of ping latency
# Usage: sh netperfrunner.sh [ -4 -6 ] [ -H netperf-server ] [ -t duration ] [ -t host-to-ping ] [ -n simultaneous-streams ]
# Options: If options are present:
#
# -H | --host: DNS or Address of a netperf server (default - netperf.bufferbloat.net)
# Alternate servers are netperf-east (east coast US), netperf-west (California),
# and netperf-eu (Denmark)
# -4 | -6: IPv4 or IPv6
# -t | --time: Duration for how long each direction's test should run - (default - 60 seconds)
# -p | --ping: Host to ping to measure latency (default - gstatic.com)
# -n | --number: Number of simultaneous sessions (default - 5 sessions)
# Copyright (c) 2014-2022 - Rich Brown rich.brown@blueberryhillsoftware.com
# GPLv2
# Process the ping times from the passed-in file, and summarize the results
# grep to keep lines that have "time=", then sed to isolate the time stamps, and sort them
# Use awk to build an array of those values, and print first & last (which are min, max)
# and compute average.
# If the number of samples is >= 10, also compute median, and 10th and 90th percentile readings
# Display the values as:
# Latency: (in msec, 11 pings, 8.33% packet loss)
# Min: 16.556
# 10pct: 16.561
# Median: 22.370
# Avg: 21.203
# 90pct: 23.202
# Max: 23.394
# ------- Start of the main routine --------
# Usage: sh betterspeedtest.sh [ -H netperf-server ] [ -t duration ] [ -p host-to-ping ]
# “H” and “host” DNS or IP address of the netperf server host (default: netperf.bufferbloat.net)
# “t” and “time” Time to run the test in each direction (default: 60 seconds)
# “p” and “ping” Host to ping for latency measurements (default: gstatic.com)
# "n" and "number" Number of simultaneous upload or download sessions (default: 4 sessions;
# 4 sessions chosen to match default of RRUL test)
# set an initial values for defaults
TESTHOST="netperf.bufferbloat.net"
TESTDUR="60"
PING4=ping
command -v ping4 > /dev/null 2>&1 && PING4=ping4
PING6=ping6
PINGHOST="netperf.bufferbloat.net"
MAXSESSIONS=4
TESTPROTO=-4
# Create temp files for netperf up/download results
ULFILE=`mktemp /tmp/netperfUL.XXXXXX` || exit 1
DLFILE=`mktemp /tmp/netperfDL.XXXXXX` || exit 1
PINGFILE=`mktemp /tmp/measurepings.XXXXXX` || exit 1
# echo $ULFILE $DLFILE $PINGFILE
# read the options
# extract options and their arguments into variables.
while [ $# -gt 0 ]
do
case "$1" in
-4|-6) TESTPROTO=$1; shift 1 ;;
-H|--host)
case "$2" in
"") echo "Missing hostname" ; exit 1 ;;
*) TESTHOST=$2 ; shift 2 ;;
esac ;;
-t|--time)
case "$2" in
"") echo "Missing duration" ; exit 1 ;;
*) TESTDUR=$2 ; shift 2 ;;
esac ;;
-p|--ping)
case "$2" in
"") echo "Missing ping host" ; exit 1 ;;
*) PINGHOST=$2 ; shift 2 ;;
esac ;;
-n|--number)
case "$2" in
"") echo "Missing number of simultaneous sessions" ; exit 1 ;;
*) MAXSESSIONS=$2 ; shift 2 ;;
esac ;;
--) shift ; break ;;
*) echo "Usage: sh Netperfrunner.sh [ -H netperf-server ] [ -t duration ] [ -p host-to-ping ] [ -n simultaneous-streams ]" ; exit 1 ;;
esac
done
# Start main test
if [ $TESTPROTO -eq "-4" ]
then
PROTO="ipv4"
else
PROTO="ipv6"
fi
DATE=`date "+%Y-%m-%d %H:%M:%S"`
LOG=/var/log/netspeedtest.log
echo -ne "\n netperf测速" | tee -a $LOG
echo -ne "\n 测服信息:$TESTHOST 协议:($PROTO) 线程:$MAXSESSIONS " | tee -a $LOG
# Start Ping
if [ $TESTPROTO -eq "-4" ]
then
"${PING4}" $PINGHOST > $PINGFILE &
else
"${PING6}" $PINGHOST > $PINGFILE &
fi
ping_pid=$!
# echo "Ping PID: $ping_pid"
# Start $MAXSESSIONS upload datastreams from netperf client to the netperf server
# netperf writes the sole output value (in Mbps) to stdout when completed
for i in $( seq $MAXSESSIONS )
do
netperf $TESTPROTO -H $TESTHOST -t TCP_STREAM -l $TESTDUR -v 0 -P 0 >> $ULFILE &
# echo "Starting upload #$i $!"
done
# Start $MAXSESSIONS download datastreams from netperf server to the client
for i in $( seq $MAXSESSIONS )
do
netperf $TESTPROTO -H $TESTHOST -t TCP_MAERTS -l $TESTDUR -v 0 -P 0 >> $DLFILE &
# echo "Starting download #$i $!"
done
# Wait until each of the background netperf processes completes
# echo "Process is $$"
# echo `pgrep -P $$ netperf `
for i in `pgrep -P $$ netperf` # get a list of PIDs for child processes named 'netperf'
do
# echo "Waiting for $i"
wait $i
done
# Stop the pings after the netperf's are all done
kill -9 $ping_pid
wait $ping_pid 2>/dev/null
echo -ne "\n 下行速率:" `awk '{s+=$1} END {print s}' $DLFILE` Mbps | tee -a $LOG
echo -ne " ---- 上行速率:" `awk '{s+=$1} END {print s}' $ULFILE` Mbps | tee -a $LOG
echo -ne "\n 测试时间: " | tee -a $LOG
echo $(date +%Y-%m-%d" "%H:%M:%S) | tee -a $LOG
echo -ne " ————————————————————————————\n" | tee -a $LOG
# Clean up
rm $PINGFILE
rm $DLFILE
rm $ULFILE

View File

@ -5,12 +5,12 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=microsocks
PKG_VERSION:=1.0.3
PKG_VERSION:=1.0.4
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://codeload.github.com/rofl0r/microsocks/tar.gz/v$(PKG_VERSION)?
PKG_HASH:=6801559b6f8e17240ed8eef17a36eea8643412b5a7476980fd4e24b02a021b82
PKG_HASH:=130127a87f55870f18fbe47a64d9b9533020e2900802d36a0f6fd2b074313deb
PKG_LICENSE:=MIT
PKG_LICENSE_FILES:=COPYING