kismet

package module
v0.0.0-...-e618598 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 20, 2022 License: GPL-3.0 Imports: 15 Imported by: 0

README

Kismet Go API Client

Go Reference

This library implements partially API client for Kismet server.

At the moment NOT implemented:

  • All Websocket based APIs
  • GPS
  • All packet capture APIs.

APIs use a simple json endpoint and not ekjson or itjson so it is possible that the client's performance might be not the best (supported Kismet API types).

An issue with messages API exists in the library: Kismet returns all and not the latest messages. I probably did something wrong.

Documentation

Index

Constants

View Source
const RequestTimeout = 10 * time.Second

Variables

View Source
var (
	ErrRequestFailed = errors.New("http request to  API failed")
)
View Source
var ErrTimeUSecUnsupportedFormat = errors.New("unsupported TimeUSec format")

Functions

This section is empty.

Types

type Alert

type Alert struct {
	Location       AlertLocation        `json:"kismet.alert.location"`
	Text           string               `json:"kismet.alert.text"`
	DeviceKey      string               `json:"kismet.alert.device_key"`
	Header         string               `json:"kismet.alert.header"`
	Class          AlertDefinitionClass `json:"kismet.alert.class"`
	Hash           int64                `json:"kismet.alert.hash"`
	Severity       AlertSeverity        `json:"kismet.alert.severity"`
	PhyID          int64                `json:"kismet.alert.phy_id"`
	Timestamp      TimeUSec             `json:"kismet.alert.timestamp"`
	TransmitterMAC string               `json:"kismet.alert.transmitter_mac"`
	SourceMAC      string               `json:"kismet.alert.source_mac"`
	DestMAC        string               `json:"kismet.alert.dest_mac"`
	OtherMAC       string               `json:"kismet.alert.other_mac"`
	Channel        string               `json:"kismet.alert.channel"`
	Frequency      int64                `json:"kismet.alert.frequency"`
}

Alert - Kismet Alert.

func (Alert) MarshalEasyJSON

func (v Alert) MarshalEasyJSON(w *jwriter.Writer)

MarshalEasyJSON supports easyjson.Marshaler interface

func (Alert) MarshalJSON

func (v Alert) MarshalJSON() ([]byte, error)

MarshalJSON supports json.Marshaler interface

func (*Alert) UnmarshalEasyJSON

func (v *Alert) UnmarshalEasyJSON(l *jlexer.Lexer)

UnmarshalEasyJSON supports easyjson.Unmarshaler interface

func (*Alert) UnmarshalJSON

func (v *Alert) UnmarshalJSON(data []byte) error

UnmarshalJSON supports json.Unmarshaler interface

type AlertDefinition

type AlertDefinition struct {
	TimeLast    TimeUSec             `json:"kismet.alert.definition.time_last"`
	TotalSent   int64                `json:"kismet.alert.definition.total_sent"`
	BurstSent   int64                `json:"kismet.alert.definition.burst_sent"`
	LimitBurst  int64                `json:"kismet.alert.definition.limit_burst"`
	BurstUnit   int64                `json:"kismet.alert.definition.burst_unit"`
	LimitRate   int64                `json:"kismet.alert.definition.limit_rate"`
	LimitUnit   int64                `json:"kismet.alert.definition.limit_unit"`
	Phyid       int64                `json:"kismet.alert.definition.phyid"`
	Description string               `json:"kismet.alert.definition.description"`
	Severity    AlertSeverity        `json:"kismet.alert.definition.severity"`
	Class       AlertDefinitionClass `json:"kismet.alert.definition.class"`
	Header      string               `json:"kismet.alert.definition.header"`
}

AlertDefinition Alert type definition.

func (AlertDefinition) MarshalEasyJSON

func (v AlertDefinition) MarshalEasyJSON(w *jwriter.Writer)

MarshalEasyJSON supports easyjson.Marshaler interface

func (AlertDefinition) MarshalJSON

func (v AlertDefinition) MarshalJSON() ([]byte, error)

MarshalJSON supports json.Marshaler interface

func (*AlertDefinition) UnmarshalEasyJSON

func (v *AlertDefinition) UnmarshalEasyJSON(l *jlexer.Lexer)

UnmarshalEasyJSON supports easyjson.Unmarshaler interface

func (*AlertDefinition) UnmarshalJSON

func (v *AlertDefinition) UnmarshalJSON(data []byte) error

UnmarshalJSON supports json.Unmarshaler interface

type AlertDefinitionClass

type AlertDefinitionClass string

AlertDefinitionClass type of Alert.

const (
	// AlertTypeDenial - Possible denial of service attack.
	AlertTypeDenial AlertDefinitionClass = "DENIAL"
	// AlertTypeExploit - Known fingerprinted exploit attempt against a vulnerability.
	AlertTypeExploit AlertDefinitionClass = "EXPLOIT"
	// AlertTypeOther - General category for alerts which don’t fit in any existing bucket.
	AlertTypeOther AlertDefinitionClass = "OTHER"
	// AlertTypeProbe - Probe by known tools.
	AlertTypeProbe AlertDefinitionClass = "PROBE"
	// AlertTypeSpoof - Attempt to spoof an existing device.
	AlertTypeSpoof AlertDefinitionClass = "SPOOF"
	// AlertTypeSystem - System events, such as log changes, datasource errors, etc.
	AlertTypeSystem AlertDefinitionClass = "SYSTEM"
)

type AlertLocation

type AlertLocation struct {
	Time     TimeUSec `json:"kismet.common.location.time"`
	Fix      int64    `json:"kismet.common.location.fix"`
	Alt      int64    `json:"kismet.common.location.alt"`
	Geopoint []int64  `json:"kismet.common.location.geopoint"`
}

AlertLocation - an alert's geographic location.

func (*AlertLocation) UnmarshalJSON

func (al *AlertLocation) UnmarshalJSON(raw []byte) error

type AlertSeverity

type AlertSeverity int64

AlertSeverity Alerts severity. https://www.kismetwireless.net/docs/devel/webui_rest/alerts/#alert-severities

const (
	AlertSeverityInfo     AlertSeverity = 0
	AlertSeverityLow      AlertSeverity = 5
	AlertSeverityMedium   AlertSeverity = 10
	AlertSeverityHigh     AlertSeverity = 15
	AlertSeverityCritical AlertSeverity = 20
)

func (AlertSeverity) String

func (as AlertSeverity) String() string

type BluetoothDevice

type BluetoothDevice struct {
	// Type - bt device type.
	Type uint8 `json:"bluetooth.device.type"`
	// Pathloss - signal pathloss.
	Pathloss int16 `json:"bluetooth.device.pathloss"`
	// Txpower - advertised transmit power.
	Txpower int16 `json:"bluetooth.device.txpower"`
	// ServiceDataBytes - per-service result bytes.
	ServiceDataBytes BluetoothDeviceServiceDataBytes `json:"bluetooth.device.service_data_bytes"`
	// ScanDataBytes - scan result bytes.
	ScanDataBytes []byte `json:"bluetooth.device.scan_data_bytes"`
	// SolicitationUUIDVec - advertised solicitation UUIDs.
	SolicitationUUIDVec []interface{} `json:"bluetooth.device.solicitation_uuid_vec"`
	// ServiceUUIDVec - advertised service UUIDs.
	ServiceUUIDVec []interface{} `json:"bluetooth.device.service_uuid_vec"`
}

BluetoothDevice - a Bluetooth device.

func (BluetoothDevice) MarshalEasyJSON

func (v BluetoothDevice) MarshalEasyJSON(w *jwriter.Writer)

MarshalEasyJSON supports easyjson.Marshaler interface

func (BluetoothDevice) MarshalJSON

func (v BluetoothDevice) MarshalJSON() ([]byte, error)

MarshalJSON supports json.Marshaler interface

func (*BluetoothDevice) UnmarshalEasyJSON

func (v *BluetoothDevice) UnmarshalEasyJSON(l *jlexer.Lexer)

UnmarshalEasyJSON supports easyjson.Unmarshaler interface

func (*BluetoothDevice) UnmarshalJSON

func (v *BluetoothDevice) UnmarshalJSON(data []byte) error

UnmarshalJSON supports json.Unmarshaler interface

type BluetoothDeviceServiceDataBytes

type BluetoothDeviceServiceDataBytes struct {
}

BluetoothDeviceServiceDataBytes - service data bytes.

func (BluetoothDeviceServiceDataBytes) MarshalEasyJSON

func (v BluetoothDeviceServiceDataBytes) MarshalEasyJSON(w *jwriter.Writer)

MarshalEasyJSON supports easyjson.Marshaler interface

func (BluetoothDeviceServiceDataBytes) MarshalJSON

func (v BluetoothDeviceServiceDataBytes) MarshalJSON() ([]byte, error)

MarshalJSON supports json.Marshaler interface

func (*BluetoothDeviceServiceDataBytes) UnmarshalEasyJSON

func (v *BluetoothDeviceServiceDataBytes) UnmarshalEasyJSON(l *jlexer.Lexer)

UnmarshalEasyJSON supports easyjson.Unmarshaler interface

func (*BluetoothDeviceServiceDataBytes) UnmarshalJSON

func (v *BluetoothDeviceServiceDataBytes) UnmarshalJSON(data []byte) error

UnmarshalJSON supports json.Unmarshaler interface

type Channels

type Channels struct {
	FrequencyMap map[string]ChanneltrackerFrequencyMap `json:"kismet.channeltracker.frequency_map"`
	ChannelMap   ChanneltrackerChannelMap              `json:"kismet.channeltracker.channel_map"`
}

Channels - channel info.

func (Channels) MarshalEasyJSON

func (v Channels) MarshalEasyJSON(w *jwriter.Writer)

MarshalEasyJSON supports easyjson.Marshaler interface

func (Channels) MarshalJSON

func (v Channels) MarshalJSON() ([]byte, error)

MarshalJSON supports json.Marshaler interface

func (*Channels) UnmarshalEasyJSON

func (v *Channels) UnmarshalEasyJSON(l *jlexer.Lexer)

UnmarshalEasyJSON supports easyjson.Unmarshaler interface

func (*Channels) UnmarshalJSON

func (v *Channels) UnmarshalJSON(data []byte) error

UnmarshalJSON supports json.Unmarshaler interface

type ChanneltrackerChannelMap

type ChanneltrackerChannelMap struct {
}

ChanneltrackerChannelMap - channels map, empty for now.

func (ChanneltrackerChannelMap) MarshalEasyJSON

func (v ChanneltrackerChannelMap) MarshalEasyJSON(w *jwriter.Writer)

MarshalEasyJSON supports easyjson.Marshaler interface

func (ChanneltrackerChannelMap) MarshalJSON

func (v ChanneltrackerChannelMap) MarshalJSON() ([]byte, error)

MarshalJSON supports json.Marshaler interface

func (*ChanneltrackerChannelMap) UnmarshalEasyJSON

func (v *ChanneltrackerChannelMap) UnmarshalEasyJSON(l *jlexer.Lexer)

UnmarshalEasyJSON supports easyjson.Unmarshaler interface

func (*ChanneltrackerChannelMap) UnmarshalJSON

func (v *ChanneltrackerChannelMap) UnmarshalJSON(data []byte) error

UnmarshalJSON supports json.Unmarshaler interface

type ChanneltrackerFrequencyMap

type ChanneltrackerFrequencyMap struct {
	Signal CommonSignal `json:"kismet.channelrec.signal"`
	// DeviceRrd - seen devices count.
	DeviceRrd CommonRrd `json:"kismet.channelrec.device_rrd"`
	// DataRrd - received bytes count.
	DataRrd CommonRrd `json:"kismet.channelrec.data_rrd"`
	// PacketsRrd - received packets count.
	PacketsRrd CommonRrd `json:"kismet.channelrec.packets_rrd"`
	Frequency  int64     `json:"kismet.channelrec.frequency"`
	Channel    string    `json:"kismet.channelrec.channel"`
}

ChanneltrackerFrequencyMap - a channel's frequency statistics.

func (ChanneltrackerFrequencyMap) MarshalEasyJSON

func (v ChanneltrackerFrequencyMap) MarshalEasyJSON(w *jwriter.Writer)

MarshalEasyJSON supports easyjson.Marshaler interface

func (ChanneltrackerFrequencyMap) MarshalJSON

func (v ChanneltrackerFrequencyMap) MarshalJSON() ([]byte, error)

MarshalJSON supports json.Marshaler interface

func (*ChanneltrackerFrequencyMap) UnmarshalEasyJSON

func (v *ChanneltrackerFrequencyMap) UnmarshalEasyJSON(l *jlexer.Lexer)

UnmarshalEasyJSON supports easyjson.Unmarshaler interface

func (*ChanneltrackerFrequencyMap) UnmarshalJSON

func (v *ChanneltrackerFrequencyMap) UnmarshalJSON(data []byte) error

UnmarshalJSON supports json.Unmarshaler interface

type Client

type Client struct {
	// contains filtered or unexported fields
}

Client - API Client.

func New

func New(serverURL *url.URL, apiToken string) (*Client, error)

func (*Client) AddDatasource

func (cl *Client) AddDatasource(definition string) error

AddDatasource - creates a new Datasource. https://www.kismetwireless.net/docs/devel/webui_rest/datasources/#adding-sources.

func (*Client) AddDatasourceContext

func (cl *Client) AddDatasourceContext(ctx context.Context, definition string) error

AddDatasourceContext - creates a new Datasource. https://www.kismetwireless.net/docs/devel/webui_rest/datasources/#adding-sources.

func (*Client) AddDevicesAlertsPresenceAbsence

