Documentation ¶
Overview ¶
Package enddevices provides functions to configure End Device claiming clients.
Index ¶
Constants ¶
const JSClientConfigurationName = "config.yml"
JSClientConfigurationName is the filename of Join Server client configuration.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Component ¶
type Component interface { httpclient.Provider KeyService() crypto.KeyService GetBaseConfig(ctx context.Context) config.ServiceBase GetPeerConn(ctx context.Context, role ttnpb.ClusterRole, ids cluster.EntityIdentifiers) (*grpc.ClientConn, error) AllowInsecureForCredentials() bool }
Component abstracts the underlying *component.Component.
type Config ¶
type Config struct { NetID types.NetID `name:"net-id" description:"NetID of the Network Server to configure when claiming"` NSID *types.EUI64 `name:"ns-id" description:"NSID of the Network Server to configure when claiming"` ASID string `name:"as-id" description:"AS-ID of the Application Server to configure when claiming"` // TODO: Remove (https://github.com/TheThingsNetwork/lorawan-stack/issues/6048) NetworkServer NetworkServer `name:"network-server" description:"DEPRECATED"` Source string `name:"source" description:"Source of the file containing Join Server settings (directory, url, blob)"` Directory string `name:"directory" description:"OS filesystem directory, which contains the config.yml and the client-specific files"` URL string `name:"url" description:"URL, which contains Join Server client configuration"` Blob config.BlobPathConfig `name:"blob"` }
Config contains options for end device claiming clients.
type EndDeviceClaimer ¶
type EndDeviceClaimer interface { // SupportsJoinEUI returns whether the Join Server supports this JoinEUI. SupportsJoinEUI(joinEUI types.EUI64) bool // Claim claims an End Device. Claim(ctx context.Context, joinEUI, devEUI types.EUI64, claimAuthenticationCode string) error // GetClaimStatus returns the claim status an End Device. GetClaimStatus(ctx context.Context, ids *ttnpb.EndDeviceIdentifiers) (*ttnpb.GetClaimStatusResponse, error) // Unclaim releases the claim on an End Device. Unclaim(ctx context.Context, ids *ttnpb.EndDeviceIdentifiers) (err error) // BatchUnclaim releases the claim on a batch of end devices. // All devices in a batch must have the same Join EUI. // Callers should first try to unmarshal returned error to DeviceError using errors.As(). BatchUnclaim( ctx context.Context, ids []*ttnpb.EndDeviceIdentifiers, ) error }
EndDeviceClaimer provides methods for Claiming End Devices on (external) Join Server.
type NetworkServer ¶ added in v3.19.2
type NetworkServer struct { HomeNSID *types.EUI64 `name:"home-ns-id" description:"DEPRECATED"` Hostname string `name:"hostname" description:"DEPRECATED"` }
NetworkServer contains information related to the Network Server. TODO: Remove (https://github.com/TheThingsNetwork/lorawan-stack/issues/6048)
type Option ¶
type Option func(*Upstream)
Option configures Upstream.
func WithClaimer ¶ added in v3.26.2
func WithClaimer(name string, claimer EndDeviceClaimer) Option
WithClaimer adds a claimer to Upstream.
type Upstream ¶
type Upstream struct {
// contains filtered or unexported fields
}
Upstream abstracts EndDeviceClaimingServer.
func NewUpstream ¶
NewUpstream returns a new Upstream.
func (*Upstream) JoinEUIClaimer ¶ added in v3.26.2
JoinEUIClaimer returns the EndDeviceClaimer for the given JoinEUI.
Directories ¶
Path | Synopsis |
---|---|
Package errors defines common error types for all upstreams.
|
Package errors defines common error types for all upstreams. |
Package ttjsv2 provides the claiming client implementation for The Things Join Server 2.0 API.
|
Package ttjsv2 provides the claiming client implementation for The Things Join Server 2.0 API. |