network

package
v0.1.13 Latest Latest
Warning

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

Go to latest
Published: Oct 13, 2025 License: MIT Imports: 11 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func HandleRequest

func HandleRequest(conn net.Conn, req Request, manager *Manager)

Types

type ConnectionPreference

type ConnectionPreference string
const (
	PreferenceAuto     ConnectionPreference = "auto"
	PreferenceWiFi     ConnectionPreference = "wifi"
	PreferenceEthernet ConnectionPreference = "ethernet"
)

type ConnectionRequest

type ConnectionRequest struct {
	SSID     string `json:"ssid"`
	Password string `json:"password,omitempty"`
	Username string `json:"username,omitempty"`
}

type EventType

type EventType string
const (
	EventStateChanged    EventType = "state_changed"
	EventNetworksUpdated EventType = "networks_updated"
	EventConnecting      EventType = "connecting"
	EventConnected       EventType = "connected"
	EventDisconnected    EventType = "disconnected"
	EventError           EventType = "error"
)

type Manager

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

func NewManager

func NewManager() (*Manager, error)

func (*Manager) Close

func (m *Manager) Close()

func (*Manager) ConnectEthernet

func (m *Manager) ConnectEthernet() error

func (*Manager) ConnectWiFi

func (m *Manager) ConnectWiFi(req ConnectionRequest) error

func (*Manager) DisableWiFi

func (m *Manager) DisableWiFi() error

func (*Manager) DisconnectEthernet

func (m *Manager) DisconnectEthernet() error

func (*Manager) DisconnectWiFi

func (m *Manager) DisconnectWiFi() error

func (*Manager) EnableWiFi

func (m *Manager) EnableWiFi() error

func (*Manager) ForgetWiFiNetwork

func (m *Manager) ForgetWiFiNetwork(ssid string) error

func (*Manager) GetConnectionPreference

func (m *Manager) GetConnectionPreference() ConnectionPreference

func (*Manager) GetNetworkInfo

func (m *Manager) GetNetworkInfo(ssid string) (*WiFiNetwork, error)

func (*Manager) GetNetworkInfoDetailed

func (m *Manager) GetNetworkInfoDetailed(ssid string) (*NetworkInfoResponse, error)

func (*Manager) GetState

func (m *Manager) GetState() NetworkState

func (*Manager) GetWiFiNetworks

func (m *Manager) GetWiFiNetworks() []WiFiNetwork

func (*Manager) ScanWiFi

func (m *Manager) ScanWiFi() error

func (*Manager) SetConnectionPreference

func (m *Manager) SetConnectionPreference(pref ConnectionPreference) error

func (*Manager) StartAutoScan

func (m *Manager) StartAutoScan(interval time.Duration)

func (*Manager) Subscribe

func (m *Manager) Subscribe(id string) chan NetworkState

func (*Manager) ToggleWiFi

func (m *Manager) ToggleWiFi() error

func (*Manager) Unsubscribe

func (m *Manager) Unsubscribe(id string)

type NetworkEvent

type NetworkEvent struct {
	Type EventType    `json:"type"`
	Data NetworkState `json:"data"`
}

type NetworkInfoResponse

type NetworkInfoResponse struct {
	SSID  string        `json:"ssid"`
	Bands []WiFiNetwork `json:"bands"`
}

type NetworkState

type NetworkState struct {
	NetworkStatus     NetworkStatus        `json:"networkStatus"`
	Preference        ConnectionPreference `json:"preference"`
	EthernetIP        string               `json:"ethernetIP"`
	EthernetDevice    string               `json:"ethernetDevice"`
	EthernetConnected bool                 `json:"ethernetConnected"`
	WiFiIP            string               `json:"wifiIP"`
	WiFiDevice        string               `json:"wifiDevice"`
	WiFiConnected     bool                 `json:"wifiConnected"`
	WiFiEnabled       bool                 `json:"wifiEnabled"`
	WiFiSSID          string               `json:"wifiSSID"`
	WiFiBSSID         string               `json:"wifiBSSID"`
	WiFiSignal        uint8                `json:"wifiSignal"`
	WiFiNetworks      []WiFiNetwork        `json:"wifiNetworks"`
	IsConnecting      bool                 `json:"isConnecting"`
	ConnectingSSID    string               `json:"connectingSSID"`
	LastError         string               `json:"lastError"`
}

type NetworkStatus

type NetworkStatus string
const (
	StatusDisconnected NetworkStatus = "disconnected"
	StatusEthernet     NetworkStatus = "ethernet"
	StatusWiFi         NetworkStatus = "wifi"
)

type PriorityUpdate

type PriorityUpdate struct {
	Preference ConnectionPreference `json:"preference"`
}

type Request

type Request struct {
	ID     int                    `json:"id,omitempty"`
	Method string                 `json:"method"`
	Params map[string]interface{} `json:"params,omitempty"`
}

type SuccessResult

type SuccessResult struct {
	Success bool   `json:"success"`
	Message string `json:"message"`
}

type WiFiNetwork

type WiFiNetwork struct {
	SSID       string `json:"ssid"`
	BSSID      string `json:"bssid"`
	Signal     uint8  `json:"signal"`
	Secured    bool   `json:"secured"`
	Enterprise bool   `json:"enterprise"`
	Connected  bool   `json:"connected"`
	Saved      bool   `json:"saved"`
	Frequency  uint32 `json:"frequency"`
	Mode       string `json:"mode"`
	Rate       uint32 `json:"rate"`
	Channel    uint32 `json:"channel"`
}

Jump to

Keyboard shortcuts

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