func (cl *Client) AddDevicesAlertsPresenceAbsence(alertType DevicesAlertsPresenceAbsenceType, macs ...string) error

AddDevicesAlertsPresenceAbsence - Add Device Alerts to Kismet. https://www.kismetwireless.net/docs/devel/webui_rest/devices/#alerts---device-presence--absence---changing.

func (*Client) AddDevicesAlertsPresenceAbsenceContext

func (cl *Client) AddDevicesAlertsPresenceAbsenceContext(ctx context.Context, alertType DevicesAlertsPresenceAbsenceType, macs ...string) error

AddDevicesAlertsPresenceAbsenceContext - Add Device Alerts to Kismet. https://www.kismetwireless.net/docs/devel/webui_rest/devices/#alerts---device-presence--absence---changing.

func (*Client) CloseDatasource

func (cl *Client) CloseDatasource(datasourceUUID string) error

CloseDatasource - closes one Datasource. https://www.kismetwireless.net/docs/devel/webui_rest/datasources/#closing-sources.

func (*Client) CloseDatasourceContext

func (cl *Client) CloseDatasourceContext(ctx context.Context, datasourceUUID string) error

CloseDatasourceContext - closes one Datasource. https://www.kismetwireless.net/docs/devel/webui_rest/datasources/#closing-sources.

func (*Client) GetAlertDetails

func (cl *Client) GetAlertDetails(alertHash string, fields FieldSimplification) (*Alert, error)

GetAlertDetails - returns details of one Alert. https://www.kismetwireless.net/docs/devel/webui_rest/alerts/#alert-details.

func (*Client) GetAlertDetailsContext

func (cl *Client) GetAlertDetailsContext(ctx context.Context,
	alertHash string, fields FieldSimplification) (*Alert, error)

GetAlertDetailsContext - returns details of one Alert. https://www.kismetwireless.net/docs/devel/webui_rest/alerts/#alert-details.

func (*Client) GetAlertsAll

func (cl *Client) GetAlertsAll() ([]Alert, error)

GetAlertsAll - returns last Alerts. Kismet retains the past N alerts, as defined by alertbacklog in kismet_memory.conf. By default, Kismet retains 50 alert records. https://www.kismetwireless.net/docs/devel/webui_rest/alerts/#all-alerts.

func (*Client) GetAlertsAllContext

func (cl *Client) GetAlertsAllContext(ctx context.Context) ([]Alert, error)

GetAlertsAllContext - returns last Alerts. Kismet retains the past N alerts, as defined by alertbacklog in kismet_memory.conf. By default, Kismet retains 50 alert records. https://www.kismetwireless.net/docs/devel/webui_rest/alerts/#all-alerts.

func (*Client) GetAlertsDefinitions

func (cl *Client) GetAlertsDefinitions() ([]AlertDefinition, error)

GetAlertsDefinitions - returns full Alerts configuration and currently supported alert types. https://www.kismetwireless.net/docs/devel/webui_rest/alerts/#alert-configuration.

func (*Client) GetAlertsDefinitionsContext

func (cl *Client) GetAlertsDefinitionsContext(ctx context.Context) ([]AlertDefinition, error)

GetAlertsDefinitionsContext - returns full Alerts configuration and currently supported alert types. https://www.kismetwireless.net/docs/devel/webui_rest/alerts/#alert-configuration.

func (*Client) GetAlertsLastSeen

func (cl *Client) GetAlertsLastSeen(timestamp TimeUSec) ([]Alert, error)

GetAlertsLastSeen - returns Alerts since timestamp. https://www.kismetwireless.net/docs/devel/webui_rest/alerts/#recent-alerts.

func (*Client) GetAlertsLastSeenContext

func (cl *Client) GetAlertsLastSeenContext(ctx context.Context, timestamp TimeUSec) ([]Alert, error)

GetAlertsLastSeenContext - returns Alerts since timestamp. https://www.kismetwireless.net/docs/devel/webui_rest/alerts/#recent-alerts.

func (*Client) GetChannels

func (cl *Client) GetChannels() (*Channels, error)

GetChannels gets a dictionary containing channel usage, device counts, and coverage data. https://www.kismetwireless.net/docs/devel/webui_rest/channels/#channels.

func (*Client) GetChannelsContext

func (cl *Client) GetChannelsContext(ctx context.Context) (*Channels, error)

GetChannelsContext gets a dictionary containing channel usage, device counts, and coverage data. https://www.kismetwireless.net/docs/devel/webui_rest/channels/#channels.

func (*Client) GetDatasource

func (cl *Client) GetDatasource(datasourceUUID string) (*Datasource, error)

GetDatasource - returns one Datasource information. https://www.kismetwireless.net/docs/devel/webui_rest/datasources/#querying-specific-datasources.

func (*Client) GetDatasourceContext

func (cl *Client) GetDatasourceContext(ctx context.Context, datasourceUUID string) (*Datasource, error)

GetDatasourceContext - returns one Datasource information. https://www.kismetwireless.net/docs/devel/webui_rest/datasources/#querying-specific-datasources.

func (*Client) GetDatasourcesAll

func (cl *Client) GetDatasourcesAll() ([]Datasource, error)

GetDatasourcesAll - lists all Datasources. https://www.kismetwireless.net/docs/devel/webui_rest/datasources/#listing-datasources.

func (*Client) GetDatasourcesAllContext

func (cl *Client) GetDatasourcesAllContext(ctx context.Context) ([]Datasource, error)

GetDatasourcesAllContext - lists all Datasources. https://www.kismetwireless.net/docs/devel/webui_rest/datasources/#listing-datasources.

func (*Client) GetDatasourcesDefaults

func (cl *Client) GetDatasourcesDefaults() (*DatasourcesDefaults, error)

GetDatasourcesDefaults - returns Datasource default settings. https://www.kismetwireless.net/docs/devel/webui_rest/datasources/#defaults.

func (*Client) GetDatasourcesDefaultsContext

func (cl *Client) GetDatasourcesDefaultsContext(ctx context.Context) (*DatasourcesDefaults, error)

GetDatasourcesDefaultsContext - returns Datasource default settings. https://www.kismetwireless.net/docs/devel/webui_rest/datasources/#defaults.

func (*Client) GetDatasourcesInterfaces

func (cl *Client) GetDatasourcesInterfaces() ([]DatasourceInterface, error)

GetDatasourcesInterfaces - lists all Interfaces which can potentially be used as Datasources. https://www.kismetwireless.net/docs/devel/webui_rest/datasources/#listing-interfaces.

func (*Client) GetDatasourcesInterfacesContext

func (cl *Client) GetDatasourcesInterfacesContext(ctx context.Context) ([]DatasourceInterface, error)

GetDatasourcesInterfacesContext - lists all Interfaces which can potentially be used as Datasources. https://www.kismetwireless.net/docs/devel/webui_rest/datasources/#listing-interfaces.

func (*Client) GetDatasourcesSupportedTypes

func (cl *Client) GetDatasourcesSupportedTypes() ([]DatasourceTypeDriver, error)

GetDatasourcesSupportedTypes - returns supported Datasources. https://www.kismetwireless.net/docs/devel/webui_rest/datasources/#supported-datasource-types.

func (*Client) GetDatasourcesSupportedTypesContext

func (cl *Client) GetDatasourcesSupportedTypesContext(ctx context.Context) ([]DatasourceTypeDriver, error)

GetDatasourcesSupportedTypesContext - returns supported Datasources. https://www.kismetwireless.net/docs/devel/webui_rest/datasources/#supported-datasource-types.

func (*Client) GetDeviceByKey

func (cl *Client) GetDeviceByKey(kismetDeviceBaseKey string, fields FieldSimplification) (*Device, error)

GetDeviceByKey - returns a Device using its unique kismet.device.base.key. https://www.kismetwireless.net/docs/devel/webui_rest/devices/#device-by-key.

func (*Client) GetDeviceByKeyContext

func (cl *Client) GetDeviceByKeyContext(ctx context.Context, kismetDeviceBaseKey string, fields FieldSimplification) (*Device, error)

GetDeviceByKeyContext - returns a Device using its unique kismet.device.base.key. https://www.kismetwireless.net/docs/devel/webui_rest/devices/#device-by-key.

func (*Client) GetDevicesAlertsPresenceAbsence

func (cl *Client) GetDevicesAlertsPresenceAbsence(alertType DevicesAlertsPresenceAbsenceType) ([]string, error)

GetDevicesAlertsPresenceAbsence - returns Device presence/absence Alerts. https://www.kismetwireless.net/docs/devel/webui_rest/devices/#alerts---device-presence--absence---viewing.

func (*Client) GetDevicesAlertsPresenceAbsenceContext

func (cl *Client) GetDevicesAlertsPresenceAbsenceContext(ctx context.Context, alertType DevicesAlertsPresenceAbsenceType) ([]string, error)

GetDevicesAlertsPresenceAbsenceContext - returns Device presence/absence Alerts. https://www.kismetwireless.net/docs/devel/webui_rest/devices/#alerts---device-presence--absence---viewing.

func (*Client) GetDevicesByMac

func (cl *Client) GetDevicesByMac(macAddress string, fields FieldSimplification) ([]Device, error)

GetDevicesByMac - return a Device based on its unique MAC address. For some device types it is possible that multiple devices are returned because multiple devices could have the same MAC. https://www.kismetwireless.net/docs/devel/webui_rest/devices/#device-by-mac.

func (*Client) GetDevicesByMacContext

func (cl *Client) GetDevicesByMacContext(ctx context.Context, macAddress string, fields FieldSimplification) ([]Device, error)

GetDevicesByMacContext - return a Device based on its unique MAC address. For some device types it is possible that multiple devices are returned because multiple devices could have the same MAC. https://www.kismetwireless.net/docs/devel/webui_rest/devices/#device-by-mac.

func (*Client) GetDevicesByPhyType

func (cl *Client) GetDevicesByPhyType(phyName string, fields FieldSimplification, regexes RegexFilters) ([]Device, error)

GetDevicesByPhyType - returns all Devices of a given PHY type. https://www.kismetwireless.net/docs/devel/webui_rest/devices/#phy-handlers.

func (*Client) GetDevicesByPhyTypeContext

func (cl *Client) GetDevicesByPhyTypeContext(ctx context.Context,
	phyName string, fields FieldSimplification, regexes RegexFilters) ([]Device, error)

GetDevicesByPhyTypeContext - returns all Devices of a given PHY type. https://www.kismetwireless.net/docs/devel/webui_rest/devices/#phy-handlers.

func (*Client) GetDevicesByPhyTypeLastSeen

func (cl *Client) GetDevicesByPhyTypeLastSeen(
	phyName string, timestamp int, fields FieldSimplification, regexes RegexFilters) ([]Device, error)

GetDevicesByPhyTypeLastSeen - returns "last-seen" Devices of a given PHY type. https://www.kismetwireless.net/docs/devel/webui_rest/devices/#phy-handlers.

func (*Client) GetDevicesByPhyTypeLastSeenContext

func (cl *Client) GetDevicesByPhyTypeLastSeenContext(ctx context.Context,
	phyName string, timestamp int, fields FieldSimplification, regexes RegexFilters) ([]Device, error)

GetDevicesByPhyTypeLastSeenContext - returns "last-seen" Devices of a given PHY type. https://www.kismetwireless.net/docs/devel/webui_rest/devices/#phy-handlers.

func (*Client) GetDevicesLastSeen

func (cl *Client) GetDevicesLastSeen(timestamp int, fields FieldSimplification, regexes RegexFilters) ([]Device, error)

GetDevicesLastSeen - returns Devices seen from a given Timestamp. https://www.kismetwireless.net/docs/devel/webui_rest/devices/#activity--timestamp.

func (*Client) GetDevicesLastSeenContext

func (cl *Client) GetDevicesLastSeenContext(ctx context.Context,
	timestamp int, fields FieldSimplification, regexes RegexFilters) ([]Device, error)

GetDevicesLastSeenContext - returns Devices seen from a given Timestamp. https://www.kismetwireless.net/docs/devel/webui_rest/devices/#activity--timestamp.

func (*Client) GetDevicesMultipleByKeys

func (cl *Client) GetDevicesMultipleByKeys(ctx context.Context,
	kismetDeviceBaseKeys []string, fields FieldSimplification) ([]Device, error)

GetDevicesMultipleByKeys - returns a list of Devices based on their Keys (kismet.device.base.key). https://www.kismetwireless.net/docs/devel/webui_rest/devices/#multiple-devices-by-key.

func (*Client) GetDevicesMultipleByKeysContext

func (cl *Client) GetDevicesMultipleByKeysContext(ctx context.Context,
	kismetDeviceBaseKeys []string, fields FieldSimplification) ([]Device, error)

GetDevicesMultipleByKeysContext - returns a list of Devices based on their Keys (kismet.device.base.key). https://www.kismetwireless.net/docs/devel/webui_rest/devices/#multiple-devices-by-key.

func (*Client) GetDevicesMultipleByKeysDict

func (cl *Client) GetDevicesMultipleByKeysDict(kismetDeviceBaseKeys []string, fields FieldSimplification) (map[string]Device, error)

GetDevicesMultipleByKeys - returns a list of Devices based on their Keys (kismet.device.base.key) with "key" as a Key of the returned map. https://www.kismetwireless.net/docs/devel/webui_rest/devices/#multiple-devices-by-key.

func (*Client) GetDevicesMultipleByKeysDictContext

func (cl *Client) GetDevicesMultipleByKeysDictContext(ctx context.Context,
	kismetDeviceBaseKeys []string, fields FieldSimplification) (map[string]Device, error)

