Documentation ¶
Index ¶
- Constants
- Variables
- func ADD_ACCESSSPEC(messageId int, params ...[]interface{}) []byte
- func ADD_ROSPEC(messageId int, params ...[]interface{}) []byte
- func AISpec(AntennaCount int, AntennaIDn []int, params ...[]interface{}) []interface{}
- func AISpecStopTrigger(AISpecStopTriggerType, DurationTrigger int, params ...[]interface{}) []interface{}
- func AccessCommand(params ...[]interface{}) []interface{}
- func AccessReportSpec(AccessReportTrigger uint) []interface{}
- func AccessSpec(AntennaID, ProtocolID, uint, CurrentState int, ROSpecID uint, ...) []interface{}
- func AccessSpecStopTrigger(AccessSpecStopTriggerType, OperationCountValue uint) []interface{}
- func AddROSpecCustom(messageId, ROSpecID, Priority, CurrentState int, spec ...[]interface{}) []byte
- func AddROSpecOptionDefault() []byte
- func AntennaConfiguration(AntennaID int, params ...[]interface{}) []interface{}
- func AntennaProperties(AntennaID, AntennaGain int, AntennaConnected bool) []interface{}
- func C1G2InventoryCommand(TagInventoryStateAware bool, params ...[]interface{}) []interface{}
- func C1G2RFControl(ModeIndex, Tari int) []interface{}
- func C1G2SingulationControl(Session, TagPopulation, TagTransitTime int, params ...[]interface{}) []interface{}
- func C1G2TagSpec(params ...[]interface{}) []interface{}
- func C1G2TargetTag(MB, Pointer, MaskBitCount uint, TagMask []uint8, TagData []uint, Match int) []interface{}
- func CLOSE_CONNECTION(messageId int) []byte
- func CustomPack(messageType, messageId int, config []interface{}, params ...[]interface{}) []byte
- func CustomParameter(VendorID, SubType int, params ...interface{}) []interface{}
- func DEL_ROSPEC(messageId, spec int) []byte
- func DISABLE_ROSPEC(messageId, ROSpecID int) []byte
- func DelAccOption() []byte
- func DelROSpecOpt() []byte
- func ENABLE_EVENTS_AND_REPORTS(messageId int) []byte
- func ENABLE_ROSPEC(messageId, ROSpecID int) []byte
- func EventNotificationStateParam(EventType int, NotificationState bool) []interface{}
- func EventsAndReports(HoldEventsAndReportsUponReconnect bool) []interface{}
- func ExtensionOption(params ...int) []byte
- func GET_READER_CAPABILITIES_V1011(messageId, v_1011 int) []byte
- func GET_READER_CONFIG(messageId, AntennaID, C_TYPE, GPIPortNum, GPOPortNum int) []byte
- func GET_REPORT(messageId int) []byte
- func GPIPortCurrentState(GPIPortNum, GPIState int, GPIConfig bool) []interface{}
- func GPITriggerValue(GPIPortNum int, GPIEvent bool, Timeout int) []interface{}
- func GPOWriteDataFunc(GPOPortNumber int, GPOData bool) []interface{}
- func GetDefaultAISpec() []interface{}
- func GetRoReportSpec() []interface{}
- func Identification(IDType int, ReaderId string) []interface{}
- func InventoryParameterSpec(InventoryParameterSpecID, ProtocolID int, params ...[]interface{}) []interface{}
- func KeepaliveSpec(PeriodicTriggerValue time.Duration) []interface{}
- func LLRPConfigurationStateValue(llrpConfigurationStateValue int) []interface{}
- func LoopSpec(LoopCount int) []interface{}
- func PeriodicTriggerValue(Offset, Period int, params ...interface{}) []interface{}
- func PeriodicTriggerValueParam(offset, period uint32, utc []interface{}) []interface{}
- func RFReceiver(TransmitPower, HopTableID, ChannelIndex int) []interface{}
- func RFSurveySpec(AntennaID, StartFrequency, EndFrequency int, params ...[]interface{}) []interface{}
- func RFSurveySpecStopTrigger(StopTriggerType, Duration, N int) []interface{}
- func RFTransmitter(HopTableID, ChannelIndex, TransmitPower int) []interface{}
- func ROBoundarySpec(params ...[]interface{}) []interface{}
- func ROReportSpec(ROReportTrigger, N int, params ...[]interface{}) []interface{}
- func ROSpec(ROSpecID, Priority, CurrentState int, params ...[]interface{}) []interface{}
- func ROSpecStartTrigger(ROSpecStartTriggerType int, params ...[]interface{}) []interface{}
- func ROSpecStopTrigger(ROSpecStopTriggerType int, DurationTriggerValue int, params ...[]interface{}) []interface{}
- func ReaderEventNotification(config ...bool) []interface{}
- func ReaderEventNotificationSpec(params ...[]interface{}) []interface{}
- func ResetFactoryOpt() []byte
- func RoReportSpec(ROReportTrigger, N int, params ...[]interface{}) []interface{}
- func SEND_KEEPALIVE(messageId int) []byte
- func SET_READER_CONFIG(messageId int, restore_factory_setting bool, params ...[]interface{}) []byte
- func START_ROSPEC(messageId, ROSpecID int) []byte
- func STOP_ROSPEC(messageId, ROSpecID int) []byte
- func SetEventSpecOption(params ...bool) []byte
- func SetRegion(params ...int) []byte
- func TagObservationTrigger(TriggerType, NumberOfTags, NumberOfAttempts, T, Timeout int) []interface{}
- func TagReportContentSelector(EnableROSpecID, EnableSpecIndex, EnableInventoryParameterSpecID, ... bool, ...) []interface{}
- func UTCTimestampParam(microsecond uint64) []interface{}
- type ADD_ROSPEC_RESPONSE
- type AISpecEventParameter
- type AccessSpecIDParameter
- type AntennaEventParameter
- type AntennaIDParameter
- type AntennaProperty
- type CLOSE_CONNECTION_RESPONSE
- type CUSTOM_MESSAGE_RESPONSE
- type ChannelIndexParameter
- type Conn
- func (nc *Conn) Close()
- func (nc *Conn) Disabled_ROSpec(messageId, ROSpecID int, reader_id string) error
- func (nc *Conn) Enable_ROSpec(messageId, ROSpecID int, reader_id string) error
- func (nc *Conn) GPICheck(reader_id string, gpis []*GPICurrentState) error
- func (nc *Conn) GPIToggleMonitor(reader_id string, port_trigger int, t time.Duration, cb HandlerIOState) error
- func (nc *Conn) GPIget(messageId int, reader_id string) error
- func (nc *Conn) GPIset(messageId int, reader_id string, port int, port_state bool) error
- func (nc *Conn) GPOset(messageId int, reader_id string, params ...bool) error
- func (nc *Conn) GPOsetp(messageId int, reader_id string, number_port int, state bool) error
- func (nc *Conn) GetRoReport(messageId int, reader_id string) error
- func (nc *Conn) ListReader() map[string]*SPReaderInfo
- func (nc *Conn) Lock()
- func (nc *Conn) Registry(reader *SPReaderInfo) error
- func (nc *Conn) StartROSpec(messageId, ROSpecID int, reader_id string) error
- func (nc *Conn) StopROSpec(messageId, ROSpecID int, reader_id string) error
- func (nc *Conn) Subscription(cb MsgHandler) ([]*Subscription, error)
- func (nc *Conn) Unlock()
- type ConnHandler
- type ConnectionAttemptEventParameter
- type CustomDialer
- type DELETE_ACCESSSPEC_RESPONSE
- type DELETE_ROSPEC_RESPONSE
- type DISABLE_ROSPEC_RESPONSE
- type ENABLE_ROSPEC_RESPONSE
- type ERROR_MESSAGE
- type ErrHandler
- type EventNotificationResponse
- type EventNotificationState
- type EventReport
- type EvtData
- type GPICurrentState
- type GPOWriteData
- type GState
- type GetConfigResponse
- type GpiEventParam
- type HandlerIOState
- type HoppingEventParameter
- type IOState
- type IdentificationParam
- type InventoryParameterSpecIDParameter
- type KeepaliveResponse
- type LLRPStatus
- type Msg
- type MsgHandler
- type MsgLoss
- type NetworkIssue
- type OpSpecIDParameter
- type Option
- type Options
- type PeakRSSIParameter
- type RConn
- type RFSurveyEventParameter
- type ROAccessReportResponse
- type ROSpecEventParameter
- type ROSpecIDParameter
- type ReaderEventNoticationSpec
- type ReaderExceptionEventParameter
- type ReportBufferLevelWarningEventParameter
- type ReportBufferOverflowErrorEvent
- type SPReaderInfo
- type START_ROSPEC_RESPONSE
- type STOP_ROSPEC_RESPONSE
- type SetConfigResponse
- type SpecIndexParameter
- type Statistics
- type Status
- type Subscription
- type SubscriptionType
- type TagReportData
Constants ¶
const ( NETW_LOSS = iota NETW_CONNECTED )
const ( DefaultSubPendingMsgsLimit = 65536 DefaultSubPendingBytesLimit = 65536 * 1024 )
Pending Limits
const ( BufferSize = 512 DefaultMaxReconnect = 1060 DefaultReconnectWait = 30 * time.Second DefaultTimeout = 30 * time.Second DefaultPingInterval = 30 * time.Second )
const ( DISCONNECTED = Status(iota) CONNECTED CLOSED RECONNECTING CONNECTING )
const ( DefaultPort = 5084 DefaultMaxPingOut = 2 DefaultMaxChanLen = 8192 // 8k DefaultReconnectBufSize = 8 * 1024 * 1024 // 8MB RequestChanLen = 8 )
Default Constants
const ( M_RESEVED = 0x04 M_GET_SUPPORTED_VERSION = 46 M_GET_SUPPORTED_VERSION_RESPONSE = 56 M_SET_PROTOCOL_VERSION = 47 M_SET_PROTOCOL_VERSION_RESPONSE = 57 M_GET_READER_CAPABILITIES = 1 M_GET_READER_CAPABILITIES_RESPONSE = 11 M_ADD_ROSPEC = 20 M_ADD_ROSPEC_RESPONSE = 30 M_DELETE_ROSPEC = 21 M_DELETE_ROSPEC_RESPONSE = 31 M_START_ROSPEC = 22 M_START_ROSPEC_RESPONSE = 32 M_STOP_ROSPEC = 23 M_STOP_ROSPEC_RESPONSE = 33 M_ENABLE_ROSPEC = 24 M_ENABLE_ROSPEC_RESPONSE = 34 M_DISABLE_ROSPEC = 25 M_DISABLE_ROSPEC_RESPONSE = 35 M_GET_ROSPECS = 26 M_GET_ROSPECS_RESPONSE = 36 M_ADD_ACCESSSPEC = 40 M_ADD_ACCESSSPEC_RESPONSE = 50 M_DELETE_ACCESSSPEC = 41 M_DELETE_ACCESSSPEC_RESPONSE = 51 M_ENABLE_ACCESSSPEC = 42 M_ENABLE_ACCESSSPEC_RESPONSE = 52 M_DISABLE_ACCESSSPEC = 43 M_DISABLE_ACCESSSPEC_RESPONSE = 53 M_GET_ACCESSSPECS = 44 M_GET_ACCESSSPECS_RESPONSE = 54 M_CLIENT_REQUEST_OP = 45 M_CLIENT_REQUEST_OP_RESPONSE = 55 M_GET_REPORT = 60 M_RO_ACCESS_REPORT = 61 M_KEEPALIVE = 62 M_KEEPALIVE_ACK = 72 M_READER_EVENT_NOTIFICATION = 63 M_ENABLE_EVENTS_AND_REPORTS = 64 M_ERROR_MESSAGE = 100 M_GET_READER_CONFIG = 2 M_GET_READER_CONFIG_RESPONSE = 12 M_SET_READER_CONFIG = 3 M_SET_READER_CONFIG_RESPONSE = 13 M_CLOSE_CONNECTION = 14 M_CLOSE_CONNECTION_RESPONSE = 4 M_CUSTOM_MESSAGE = 1023 )
const ( C_ROSpec_CurrentState_Disabled = iota C_ROSpec_CurrentState_Inactive C_ROSpec_CurrentState_Active )
const ( P_UTCTimeStamp = 128 P_Uptime = 129 P_GeneralDeviceCapabilities = 137 P_MaximumReceiveSensitivity = 363 P_ReceiveSensitivityTableEntry = 139 P_PerAntennaAirProtocol = 140 P_GPIOCapabilities = 141 P_LLRPCapabilities = 142 P_RegulatoryCapabilities = 143 P_UHFBandCapabilities = 144 P_TransmitPowerLevelTableEntry = 145 P_FrequencyInformation = 146 P_FrequencyHopTable = 147 P_FixedFrequencyTable = 148 P_PerAntennaReceiveSensitivityRange = 149 P_RFSurveyFrequencyCapabilities = 365 P_ROSpec = 177 P_ROBoundarySpec = 178 P_ROSpecStartTrigger = 179 P_PeriodicTriggerValue = 180 P_GPITriggerValue = 181 P_ROSpecStopTrigger = 182 P_AISpec = 183 P_AISpecStopTrigger = 184 P_TagObservationTrigger = 185 P_InventoryParameterSpec = 186 P_RFSurveySpec = 187 P_RFSurveySpecStopTrigger = 188 P_LoopSpec = 355 P_AccessSpec = 207 P_AccessSpecStopTrigger = 208 P_AccessCommand = 209 P_ClientRequestOpSpec = 210 P_ClientRequestResponse = 211 P_LLRPConfigurationStateValue = 217 P_Identification = 218 P_GPOWriteData = 219 P_KeepaliveSpec = 220 P_AntennaProperties = 221 P_AntennaConfiguration = 222 P_RFReceiver = 223 P_RFTransmitter = 224 P_GPIPortCurrentState = 225 P_EventsAndReports = 226 P_ROReportSpec = 237 P_TagReportContentSelector = 238 P_AccessReportSpec = 239 P_TagReportData = 240 P_EPCData = 241 P_EPC_96 = 13 P_ROSpecID = 9 P_SpecIndex = 14 P_InventoryParameterSpecID = 10 P_AntennaID = 1 P_PeakRSSI = 6 P_ChannelIndex = 7 P_FirstSeenTimestampUTC = 2 P_FirstSeenTimestampUptime = 3 P_LastSeenTimestampUTC = 4 P_LastSeenTimestampUptim = 5 P_TagSeenCount = 8 P_ClientRequestOpSpecResult = 15 P_AccessSpecID = 16 P_RFSurveyReportData = 242 P_FrequencyRSSILevelEntry = 243 P_ReaderEventNotificationSpec = 244 P_EventNotificationState = 245 P_ReaderEventNotificationData = 246 P_HoppingEvent = 247 P_GPIEvent = 248 P_ROSpecEvent = 249 P_ReportBufferLevelWarningEvent = 250 P_ReportBufferOverflowErrorEvent = 251 P_ReaderExceptionEvent = 252 P_OpSpecID = 17 P_RFSurveyEvent = 253 P_AISpecEvent = 254 P_AntennaEvent = 255 P_ConnectionAttemptEvent = 256 P_ConnectionCloseEvent = 257 P_SpecLoopEvent = 356 P_LLRPStatus = 287 P_FieldError = 288 P_ParameterError = 289 P_Custom = 1023 P_C1G2LLRPCapabilities = 327 P_UHFC1G2RFModeTable = 328 P_UHFC1G2RFModeTableEntry = 329 P_C1G2InventoryCommand = 330 P_C1G2Filter = 331 P_C1G2TagInventoryMask = 332 P_C1G2TagInventoryStateAwareFilterAction = 333 P_C1G2TagInventoryStateUnawareFilterAction = 334 P_C1G2RFControl = 335 P_C1G2SingulationControl = 336 P_C1G2TagInventoryStateAwareSingulationAction = 337 P_C1G2TagSpec = 338 P_C1G2TargetTag = 339 P_C1G2Read = 341 P_C1G2Write = 342 P_C1G2Kill = 343 P_C1G2Recommission = 357 P_C1G2Lock = 344 P_C1G2LockPayload = 345 P_C1G2BlockErase = 346 P_C1G2BlockWrite = 347 P_C1G2BlockPermalock = 358 P_C1G2GetBlockPermalockStatus = 359 P_C1G2EPCMemorySelector = 348 P_C1G2PC = 12 P_C1G2XPCW1 = 19 P_C1G2XPCW2 = 20 P_C1G2CRC = 11 P_C1G2SingulationDetails = 18 P_C1G2ReadOpSpecResult = 349 P_C1G2WriteOpSpecResult = 350 P_C1G2KillOpSpecResult = 351 P_C1G2RecommissionOpSpecResult = 360 P_C1G2LockOpSpecResult = 352 P_C1G2BlockEraseOpSpecResult = 353 P_C1G2BlockWriteOpSpecResult = 354 P_C1G2BlockPermalockOpSpecResult = 361 P_C1G2GetBlockPermalockStatusOpSpecResult = 362 )
const ( C_Identification_IDType_MAC = iota C_Identification_IDType_EPC )
IDType used by Identification Parameter
const ( C_AISpecStopTrigger_NULL = iota C_AISpecStopTrigger_DURATION C_AISpecStopTrigger_GPI_WITH_TIMEOUT C_AISpecStopTrigger_TAG_OBSERVATION )
const ( C_RFSurveySpecStopTrigger_NULL = iota C_RFSurveySpecStopTrigger_Duration C_RFSurveySpecStopTrigger_N_Iteration )
RFSurveySpecStopTrigger Type
const ( C_ROReportTrigger_None = iota C_ROReportTrigger_Upon_N_TagReportData_or_EndOfAISpec C_ROReportTrigger_Upon_N_TagReportData_or_EndOfROSpec C_ROReportTrigger_Upon_N_Seconds_or_EndAISpec_EndROSpec C_ROReportTrigger_Upon_N_Seconds_or_EndROSpec C_ROReportTrigger_Upon C_ROReportTrigger_Upon_N_milliseconds_or_EndROSpec_EndRFSurveyspec C_ROReportTrigger_Upon_N_milliseconds_or_EndROSpec )
N = 0 is unlimited ROReportTrigger type
const ( C_AccessReportTrigger_GenTriggerd = iota C_AccessReportTrigger_EndOfAcessSpec )
AccessReportTrigger
0 : Whenever ROReport is generated for the RO that triggered the execution of this AccessSpec. 1 : End of AccessSpec (immediately upon completionof the access operation)
const ( C_AntennaEventParameter_Antenna_Disconnected = iota C_AntennaEventParameter_Antenna_Connected )
const ( C_ConnectionAttemptEvent_Status_Success = iota C_ConnectionAttemptEvent_Status_Failed_Reader_Conn_Exists C_ConnectionAttemptEvent_Status_Failed_Client_Conn_Exists C_ConnectionAttemptEvent_Status_Another_Conn_Attempted )
const ( C_ROSpecEvent_Type_Start_ROSpec = iota C_ROSpecEvent_Type_End_ROSpec C_ROSpecEvent_Type_Preemption_ROSpec )
const ( V_1011_All = iota V_1011_General_Device_Capabilities V_1011_LLRP_Capabilities V_1011_Regulatory_Capabilities V_1011_Air_Protocol_LLRP_Capabilities )
const ( C_GET_READER_CONFIG_All = iota C_GET_READER_CONFIG_Identification C_GET_READER_CONFIG_AntennaProperties C_GET_READER_CONFIG_AntennaConfiguration C_GET_READER_CONFIG_ROReportSpec C_GET_READER_CONFIG_ReaderEventNotificationSpec C_GET_READER_CONFIG_AccessReportSpec C_GET_READER_CONFIG_LLRPConfigurationStateValue C_GET_READER_CONFIG_KeepaliveSpec C_GET_READER_CONFIG_GPIPortCurrentState C_GET_READER_CONFIG_GPOWriteData C_GET_READER_CONFIG_EventsAndReports )
const ( // LLRPStatus StatusCode // message scope M_Success = 0 M_ParameterError = 100 + iota M_FieldError M_UnexpectedParameter M_MissingParameter M_DuplicateParameter M_OverflowParameter M_OverflowField M_UnknownParameter M_UnknownField M_UnsupportedMessage M_UnsupportedVersion M_UnsupportedParameter M_UnexpectedMessage )
const ( // parameter P_ParameterError_Scope = 200 + iota P_FieldError_Scope P_UnexpectedParameter P_MissingParameter P_DuplicateParamete P_OverflowParameter P_OverflowField P_UnknownParameter P_UnknownField P_UnsupportedParameter )
const ( // field A_Invalid = 300 + iota A_OutOfRange )
const (
// reader
R_DeviceError = 401
)
Variables ¶
var ( ErrConnectionClosed = errors.New("llrp: connection closed") ErrSecureConnRequired = errors.New("llrp: secure connection required") ErrSecureConnWanted = errors.New("llrp: secure connection not available") ErrBadSubscription = errors.New("llrp: invalid subscription") ErrTypeSubscription = errors.New("llrp: invalid subscription type") ErrBadSubject = errors.New("llrp: invalid subject") ErrSlowConsumer = errors.New("llrp: slow consumer, messages dropped") ErrTimeout = errors.New("llrp: timeout") ErrBadTimeout = errors.New("llrp: timeout invalid") ErrNoServers = errors.New("llrp: no readers available for connection") ErrJsonParse = errors.New("llrp: connect message, json parse error") ErrChanArg = errors.New("llrp: argument needs to be a channel type") ErrMaxPayload = errors.New("llrp: maximum payload exceeded") ErrMaxMessages = errors.New("llrp: maximum messages delivered") ErrSyncSubRequired = errors.New("llrp: illegal call on an async subscription") ErrMultipleTLSConfigs = errors.New("llrp: multiple tls.Configs not allowed") ErrNoInfoReceived = errors.New("llrp: protocol exception, INFO not received") ErrReconnectBufExceeded = errors.New("llrp: outbound buffer limit exceeded") ErrInvalidConnection = errors.New("llrp: invalid connection") ErrInvalidMsg = errors.New("llrp: invalid message or message nil") ErrInvalidArg = errors.New("llrp: invalid argument") ErrInvalidContext = errors.New("llrp: invalid context") )
Errors
Functions ¶
func ADD_ACCESSSPEC ¶
* This command creates a new AccessSpec at the Reader. The AccessSpec starts at the Disabled state waiting for the ENABLE_ACCESSSPEC message for the AccessSpec from the Client, upon which it transitions to the Active state. The AccessSpecID is generated by the Client.
func ADD_ROSPEC ¶
func AISpecStopTrigger ¶
func AISpecStopTrigger(AISpecStopTriggerType, DurationTrigger int, params ...[]interface{}) []interface{}
params = GPITriggerValue Parameter , TagObservationTrigger Parameter
func AccessCommand ¶
func AccessCommand(params ...[]interface{}) []interface{}
* This parameter defines the air protocol access-specific settings. It contains a TagSpec and an OpSpec Parameter. The TagSpec specifies the tag filters in terms of air protocol specific memory capabilities (e.g., memory banks, pointer and length). The OpSpec specifies all the details of the operations required for the air protocol specific access operation commands. * *Compliance requirement: Compliant Readers and Clients SHALL implement this parameter. * Notes - TagSpecParameter is the air protocol specific tag spec parameter. For C1G2, it is C1G2TagSpec Parameter.
func AccessCommand(TagSpec,OpSpec []interface{}) []interface{} {
func AccessReportSpec ¶
func AccessReportSpec(AccessReportTrigger uint) []interface{}
func AccessSpec ¶
func AccessSpec(AntennaID, ProtocolID, uint, CurrentState int, ROSpecID uint, params ...[]interface{}) []interface{}
* This parameter carries information of the Reader access operation.
func AccessSpecStopTrigger ¶
func AccessSpecStopTrigger(AccessSpecStopTriggerType, OperationCountValue uint) []interface{}
/ Compliance requirement: Compliant Readers and Clients SHALL implement this parameter.
func AddROSpecCustom ¶
This parameter carries the information of the Reader inventory and survey operation. ROSpecID: Unsigned Integer; 0 is an illegal ROSpecID for a ROSpec. Priority: Integer. Lower numbered priority values are given higher priority. Possible Values: 0-7. CurrentState: Integer ---------- ROBoundarySpec: ROBoundarySpec Parameter ListOfSpecs: List of LLRP Parameters Possible Values: Each parameter can be either an <AISpec Parameter>, a <RFSurveySpec Parameter>, a <LoopSpec Parameter>, or a Custom Parameter. ROReportSpec: ROReportSpec Parameter
func AddROSpecOptionDefault ¶
func AddROSpecOptionDefault() []byte
func AntennaConfiguration ¶
func AntennaConfiguration(AntennaID int, params ...[]interface{}) []interface{}
This parameter carries a single antenna's configuration and it specifies the default values for the parameter set that are passed in this parameter block. The scope of the default values is the antenna. The default values are used for parameters during an operation on this antenna if the parameter was unspecified in the spec that describes the operation.
params = RFReceiver Parameter , RFTransmitter Parameter , AirProtocolInventoryCommandSettings Parameter , Custom Parameter
func AntennaProperties ¶
This parameter carries a single antenna's properties. The properties include the gain and the connectivity status of the antenna.The antenna gain is the composite gain and includes the loss of the associated cable from the Reader to the antenna. The gain is represented in dBi*100 to allow fractional dBi representation.
func C1G2InventoryCommand ¶
func C1G2InventoryCommand(TagInventoryStateAware bool, params ...[]interface{}) []interface{}
This parameter defines the C1G2 inventory-specific settings to be used during a particular C1G2 inventory operation. This comprises of C1G2Filter Parameter, C1G2RF Parameter and C1G2Singulation Parameter. It is not necessary that the Filter, RF Control and Singulation Control Parameters be specified in each and every inventory command.They are optional parameters. If not specified, the default values in the Reader are used during the inventory operation. If multiple C1G2Filter parameters are encapsulated by the Client in the C1G2InventoryCommand parameter, the ordering of the filter parameters determine the order of C1G2 air-protocol commands (e.g., Select command) generated by the Reader. C1G2Filter parameters included in the C1G2InventoryCommand parameter
func C1G2RFControl ¶
func C1G2RFControl(ModeIndex, Tari int) []interface{}
This Parameter carries the settings relevant to RF forward and reverse link control in the C1G2 air protocol. This is basically the C1G2 RF Mode and the Tari value to use for the inventory operation.
--- ModeIndex: Unsigned Integer. This is an index into the UHFC1G2RFModeTable. Tari: Integer. Value of Tari to use for this mode specified in nsec. This is specified if the mode selected has a Tari range. If the selected mode has a range, and the Tari is set to zero, the Reader implementation picks up any Tari value within the range. If the selected mode has a range, and the specified Tari is out of that range and is not set to zero, an error message is generated. Possible Values: 0 or 6250-25000 nsec
func C1G2SingulationControl ¶
func C1G2SingulationControl(Session, TagPopulation, TagTransitTime int, params ...[]interface{}) []interface{}
This C1G2SingulationControl Parameter provides controls particular to the singulation process in the C1G2 air protocol. The singulation process is started using a Query command in the C1G2 protocol. The Query command describes the session number, tag state, the start Q value to use, and the RF link parameters. The RF link parameters are specified using the C1G2RFControl Parameter (see section 16.2.1.2.1.2). This Singulation Parameter specifies the session, tag state and description of the target singulation environment
Session: Integer. Session number to use for the inventory operation. Possible Values: 0-3 Tag population: Unsigned Short Integer. An estimate of the tag population in view of the RF field of the antenna. Tag transit time: Unsigned Integer. An estimate of the time a tag will typically remain in the RF field of the antenna specified in milliseconds. TagInventoryStateAwareSingulationAction: <C1G2TagInventoryStateAwareSingulationAction Parameter> (optional) params = C1G2TagInventoryStateAwareSingulationAction
func C1G2TagSpec ¶
func C1G2TagSpec(params ...[]interface{}) []interface{}
* This parameter describes the target tag population on which certain operations have to be performed. This Parameter is similar to the selection C1G2Filter Parameter described earlier. However, because these tags are stored in the Reader's memory and ternary comparisons are to be allowed for, each bit i in the target tag is represented using 2 bits - bit i in mask, and bit i in tag pattern. If bit i in the mask is zero, then bit i of the target tag is a don’t care (X); if bit i in the mask is one, then bit i of the target tag is bit i of the tag pattern. For example, “all tags” is specified using a mask length of zero.
func C1G2TargetTag ¶
func C1G2TargetTag(MB, Pointer, MaskBitCount uint, TagMask []uint8, TagData []uint, Match int) []interface{}
* * If Length is zero, this pattern will match all tags regardless of MB, pointer, mask and data.
func CLOSE_CONNECTION ¶
This command is issued by the Client to the Reader. This command instructs the Reader to gracefully close its connection with the Client. Under normal operating conditions, a Client SHALL attempt to send this command before closing an LLRP connection
func CustomPack ¶
Convert custom pack to protocol []byte
func CustomParameter ¶
func CustomParameter(VendorID, SubType int, params ...interface{}) []interface{}
func DEL_ROSPEC ¶
func DISABLE_ROSPEC ¶
This message is issued by the Client to the Reader. Upon receiving the message, the Reader moves the ROSpec corresponding to the ROSpecID passed in this message to the disabled state.
func DelAccOption ¶
func DelAccOption() []byte
func DelROSpecOpt ¶
func DelROSpecOpt() []byte
func ENABLE_EVENTS_AND_REPORTS ¶
This message can be issued by the Client to the Reader after a LLRP connection is established. The Client uses this message to inform the Reader that it can remove its hold on event and report messages. Readers that are configured to hold events and reports on reconnection (See Section 13.2.6.4) respond to this message by returning the tag reports accumulated (same way they respond to GET_REPORT (See Section 13.1.1)).
func ENABLE_ROSPEC ¶
This message is issued by the Client to the Reader. Upon receiving the message, the Reader moves the ROSpec corresponding to the ROSpecID passed in this message from the disabled to the inactive state.
func EventNotificationStateParam ¶
This parameter is used to enable or disable notification of a single Reader event type.
func EventsAndReports ¶
func EventsAndReports(HoldEventsAndReportsUponReconnect bool) []interface{}
This parameter controls the behavior of the Reader when a new LLRP connection is established. In a SET_READER_CONFIG message, this parameter is used to enable or disable the holding of events and reports upon connection using the HoldEventsAndReportsUponReconnect field. In a GET_READER_CONFIG message,this parameter reports the current configuration. If the ldEventsAndReportsUponReconnect is true, the reader will not deliver any reports or events (except the ConnectionAttemptEvent) to the Client until the Client issues an ENABLE_EVENTS_AND_REPORTS message. Once the ENABLE_EVENTS_AND_REPORTS message is received the reader ceases its hold on events and reports for the duration of the connection.
func GET_READER_CONFIG ¶
func GET_REPORT ¶
This message is issued by the Client to the Reader to get the tag reports. In response to this message, the Reader SHALL return tag reports accumulated. If no reports are available to send as a response to a GET_REPORT message, the Reader MAY return an empty RO_ACCESS_REPORT message.
func GPIPortCurrentState ¶
This Parameter carries the current configuration and state of a single GPI port. In a SET_READER_CONFIG message, this parameter is used to enable or disable the GPI port using the GPIConfig field; the GPIState field is ignored by the reader. In a GET_READER_CONFIG message, this parameter reports both the configuration and state of the GPI port. When a ROSpec or AISpec is configured on a GPI-capable reader with GPI start and/or stop triggers, those GPIs must be enabled by the client with a SET_READER_CONFIG message for the triggers to function.
func GPITriggerValue ¶
func GPOWriteDataFunc ¶
This parameter carries the data pertinent to perform the write to a general purpose output port.
GPO Port Number : Unsigned Short Integer. 0 is invalid. GPO Data: Boolean. The state to output on the specified GPO port.
func GetDefaultAISpec ¶
func GetDefaultAISpec() []interface{}
func GetRoReportSpec ¶
func GetRoReportSpec() []interface{}
func Identification ¶
Reader ID: Byte array. If IDType=0, the MAC address SHALL be encoded as EUI-64.[EUI64]
func InventoryParameterSpec ¶
func InventoryParameterSpec(InventoryParameterSpecID, ProtocolID int, params ...[]interface{}) []interface{}
Operational parameters for an inventory using a single air protocol. params = AntennaConfigurationParameter , Custom Parameter
func KeepaliveSpec ¶
This parameter carries the specification for the keepalive message generation by the Reader. This includes the definition of the periodic trigger to send the keepalive message PeriodicTriggerValue: Integer. Time interval in milliseconds. This field is ignored when KeepaliveTriggerType is not 1.
func LLRPConfigurationStateValue ¶
func LLRPConfigurationStateValue(llrpConfigurationStateValue int) []interface{}
This parameter, LLRPConfigurationStateValue, is a 32-bit value which represents a Reader’s entire LLRP configuration state including: LLRP configuration parameters, vendor extension configuration parameters, ROSpecs, and AccessSpecs. A Reader SHALL change this value only:
- Upon successful execution of any of the following messages: o ADD_ROSPEC o DELETE_ROSPEC o ADD_ACCESSSPEC o DELETE_ACCESSSPEC o SET_READER_CONFIG o Any CUSTOM_MESSAGE command that alters the reader’s internal configuration.
- Upon an automatically deleted AccessSpec due to OperationCountValue number of operations (Section 12.2.1.1).
A Reader SHALL not change this value when the CurrentState of a ROSpec or AccessSpec changes. The mechanism used to compute the LLRP configuration state value is implementation dependent. However, a good implementation will insure that there’s a high probability that the value will change when the Reader’s configuration state changes. It is expected that a Client will configure the Reader and then request the Reader’s configuration state value. The Client will then save this state value. If this value does not change between two requests for it, then a Client may assume that the above components of the LLRP configuration have also not changed.
func LoopSpec ¶
func LoopSpec(LoopCount int) []interface{}
Instructs the Reader to execute the first Spec in the Set of Specs. LoopCount: This value instructs the reader on the number of times to loop through the Set of Specs within the ROSpec
func PeriodicTriggerValue ¶
func PeriodicTriggerValue(Offset, Period int, params ...interface{}) []interface{}
UTCTimestamp Parameter
func PeriodicTriggerValueParam ¶
func PeriodicTriggerValueParam(offset, period uint32, utc []interface{}) []interface{}
Periodic trigger is specified using UTC time, offset and period
func RFReceiver ¶
func RFReceiver(TransmitPower, HopTableID, ChannelIndex int) []interface{}
This Parameter carries the RF transmitter information. The Transmit Power defines the transmit power for the antenna expressed as an index into the TransmitPowerTable (section 10.2.4.1.1). The HopTableID is the index of the frequency hop table to be used by the Reader (section 10.2.4.1.2.1) and is used when operating in frequency-hopping regulatory regions. This field is ignored in non-frequency-hopping regulatory regions. The ChannelIndex is the one-based channel index in the FixedFrequencyTable to use during transmission (section 10.2.4.1.2.2) and is used when operating in non-frequency-hopping regulatory regions. This field is ignored in frequency-hopping regulatory regions.
func RFSurveySpec ¶
func RFSurveySpec(AntennaID, StartFrequency, EndFrequency int, params ...[]interface{}) []interface{}
Details of a RF Survey operation params = RFSurveySpecStopTrigger , Custom Parameter
func RFSurveySpecStopTrigger ¶
func RFSurveySpecStopTrigger(StopTriggerType, Duration, N int) []interface{}
Duration: Unsigned Integer; The maximum duration of the RFSurvey operation specified in milliseconds. This field SHALL be ignored when StopTriggerType != 1. When StopTriggerType = 1, the value SHALL be greater than zero. N: Unsigned Integer. The maximum number of iterations through the specified frequency range. This field SHALL be ignored when StopTriggerType != 2. When StopTriggerType = 2, the value SHALL be greater than zero.
func RFTransmitter ¶
func RFTransmitter(HopTableID, ChannelIndex, TransmitPower int) []interface{}
This Parameter carries the RF transmitter information. The Transmit Power defines the transmit power for the antenna expressed as an index into the TransmitPowerTable (section 10.2.4.1.1). The HopTableID is the index of the frequency hop table to be used by the Reader (section 10.2.4.1.2.1) and is used when operating in frequency-hopping regulatory regions. This field is ignored in non-frequency-hopping regulatory regions. The ChannelIndex is the one-based channel index in the FixedFrequencyTable to use during transmission (section 10.2.4.1.2.2) and is used when operating in non-frequency-hopping regulatory regions. This field is ignored in frequency-hopping regulatory regions.
func ROBoundarySpec ¶
func ROBoundarySpec(params ...[]interface{}) []interface{}
ROSpecStartTrigger Parameter, ROSpecStopTrigger Parameter
func ROReportSpec ¶
func ROReportSpec(ROReportTrigger, N int, params ...[]interface{}) []interface{}
This Parameter carries the Reader inventory and RF survey reporting definition for the antenna. This parameter describes the contents of the report sent by the Reader and defines the events that cause the report to be sent.
The ROReportTrigger field defines the events that cause the report to be sent.
The TagReportContentSelector parameter defines the desired contents of the report. The ROReportTrigger defines the event that causes the report to be sent by the Reader to the Client.
Custom extensions to this parameter are intended to specify summary data to be reported as an extension to the RO_ACCESS_REPORT message (see section 14.1.2).
params = <TagReportContentSelector Parameter> , List of <Custom Parameter>
func ROSpec ¶
func ROSpec(ROSpecID, Priority, CurrentState int, params ...[]interface{}) []interface{}
This parameter carries the information of the Reader inventory and survey operation.
params = ROBoundarySpec Parameter , SpecParameter (1-n) , ROReportSpec Parameter
func ROSpecStartTrigger ¶
func ROSpecStartTrigger(ROSpecStartTriggerType int, params ...[]interface{}) []interface{}
PeriodicTriggerValue Parameter , GPITriggerValue Parameter
func ROSpecStopTrigger ¶
func ROSpecStopTrigger(ROSpecStopTriggerType int, DurationTriggerValue int, params ...[]interface{}) []interface{}
GPITriggerValue Parameter
func ReaderEventNotification ¶
func ReaderEventNotification(config ...bool) []interface{}
required 9 field no. 182
func ReaderEventNotificationSpec ¶
func ReaderEventNotificationSpec(params ...[]interface{}) []interface{}
This parameter is used by the Client to enable or disable notification of one or more Reader events. Notification of buffer overflow events and connection events (attempt/close) are mandatory, and not configurable.
params = List of <EventNotificationState Parameter>
func ResetFactoryOpt ¶
func ResetFactoryOpt() []byte
func RoReportSpec ¶
func RoReportSpec(ROReportTrigger, N int, params ...[]interface{}) []interface{}
This Parameter carries the Reader inventory and RF survey reporting definition for the antenna. This parameter describes the contents of the report sent by the Reader and defines the events that cause the report to be sent.
func SEND_KEEPALIVE ¶
This message is issued by the Reader to the Client. This message can be used by the Client to monitor the LLRP-layer connectivity with the Reader. The Client configures the trigger at the Reader to send the Keepalive message. The configuration is done using the KeepaliveSpec parameter
func SET_READER_CONFIG ¶
func START_ROSPEC ¶
This message is issued by the Client to the Reader. Upon receiving the message, the Reader starts the ROSpec corresponding to ROSpecID passed in this message, if the ROSpec is in the enabled state.
func STOP_ROSPEC ¶
This message is issued by the Client to the Reader. Upon receiving the message, the Reader stops the execution of the ROSpec corresponding to the ROSpecID passed in this message. STOP_ROSPEC overrides all other priorities and stops the execution. This basically moves the ROSpec’s state to Inactive. This message does not the delete the ROSpec.
func SetEventSpecOption ¶
if len(params) != 9 will be default value
func TagObservationTrigger ¶
func TagObservationTrigger(TriggerType, NumberOfTags, NumberOfAttempts, T, Timeout int) []interface{}
TriggerType: Integer value : modulation
0 Upon seeing N tag observations, or timeout. The definition of an "observation" is vendor specific. 1 Upon seeing no more new tag observations for T ms, or timeout. The definition of an "observation" is vendor specific. 2 N attempts to see all tags in the FOV, or timeout. 3 Upon seeing N unique tag observations, or timeout. 4 Upon seeing no more new unique tag observations for T ms, or timeout.
----- NumberOfTags: Unsigned Short Integer. This field SHALL be ignored when TriggerType != 0 and TriggerType != 3. NumberOfAttempts; Unsigned Short Integer. This field SHALL be ignored when TriggerType != 2. T : Unsigned Short Integer. Idle time between tag responses in milliseconds. This field SHALL be ignored when TriggerType != 1 and TriggerType != 4. Timeout : Unsigned Integer; Trigger timeout value in milliseconds. If set to zero, it indicates that there is no timeout.
func TagReportContentSelector ¶
func TagReportContentSelector( EnableROSpecID, EnableSpecIndex, EnableInventoryParameterSpecID, EnableAntennaID, EnableChannelIndex, EnablePeakRSSI, EnableFirstSeenTimestamp, EnableLastSeenTimestamp, EnableTagSeenCount, EnableAccessSpecID bool, params ...[]interface{}, ) []interface{}
This parameter is used to configure the contents that are of interest in TagReportData. If enabled, the field is reported along with the tag data in the TagReportData.
func UTCTimestampParam ¶
func UTCTimestampParam(microsecond uint64) []interface{}
UTCTimestamp Parameter
Types ¶
type ADD_ROSPEC_RESPONSE ¶
type ADD_ROSPEC_RESPONSE struct { MsgId uint32 Status *LLRPStatus }
type AISpecEventParameter ¶
type AccessSpecIDParameter ¶
type AccessSpecIDParameter struct { }
type AntennaEventParameter ¶
type AntennaIDParameter ¶
type AntennaIDParameter struct {
AntennaID uint16
}
type AntennaProperty ¶
type CLOSE_CONNECTION_RESPONSE ¶
type CLOSE_CONNECTION_RESPONSE struct { MsgId uint32 Status *LLRPStatus }
type CUSTOM_MESSAGE_RESPONSE ¶
type CUSTOM_MESSAGE_RESPONSE struct { MsgId uint32 Vendor uint32 SubType uint8 Status *LLRPStatus }
type ChannelIndexParameter ¶
type ChannelIndexParameter struct {
ChannelIndex uint16
}
type Conn ¶
type Conn struct { // Keep all members for which we use atomic at the beginning of the // struct and make sure they are all 64bits (or use padding if necessary). // atomic.* functions crash on 32bit machines if operand is not aligned // at 64bit. See https://github.com/golang/go/issues/599 // reader Opts Options // contains filtered or unexported fields }
A Conn represents a bare connection to a reader. It can send and receive []byte payloads.
func (*Conn) Close ¶
func (nc *Conn) Close()
Close will close the connection to the server. This call will release all blocking calls, such as Flush() and NextMsg()
func (*Conn) Disabled_ROSpec ¶
func (*Conn) Enable_ROSpec ¶
func (*Conn) GPIToggleMonitor ¶
func (*Conn) ListReader ¶
func (nc *Conn) ListReader() map[string]*SPReaderInfo
List of readers registed
func (*Conn) Registry ¶
func (nc *Conn) Registry(reader *SPReaderInfo) error
func (*Conn) StartROSpec ¶
func (*Conn) StopROSpec ¶
func (*Conn) Subscription ¶
func (nc *Conn) Subscription(cb MsgHandler) ([]*Subscription, error)
type ConnHandler ¶
type ConnHandler func(*RConn)
ConnHandler is used for asynchronous events such as disconnected and closed connections.
type ConnectionAttemptEventParameter ¶
type ConnectionAttemptEventParameter struct {
Status uint16
}
type CustomDialer ¶
CustomDialer can be used to specify any dialer, not necessarily a *net.Dialer.
type DELETE_ACCESSSPEC_RESPONSE ¶
type DELETE_ACCESSSPEC_RESPONSE struct { MsgId uint32 Status *LLRPStatus }
type DELETE_ROSPEC_RESPONSE ¶
type DELETE_ROSPEC_RESPONSE struct { MsgId uint32 Status *LLRPStatus }
-------------------
type DISABLE_ROSPEC_RESPONSE ¶
type DISABLE_ROSPEC_RESPONSE struct { MsgId uint32 Status *LLRPStatus }
type ENABLE_ROSPEC_RESPONSE ¶
type ENABLE_ROSPEC_RESPONSE struct { MsgId uint32 Status *LLRPStatus }
type ERROR_MESSAGE ¶
type ERROR_MESSAGE struct { MsgId uint32 Status *LLRPStatus }
type ErrHandler ¶
type ErrHandler func(*Conn, *Subscription, error)
ErrHandler is used to process asynchronous errors encountered while processing inbound messages.
type EventNotificationState ¶
type EventReport ¶
type EventReport struct {
HoldEventReportsUponReconnect bool
}
type EvtData ¶
type EvtData struct { TimestampUTC uint64 Hopping []*HoppingEventParameter GpiEvt []*GpiEventParam ROSpEvt []*ROSpecEventParameter ReportBuf []*ReportBufferLevelWarningEventParameter ReaderException []*ReaderExceptionEventParameter RFSurvey []*RFSurveyEventParameter AISpec []*AISpecEventParameter Antenna []*AntennaEventParameter ConnectionAttempt []*ConnectionAttemptEventParameter }
ReaderEventNotificationData
type GPICurrentState ¶
type GPOWriteData ¶
type GetConfigResponse ¶
type GetConfigResponse struct { MsgId uint32 Status *LLRPStatus Id *IdentificationParam AnnPty []*AntennaProperty //AnnCon []*AntennaConfig EvtSpec *ReaderEventNoticationSpec //ROSpec *ROReportSpec //AccSpec *AccessReportSpec //CfgState *LLRPConfigState Ka *KeepaliveResponse GPI []*GPICurrentState GPO []*GPOWriteData EvtReport *EventReport }
type GpiEventParam ¶
type HandlerIOState ¶
type HandlerIOState func(*IOState)
type HoppingEventParameter ¶
type IdentificationParam ¶
type InventoryParameterSpecIDParameter ¶
type InventoryParameterSpecIDParameter struct {
InventoryParameterSpecId uint16
}
type KeepaliveResponse ¶
type LLRPStatus ¶
type Msg ¶
type Msg struct { From *Subscription Reports []interface{} // contains filtered or unexported fields }
Msg is a structure used by Subscribers and PublishMsg().
type MsgHandler ¶
type MsgHandler func(msg *Msg)
type OpSpecIDParameter ¶
type OpSpecIDParameter struct {
OpSpecId uint16
}
type Options ¶
type Options struct { // command stack when start reader InitCommand [][]byte // AllowReconnect enables reconnection logic to be used when we // encounter a disconnect from the current reader. AllowReconnect bool // MaxReconnect sets the number of reconnect attempts that will be // tried before giving up. If negative, then it will never give up // trying to reconnect. MaxReconnect int // ReconnectWait sets the time to backoff after attempting a reconnect // to a reader that we were already connected to previously. ReconnectWait time.Duration // Timeout sets the timeout for a Dial operation on a connection. Timeout time.Duration // FlusherTimeout is the maximum time to wait for the flusher loop // to be able to finish writing to the underlying connection. FlusherTimeout time.Duration // ClosedCB sets the closed handler that is called when a client will // no longer be connected. ClosedCB ConnHandler // DisconnectedCB sets the disconnected handler that is called // whenever the connection is disconnected. DisconnectedCB ConnHandler // ReconnectedCB sets the reconnected handler called whenever // the connection is successfully reconnected. ReconnectedCB ConnHandler // DiscoveredServersCB sets the callback that is invoked whenever a new // reader has joined the cluster. DiscoveredServersCB ConnHandler // AsyncErrorCB sets the async error handler (e.g. slow consumer errors) AsyncErrorCB ErrHandler // ReconnectBufSize is the size of the backing bufio during reconnect. // Once this has been exhausted publish operations will return an error. ReconnectBufSize int // Interval keepalive to prevent readLoop exit KeepaliveInterval time.Duration }
Options can be used to create a customized connection.
func GetDefaultOptions ¶
func GetDefaultOptions() Options
type PeakRSSIParameter ¶
type PeakRSSIParameter struct {
PeakRSSI uint8
}
type RConn ¶
type RConn struct { Statistics // contains filtered or unexported fields }
func (*RConn) IsConnected ¶
IsConnected tests if a Conn is connected.
func (*RConn) IsReconnecting ¶
IsReconnecting tests if a Conn is reconnecting.
func (*RConn) Stats ¶
func (nc *RConn) Stats() Statistics
Stats will return a race safe copy of the Statistics section for the connection.
type RFSurveyEventParameter ¶
type ROAccessReportResponse ¶
type ROAccessReportResponse struct { MsgId uint32 Data *TagReportData }
type ROSpecEventParameter ¶
This parameter carries the ROSpec event details. The EventType could be start or end of the ROSpec.
type ROSpecIDParameter ¶
type ROSpecIDParameter struct {
ROSpecID uint32
}
type ReaderEventNoticationSpec ¶
type ReaderEventNoticationSpec struct {
State []*EventNotificationState
}
type ReaderExceptionEventParameter ¶
type ReaderExceptionEventParameter struct { ROSpecID []*ROSpecIDParameter SpecIndex []*SpecIndexParameter InventoryParameterSpecID []*InventoryParameterSpecIDParameter AntennaID []*AntennaIDParameter AccessSpecID []*AccessSpecIDParameter OpSpecID []*OpSpecIDParameter Message string }
type ReportBufferLevelWarningEventParameter ¶
type ReportBufferLevelWarningEventParameter struct {
ReportBufferPercentageFull uint8
}
type ReportBufferOverflowErrorEvent ¶
type ReportBufferOverflowErrorEvent struct { }
type SPReaderInfo ¶
type START_ROSPEC_RESPONSE ¶
type START_ROSPEC_RESPONSE struct { MsgId uint32 Status *LLRPStatus }
type STOP_ROSPEC_RESPONSE ¶
type STOP_ROSPEC_RESPONSE struct { MsgId uint32 Status *LLRPStatus }
type SetConfigResponse ¶
type SetConfigResponse struct { MsgId uint32 Status *LLRPStatus }
type SpecIndexParameter ¶
type SpecIndexParameter struct {
SpecIndex uint16
}
type Statistics ¶
type Statistics struct { InMsgs uint64 OutMsgs uint64 InBytes uint64 OutBytes uint64 Reconnects uint64 }
Tracks various stats received and sent on this connection, including counts for messages and bytes.
type Subscription ¶
func (*Subscription) Ack ¶
func (sc *Subscription) Ack(messageId int) error