Documentation ¶
Index ¶
- Constants
- func AutoSpeedTest(distanceUnit string, forceHTTPS bool, noICMP bool, noShare bool) (*defs.Report, error)
- func FetchServerList(listURL string) (*[]defs.Server, error)
- func GetLocalServerList(listPath string) (*[]defs.Server, error)
- func PreprocessServers(servers *[]defs.Server, forceHTTPS bool, noICMP bool) error
- func RankServers(servers *[]defs.Server) (defs.Server, error)
- func SendTelemetry(telemetryServer defs.TelemetryServer, extra defs.TelemetryExtra, ...) (string, error)
- func SingleSpeedTest(server *defs.Server, noDownload bool, noUpload bool, pingCount int, ...) (*defs.Report, error)
- type PingJob
- type PingResult
Constants ¶
const ( // serverListUrl is the default remote server JSON URL ServerListUrl = `https://librespeed.org/backend-servers/servers.php` DefaultPingCount = 10 DefaultTelemetryLevel = "basic" DefaultTelemetryServer = "https://librespeed.org" DefaultTelemetryPath = "/results/telemetry.php" )
Variables ¶
This section is empty.
Functions ¶
func AutoSpeedTest ¶
func AutoSpeedTest( distanceUnit string, forceHTTPS bool, noICMP bool, noShare bool, ) (*defs.Report, error)
AutoSpeedTest is a function that selects the fastest server and runs a fully automatic speedtest with default parameters, distanceUnit shoulr be one of ["mi", "km", "NM"] (miles, kilometers, nautical miles)
func FetchServerList ¶
FetchServerList fetches a server list from a URL
func GetLocalServerList ¶
GetLocalServerList reads a server list from a filesystem path
func PreprocessServers ¶
PreprocessServers sets a few key attributes of the servers
func RankServers ¶
RankServer performs a ping request to each server frin the given slice and returns the fastest one
func SendTelemetry ¶
func SendTelemetry( telemetryServer defs.TelemetryServer, extra defs.TelemetryExtra, ispInfo *defs.GetIPResult, report *defs.Report, telemetryLog *defs.TelemetryLog, ) (string, error)
sendTelemetry sends the telemetry result to server, if --share is given
func SingleSpeedTest ¶
func SingleSpeedTest( server *defs.Server, noDownload bool, noUpload bool, pingCount int, distanceUnit string, requests int, chunks int, noPrealloc bool, uploadSize int, duration time.Duration, noShare bool, ) (*defs.Report, error)
SingleSpeedTest runs a speedtest for one server and returns a corresponding Report object distanceUnit shoulr be one of ["mi", "km", "NM"] (miles, kilometers, nautical miles)