GetDevicesMultipleByKeysContext - returns a list of Devices based on their Keys (kismet.device.base.key) with "key" as a Key of the returned map. https://www.kismetwireless.net/docs/devel/webui_rest/devices/#multiple-devices-by-key.

func (*Client) GetDevicesMultipleByMacContext

func (cl *Client) GetDevicesMultipleByMacContext(ctx context.Context, macAddresses []string, fields FieldSimplification) ([]Device, error)

GetDevicesMultipleByMacContext - returns multiple devices based on their MAC addresses. https://www.kismetwireless.net/docs/devel/webui_rest/devices/#multiple-devices-by-mac.

func (*Client) GetDevicesSeenBySourceLastSeen

func (cl *Client) GetDevicesSeenBySourceLastSeen(dataSourceUUID string,
	timestamp int, fields FieldSimplification, regexes RegexFilters) ([]Device, error)

GetDevicesSeenBySourceUUIDLastSeen - returns "last-seen" devices seen by a given Datasource. https://www.kismetwireless.net/docs/devel/webui_rest/devices/#devices-by-capture-source.

func (*Client) GetDevicesSeenBySourceLastSeenContext

func (cl *Client) GetDevicesSeenBySourceLastSeenContext(ctx context.Context,
	dataSourceUUID string, timestamp int, fields FieldSimplification, regexes RegexFilters) ([]Device, error)

GetDevicesSeenBySourceLastSeenContext - returns "last-seen" devices seen by a given Datasource. https://www.kismetwireless.net/docs/devel/webui_rest/devices/#devices-by-capture-source.

func (*Client) GetDevicesSeenBySourceUUID

func (cl *Client) GetDevicesSeenBySourceUUID(dataSourceUUID string, fields FieldSimplification, regexes RegexFilters) ([]Device, error)

GetDevicesSeenBySourceUUID - returns all devices seen by a given Datasource. https://www.kismetwireless.net/docs/devel/webui_rest/devices/#devices-by-capture-source.

func (*Client) GetDevicesSeenBySourceUUIDContext

func (cl *Client) GetDevicesSeenBySourceUUIDContext(ctx context.Context,
	dataSourceUUID string, fields FieldSimplification, regexes RegexFilters) ([]Device, error)

GetDevicesSeenBySourceUUIDContext - returns all devices seen by a given Datasource. https://www.kismetwireless.net/docs/devel/webui_rest/devices/#devices-by-capture-source.

func (*Client) GetDevicesView

func (cl *Client) GetDevicesView(viewID string, fields FieldSimplification, regexes RegexFilters) ([]Device, error)

GetDevicesView - returns Devices optionally filtered by Regexes and with Fields simplification. https://www.kismetwireless.net/docs/devel/webui_rest/devices/#device-summary-and-windowed-device-view https://www.kismetwireless.net/docs/devel/webui_rest/device_views/#device-views.

func (*Client) GetDevicesViewContext

func (cl *Client) GetDevicesViewContext(ctx context.Context,
	viewID string, fields FieldSimplification, regexes RegexFilters) ([]Device, error)

GetDevicesViewContext - returns Devices optionally filtered by Regexes and with Fields simplification. https://www.kismetwireless.net/docs/devel/webui_rest/devices/#device-summary-and-windowed-device-view https://www.kismetwireless.net/docs/devel/webui_rest/device_views/#device-views.

func (*Client) GetDevicesViewLastSeen

func (cl *Client) GetDevicesViewLastSeen(viewID string, timestamp int, fields FieldSimplification, regexes RegexFilters) ([]Device, error)

GetDevicesViewLastSeen - returns Devices seen from a given Timestamp. https://www.kismetwireless.net/docs/devel/webui_rest/devices/#activity--timestamp.

func (*Client) GetDevicesViewLastSeenContext

func (cl *Client) GetDevicesViewLastSeenContext(ctx context.Context,
	viewID string, timestamp int, fields FieldSimplification, regexes RegexFilters) ([]Device, error)

GetDevicesViewLastSeenContext - returns Devices seen from a given Timestamp. https://www.kismetwireless.net/docs/devel/webui_rest/devices/#activity--timestamp.

func (*Client) GetDot11AccessPoints

func (cl *Client) GetDot11AccessPoints(fields FieldSimplification, regexes RegexFilters) ([]Device, error)

GetDot11AccessPoints - returns clients of the provided device. If the device is not a WiFi access point, then an empty list is returned.

func (*Client) GetDot11AccessPointsContext

func (cl *Client) GetDot11AccessPointsContext(ctx context.Context, fields FieldSimplification, regexes RegexFilters) ([]Device, error)

GetDot11AccessPointsContext - returns clients of the provided device. If the device is not a WiFi access point, then an empty list is returned.

func (*Client) GetDot11AccessPointsLastSeen

func (cl *Client) GetDot11AccessPointsLastSeen(
	timestamp int, fields FieldSimplification, regexes RegexFilters) ([]Device, error)

GetDot11AccessPointsLastSeen - returns clients of the provided device. If the device is not a WiFi access point, then an empty list is returned.

func (*Client) GetDot11AccessPointsLastSeenContext

func (cl *Client) GetDot11AccessPointsLastSeenContext(ctx context.Context,
	timestamp int, fields FieldSimplification, regexes RegexFilters) ([]Device, error)

GetDot11AccessPointsLastSeenContext - returns clients of the provided device. If the device is not a WiFi access point, then an empty list is returned.

func (*Client) GetDot11DeviceClients

func (cl *Client) GetDot11DeviceClients(deviceKey string, fields FieldSimplification) ([]Device, error)

GetDot11DeviceClients - returns clients of the provided device. If the device is not a WiFi access point, then an empty list is returned.

func (*Client) GetDot11DeviceClientsContext

func (cl *Client) GetDot11DeviceClientsContext(ctx context.Context, deviceKey string, fields FieldSimplification) ([]Device, error)

GetDot11DeviceClientsContext - returns clients of the provided device. If the device is not a WiFi access point, then an empty list is returned.

func (*Client) GetDot11RelatedDevices

func (cl *Client) GetDot11RelatedDevices(
	deviceKey string, timestamp int, fields FieldSimplification, regexes RegexFilters) ([]Device, error)

GetDot11RelatedDevices - returns clients of the provided device. If the device is not a WiFi access point, then an empty list is returned.

func (*Client) GetDot11RelatedDevicesContext

func (cl *Client) GetDot11RelatedDevicesContext(ctx context.Context,
	deviceKey string, fields FieldSimplification, regexes RegexFilters) ([]Device, error)

GetDot11RelatedDevicesContext - returns clients of the provided device. If the device is not a WiFi access point, then an empty list is returned.

func (*Client) GetMessagesAll

func (cl *Client) GetMessagesAll() ([]Message, error)

GetMessagesAll - returns All messages. In fact, returns last N messages where N is configured in Kismet configuration and 50 by default. https://www.kismetwireless.net/docs/devel/webui_rest/messages/#all-messages.

func (*Client) GetMessagesAllContext

func (cl *Client) GetMessagesAllContext(ctx context.Context) ([]Message, error)

GetMessagesAllContext - returns All messages. In fact, returns last N messages where N is configured in Kismet configuration and 50 by default. https://www.kismetwireless.net/docs/devel/webui_rest/messages/#all-messages.

func (*Client) GetMessagesLastSeen

func (cl *Client) GetMessagesLastSeen(timestamp int64) (*MessageList, error)

GetMessagesLastSeen - should return all messages after the given timestamp but returns all messages for me. ToDo: fix. Bug. https://www.kismetwireless.net/docs/devel/webui_rest/messages/#recent-messages.

func (*Client) GetMessagesLastSeenContext

func (cl *Client) GetMessagesLastSeenContext(ctx context.Context, timestamp int64) (*MessageList, error)

GetMessagesLastSeenContext - should return all messages after the given timestamp but returns all messages for me. ToDo: fix. Bug. https://www.kismetwireless.net/docs/devel/webui_rest/messages/#recent-messages.

func (*Client) GetPhysAll

func (cl *Client) GetPhysAll(fields FieldSimplification) ([]Phy, error)

GetPhysAll - returns all supported Phy types.

func (*Client) GetPhysAllContext

func (cl *Client) GetPhysAllContext(ctx context.Context, fields FieldSimplification) ([]Phy, error)

GetPhysAllContext - returns all supported Phy types.

func (*Client) GetSystemPacketStats

func (cl *Client) GetSystemPacketStats(fields FieldSimplification) (*SystemPacketStats, error)

GetSystemPacketStats - returns current packets statistics. https://www.kismetwireless.net/docs/devel/webui_rest/system_status/#timestamp.

func (*Client) GetSystemPacketStatsContext

func (cl *Client) GetSystemPacketStatsContext(ctx context.Context, fields FieldSimplification) (*SystemPacketStats, error)

GetSystemPacketStatsContext - returns current packets statistics. https://www.kismetwireless.net/docs/devel/webui_rest/system_status/#timestamp.

func (*Client) GetSystemStatus

func (cl *Client) GetSystemStatus(fields FieldSimplification) (*SystemStatus, error)

GetSystemStatus - returns current status. https://www.kismetwireless.net/docs/devel/webui_rest/system_status/#system-status.

func (*Client) GetSystemStatusContext

func (cl *Client) GetSystemStatusContext(ctx context.Context, fields FieldSimplification) (*SystemStatus, error)

GetSystemStatusContext - returns current status. https://www.kismetwireless.net/docs/devel/webui_rest/system_status/#system-status.

func (*Client) GetSystemTimestamp

func (cl *Client) GetSystemTimestamp() (*SystemTimestamp, error)

GetSystemTimestamp - returns current Kismet server time. https://www.kismetwireless.net/docs/devel/webui_rest/system_status/#timestamp.

func (*Client) GetSystemTimestampContext

func (cl *Client) GetSystemTimestampContext(ctx context.Context) (*SystemTimestamp, error)

GetSystemTimestampContext - returns current Kismet server time. https://www.kismetwireless.net/docs/devel/webui_rest/system_status/#timestamp.

func (*Client) OpenDatasource

func (cl *Client) OpenDatasource(datasourceUUID string) error

OpenDatasource - opens a defined Datasource. https://www.kismetwireless.net/docs/devel/webui_rest/datasources/#opening-closed-sources.

func (*Client) OpenDatasourceContext

func (cl *Client) OpenDatasourceContext(ctx context.Context, datasourceUUID string) error

OpenDatasourceContext - opens a defined Datasource. https://www.kismetwireless.net/docs/devel/webui_rest/datasources/#opening-closed-sources.

func (*Client) PauseDatasource

func (cl *Client) PauseDatasource(datasourceUUID string) error

PauseDatasource - pauses one Datasource. https://www.kismetwireless.net/docs/devel/webui_rest/datasources/#pausing-sources.

func (*Client) PauseDatasourceContext

func (cl *Client) PauseDatasourceContext(ctx context.Context, datasourceUUID string) error

PauseDatasourceContext - pauses one Datasource. https://www.kismetwireless.net/docs/devel/webui_rest/datasources/#pausing-sources.

func (*Client) RemoveDevicesAlertsPresenceAbsence

func (cl *Client) RemoveDevicesAlertsPresenceAbsence(alertType DevicesAlertsPresenceAbsenceType, macs ...string) error

RemoveDevicesAlertsPresenceAbsence - Remove Device Alerts from Kismet. https://www.kismetwireless.net/docs/devel/webui_rest/devices/#realtime-device-monitoring.

func (*Client) RemoveDevicesAlertsPresenceAbsenceContext

func (cl *Client) RemoveDevicesAlertsPresenceAbsenceContext(ctx context.Context, alertType DevicesAlertsPresenceAbsenceType, macs ...string) error

RemoveDevicesAlertsPresenceAbsenceContext - Remove Device Alerts from Kismet. https://www.kismetwireless.net/docs/devel/webui_rest/devices/#realtime-device-monitoring.

func (*Client) ResumeDatasource

func (cl *Client) ResumeDatasource(datasourceUUID string) error

ResumeDatasource - resumes one Datasource. https://www.kismetwireless.net/docs/devel/webui_rest/datasources/#resuming-sources.

func (*Client) ResumeDatasourceContext

func (cl *Client) ResumeDatasourceContext(ctx context.Context, datasourceUUID string) error

ResumeDatasourceContext - resumes one Datasource. https://www.kismetwireless.net/docs/devel/webui_rest/datasources/#resuming-sources.

func (*Client) SetDatasourceChannelHopping

func (cl *Client) SetDatasourceChannelHopping(ctx context.Context,
	datasourceUUID string, channels []string, rate *int, shuffle *bool) error

SetDatasourceChannelHopping - sets channels to hop over for a Datasource. https://www.kismetwireless.net/docs/devel/webui_rest/datasources/#setting-channels.

func (*Client) SetDatasourceChannelHoppingContext

func (cl *Client) SetDatasourceChannelHoppingContext(ctx context.Context,
	datasourceUUID string, channels []string, rate *int, shuffle *bool) error

SetDatasourceChannelHoppingContext - sets channels to hop over for a Datasource. https://www.kismetwireless.net/docs/devel/webui_rest/datasources/#setting-channels.

func (*Client) SetDatasourceChannelHoppingEnable

func (cl *Client) SetDatasourceChannelHoppingEnable(datasourceUUID string) error

SetDatasourceChannelHoppingEnable - enables channel hopping for a datasource over all available channels. https://www.kismetwireless.net/docs/devel/webui_rest/datasources/#set-channel-hopping.

