Files
sing-box-extended-mirror/adapter/tailscale.go
T

50 lines
1.1 KiB
Go
Raw Normal View History

2026-04-09 19:34:27 +08:00
package adapter
import "context"
2026-04-10 09:24:42 +08:00
type TailscaleEndpoint interface {
2026-04-09 19:34:27 +08:00
SubscribeTailscaleStatus(ctx context.Context, fn func(*TailscaleEndpointStatus)) error
2026-04-10 09:24:42 +08:00
StartTailscalePing(ctx context.Context, peerIP string, fn func(*TailscalePingResult)) error
}
type TailscalePingResult struct {
LatencyMs float64
IsDirect bool
Endpoint string
DERPRegionID int32
DERPRegionCode string
Error string
2026-04-09 19:34:27 +08:00
}
type TailscaleEndpointStatus struct {
BackendState string
AuthURL string
NetworkName string
MagicDNSSuffix string
Self *TailscalePeer
2026-04-10 09:24:42 +08:00
UserGroups []*TailscaleUserGroup
}
type TailscaleUserGroup struct {
UserID int64
LoginName string
DisplayName string
ProfilePicURL string
Peers []*TailscalePeer
2026-04-09 19:34:27 +08:00
}
type TailscalePeer struct {
HostName string
DNSName string
OS string
TailscaleIPs []string
Online bool
ExitNode bool
ExitNodeOption bool
Active bool
RxBytes int64
TxBytes int64
UserID int64
KeyExpiry int64
}