Documentation ¶
Index ¶
- type AuthLogin
- type CreateMesh
- type CreateTunnel
- type EditTunnel
- type Host
- type Interface
- type LQM
- type LinkInfo
- type MeshRF
- type NodeDetails
- type OlsrdLinkinfo
- type OlsrdLinks
- type Service
- type Sysinfo
- type SysinfoResponse
- type TunnelWithPass
- type Tunnels
- type UserPatch
- type UserRegistration
- type WebsocketTunnelConnect
- type WebsocketTunnelDisconnect
- type WebsocketTunnelStats
- type WireguardPubkeyRequest
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type CreateMesh ¶
type CreateMesh struct { Name string `json:"name" binding:"required"` IPs []string `json:"ips" binding:"required"` }
func (*CreateMesh) IsValidHostname ¶
func (r *CreateMesh) IsValidHostname() (bool, string)
type CreateTunnel ¶
type CreateTunnel struct { Wireguard bool `json:"wireguard"` Hostname string `json:"hostname" binding:"required"` Password string `json:"password"` IP string `json:"ip"` Client bool `json:"client"` }
func (*CreateTunnel) IsValidHostname ¶
func (r *CreateTunnel) IsValidHostname() (bool, string)
type EditTunnel ¶ added in v0.0.75
type LinkInfo ¶ added in v0.0.44
type LinkInfo struct { HelloTime uint64 `json:"helloTime"` LostLinkTime uint64 `json:"lostLinkTime"` LinkQuality float32 `json:"linkQuality"` VTime uint64 `json:"vtime"` LinkCost float32 `json:"linkCost"` LinkType string `json:"linkType"` Hostname string `json:"hostname"` PreviousLinkStatus string `json:"previousLinkStatus"` CurrentLinkStatus string `json:"currentLinkStatus"` NeighborLinkQuality float32 `json:"neighborLinkQuality"` SymmetryTime uint64 `json:"symmetryTime"` SeqnoValid bool `json:"seqnoValid"` Pending bool `json:"pending"` LossHelloInterval uint64 `json:"lossHelloInterval"` LossMultiplier uint64 `json:"lossMultiplier"` Hysteresis float32 `json:"hysteresis"` Seqno uint64 `json:"seqno"` LossTime uint64 `json:"lossTime"` ValidityTime uint64 `json:"validityTime"` OLSRInterface string `json:"olsrInterface"` LastHelloTime uint64 `json:"lastHelloTime"` AsymmetryTime uint64 `json:"asymmetryTime"` }
type NodeDetails ¶ added in v0.0.44
type NodeDetails struct { MeshSupernode bool `json:"mesh_supernode"` Description string `json:"description"` Model string `json:"model"` MeshGateway string `json:"mesh_gateway"` BoardID string `json:"board_id"` FirmwareManufacturer string `json:"firmware_mfg"` FirmwareVersion string `json:"firmware_version"` }
type OlsrdLinkinfo ¶ added in v0.0.44
type OlsrdLinkinfo struct { HelloTime uint64 `json:"helloTime"` LostLinkTime uint64 `json:"lostLinkTime"` LinkQuality float32 `json:"linkQuality"` VTime uint64 `json:"vtime"` LinkCost float32 `json:"linkCost"` PreviousLinkStatus string `json:"previousLinkStatus"` CurrentLinkStatus string `json:"currentLinkStatus"` NeighborLinkQuality float32 `json:"neighborLinkQuality"` SymmetryTime uint64 `json:"symmetryTime"` SeqnoValid bool `json:"seqnoValid"` Pending bool `json:"pending"` LossHelloInterval uint64 `json:"lossHelloInterval"` LossMultiplier uint64 `json:"lossMultiplier"` Hysteresis float32 `json:"hysteresis"` Seqno uint64 `json:"seqno"` LossTime uint64 `json:"lossTime"` ValidityTime uint64 `json:"validityTime"` OLSRInterface string `json:"olsrInterface"` LastHelloTime uint64 `json:"lastHelloTime"` AsymmetryTime uint64 `json:"asymmetryTime"` LocalIP string `json:"localIP"` RemoteIP string `json:"remoteIP"` InterfaceName string `json:"ifName"` }
type OlsrdLinks ¶ added in v0.0.44
type OlsrdLinks struct { PID int `json:"pid"` SystemTime uint64 `json:"systemTime"` TimeSinceStartup uint64 `json:"timeSinceStartup"` ConfigurationChecksum string `json:"configurationChecksum"` Links []OlsrdLinkinfo `json:"links"` }
type SysinfoResponse ¶ added in v0.0.44
type SysinfoResponse struct { Longitude string `json:"lon"` Latitude string `json:"lat"` Sysinfo Sysinfo `json:"sysinfo"` APIVersion string `json:"api_version"` MeshRF MeshRF `json:"meshrf"` Gridsquare string `json:"grid_square"` Node string `json:"node"` NodeDetails NodeDetails `json:"node_details"` Tunnels Tunnels `json:"tunnels"` LQM LQM `json:"lqm"` Interfaces []Interface `json:"interfaces"` Hosts []Host `json:"hosts"` Services []Service `json:"services"` LinkInfo map[string]LinkInfo `json:"link_info"` }
type TunnelWithPass ¶
type TunnelWithPass struct { ID uint `json:"id"` Wireguard bool `json:"wireguard"` WireguardPort uint16 `json:"wireguard_port"` Client bool `json:"client"` Hostname string `json:"hostname"` IP string `json:"ip"` Password string `json:"password"` Active bool `json:"active"` ConnectionTime time.Time `json:"connection_time"` CreatedAt time.Time `json:"created_at"` }
type Tunnels ¶ added in v0.0.44
type Tunnels struct {
ActiveTunnelCount int `json:"active_tunnel_count"`
}
type UserRegistration ¶
type UserRegistration struct { Username string `json:"username" binding:"required"` Password string `json:"password" binding:"required"` }
func (*UserRegistration) IsValidUsername ¶
func (r *UserRegistration) IsValidUsername() (bool, string)
type WebsocketTunnelConnect ¶ added in v0.0.149
type WebsocketTunnelConnect struct {
ID uint `json:"id"`
}
type WebsocketTunnelDisconnect ¶ added in v0.0.149
type WebsocketTunnelDisconnect struct {
ID uint `json:"id"`
}
type WebsocketTunnelStats ¶ added in v0.0.149
type WebsocketTunnelStats struct { ID uint `json:"id"` RXBytesPerSecond uint64 `json:"rx_bytes_per_sec"` TXBytesPerSecond uint64 `json:"tx_bytes_per_sec"` RXBytes uint64 `json:"rx_bytes"` TXBytes uint64 `json:"tx_bytes"` TotalRXMB float64 `json:"total_rx_mb"` TotalTXMB float64 `json:"total_tx_mb"` }
type WireguardPubkeyRequest ¶ added in v0.0.100
type WireguardPubkeyRequest struct {
Privkey string `json:"key" binding:"required"`
}
Click to show internal directories.
Click to hide internal directories.