func (*Client) SetDatasourceChannelHoppingEnableContext

func (cl *Client) SetDatasourceChannelHoppingEnableContext(ctx context.Context, datasourceUUID string) error

SetDatasourceChannelHoppingEnableContext - enables channel hopping for a datasource over all available channels. https://www.kismetwireless.net/docs/devel/webui_rest/datasources/#set-channel-hopping.

func (*Client) SetDatasourceFixedChannel

func (cl *Client) SetDatasourceFixedChannel(datasourceUUID, channel string) error

SetDatasourceFixedChannel - sets one static Channel and stops channel hopping. https://www.kismetwireless.net/docs/devel/webui_rest/datasources/#setting-channels.

func (*Client) SetDatasourceFixedChannelContext

func (cl *Client) SetDatasourceFixedChannelContext(ctx context.Context, datasourceUUID, channel string) error

SetDatasourceFixedChannelContext - sets one static Channel and stops channel hopping. https://www.kismetwireless.net/docs/devel/webui_rest/datasources/#setting-channels.

func (*Client) SetDeviceName

func (cl *Client) SetDeviceName(deviceKey, newName string) error

SetDeviceName - renames a Device. https://www.kismetwireless.net/docs/devel/webui_rest/devices/#editing---device-names.

func (*Client) SetDeviceNameContext

func (cl *Client) SetDeviceNameContext(ctx context.Context, deviceKey, newName string) error

SetDeviceNameContext - renames a Device. https://www.kismetwireless.net/docs/devel/webui_rest/devices/#editing---device-names.

func (*Client) SetDeviceTag

func (cl *Client) SetDeviceTag(deviceKey, tagName, tagValue string) error

SetDeviceTag - adds a Tag to a Device. https://www.kismetwireless.net/docs/devel/webui_rest/devices/#editing---device-tags.

func (*Client) SetDeviceTagContext

func (cl *Client) SetDeviceTagContext(ctx context.Context, deviceKey, tagName, tagValue string) error

SetDeviceTagContext - adds a Tag to a Device. https://www.kismetwireless.net/docs/devel/webui_rest/devices/#editing---device-tags.

func (*Client) StreamDevicesLastSeen

func (cl *Client) StreamDevicesLastSeen(
	timestamp int, fields FieldSimplification, regexes RegexFilters) (DevicesStreamer, error)

StreamDevicesLastSeen - streams Devices seen from a given Timestamp. https://www.kismetwireless.net/docs/devel/webui_rest/devices/#activity--timestamp.

func (*Client) StreamDevicesLastSeenContext

func (cl *Client) StreamDevicesLastSeenContext(ctx context.Context,
	timestamp int, fields FieldSimplification, regexes RegexFilters) (DevicesStreamer, error)

StreamDevicesLastSeenContext - streams Devices seen from a given Timestamp. https://www.kismetwireless.net/docs/devel/webui_rest/devices/#activity--timestamp.

func (*Client) StreamDevicesView

func (cl *Client) StreamDevicesView(
	viewID string, fields FieldSimplification, regexes RegexFilters) (DevicesStreamer, error)

StreamDevicesView - streams Devices optionally filtered by Regexes and with Fields simplification. https://www.kismetwireless.net/docs/devel/webui_rest/devices/#device-summary-and-windowed-device-view https://www.kismetwireless.net/docs/devel/webui_rest/device_views/#device-views.

func (*Client) StreamDevicesViewContext

func (cl *Client) StreamDevicesViewContext(ctx context.Context,
	viewID string, fields FieldSimplification, regexes RegexFilters) (DevicesStreamer, error)

StreamDevicesViewContext - streams Devices optionally filtered by Regexes and with Fields simplification. https://www.kismetwireless.net/docs/devel/webui_rest/devices/#device-summary-and-windowed-device-view https://www.kismetwireless.net/docs/devel/webui_rest/device_views/#device-views.

func (*Client) StreamDevicesViewLastSeen

func (cl *Client) StreamDevicesViewLastSeen(viewID string, timestamp int,
	fields FieldSimplification, regexes RegexFilters) (DevicesStreamer, error)

StreamDevicesViewLastSeen - streams Devices seen from a given Timestamp. https://www.kismetwireless.net/docs/devel/webui_rest/devices/#activity--timestamp.

func (*Client) StreamDevicesViewLastSeenContext

func (cl *Client) StreamDevicesViewLastSeenContext(ctx context.Context,
	viewID string, timestamp int, fields FieldSimplification, regexes RegexFilters) (DevicesStreamer, error)

StreamDevicesViewLastSeenContext - streams Devices seen from a given Timestamp. https://www.kismetwireless.net/docs/devel/webui_rest/devices/#activity--timestamp.

type CommonRrd

type CommonRrd struct {
	// BlankVal - blank value.
	BlankVal int64 `json:"kismet.common.rrd.blank_val"`
	// DayVec - past day values per hour.
	DayVec []float64 `json:"kismet.common.rrd.day_vec"`
	// HourVec - past hour values per minute.
	HourVec []float64 `json:"kismet.common.rrd.hour_vec"`
	// MinuteVec - past minute values per second.
	MinuteVec []float64 `json:"kismet.common.rrd.minute_vec"`
	// SerialTime - timestamp of serialization.
	SerialTime TimeUSec `json:"kismet.common.rrd.serial_time"`
	// LastTime - last time updated.
	LastTime TimeUSec `json:"kismet.common.rrd.last_time"`
}

CommonRrd - contains Round Robin statistics for interval ranges.

func (CommonRrd) MarshalEasyJSON

func (v CommonRrd) MarshalEasyJSON(w *jwriter.Writer)

MarshalEasyJSON supports easyjson.Marshaler interface

func (CommonRrd) MarshalJSON

func (v CommonRrd) MarshalJSON() ([]byte, error)

MarshalJSON supports json.Marshaler interface

func (*CommonRrd) UnmarshalEasyJSON

func (v *CommonRrd) UnmarshalEasyJSON(l *jlexer.Lexer)

UnmarshalEasyJSON supports easyjson.Unmarshaler interface

func (*CommonRrd) UnmarshalJSON

func (v *CommonRrd) UnmarshalJSON(data []byte) error

UnmarshalJSON supports json.Unmarshaler interface

type CommonSeenBy

type CommonSeenBy struct {
	// UUID - UUID of source.
	UUID string `json:"kismet.common.seenby.uuid"`
	// NumPackets - number of packets seen by this device.
	NumPackets uint64 `json:"kismet.common.seenby.num_packets"`
	// LastTime - last time seen time_t.
	LastTime uint64 `json:"kismet.common.seenby.last_time"`
	// FirstTime - first time seen time_t.
	FirstTime int64 `json:"kismet.common.seenby.first_time"`
}

CommonSeenBy - a reference to a Kismet which detected some packet/SSID etc.

func (CommonSeenBy) MarshalEasyJSON

func (v CommonSeenBy) MarshalEasyJSON(w *jwriter.Writer)

MarshalEasyJSON supports easyjson.Marshaler interface

func (CommonSeenBy) MarshalJSON

func (v CommonSeenBy) MarshalJSON() ([]byte, error)

MarshalJSON supports json.Marshaler interface

func (*CommonSeenBy) UnmarshalEasyJSON

func (v *CommonSeenBy) UnmarshalEasyJSON(l *jlexer.Lexer)

UnmarshalEasyJSON supports easyjson.Unmarshaler interface

func (*CommonSeenBy) UnmarshalJSON

func (v *CommonSeenBy) UnmarshalJSON(data []byte) error

UnmarshalJSON supports json.Unmarshaler interface

type CommonSignal

type CommonSignal struct {
	// Carrierset - bitset of observed carrier types.
	Carrierset uint64 `json:"kismet.common.signal.carrierset"`
	// Encodingset - bitset of observed encodings.
	Encodingset uint64 `json:"kismet.common.signal.encodingset"`
	// Maxseenrate - maximum observed data rate (phy dependent).
	Maxseenrate float64 `json:"kismet.common.signal.maxseenrate"`
	// MaxNoise - maximum noise.
	MaxNoise int32 `json:"kismet.common.signal.max_noise"`
	// MaxSignal - maximum signal.
	MaxSignal int32 `json:"kismet.common.signal.max_signal"`
	// MinNoise - minimum noise.
	MinNoise int32 `json:"kismet.common.signal.min_noise"`
	// MinSignal - minimum signal.
	MinSignal int32 `json:"kismet.common.signal.min_signal"`
	// LastNoise - most recent noise.
	LastNoise int32 `json:"kismet.common.signal.last_noise"`
	// LastSignal - most recent signal.
	LastSignal int32 `json:"kismet.common.signal.last_signal"`
	// Type - signal type.
	Type      CommonSignalType `json:"kismet.common.signal.type"`
	SignalRrd *CommonRrd       `json:"kismet.common.signal.signal_rrd,omitempty"`
}

CommonSignal - common signal information.

func (CommonSignal) MarshalEasyJSON

func (v CommonSignal) MarshalEasyJSON(w *jwriter.Writer)

MarshalEasyJSON supports easyjson.Marshaler interface

func (CommonSignal) MarshalJSON

func (v CommonSignal) MarshalJSON() ([]byte, error)

MarshalJSON supports json.Marshaler interface

func (*CommonSignal) UnmarshalEasyJSON

func (v *CommonSignal) UnmarshalEasyJSON(l *jlexer.Lexer)

UnmarshalEasyJSON supports easyjson.Unmarshaler interface

func (*CommonSignal) UnmarshalJSON

func (v *CommonSignal) UnmarshalJSON(data []byte) error

UnmarshalJSON supports json.Unmarshaler interface

type CommonSignalType

type CommonSignalType string

CommonSignalType -

const (
	Dbm  CommonSignalType = "dbm"
	None CommonSignalType = "none"
)

type Datasource

type Datasource struct {
	TypeDriver             DatasourceTypeDriver `json:"kismet.datasource.type_driver"`
	LinktypeOverride       bool                 `json:"kismet.datasource.linktype_override"`
	InfoAmpGain            int64                `json:"kismet.datasource.info.amp_gain"`
	InfoAmpType            string               `json:"kismet.datasource.info.amp_type"`
	InfoAntennaBeamwidth   int64                `json:"kismet.datasource.info.antenna_beamwidth"`
	InfoAntennaOrientation int64                `json:"kismet.datasource.info.antenna_orientation"`
	InfoAntennaGain        int64                `json:"kismet.datasource.info.antenna_gain"`
	InfoAntennaType        string               `json:"kismet.datasource.info.antenna_type"`
	TotalRetryAttempts     int64                `json:"kismet.datasource.total_retry_attempts"`
	RetryAttempts          int64                `json:"kismet.datasource.retry_attempts"`
	Retry                  bool                 `json:"kismet.datasource.retry"`
	PacketsDatasizeRrd     *CommonRrd           `json:"kismet.datasource.packets_datasize_rrd,omitempty"`
	PacketsRrd             CommonRrd            `json:"kismet.datasource.packets_rrd"`
	CaptureInterface       string               `json:"kismet.datasource.capture_interface"`
	Interface              string               `json:"kismet.datasource.interface"`
	Definition             string               `json:"kismet.datasource.definition"`
	UUID                   string               `json:"kismet.datasource.uuid"`
	Name                   string               `json:"kismet.datasource.name"`
	Passive                bool                 `json:"kismet.datasource.passive"`
	Remote                 bool                 `json:"kismet.datasource.remote"`
	Running                bool                 `json:"kismet.datasource.running"`
	IPCPID                 int64                `json:"kismet.datasource.ipc_pid"`
	IPCBinary              string               `json:"kismet.datasource.ipc_binary"`
	Paused                 bool                 `json:"kismet.datasource.paused"`
	SourceKey              int64                `json:"kismet.datasource.source_key"`
	SourceNumber           int64                `json:"kismet.datasource.source_number"`
	NumErrorPackets        int64                `json:"kismet.datasource.num_error_packets"`
	Hardware               string               `json:"kismet.datasource.hardware"`
	Dlt                    int64                `json:"kismet.datasource.dlt"`
	Warning                string               `json:"kismet.datasource.warning"`
	Channels               []string             `json:"kismet.datasource.channels"`
	Hopping                bool                 `json:"kismet.datasource.hopping"`
	Channel                string               `json:"kismet.datasource.channel"`
	HopRate                int64                `json:"kismet.datasource.hop_rate"`
	HopChannels            []string             `json:"kismet.datasource.hop_channels"`
	HopSplit               int64                `json:"kismet.datasource.hop_split"`
	HopOffset              int64                `json:"kismet.datasource.hop_offset"`
	HopShuffle             bool                 `json:"kismet.datasource.hop_shuffle"`
	HopShuffleSkip         int64                `json:"kismet.datasource.hop_shuffle_skip"`
	Error                  int64                `json:"kismet.datasource.error"`
	ErrorReason            string               `json:"kismet.datasource.error_reason"`
	NumPackets             int64                `json:"kismet.datasource.num_packets"`
}

Datasource - one Datasource configuration information.

func (*Datasource) UnmarshalJSON

func (kds *Datasource) UnmarshalJSON(raw []byte) error

type DatasourceInterface

type DatasourceInterface struct {
	TypeDriver             DatasourceTypeDriver `json:"kismet.datasource.type_driver"`
	ProbedHardware         string               `json:"kismet.datasource.probed.hardware"`
	ProbedInUseUUID        string               `json:"kismet.datasource.probed.in_use_uuid"`
	ProbedOptionsVec       []interface{}        `json:"kismet.datasource.probed.options_vec"`
	ProbedCaptureInterface string               `json:"kismet.datasource.probed.capture_interface"`
	ProbedInterface        string               `json:"kismet.datasource.probed.interface"`
}

