Versions in this module Expand all Collapse all v3 v3.7.3 Apr 29, 2020 Changes in this version + const DefaultADRMargin + const DefaultClassBTimeout + const DefaultClassCTimeout + const DefaultStatusCountPeriodicity + const DefaultStatusTimePeriodicity + var DefaultConfig = Config + var DefaultOptions []Option + type ApplicationUplinkQueue interface + Add func(ctx context.Context, ups ...*ttnpb.ApplicationUp) error + Subscribe func(ctx context.Context, appID ttnpb.ApplicationIdentifiers, ...) error + type Config struct + ApplicationUplinks ApplicationUplinkQueue + CooldownWindow time.Duration + DeduplicationWindow time.Duration + DefaultMACSettings MACSettingConfig + DevAddrPrefixes []types.DevAddrPrefix + DeviceKEKLabel string + Devices DeviceRegistry + DownlinkPriorities DownlinkPriorityConfig + DownlinkTasks DownlinkTaskQueue + Interop config.InteropClient + NetID types.NetID + UplinkDeduplicator UplinkDeduplicator + type DeviceRegistry interface + GetByEUI func(ctx context.Context, joinEUI, devEUI types.EUI64, paths []string) (*ttnpb.EndDevice, context.Context, error) + GetByID func(ctx context.Context, appID ttnpb.ApplicationIdentifiers, devID string, ...) (*ttnpb.EndDevice, context.Context, error) + RangeByAddr func(ctx context.Context, devAddr types.DevAddr, paths []string, ...) error + SetByID func(ctx context.Context, appID ttnpb.ApplicationIdentifiers, devID string, ...) (*ttnpb.EndDevice, context.Context, error) + type DownlinkPriorities struct + JoinAccept ttnpb.TxSchedulePriority + MACCommands ttnpb.TxSchedulePriority + MaxApplicationDownlink ttnpb.TxSchedulePriority + type DownlinkPriorityConfig struct + JoinAccept string + MACCommands string + MaxApplicationDownlink string + func (c DownlinkPriorityConfig) Parse() (DownlinkPriorities, error) + type DownlinkTaskQueue interface + Add func(ctx context.Context, devID ttnpb.EndDeviceIdentifiers, t time.Time, ...) error + Pop func(ctx context.Context, ...) error + type InteropClient interface + HandleJoinRequest func(context.Context, types.NetID, *ttnpb.JoinRequest) (*ttnpb.JoinResponse, error) + type MACHandler func(ctx context.Context, dev *ttnpb.EndDevice, pld []byte, up *ttnpb.UplinkMessage) error + type MACSettingConfig struct + ADRMargin *float32 + ClassBTimeout *time.Duration + ClassCTimeout *time.Duration + DesiredADRAckDelayExponent *ttnpb.ADRAckDelayExponent + DesiredADRAckLimitExponent *ttnpb.ADRAckLimitExponent + DesiredMaxDutyCycle *ttnpb.AggregatedDutyCycle + DesiredRx1Delay *ttnpb.RxDelay + StatusCountPeriodicity *uint32 + StatusTimePeriodicity *time.Duration + func (c MACSettingConfig) Parse() ttnpb.MACSettings + type NetworkServer struct + func New(c *component.Component, conf *Config, opts ...Option) (*NetworkServer, error) + func (ns *NetworkServer) Context() context.Context + func (ns *NetworkServer) Delete(ctx context.Context, req *ttnpb.EndDeviceIdentifiers) (*pbtypes.Empty, error) + func (ns *NetworkServer) DownlinkQueueList(ctx context.Context, ids *ttnpb.EndDeviceIdentifiers) (*ttnpb.ApplicationDownlinks, error) + func (ns *NetworkServer) DownlinkQueuePush(ctx context.Context, req *ttnpb.DownlinkQueueRequest) (*pbtypes.Empty, error) + func (ns *NetworkServer) DownlinkQueueReplace(ctx context.Context, req *ttnpb.DownlinkQueueRequest) (*pbtypes.Empty, error) + func (ns *NetworkServer) GenerateDevAddr(ctx context.Context, req *types.Empty) (*ttnpb.GenerateDevAddrResponse, error) + func (ns *NetworkServer) Get(ctx context.Context, req *ttnpb.GetEndDeviceRequest) (*ttnpb.EndDevice, error) + func (ns *NetworkServer) HandleUplink(ctx context.Context, up *ttnpb.UplinkMessage) (_ *pbtypes.Empty, err error) + func (ns *NetworkServer) LinkApplication(link ttnpb.AsNs_LinkApplicationServer) error + func (ns *NetworkServer) RegisterHandlers(s *runtime.ServeMux, conn *grpc.ClientConn) + func (ns *NetworkServer) RegisterServices(s *grpc.Server) + func (ns *NetworkServer) Roles() []ttnpb.ClusterRole + func (ns *NetworkServer) Set(ctx context.Context, req *ttnpb.SetEndDeviceRequest) (dev *ttnpb.EndDevice, err error) + type Option func(ns *NetworkServer) + type UplinkDeduplicator interface + AccumulatedMetadata func(context.Context, *ttnpb.UplinkMessage) ([]*ttnpb.RxMetadata, error) + DeduplicateUplink func(context.Context, *ttnpb.UplinkMessage, time.Duration) (bool, error)