eero

package
v1.0.0 Latest Latest
Warning

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

Go to latest
Published: Aug 21, 2023 License: GPL-3.0 Imports: 6 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AccountsData

type AccountsData struct {
	Name  string `json:"name"`
	Phone struct {
		Value          string `json:"value"`
		CountryCode    string `json:"country_code"`
		NationalNumber string `json:"national_number"`
		Verified       bool   `json:"verified"`
	} `json:"phone"`
	Email struct {
		Value    string `json:"value"`
		Verified bool   `json:"verified"`
	} `json:"email"`
	LogID string `json:"log_id"`
	// OrganizationID string `json:"organization_id"`
	// ImageAssets    string `json:"image_assets"`
	Networks struct {
		Count int           `json:"count"`
		Data  []NetworkData `json:"data"`
	} `json:"networks"`
}

type AccountsResponse

type AccountsResponse struct {
	MetaResponse
	Data AccountsData `json:"data"`
}

type DeviceData

type DeviceData struct {
	URL            string    `json:"url"`
	Mac            string    `json:"mac"`
	Manufacturer   string    `json:"manufacturer"`
	IP             string    `json:"ip"`
	Ips            []string  `json:"ips"`
	Nickname       string    `json:"nickname"`
	Connected      bool      `json:"connected"`
	Wireless       bool      `json:"wireless"`
	ConnectionType string    `json:"connection_type"`
	LastActive     time.Time `json:"last_active"`
	FirstActive    time.Time `json:"first_active"`
	Interface      struct {
		Frequency     string `json:"frequency"`
		FrequencyUnit string `json:"frequency_unit"`
	} `json:"interface"`
	DeviceType  string `json:"device_type"`
	Blacklisted bool   `json:"blacklisted"`
	IsGuest     bool   `json:"is_guest"`
	Paused      bool   `json:"paused"`
	SSID        string `json:"ssid"`
	DisplayName string `json:"display_name"`
}

type DevicesResponse

type DevicesResponse struct {
	MetaResponse
	Data []DeviceData `json:"data"`
}

type Eero

type Eero interface {
	Login(identifier string) (LoginData, error)
	LoginVerify(userToken string, verificationCode string) error
	Networks() ([]NetworkData, error)
	Account() (AccountsData, error)
	Devices() ([]DeviceData, error)
}

func New

func New(userToken string) Eero

type LoginData

type LoginData struct {
	UserToken string `json:"user_token"`
}

type LoginRequest

type LoginRequest struct {
	Identifier string `json:"login"`
}

type LoginResponse

type LoginResponse struct {
	MetaResponse
	Data LoginData
}

type LoginVerifyRequest

type LoginVerifyRequest struct {
	Code string `json:"code"`
}

type MetaResponse

type MetaResponse struct {
	Meta struct {
		Code         int       `json:"code"`
		ServerTime   time.Time `json:"server_time"`
		ErrorMessage string    `json:"error"`
	} `json:"meta"`
}

func (*MetaResponse) Error

func (e *MetaResponse) Error() string

type NetworkData

type NetworkData struct {
	URL     string    `json:"url"`
	Name    string    `json:"name"`
	Created time.Time `json:"created"`
}

Jump to

Keyboard shortcuts

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