DatasourceInterface - a Datasource interface information.

func (DatasourceInterface) MarshalEasyJSON

func (v DatasourceInterface) MarshalEasyJSON(w *jwriter.Writer)

MarshalEasyJSON supports easyjson.Marshaler interface

func (DatasourceInterface) MarshalJSON

func (v DatasourceInterface) MarshalJSON() ([]byte, error)

MarshalJSON supports json.Marshaler interface

func (*DatasourceInterface) UnmarshalEasyJSON

func (v *DatasourceInterface) UnmarshalEasyJSON(l *jlexer.Lexer)

UnmarshalEasyJSON supports easyjson.Unmarshaler interface

func (*DatasourceInterface) UnmarshalJSON

func (v *DatasourceInterface) UnmarshalJSON(data []byte) error

UnmarshalJSON supports json.Unmarshaler interface

type DatasourceTypeDriver

type DatasourceTypeDriver struct {
	HopCapable     bool   `json:"kismet.datasource_driver.hop_capable"`
	TuningCapable  bool   `json:"kismet.datasource.driver.tuning_capable"`
	PassiveCapable bool   `json:"kismet.datasource.driver.passive_capable"`
	RemoteCapable  bool   `json:"kismet.datasource.driver.remote_capable"`
	LocalIPC       bool   `json:"kismet.datasource.driver.local_ipc"`
	LocalCapable   bool   `json:"kismet.datasource.driver.local_capable"`
	ListIPC        bool   `json:"kismet.datasource.driver.list_ipc"`
	ListCapable    bool   `json:"kismet.datasource.driver.list_capable"`
	ProbeIPC       bool   `json:"kismet.datasource.driver.probe_ipc"`
	ProbeCapable   bool   `json:"kismet.datasource.driver.probe_capable"`
	Description    string `json:"kismet.datasource.driver.description"`
	Type           string `json:"kismet.datasource.driver.type"`
}

DatasourceTypeDriver - capture driver information.

func (*DatasourceTypeDriver) UnmarshalJSON

func (kdt *DatasourceTypeDriver) UnmarshalJSON(raw []byte) error

type DatasourcesDefaults

type DatasourcesDefaults struct {
	RemoteCapTimestamp bool   `json:"kismet.datasourcetracker.default.remote_cap_timestamp"`
	RetryOnError       bool   `json:"kismet.datasourcetracker.default.retry_on_error"`
	RandomOrder        bool   `json:"kismet.datasourcetracker.default.random_order"`
	Split              bool   `json:"kismet.datasourcetracker.default.split"`
	Hop                bool   `json:"kismet.datasourcetracker.default.hop"`
	RemoteCapPort      int64  `json:"kismet.datasourcetracker.default.remote_cap_port"`
	HopRate            int64  `json:"kismet.datasourcetracker.default.hop_rate"`
	RemoteCapListen    string `json:"kismet.datasourcetracker.default.remote_cap_listen"`
}

DatasourcesDefaults - default settings for all Datasources.

func (*DatasourcesDefaults) UnmarshalJSON

func (kdd *DatasourcesDefaults) UnmarshalJSON(raw []byte) error

type Device

type Device struct {
	// Type - printable device type.
	Type DeviceBaseType `json:"kismet.device.base.type"`
	// BluetoothDevice - Bluetooth device.
	BluetoothDevice *BluetoothDevice `json:"bluetooth.device,omitempty"`
	// Dot11Device - IEEE802.11 device.
	Dot11Device *Dot11Device `json:"dot11.device,omitempty"`
	// Manuf - manufacturer name.
	Manuf string `json:"kismet.device.base.manuf"`
	// ServerUUID - unique server UUID.
	ServerUUID ServerUUID `json:"kismet.server.uuid"`
	// Seenby - sources that have seen this device.
	Seenby []CommonSeenBy `json:"kismet.device.base.seenby"`
	// NumAlerts - number of alerts on this device.
	NumAlerts uint32 `json:"kismet.device.base.num_alerts"`
	// ModTime - timestamp of last seen time (local clock).
	ModTime uint64 `json:"kismet.device.base.mod_time"`
	// LastTime - last time seen time_t.
	LastTime uint64 `json:"kismet.device.base.last_time"`
	// FirstTime - first time seen time_t.
	FirstTime uint64 `json:"kismet.device.base.first_time"`
	// Frequency - frequency.
	Frequency float64 `json:"kismet.device.base.frequency"`
	// BasicCryptSet - bitset of basic encryption.
	BasicCryptSet uint64 `json:"kismet.device.base.basic_crypt_set"`
	// Channel - channel (phy specific).
	Channel string `json:"kismet.device.base.channel"`
	// Crypt - printable encryption type.
	Crypt DeviceBaseCryptEnum `json:"kismet.device.base.crypt"`
	// FreqKhzMap - packets seen per frequency (khz).
	FreqKhzMap map[float64]float64 `json:"kismet.device.base.freq_khz_map"`
	// BasicTypeSet - bitset of basic type.
	BasicTypeSet uint64 `json:"kismet.device.base.basic_type_set"`
	// Signal - map[field, x], signal data.
	Signal CommonSignal `json:"kismet.device.base.signal"`
	// Commonname - common name alias of custom or device names.
	Commonname string `json:"kismet.device.base.commonname"`
	// Name - printable device name.
	Name string `json:"kismet.device.base.name"`
	// Phyname - phy name.
	Phyname DeviceBasePhyname `json:"kismet.device.base.phyname"`
	// RelatedDevices - Related devices, organized by relationship.
	RelatedDevices DeviceBaseRelatedDevices `json:"kismet.device.base.related_devices"`
	// Macaddr - mac address.
	Macaddr string `json:"kismet.device.base.macaddr"`
	// Key - unique device key across phy and server.
	Key string `json:"kismet.device.base.key"`
	// PacketsTotal - total packets seen of all types.
	PacketsTotal uint64 `json:"kismet.device.base.packets.total"`
	PacketsRx    uint64 `json:"kismet.device.base.packets.rx"`
	PacketsTx    uint64 `json:"kismet.device.base.packets.tx"`
	// PacketsLlc - observed protocol control packets.
	PacketsLlc uint64 `json:"kismet.device.base.packets.llc"`
	// PacketsError - corrupt/error packets.
	PacketsError uint64 `json:"kismet.device.base.packets.error"`
	// PacketsData - data packets.
	PacketsData uint64 `json:"kismet.device.base.packets.data"`
	// PacketsCrypt - data packets using encryption.
	PacketsCrypt uint64 `json:"kismet.device.base.packets.crypt"`
	// PacketsFiltered - packets dropped by filter.
	PacketsFiltered uint64 `json:"kismet.device.base.packets.filtered"`
	// Datasize - transmitted data in bytes.
	Datasize uint64 `json:"kismet.device.base.datasize"`
	// PacketsRrd - map[field, x], packet rate rrd.
	PacketsRrd  *CommonRrd `json:"kismet.device.base.packets.rrd,omitempty"`
	DatasizeRrd *CommonRrd `json:"kismet.device.base.datasize.rrd,omitempty"`
}

Device - main structure with a detected Device information.

func (Device) MarshalEasyJSON

func (v Device) MarshalEasyJSON(w *jwriter.Writer)

MarshalEasyJSON supports easyjson.Marshaler interface

func (Device) MarshalJSON

func (v Device) MarshalJSON() ([]byte, error)

MarshalJSON supports json.Marshaler interface

func (*Device) UnmarshalEasyJSON

func (v *Device) UnmarshalEasyJSON(l *jlexer.Lexer)

UnmarshalEasyJSON supports easyjson.Unmarshaler interface

func (*Device) UnmarshalJSON

func (v *Device) UnmarshalJSON(data []byte) error

UnmarshalJSON supports json.Unmarshaler interface

type DeviceBaseChannel

type DeviceBaseChannel string

DeviceBaseChannel base channel name.

const (
	Fhss DeviceBaseChannel = "FHSS"
)

type DeviceBaseCryptEnum

type DeviceBaseCryptEnum string

DeviceBaseCryptEnum - Detected encryption type.

const (
	DeviceBaseCrypt DeviceBaseCryptEnum = ""
	Wpa2Psk         DeviceBaseCryptEnum = "WPA2-PSK"
	Wpa3Sae         DeviceBaseCryptEnum = "WPA3-SAE"
	Wpa3Transition  DeviceBaseCryptEnum = "WPA3-TRANSITION"
)

type DeviceBaseManuf

type DeviceBaseManuf string

DeviceBaseManuf - device manufacturer.

const (
	BeijingXiaomiElectronicsLtd DeviceBaseManuf = "Beijing Xiaomi Electronics Ltd"
	BoseCorporation             DeviceBaseManuf = "Bose Corporation"
	LogitechInc                 DeviceBaseManuf = "Logitech Inc."
	RaysonTechnologyLtd         DeviceBaseManuf = "Rayson Technology Ltd"
	SamsungElectronicsLtd       DeviceBaseManuf = "Samsung Electronics Ltd"
	Unknown                     DeviceBaseManuf = "Unknown"
)

type DeviceBasePhyname

type DeviceBasePhyname string

DeviceBasePhyname - a Device's PHY name.

const (
	Bluetooth DeviceBasePhyname = "Bluetooth"
	Ieee80211 DeviceBasePhyname = "IEEE802.11"
)

type DeviceBaseRelatedDevices

type DeviceBaseRelatedDevices struct {
	Dot11BsstsSimilar []string `json:"dot11_bssts_similar,omitempty"`
}

DeviceBaseRelatedDevices - devices related to a device which has this structure.

func (DeviceBaseRelatedDevices) MarshalEasyJSON

func (v DeviceBaseRelatedDevices) MarshalEasyJSON(w *jwriter.Writer)

MarshalEasyJSON supports easyjson.Marshaler interface

func (DeviceBaseRelatedDevices) MarshalJSON

func (v DeviceBaseRelatedDevices) MarshalJSON() ([]byte, error)

MarshalJSON supports json.Marshaler interface

func (*DeviceBaseRelatedDevices) UnmarshalEasyJSON

func (v *DeviceBaseRelatedDevices) UnmarshalEasyJSON(l *jlexer.Lexer)

UnmarshalEasyJSON supports easyjson.Unmarshaler interface

func (*DeviceBaseRelatedDevices) UnmarshalJSON

func (v *DeviceBaseRelatedDevices) UnmarshalJSON(data []byte) error

UnmarshalJSON supports json.Unmarshaler interface

type DeviceBaseType

type DeviceBaseType string

DeviceBaseType - device type.

const (
	BrEdr              DeviceBaseType = "BR/EDR"
	BtLE               DeviceBaseType = "BTLE"
	WiFiAP             DeviceBaseType = "Wi-Fi AP"
	WiFiBridged        DeviceBaseType = "Wi-Fi Bridged"
	WiFiDevice         DeviceBaseType = "Wi-Fi Device"
	WiFiDeviceInferred DeviceBaseType = "Wi-Fi Device (Inferred)"
)

type DevicesAlertsPresenceAbsenceType

type DevicesAlertsPresenceAbsenceType string

DevicesAlertsPresenceAbsenceType - type of Device alerts. https://www.kismetwireless.net/docs/devel/webui_rest/devices/#alerts---device-presence--absence---viewing.

const (
	DevicesAlertsFound DevicesAlertsPresenceAbsenceType = "found"
	DevicesAlertsLost  DevicesAlertsPresenceAbsenceType = "lost"
	DevicesAlertsBoth  DevicesAlertsPresenceAbsenceType = "both"
)

type DevicesStreamer

type DevicesStreamer interface {
	Close() error
	GetData() (*Device, error)
	Next() bool
	Error() error
}

type Dot11AdvertisedSSIDDot11DCountryEnum

type Dot11AdvertisedSSIDDot11DCountryEnum string

Dot11AdvertisedSSIDDot11DCountryEnum - a country to which the detected SSID belongs: configured country code.

