lqm

package
v0.0.424 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 6, 2026 License: AGPL-3.0 Imports: 21 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type BabelConfig

type BabelConfig struct {
	HelloInterval  int `json:"hello_interval"`
	UpdateInterval int `json:"update_interval"`
	RxCost         int `json:"rxcost"`
}

type DeviceType added in v0.0.345

type DeviceType string
const (
	DeviceTypeDtD       DeviceType = "DtD"
	DeviceTypeWireguard DeviceType = "Wireguard"
)

type LQM added in v0.0.349

type LQM struct {
	Enabled bool    `json:"enabled"`
	Info    LQMInfo `json:"info,omitempty"`
}

type LQMInfo added in v0.0.349

type LQMInfo struct {
	Trackers        any   `json:"trackers,omitempty"`
	Start           int64 `json:"start,omitempty"`
	Now             int64 `json:"now,omitempty"`
	Distance        any   `json:"distance,omitempty"`
	TotalRouteCount int64 `json:"total_route_count,omitempty"`
}

type Service

type Service struct {
	// contains filtered or unexported fields
}

func NewService

func NewService(config *config.Config) *Service

func (*Service) IsEnabled

func (s *Service) IsEnabled() bool

func (*Service) IsRunning

func (s *Service) IsRunning() bool

func (*Service) Reload

func (s *Service) Reload() error

func (*Service) Start

func (s *Service) Start() error

func (*Service) Stop

func (s *Service) Stop() error

type SysinfoInterface added in v0.0.344

type SysinfoInterface struct {
	Mac string `json:"mac"`
	IP  string `json:"ip"`
}

type SysinfoNodeDetails added in v0.0.344

type SysinfoNodeDetails struct {
	Model           string `json:"model"`
	FirmwareVersion string `json:"firmware_version"`
}

type SysinfoResponse added in v0.0.344

type SysinfoResponse struct {
	Node        string             `json:"node"`
	Lat         any                `json:"lat"`
	Lon         any                `json:"lon"`
	NodeDetails SysinfoNodeDetails `json:"node_details"`
	Interfaces  []SysinfoInterface `json:"interfaces"`
	Lqm         LQM                `json:"lqm"`
}

type Tracker

type Tracker struct {
	FirstSeen          int          `json:"-"`
	LastSeen           int          `json:"lastseen"`
	LastUp             int          `json:"lastup"`
	Type               DeviceType   `json:"type"`
	Device             string       `json:"device"`
	MAC                string       `json:"mac"`
	IPv6LL             string       `json:"ipv6ll"`
	Refresh            int          `json:"refresh"`
	LQ                 int          `json:"lq"`
	AvgLQ              float64      `json:"avg_lq"`
	RxCost             int          `json:"rxcost"`
	TxCost             int          `json:"txcost"`
	RTT                *float64     `json:"rtt"`
	TxPackets          uint64       `json:"tx_packets"`
	TxFail             uint64       `json:"tx_fail"`
	TxRetries          uint64       `json:"-"`
	LastTxPackets      *uint64      `json:"last_tx_packets"`
	LastTxFail         *uint64      `json:"-"`
	LastTxRetries      *uint64      `json:"-"`
	AvgTx              float64      `json:"avg_tx_packets"`
	AvgTxFail          float64      `json:"-"`
	AvgTxRetries       float64      `json:"-"`
	TxQuality          float64      `json:"tx_quality"`
	PingQuality        int          `json:"ping_quality"`
	PingSuccessTime    float64      `json:"ping_success_time"`
	Quality            *int         `json:"quality"`
	Hostname           string       `json:"hostname"`
	CanonicalIP        string       `json:"canonical_ip"`
	IP                 string       `json:"ip"`
	Lat                float64      `json:"lat"`
	Lon                float64      `json:"lon"`
	Distance           float64      `json:"distance"`
	LocalArea          bool         `json:"localarea"`
	Model              string       `json:"model"`
	FirmwareVersion    string       `json:"firmware_version"`
	RevLastSeen        int          `json:"rev_lastseen"`
	RevPingSuccessTime float64      `json:"rev_ping_success_time"`
	RevPingQuality     int          `json:"rev_ping_quality"`
	RevQuality         int          `json:"rev_quality"`
	NodeRouteCount     int          `json:"-"`
	BabelRouteCount    int          `json:"babel_route_count"`
	BabelMetric        int          `json:"babel_metric"`
	Routable           bool         `json:"routable"`
	UserBlocks         bool         `json:"user_blocks"`
	BabelConfig        *BabelConfig `json:"babel_config,omitempty"`
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL