telemetry

package
v3.17.0 Latest Latest
Warning

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

Go to latest
Published: Jan 21, 2025 License: GPL-3.0 Imports: 8 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Availability added in v3.3.1

type Availability interface {
	IsTelemetryAvailable(ctx context.Context) bool
}

type Heartbeat

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

func NewHeartbeat

func NewHeartbeat(manager HeartbeatManager, imapPort, smtpPort int, cacheDir, keychain string) Heartbeat

func (*Heartbeat) GetRollout added in v3.16.0

func (heartbeat *Heartbeat) GetRollout() int

func (*Heartbeat) SetAutoStart

func (heartbeat *Heartbeat) SetAutoStart(val bool)

func (*Heartbeat) SetAutoUpdate

func (heartbeat *Heartbeat) SetAutoUpdate(val bool)

func (*Heartbeat) SetBeta

func (heartbeat *Heartbeat) SetBeta(val updater.Channel)

func (*Heartbeat) SetCacheLocation

func (heartbeat *Heartbeat) SetCacheLocation(val string)

func (*Heartbeat) SetContactedByAppleNotes added in v3.16.0

func (heartbeat *Heartbeat) SetContactedByAppleNotes(uaName string)

func (*Heartbeat) SetDoh

func (heartbeat *Heartbeat) SetDoh(val bool)

func (*Heartbeat) SetIMAPConnectionMode

func (heartbeat *Heartbeat) SetIMAPConnectionMode(val bool)

func (*Heartbeat) SetIMAPPort

func (heartbeat *Heartbeat) SetIMAPPort(val int)

func (*Heartbeat) SetKeyChainPref

func (heartbeat *Heartbeat) SetKeyChainPref(val string)

func (*Heartbeat) SetNumberConnectedAccounts added in v3.16.0

func (heartbeat *Heartbeat) SetNumberConnectedAccounts(val int)

func (*Heartbeat) SetPrevVersion

func (heartbeat *Heartbeat) SetPrevVersion(val string)

func (*Heartbeat) SetRollout

func (heartbeat *Heartbeat) SetRollout(val float64)

func (*Heartbeat) SetSMTPConnectionMode

func (heartbeat *Heartbeat) SetSMTPConnectionMode(val bool)

func (*Heartbeat) SetSMTPPort

func (heartbeat *Heartbeat) SetSMTPPort(val int)

func (*Heartbeat) SetShowAllMail

func (heartbeat *Heartbeat) SetShowAllMail(val bool)

func (*Heartbeat) SetSplitMode

func (heartbeat *Heartbeat) SetSplitMode(val bool)

func (*Heartbeat) SetUserPlan added in v3.16.0

func (heartbeat *Heartbeat) SetUserPlan(val string)

func (*Heartbeat) TrySending

func (heartbeat *Heartbeat) TrySending(ctx context.Context)

type HeartbeatData

type HeartbeatData struct {
	MeasurementGroup string
	Event            string
	Values           HeartbeatValues
	Dimensions       HeartbeatDimensions
}

type HeartbeatDimensions

type HeartbeatDimensions struct {
	// Fields below correspond to bool
	AutoUpdateEnabled       string `json:"isAutoUpdateEnabled"`
	AutoStartEnabled        string `json:"isAutoStartEnabled"`
	BetaEnabled             string `json:"isBetaEnabled"`
	DohEnabled              string `json:"isDohEnabled"`
	UseSplitMode            string `json:"usesSplitMode"`
	ShowAllMail             string `json:"useAllMail"`
	UseDefaultIMAPPort      string `json:"useDefaultImapPort"`
	UseDefaultSMTPPort      string `json:"useDefaultSmtpPort"`
	UseDefaultCacheLocation string `json:"useDefaultCacheLocation"`
	UseDefaultKeychain      string `json:"useDefaultKeychain"`
	ContactedByAppleNotes   string `json:"isContactedByAppleNotes"`

	// Fields below are enums.
	PrevVersion        string `json:"prevVersion"` // Free text (exception)
	IMAPConnectionMode string `json:"imapConnectionMode"`
	SMTPConnectionMode string `json:"smtpConnectionMode"`
	UserPlanGroup      string `json:"bridgePlanGroup"`
}

func NewHeartbeatDimensions added in v3.16.0

func NewHeartbeatDimensions() HeartbeatDimensions

type HeartbeatManager

type HeartbeatManager interface {
	Availability
	SendHeartbeat(ctx context.Context, heartbeat *HeartbeatData) bool
	GetLastHeartbeatSent() time.Time
	SetLastHeartbeatSent(time.Time) error
	GetHeartbeatPeriodicInterval() time.Duration
}

type HeartbeatValues

type HeartbeatValues struct {
	NumberConnectedAccounts int `json:"numberConnectedAccounts"`
	Rollout                 int `json:"rolloutPercentage"`
}

type RepairData added in v3.12.0

type RepairData struct {
	MeasurementGroup string
	Event            string
	Values           map[string]string
	Dimensions       map[string]string
}

func NewRepairDeferredTriggerData added in v3.12.0

func NewRepairDeferredTriggerData() RepairData

func NewRepairTriggerData added in v3.12.0

func NewRepairTriggerData() RepairData

Directories

Path Synopsis
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.

Jump to

Keyboard shortcuts

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