const (
	Dot11CountryNoCountry Dot11AdvertisedSSIDDot11DCountryEnum = ""

	Dot11CountryChile                     Dot11AdvertisedSSIDDot11DCountryEnum = "CL"
	Dot11CountryChina                     Dot11AdvertisedSSIDDot11DCountryEnum = "CN"
	Dot11CountryColombia                  Dot11AdvertisedSSIDDot11DCountryEnum = "CO"
	Dot11CountryCostaRica                 Dot11AdvertisedSSIDDot11DCountryEnum = "CR"
	Dot11CountryCyprus                    Dot11AdvertisedSSIDDot11DCountryEnum = "CY"
	Dot11CountryCzechRepublic             Dot11AdvertisedSSIDDot11DCountryEnum = "CZ"
	Dot11CountryDenmark                   Dot11AdvertisedSSIDDot11DCountryEnum = "DK"
	Dot11CountryDominicanRepublic         Dot11AdvertisedSSIDDot11DCountryEnum = "DO"
	Dot11CountryEcuador                   Dot11AdvertisedSSIDDot11DCountryEnum = "EC"
	Dot11CountryEgypt                     Dot11AdvertisedSSIDDot11DCountryEnum = "EG"
	Dot11CountryElSalvador                Dot11AdvertisedSSIDDot11DCountryEnum = "SV"
	Dot11CountryEstonia                   Dot11AdvertisedSSIDDot11DCountryEnum = "EE"
	Dot11CountryFinland                   Dot11AdvertisedSSIDDot11DCountryEnum = "FI"
	Dot11CountryFrance                    Dot11AdvertisedSSIDDot11DCountryEnum = "FR"
	Dot11CountryGermany                   Dot11AdvertisedSSIDDot11DCountryEnum = "DE"
	Dot11CountryGreece                    Dot11AdvertisedSSIDDot11DCountryEnum = "GR"
	Dot11CountryGuatemala                 Dot11AdvertisedSSIDDot11DCountryEnum = "GT"
	Dot11CountryHonduras                  Dot11AdvertisedSSIDDot11DCountryEnum = "HN"
	Dot11CountryHongKong                  Dot11AdvertisedSSIDDot11DCountryEnum = "HK"
	Dot11CountryIceland                   Dot11AdvertisedSSIDDot11DCountryEnum = "IS"
	Dot11CountryIndia                     Dot11AdvertisedSSIDDot11DCountryEnum = "IN"
	Dot11CountryIndonesia                 Dot11AdvertisedSSIDDot11DCountryEnum = "ID"
	Dot11CountryIreland                   Dot11AdvertisedSSIDDot11DCountryEnum = "IE"
	Dot11CountryIslamicRepublicOfPakistan Dot11AdvertisedSSIDDot11DCountryEnum = "PK"
	Dot11CountryIsrael                    Dot11AdvertisedSSIDDot11DCountryEnum = "IL"
	Dot11CountryItaly                     Dot11AdvertisedSSIDDot11DCountryEnum = "IT"
	Dot11CountryJamaica                   Dot11AdvertisedSSIDDot11DCountryEnum = "JM"
	Dot11CountryJapan                     Dot11AdvertisedSSIDDot11DCountryEnum = "JP3"
	Dot11CountryJordan                    Dot11AdvertisedSSIDDot11DCountryEnum = "JO"
	Dot11CountryKenya                     Dot11AdvertisedSSIDDot11DCountryEnum = "KE"
	Dot11CountryKuwait                    Dot11AdvertisedSSIDDot11DCountryEnum = "KW"
	Dot11CountryLebanon                   Dot11AdvertisedSSIDDot11DCountryEnum = "LB"
	Dot11CountryLiechtenstein             Dot11AdvertisedSSIDDot11DCountryEnum = "LI"
	Dot11CountryLithuania                 Dot11AdvertisedSSIDDot11DCountryEnum = "LT"
	Dot11CountryLuxembourg                Dot11AdvertisedSSIDDot11DCountryEnum = "LU"
	Dot11CountryMauritius                 Dot11AdvertisedSSIDDot11DCountryEnum = "MU"
	Dot11CountryMexico                    Dot11AdvertisedSSIDDot11DCountryEnum = "MX"
	Dot11CountryMorocco                   Dot11AdvertisedSSIDDot11DCountryEnum = "MA"
	Dot11CountryNetherlands               Dot11AdvertisedSSIDDot11DCountryEnum = "NL"
	Dot11CountryNewZealand                Dot11AdvertisedSSIDDot11DCountryEnum = "NZ"
	Dot11CountryNorway                    Dot11AdvertisedSSIDDot11DCountryEnum = "NO"
	Dot11CountryOman                      Dot11AdvertisedSSIDDot11DCountryEnum = "OM"
	Dot11CountryPanama                    Dot11AdvertisedSSIDDot11DCountryEnum = "PA"
	Dot11CountryPeru                      Dot11AdvertisedSSIDDot11DCountryEnum = "PE"
	Dot11CountryPhilippines               Dot11AdvertisedSSIDDot11DCountryEnum = "PH"
	Dot11CountryPoland                    Dot11AdvertisedSSIDDot11DCountryEnum = "PL"
	Dot11CountryPortugal                  Dot11AdvertisedSSIDDot11DCountryEnum = "PT"
	Dot11CountryPuertoRico                Dot11AdvertisedSSIDDot11DCountryEnum = "PR"
	Dot11CountryQatar                     Dot11AdvertisedSSIDDot11DCountryEnum = "QA"
	Dot11CountryRepublicOfKoreaSouthKorea Dot11AdvertisedSSIDDot11DCountryEnum = "KR"
	Dot11CountryRomania                   Dot11AdvertisedSSIDDot11DCountryEnum = "RO"
	Dot11CountryRussia                    Dot11AdvertisedSSIDDot11DCountryEnum = "RU"
	Dot11CountrySaudiArabia               Dot11AdvertisedSSIDDot11DCountryEnum = "SA"
	Dot11CountrySerbiaandMontenegro       Dot11AdvertisedSSIDDot11DCountryEnum = "CS"
	Dot11CountrySingapore                 Dot11AdvertisedSSIDDot11DCountryEnum = "SG"
	Dot11CountrySlovakRepublic            Dot11AdvertisedSSIDDot11DCountryEnum = "SK"
	Dot11CountrySlovenia                  Dot11AdvertisedSSIDDot11DCountryEnum = "SI"
	Dot11CountrySouthAfrica               Dot11AdvertisedSSIDDot11DCountryEnum = "ZA"
	Dot11CountrySpain                     Dot11AdvertisedSSIDDot11DCountryEnum = "ES"
	Dot11CountrySriLanka                  Dot11AdvertisedSSIDDot11DCountryEnum = "LK"
	Dot11CountrySwitzerland               Dot11AdvertisedSSIDDot11DCountryEnum = "CH"
	Dot11CountryTaiwan                    Dot11AdvertisedSSIDDot11DCountryEnum = "TW"
	Dot11CountryThailand                  Dot11AdvertisedSSIDDot11DCountryEnum = "TH"
	Dot11CountryTrinidadandTobago         Dot11AdvertisedSSIDDot11DCountryEnum = "TT"
	Dot11CountryTunisia                   Dot11AdvertisedSSIDDot11DCountryEnum = "TN"
	Dot11CountryTurkey                    Dot11AdvertisedSSIDDot11DCountryEnum = "TR"
	Dot11CountryUkraine                   Dot11AdvertisedSSIDDot11DCountryEnum = "UA"
	Dot11CountryUnitedArabEmirates        Dot11AdvertisedSSIDDot11DCountryEnum = "AE"
	Dot11CountryUnitedKingdom             Dot11AdvertisedSSIDDot11DCountryEnum = "GB"
	Dot11CountryUnitedStates              Dot11AdvertisedSSIDDot11DCountryEnum = "US"
	Dot11CountryUruguay                   Dot11AdvertisedSSIDDot11DCountryEnum = "UY"
	Dot11CountryVenezuela                 Dot11AdvertisedSSIDDot11DCountryEnum = "VE"
	Dot11CountryVietnam                   Dot11AdvertisedSSIDDot11DCountryEnum = "VN"
)

type Dot11AdvertisedSSIDHTModeEnum

type Dot11AdvertisedSSIDHTModeEnum string

Dot11AdvertisedSSIDHTModeEnum - HT mode.

const (
	Dot11AdvertisedSSIDHTMode Dot11AdvertisedSSIDHTModeEnum = ""
	Ht20                      Dot11AdvertisedSSIDHTModeEnum = "HT20"
	Ht40                      Dot11AdvertisedSSIDHTModeEnum = "HT40+"
	Ht80                      Dot11AdvertisedSSIDHTModeEnum = "HT80"
)

type Dot11AdvertisedSSIDWpsUUIDE

type Dot11AdvertisedSSIDWpsUUIDE string

type Dot11Device

type Dot11Device struct {
	SSIDBeaconPacket *Dot11Packet                  `json:"dot11.device.ssid_beacon_packet,omitempty"`
	PmkidPacket      *Dot11Packet                  `json:"dot11.device.pmkid_packet,omitempty"`
	WPAHandshakeList []Dot11DeviceWPAHandshakeList `json:"dot11.device.wpa_handshake_list,omitempty"`
	// Datasize - data in bytes.
	Datasize uint64 `json:"dot11.device.datasize"`
	// NumRetries - number of retried packets.
	NumRetries uint64                          `json:"dot11.device.num_retries"`
	ClientMap  map[string]Dot11DeviceClientMap `json:"dot11.device.client_map,omitempty"`
	// NumFragments - number of fragmented packets.
	NumFragments uint64 `json:"dot11.device.num_fragments"`
	// ClientDisconnectsLast - client disconnects last message.
	ClientDisconnectsLast uint64 `json:"dot11.device.client_disconnects_last"`
	// NumRespondedSsids - number of responded SSIDs.
	NumRespondedSsids uint64 `json:"dot11.device.num_responded_ssids"`
	// BSSTimestamp - last BSS timestamp.
	BSSTimestamp uint64 `json:"dot11.device.bss_timestamp"`
	// Typeset - bitset of device type.
	Typeset uint64 `json:"dot11.device.typeset"`
	// ClientDisconnects - client disconnects message count.
	ClientDisconnects uint64 `json:"dot11.device.client_disconnects"`
	// NumAssociatedClients - number of associated clients.
	NumAssociatedClients uint64 `json:"dot11.device.num_associated_clients"`
	// AdvertisedSSIDMap - advertised SSIDs.
	AdvertisedSSIDMap []Dot11DeviceLastBeaconedSSIDRecordElement `json:"dot11.device.advertised_ssid_map,omitempty"`
	// NumProbedSsids - number of probed SSIDs.
	NumProbedSsids uint64 `json:"dot11.device.num_probed_ssids"`
	// NumAdvertisedSsids - number of advertised SSIDs.
	NumAdvertisedSsids uint64                                     `json:"dot11.device.num_advertised_ssids"`
	RespondedSSIDMap   []Dot11DeviceLastBeaconedSSIDRecordElement `json:"dot11.device.responded_ssid_map,omitempty"`
	// WPAPresentHandshake - handshake sequences seen (bitmask).
	WPAPresentHandshake uint8 `json:"dot11.device.wpa_present_handshake"`
	// NumClientAps - number of APs connected to.
	NumClientAps int64 `json:"dot11.device.num_client_aps"`
	// LastSequence - last sequence number.
	LastSequence uint64 `json:"dot11.device.last_sequence"`
	// DatasizeRetry - retried data in bytes.
	DatasizeRetry uint64 `json:"dot11.device.datasize_retry"`
	// LastBeaconTimestamp - unix timestamp of last beacon frame.
	LastBeaconTimestamp uint64 `json:"dot11.device.last_beacon_timestamp"`
	// MinTxPower - Minimum advertised TX power.
	MinTxPower uint8 `json:"dot11.device.min_tx_power"`
	// WpsM3Count - WPS M3 message count.
	WpsM3Count uint64 `json:"dot11.device.wps_m3_count"`
	// MaxTxPower - Maximum advertised TX power.
	MaxTxPower uint8 `json:"dot11.device.max_tx_power"`
	// WpsM3Last - WPS M3 last message.
	WpsM3Last uint64 `json:"dot11.device.wps_m3_last"`
	// LinkMeasurementCapable - Advertised link measurement client capability.
	LinkMeasurementCapable uint8 `json:"dot11.device.link_measurement_capable"`
	// NeighborReportCapable - Advertised neighbor report capability.
	NeighborReportCapable uint8 `json:"dot11.device.neighbor_report_capable"`
	// BeaconFingerprint - Beacon fingerprint.
	BeaconFingerprint uint32 `json:"dot11.device.beacon_fingerprint"`
	// ProbeFingerprint - Probe (Client->AP) fingerprint.
	ProbeFingerprint uint32 `json:"dot11.device.probe_fingerprint"`
	// ResponseFingerprint - Response (AP->Client) fingerprint.
	ResponseFingerprint uint64 `json:"dot11.device.response_fingerprint"`
	// LastBssid - mac_addr, last BSSID.
	LastBssid *string `json:"dot11.device.last_bssid,omitempty"`
	// LastBeaconedSSIDRecord - last beaconed ssid, complete record.
	LastBeaconedSSIDRecord *Dot11DeviceLastBeaconedSSIDRecordElement `json:"dot11.device.last_beaconed_ssid_record,omitempty"`
	// AssociatedClientMap - map[macaddr, x], associated clients.
	AssociatedClientMap  *Dot11DeviceAssociatedClientMap        `json:"dot11.device.associated_client_map,omitempty"`
	LastProbedSSIDRecord *Dot11DeviceLastProbedSSIDRecordClass  `json:"dot11.device.last_probed_ssid_record,omitempty"`
	ProbedSSIDMap        []Dot11DeviceLastProbedSSIDRecordClass `json:"dot11.device.probed_ssid_map,omitempty"`
	WPANonceList         []Dot11DeviceWPANonceList              `json:"dot11.device.wpa_nonce_list,omitempty"`
	WPAAnonceList        []Dot11DeviceWPANonceList              `json:"dot11.device.wpa_anonce_list,omitempty"`
}

Dot11Device - a 802.11 Device.

func (Dot11Device) MarshalEasyJSON

func (v Dot11Device) MarshalEasyJSON(w *jwriter.Writer)

MarshalEasyJSON supports easyjson.Marshaler interface

func (Dot11Device) MarshalJSON

func (v Dot11Device) MarshalJSON() ([]byte, error)

MarshalJSON supports json.Marshaler interface

func (*Dot11Device) UnmarshalEasyJSON

func (v *Dot11Device) UnmarshalEasyJSON(l *jlexer.Lexer)

UnmarshalEasyJSON supports easyjson.Unmarshaler interface

func (*Dot11Device) UnmarshalJSON

func (v *Dot11Device) UnmarshalJSON(data []byte) error

UnmarshalJSON supports json.Unmarshaler interface

type Dot11DeviceAssociatedClientMap

type Dot11DeviceAssociatedClientMap map[string]string

