Documentation
¶
Index ¶
Constants ¶
View Source
const ( HTTPHandlerKind = "HTTP" InfluxDBHandlerKind = "INFLUXDB" )
Handler kinds
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ACKNotification ¶
type ACKNotification struct {
ApplicationID int64 `json:"applicationID,string"`
ApplicationName string `json:"applicationName"`
DeviceName string `json:"deviceName"`
DevEUI lorawan.EUI64 `json:"devEUI"`
Acknowledged bool `json:"acknowledged"`
FCnt uint32 `json:"fCnt"`
}
ACKNotification defines the payload sent to the application on an ACK event.
type DataDownPayload ¶
type DataDownPayload struct {
ApplicationID int64 `json:"applicationID,string"`
DevEUI lorawan.EUI64 `json:"devEUI"`
Confirmed bool `json:"confirmed"`
FPort uint8 `json:"fPort"`
Data []byte `json:"data"`
Object json.RawMessage `json:"object"`
}
DataDownPayload represents a data-down payload.
type DataUpPayload ¶
type DataUpPayload struct {
ApplicationID int64 `json:"applicationID,string"`
ApplicationName string `json:"applicationName"`
DeviceName string `json:"deviceName"`
DevEUI lorawan.EUI64 `json:"devEUI"`
RXInfo []RXInfo `json:"rxInfo,omitempty"`
TXInfo TXInfo `json:"txInfo"`
ADR bool `json:"adr"`
FCnt uint32 `json:"fCnt"`
FPort uint8 `json:"fPort"`
Data []byte `json:"data"`
Object interface{} `json:"object,omitempty"`
}
DataUpPayload represents a data-up payload.
type ErrorNotification ¶
type ErrorNotification struct {
ApplicationID int64 `json:"applicationID,string"`
ApplicationName string `json:"applicationName"`
DeviceName string `json:"deviceName"`
DevEUI lorawan.EUI64 `json:"devEUI"`
Type string `json:"type"`
Error string `json:"error"`
FCnt uint32 `json:"fCnt,omitempty"`
}
ErrorNotification defines the payload sent to the application on an error event.
type Handler ¶
type Handler interface {
IntegrationHandler
DataDownChan() chan DataDownPayload // returns DataDownPayload channel
}
Handler defines the interface of a handler backend.
type IntegrationHandler ¶
type IntegrationHandler interface {
SendDataUp(payload DataUpPayload) error // send data-up payload
SendJoinNotification(payload JoinNotification) error // send join notification
SendACKNotification(payload ACKNotification) error // send ack notification
SendErrorNotification(payload ErrorNotification) error // send error notification
SendStatusNotification(payload StatusNotification) error // send status notification
Close() error // closes the handler
}
IntegrationHandler defines the interface of an integration handler.
type JoinNotification ¶
type JoinNotification struct {
ApplicationID int64 `json:"applicationID,string"`
ApplicationName string `json:"applicationName"`
DeviceName string `json:"deviceName"`
DevEUI lorawan.EUI64 `json:"devEUI"`
DevAddr lorawan.DevAddr `json:"devAddr"`
}
JoinNotification defines the payload sent to the application on a JoinNotificationType event.
type Location ¶
type Location struct {
Latitude float64 `json:"latitude"`
Longitude float64 `json:"longitude"`
Altitude float64 `json:"altitude"`
}
Location details.
type RXInfo ¶
type RXInfo struct {
GatewayID lorawan.EUI64 `json:"gatewayID"`
Name string `json:"name"`
Time *time.Time `json:"time,omitempty"`
RSSI int `json:"rssi"`
LoRaSNR float64 `json:"loRaSNR"`
Location *Location `json:"location"`
}
RXInfo contains the RX information.
type StatusNotification ¶
type StatusNotification struct {
ApplicationID int64 `json:"applicationID,string"`
ApplicationName string `json:"applicationName"`
DeviceName string `json:"deviceName"`
DevEUI lorawan.EUI64 `json:"devEUI"`
Battery int `json:"battery"`
Margin int `json:"margin"`
}
StatusNotification defines the payload sent to the application on a device-status reporting.
Directories
¶
| Path | Synopsis |
|---|---|
|
Package httphandler implements a HTTP handler
|
Package httphandler implements a HTTP handler |
|
Package influxdbhandler implements a InfluxDB handler
|
Package influxdbhandler implements a InfluxDB handler |
|
Package multihandler provides a multi handler.
|
Package multihandler provides a multi handler. |
Click to show internal directories.
Click to hide internal directories.