Dot11DeviceAssociatedClientMap - clients connected to a 802.11 Device. key - 802.11 Device, value - client's ID.

type Dot11DeviceClientMap

type Dot11DeviceClientMap struct {
	// NumRetries - number of retried packets.
	NumRetries uint64 `json:"dot11.client.num_retries"`
	// NumFragments - number of fragmented packets.
	NumFragments uint64 `json:"dot11.client.num_fragments"`
	// DatasizeRetry - retry data in bytes.
	DatasizeRetry uint64 `json:"dot11.client.datasize_retry"`
	// Datasize - data in bytes.
	Datasize uint64 `json:"dot11.client.datasize"`
	// Bssid - mac_addr, bssid.
	Bssid string `json:"dot11.client.bssid"`
	// BssidKey - devicekey, key of BSSID record.
	BssidKey string `json:"dot11.client.bssid_key"`
	// FirstTime - first time seen.
	FirstTime int64 `json:"dot11.client.first_time"`
	// LastTime - last time seen.
	LastTime int64 `json:"dot11.client.last_time"`
	// Type - type of client.
	Type uint32 `json:"dot11.client.type"`
	// TxCryptset - bitset of transmitted encryption.
	TxCryptset uint64 `json:"dot11.client.tx_cryptset"`
	// RxCryptset - bitset of received encryption.
	RxCryptset uint64 `json:"dot11.client.rx_cryptset"`
	// Decrypted - client decrypted.
	Decrypted uint8 `json:"dot11.client.decrypted"`
}

Dot11DeviceClientMap - associated clients.

func (Dot11DeviceClientMap) MarshalEasyJSON

func (v Dot11DeviceClientMap) MarshalEasyJSON(w *jwriter.Writer)

MarshalEasyJSON supports easyjson.Marshaler interface

func (Dot11DeviceClientMap) MarshalJSON

func (v Dot11DeviceClientMap) MarshalJSON() ([]byte, error)

MarshalJSON supports json.Marshaler interface

func (*Dot11DeviceClientMap) UnmarshalEasyJSON

func (v *Dot11DeviceClientMap) UnmarshalEasyJSON(l *jlexer.Lexer)

UnmarshalEasyJSON supports easyjson.Unmarshaler interface

func (*Dot11DeviceClientMap) UnmarshalJSON

func (v *Dot11DeviceClientMap) UnmarshalJSON(data []byte) error

UnmarshalJSON supports json.Unmarshaler interface

type Dot11DeviceLastBeaconedSSIDRecordElement

type Dot11DeviceLastBeaconedSSIDRecordElement struct {
	// SSIDCiscoClientMfp - Cisco client management frame protection.
	SSIDCiscoClientMfp uint8 `json:"dot11.advertisedssid.cisco_client_mfp"`
	// SSIDCcxTxpower - Cisco CCX advertised TX power (dBm).
	SSIDCcxTxpower uint8 `json:"dot11.advertisedssid.ccx_txpower"`
	// SSIDDot11EChannelUtilizationPerc - double, 802.11e QBSS reported channel utilization, as percentage.
	SSIDDot11EChannelUtilizationPerc float64 `json:"dot11.advertisedssid.dot11e_channel_utilization_perc"`
	// SSIDDot11EQbssStations - 802.11e QBSS station count.
	SSIDDot11EQbssStations uint16 `json:"dot11.advertisedssid.dot11e_qbss_stations"`
	// SSIDDot11EQbss - SSID advertises 802.11e QBSS.
	SSIDDot11EQbss uint8 `json:"dot11.advertisedssid.dot11e_qbss"`
	// SSIDDot11RMobilityDomainID - advertised dot11r mobility domain id.
	SSIDDot11RMobilityDomainID uint16 `json:"dot11.advertisedssid.dot11r_mobility_domain_id"`
	// SSIDDot11RMobility - advertised dot11r mobility support.
	SSIDDot11RMobility uint8                        `json:"dot11.advertisedssid.dot11r_mobility"`
	SSIDWpsUUIDE       *Dot11AdvertisedSSIDWpsUUIDE `json:"dot11.advertisedssid.wps_uuid_e,omitempty"`
	// SSIDFirstTime - first time seen, timestamp.
	SSIDFirstTime uint64 `json:"dot11.advertisedssid.first_time"`
	// SSIDHTCenter2 - HT/VHT Center Frequency (secondary, for 80+80 Wave2).
	SSIDHTCenter2 uint64 `json:"dot11.advertisedssid.ht_center_2"`
	// SSIDHTCenter1 - HT/VHT Center Frequency (primary).
	SSIDHTCenter1 uint64 `json:"dot11.advertisedssid.ht_center_1"`
	// SSIDHTMode - HT (11n or 11ac) mode.
	SSIDHTMode Dot11AdvertisedSSIDHTModeEnum `json:"dot11.advertisedssid.ht_mode"`
	// SSIDChannel - channel.
	SSIDChannel string `json:"dot11.advertisedssid.channel"`
	// SSIDProbeResponse - ssid advertised via probe response.
	SSIDProbeResponse uint8 `json:"dot11.advertisedssid.probe_response"`
	// SSIDBeacon - ssid advertised via beacon.
	SSIDBeacon uint8 `json:"dot11.advertisedssid.beacon"`
	// SSIDSSIDHash - hashed key of the SSID+Length.
	SSIDSSIDHash uint64 `json:"dot11.advertisedssid.ssid_hash"`
	// SSIDWpsConfigMethods - bitfield wps config methods.
	SSIDWpsConfigMethods uint16 `json:"dot11.advertisedssid.wps_config_methods"`
	// SSIDSSIDlen - beaconed ssid string length (original bytes)
	SSIDSSIDlen uint32 `json:"dot11.advertisedssid.ssidlen"`
	// SSIDWpsState - bitfield wps state.
	SSIDWpsState uint32 `json:"dot11.advertisedssid.wps_state"`
	// SSIDSSID - beaconed ssid string (sanitized).
	SSIDSSID string `json:"dot11.advertisedssid.ssid"`
	// SSIDWpsVersion - WPS version.
	SSIDWpsVersion uint8 `json:"dot11.advertisedssid.wps_version"`
	// SSIDLastTime - last time seen.
	SSIDLastTime uint64 `json:"dot11.advertisedssid.last_time"`
	// SSIDCloaked - SSID is hidden / cloaked.
	SSIDCloaked uint8 `json:"dot11.advertisedssid.cloaked"`
	// SSIDCryptSet - bitfield of encryption options.
	SSIDCryptSet uint64 `json:"dot11.advertisedssid.crypt_set"`
	// SSIDMaxrate - advertised maximum rate.
	SSIDMaxrate float64 `json:"dot11.advertisedssid.maxrate"`
	// SSIDBeaconrate -  beacon rate.
	SSIDBeaconrate uint32 `json:"dot11.advertisedssid.beaconrate"`
	// SSIDBeaconsSEC - beacons seen in past second.
	SSIDBeaconsSEC uint64 `json:"dot11.advertisedssid.beacons_sec"`
	// SSIDIetagChecksum - checksum of all ie tags.
	SSIDIetagChecksum uint32 `json:"dot11.advertisedssid.ietag_checksum"`
	// SSIDWPAMfpRequired - WPA management protection required.
	SSIDWPAMfpRequired uint8 `json:"dot11.advertisedssid.wpa_mfp_required"`
	// SSIDWPAMfpSupported - WPA management protection supported.
	SSIDWPAMfpSupported uint8 `json:"dot11.advertisedssid.wpa_mfp_supported"`
	// SSIDDot11DCountry - 802.11d country.
	SSIDDot11DCountry   *Dot11AdvertisedSSIDDot11DCountryEnum `json:"dot11.advertisedssid.dot11d_country,omitempty"`
	SSIDWpsSerialNumber *string                               `json:"dot11.advertisedssid.wps_serial_number,omitempty"`
	SSIDWpsModelNumber  *string                               `json:"dot11.advertisedssid.wps_model_number,omitempty"`
	SSIDWpsModelName    *string                               `json:"dot11.advertisedssid.wps_model_name,omitempty"`
	SSIDWpsDeviceName   *string                               `json:"dot11.advertisedssid.wps_device_name,omitempty"`
	SSIDWpsManuf        *string                               `json:"dot11.advertisedssid.wps_manuf,omitempty"`
}

Dot11DeviceLastBeaconedSSIDRecordElement - an announced SSID.

func (Dot11DeviceLastBeaconedSSIDRecordElement) MarshalEasyJSON

MarshalEasyJSON supports easyjson.Marshaler interface

func (Dot11DeviceLastBeaconedSSIDRecordElement) MarshalJSON

MarshalJSON supports json.Marshaler interface

func (*Dot11DeviceLastBeaconedSSIDRecordElement) UnmarshalEasyJSON

func (v *Dot11DeviceLastBeaconedSSIDRecordElement) UnmarshalEasyJSON(l *jlexer.Lexer)

UnmarshalEasyJSON supports easyjson.Unmarshaler interface

func (*Dot11DeviceLastBeaconedSSIDRecordElement) UnmarshalJSON

func (v *Dot11DeviceLastBeaconedSSIDRecordElement) UnmarshalJSON(data []byte) error

UnmarshalJSON supports json.Unmarshaler interface

type Dot11DeviceLastProbedSSIDRecordClass

type Dot11DeviceLastProbedSSIDRecordClass struct {
	DWpsUUIDE               Dot11ProbedSSIDWpsUUIDEEnum `json:"dot11.probedssid.wps_uuid_e"`
	DWpsModelNumber         *string                     `json:"dot11.probedssid.wps_model_number,omitempty"`
	DWpsModelName           *string                     `json:"dot11.probedssid.wps_model_name,omitempty"`
	DWpsManuf               *string                     `json:"dot11.probedssid.wps_manuf,omitempty"`
	DWpsConfigMethods       int64                       `json:"dot11.probedssid.wps_config_methods"`
	DWpsState               int64                       `json:"dot11.probedssid.wps_state"`
	DSSID                   string                      `json:"dot11.probedssid.ssid"`
	DSsidlen                int64                       `json:"dot11.probedssid.ssidlen"`
	DBssid                  Dot11ProbedSSIDBssid        `json:"dot11.probedssid.bssid"`
	DFirstTime              int64                       `json:"dot11.probedssid.first_time"`
	DLastTime               int64                       `json:"dot11.probedssid.last_time"`
	DDot11RMobility         int64                       `json:"dot11.probedssid.dot11r_mobility"`
	DDot11RMobilityDomainID int64                       `json:"dot11.probedssid.dot11r_mobility_domain_id"`
	DCryptSet               int64                       `json:"dot11.probedssid.crypt_set"`
	DWPAMfpRequired         int64                       `json:"dot11.probedssid.wpa_mfp_required"`
	DWPAMfpSupported        int64                       `json:"dot11.probedssid.wpa_mfp_supported"`
	DWpsVersion             int64                       `json:"dot11.probedssid.wps_version"`
}

Dot11DeviceLastProbedSSIDRecordClass - SSID information.

func (Dot11DeviceLastProbedSSIDRecordClass) MarshalEasyJSON

func (v Dot11DeviceLastProbedSSIDRecordClass) MarshalEasyJSON(w *jwriter.Writer)

MarshalEasyJSON supports easyjson.Marshaler interface

func (Dot11DeviceLastProbedSSIDRecordClass) MarshalJSON

func (v Dot11DeviceLastProbedSSIDRecordClass) MarshalJSON() ([]byte, error)

MarshalJSON supports json.Marshaler interface

func (*Dot11DeviceLastProbedSSIDRecordClass) UnmarshalEasyJSON

func (v *Dot11DeviceLastProbedSSIDRecordClass) UnmarshalEasyJSON(l *jlexer.Lexer)

UnmarshalEasyJSON supports easyjson.Unmarshaler interface

func (*Dot11DeviceLastProbedSSIDRecordClass) UnmarshalJSON

func (v *Dot11DeviceLastProbedSSIDRecordClass) UnmarshalJSON(data []byte) error

UnmarshalJSON supports json.Unmarshaler interface

type Dot11DeviceWPAHandshakeList

type Dot11DeviceWPAHandshakeList struct {
	EapolPacket        Dot11Packet            `json:"dot11.eapol.packet"`
	EapolRsnPmkid      Dot11EapolRsnPmkidEnum `json:"dot11.eapol.rsn_pmkid"`
	EapolNonce         string                 `json:"dot11.eapol.nonce"`
	EapolInstall       int64                  `json:"dot11.eapol.install"`
	EapolReplayCounter int64                  `json:"dot11.eapol.replay_counter"`
	EapolMessageNum    int64                  `json:"dot11.eapol.message_num"`
	EapolDirection     int64                  `json:"dot11.eapol.direction"`
	EapolTimestamp     float64                `json:"dot11.eapol.timestamp"`
}

Dot11DeviceWPAHandshakeList - WPA handshakes.

func (Dot11DeviceWPAHandshakeList) MarshalEasyJSON

func (v Dot11DeviceWPAHandshakeList) MarshalEasyJSON(w *jwriter.Writer)

MarshalEasyJSON supports easyjson.Marshaler interface

func (Dot11DeviceWPAHandshakeList) MarshalJSON

func (v Dot11DeviceWPAHandshakeList) MarshalJSON() ([]byte, error)

MarshalJSON supports json.Marshaler interface

func (*Dot11DeviceWPAHandshakeList) UnmarshalEasyJSON

func (v *Dot11DeviceWPAHandshakeList) UnmarshalEasyJSON(l *jlexer.Lexer)

UnmarshalEasyJSON supports easyjson.Unmarshaler interface

func (*Dot11DeviceWPAHandshakeList) UnmarshalJSON

func (v *Dot11DeviceWPAHandshakeList) UnmarshalJSON(data []byte) error

UnmarshalJSON supports json.Unmarshaler interface

type Dot11DeviceWPANonceList

type Dot11DeviceWPANonceList struct {
	EapolNonceNonce         string  `json:"dot11.eapol.nonce.nonce"`
	EapolNonceInstall       int64   `json:"dot11.eapol.nonce.install"`
	EapolNonceReplayCounter int64   `json:"dot11.eapol.nonce.replay_counter"`
	EapolNonceMessageNum    int64   `json:"dot11.eapol.nonce.message_num"`
	EapolNonceTimestamp     float64 `json:"dot11.eapol.nonce.timestamp"`
}

Dot11DeviceWPANonceList - WPA Nonce data.

func (Dot11DeviceWPANonceList) MarshalEasyJSON

func (v Dot11DeviceWPANonceList) MarshalEasyJSON(w *jwriter.Writer)

MarshalEasyJSON supports easyjson.Marshaler interface

func (Dot11DeviceWPANonceList) MarshalJSON

func (v Dot11DeviceWPANonceList) MarshalJSON() ([]byte, error)

MarshalJSON supports json.Marshaler interface

func (*Dot11DeviceWPANonceList) UnmarshalEasyJSON

func (v *Dot11DeviceWPANonceList) UnmarshalEasyJSON(l *jlexer.Lexer)

UnmarshalEasyJSON supports easyjson.Unmarshaler interface

func (*Dot11DeviceWPANonceList) UnmarshalJSON

func (v *Dot11DeviceWPANonceList) UnmarshalJSON(data []byte) error

UnmarshalJSON supports json.Unmarshaler interface

type Dot11EapolRsnPmkidEnum

type Dot11EapolRsnPmkidEnum string

type Dot11Packet

type Dot11Packet struct {
	PacketData   []byte   `json:"kismet.packet.data"`
	PacketSource int64    `json:"kismet.packet.source"`
	PacketDlt    int64    `json:"kismet.packet.dlt"`
	PacketTS     TimeUSec `json:"kismet.packet.ts"`
}

Dot11Packet - dot11 packet.

func (*Dot11Packet) UnmarshalJSON

func (d11pkt *Dot11Packet) UnmarshalJSON(raw []byte) error

type Dot11ProbedSSIDBssid

type Dot11ProbedSSIDBssid string

type Dot11ProbedSSIDWpsUUIDEEnum

type Dot11ProbedSSIDWpsUUIDEEnum string

type FieldSimplification

type FieldSimplification []string

FieldSimplification - a list of fields to retrieve from supporting methods. Only fields in the FieldSimplification will be loaded from Kismet API.

type Message

type Message struct {
	Time   TimeUSec `json:"kismet.messagebus.message_time"`
	Flags  int64    `json:"kismet.messagebus.message_flags"`
	String string   `json:"kismet.messagebus.message_string"`
}

Message - a Kismet message.

func (Message) MarshalEasyJSON

func (v Message) MarshalEasyJSON(w *jwriter.Writer)

MarshalEasyJSON supports easyjson.Marshaler interface

func (Message) MarshalJSON

func (v Message) MarshalJSON() ([]byte, error)

MarshalJSON supports json.Marshaler interface

func (*Message) UnmarshalEasyJSON

func (v *Message) UnmarshalEasyJSON(l *jlexer.Lexer)

UnmarshalEasyJSON supports easyjson.Unmarshaler interface

func (*Message) UnmarshalJSON

func (v *Message) UnmarshalJSON(data []byte) error

UnmarshalJSON supports json.Unmarshaler interface

type MessageList

type MessageList struct {
	Timestamp TimeUSec  `json:"kismet.messagebus.timestamp"`
	List      []Message `json:"kismet.messagebus.list"`
}

MessageList - a list of Messages with a Timestamp when the list was generated which can be used in GetMessagesLastSeenContext.

func (MessageList) MarshalEasyJSON

func (v MessageList) MarshalEasyJSON(w *jwriter.Writer)

MarshalEasyJSON supports easyjson.Marshaler interface

func (MessageList) MarshalJSON

func (v MessageList) MarshalJSON() ([]byte, error)

MarshalJSON supports json.Marshaler interface

func (*MessageList) UnmarshalEasyJSON

func (v *MessageList) UnmarshalEasyJSON(l *jlexer.Lexer)

UnmarshalEasyJSON supports easyjson.Unmarshaler interface

func (*MessageList) UnmarshalJSON

func (v *MessageList) UnmarshalJSON(data []byte) error

UnmarshalJSON supports json.Unmarshaler interface

type Phy

type Phy struct {
	PhyPacketCount int64  `json:"kismet.phy.packet_count"`
	PhyDeviceCount int64  `json:"kismet.phy.device_count"`
	PhyPhyID       int64  `json:"kismet.phy.phy_id"`
	PhyPhyName     string `json:"kismet.phy.phy_name"`
}

Phy - one supported Phy.

func (Phy) MarshalEasyJSON

func (v Phy) MarshalEasyJSON(w *jwriter.Writer)

MarshalEasyJSON supports easyjson.Marshaler interface

func (Phy) MarshalJSON

func (v Phy) MarshalJSON() ([]byte, error)

MarshalJSON supports json.Marshaler interface

func (*Phy) UnmarshalEasyJSON

func (v *Phy) UnmarshalEasyJSON(l *jlexer.Lexer)

UnmarshalEasyJSON supports easyjson.Unmarshaler interface

func (*Phy) UnmarshalJSON

func (v *Phy) UnmarshalJSON(data []byte) error

UnmarshalJSON supports json.Unmarshaler interface

type QueryOptions

type QueryOptions struct {
	Fields      FieldSimplification `json:"fields,omitempty"`
	RegexFilter RegexFilters        `json:"regex,omitempty"`
	Devices     []string            `json:"devices,omitempty"`
}

QueryOptions - options for API methods.

func (QueryOptions) MarshalEasyJSON

func (v QueryOptions) MarshalEasyJSON(w *jwriter.Writer)

MarshalEasyJSON supports easyjson.Marshaler interface

func (QueryOptions) MarshalJSON

func (v QueryOptions) MarshalJSON() ([]byte, error)

MarshalJSON supports json.Marshaler interface

func (*QueryOptions) UnmarshalEasyJSON

func (v *QueryOptions) UnmarshalEasyJSON(l *jlexer.Lexer)

UnmarshalEasyJSON supports easyjson.Unmarshaler interface

func (*QueryOptions) UnmarshalJSON

func (v *QueryOptions) UnmarshalJSON(data []byte) error

UnmarshalJSON supports json.Unmarshaler interface

type RegexFilters

type RegexFilters []RegexMatch

RegexFilters - list of RegexMatch to use them as "OR". regex = [

[ 'dot11.device/dot11.device.advertised_ssid_map/dot11.advertisedssid.ssid', '^SomePrefix.*' ],
[ 'dot11.device/dot11.device.advertised_ssid_map/dot11.advertisedssid.ssid', '^Linksys$' ]

]

type RegexMatch

type RegexMatch [2]string

RegexMatch - the Regex matcher in Kismet is a value in HTTP POST which is: [ 'dot11.device/dot11.device.advertised_ssid_map/dot11.advertisedssid.ssid', '^SomePrefix.*' ]. so, it is an array of 2 element arrays.

type ServerUUID

type ServerUUID string

ServerUUID - Kismet server UUID.

type SystemPacketStats

type SystemPacketStats struct {
	ProcessedPacketsRrd CommonRrd `json:"kismet.packetchain.processed_packets_rrd"`
	DroppedPacketsRrd   CommonRrd `json:"kismet.packetchain.dropped_packets_rrd"`
	QueuedPacketsRrd    CommonRrd `json:"kismet.packetchain.queued_packets_rrd"`
	DupePacketsRrd      CommonRrd `json:"kismet.packetchain.dupe_packets_rrd"`
	ErrorPacketsRrd     CommonRrd `json:"kismet.packetchain.error_packets_rrd"`
	PacketsRrd          CommonRrd `json:"kismet.packetchain.packets_rrd"`
	PeakPacketsRrd      CommonRrd `json:"kismet.packetchain.peak_packets_rrd"`
}

SystemPacketStats - packets statistics.

func (SystemPacketStats) MarshalEasyJSON

func (v SystemPacketStats) MarshalEasyJSON(w *jwriter.Writer)

MarshalEasyJSON supports easyjson.Marshaler interface

func (SystemPacketStats) MarshalJSON

func (v SystemPacketStats) MarshalJSON() ([]byte, error)

MarshalJSON supports json.Marshaler interface

func (*SystemPacketStats) UnmarshalEasyJSON

func (v *SystemPacketStats) UnmarshalEasyJSON(l *jlexer.Lexer)

UnmarshalEasyJSON supports easyjson.Unmarshaler interface

func (*SystemPacketStats) UnmarshalJSON

func (v *SystemPacketStats) UnmarshalJSON(data []byte) error

UnmarshalJSON supports json.Unmarshaler interface

type SystemStatus

type SystemStatus struct {
	ServerUUID               string             `json:"kismet.server.uuid"`
	SystemNumHTTPConnections int                `json:"kismet.system.num_http_connections"`
	SystemNumComponents      int                `json:"kismet.system.num_components"`
	SystemNumFields          int                `json:"kismet.system.num_fields"`
	SystemSensorsTemp        map[string]float64 `json:"kismet.system.sensors.temp"`
	SystemSensorsFan         map[string]float64 `json:"kismet.system.sensors.fan"`
	SystemDevicesRrd         CommonRrd          `json:"kismet.system.devices.rrd"`
	SystemMemoryRrd          CommonRrd          `json:"kismet.system.memory.rrd"`
	SystemServerLocation     string             `json:"kismet.system.server_location"`
	SystemServerDescription  string             `json:"kismet.system.server_description"`
	SystemServerName         string             `json:"kismet.system.server_name"`
	SystemBatteryPercentage  int                `json:"kismet.system.battery.percentage"`
	SystemBatteryCharging    string             `json:"kismet.system.battery.charging"`
	SystemBatteryAC          int                `json:"kismet.system.battery.ac"`
	SystemBatteryRemaining   int                `json:"kismet.system.battery.remaining"`
	SystemTimestampSEC       int                `json:"kismet.system.timestamp.sec"`
	SystemTimestampUsec      int                `json:"kismet.system.timestamp.usec"`
	SystemTimestampStartSEC  int                `json:"kismet.system.timestamp.start_sec"`
	SystemMemoryRSS          int                `json:"kismet.system.memory.rss"`
	SystemDevicesCount       int                `json:"kismet.system.devices.count"`
	SystemUser               string             `json:"kismet.system.user"`
	SystemVersion            string             `json:"kismet.system.version"`
	SystemGit                string             `json:"kismet.system.git"`
	SystemBuildTime          string             `json:"kismet.system.build_time"`
}

SystemStatus - status of Kismet in general.

func (SystemStatus) MarshalEasyJSON

func (v SystemStatus) MarshalEasyJSON(w *jwriter.Writer)

MarshalEasyJSON supports easyjson.Marshaler interface

func (SystemStatus) MarshalJSON

func (v SystemStatus) MarshalJSON() ([]byte, error)

MarshalJSON supports json.Marshaler interface

func (*SystemStatus) UnmarshalEasyJSON

func (v *SystemStatus) UnmarshalEasyJSON(l *jlexer.Lexer)

UnmarshalEasyJSON supports easyjson.Unmarshaler interface

func (*SystemStatus) UnmarshalJSON

func (v *SystemStatus) UnmarshalJSON(data []byte) error

UnmarshalJSON supports json.Unmarshaler interface

type SystemTimestamp

type SystemTimestamp struct {
	SystemTimestampUsec int `json:"kismet.system.timestamp.usec"`
	SystemTimestampSEC  int `json:"kismet.system.timestamp.sec"`
}

SystemTimestamp - current Kismet server timestamp. I can not use TimeUSec here because the TimeUSec uses custom JSON serialization.

func (SystemTimestamp) MarshalEasyJSON

func (v SystemTimestamp) MarshalEasyJSON(w *jwriter.Writer)

MarshalEasyJSON supports easyjson.Marshaler interface

func (SystemTimestamp) MarshalJSON

func (v SystemTimestamp) MarshalJSON() ([]byte, error)

MarshalJSON supports json.Marshaler interface

func (*SystemTimestamp) UnmarshalEasyJSON

func (v *SystemTimestamp) UnmarshalEasyJSON(l *jlexer.Lexer)

UnmarshalEasyJSON supports easyjson.Unmarshaler interface

func (*SystemTimestamp) UnmarshalJSON

func (v *SystemTimestamp) UnmarshalJSON(data []byte) error

UnmarshalJSON supports json.Unmarshaler interface

type TimeUSec

type TimeUSec struct {
	Microseconds int32
	Seconds      int64
}

TimeUSec - Kismet may send timestamps in microsecond precision format i.e. {{ seconds }}.{{ microseconds }} in Alerts, for example. The code below implements the format support.

func (*TimeUSec) MarshalJSON

func (t *TimeUSec) MarshalJSON() ([]byte, error)

func (*TimeUSec) String

func (t *TimeUSec) String() string

func (*TimeUSec) Time

func (t *TimeUSec) Time() time.Time

Time - converts TimeUSec to go stdlib time.Time.

func (*TimeUSec) UnmarshalJSON

func (t *TimeUSec) UnmarshalJSON(raw []byte) error

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL