mirror of
https://github.com/chirpstack/chirpstack.git
synced 2025-06-12 20:48:09 +00:00
Re-generate API code.
This commit is contained in:
679
api/python/proto/chirpstack-api/api/device.proto
vendored
679
api/python/proto/chirpstack-api/api/device.proto
vendored
@ -16,520 +16,531 @@ import "google/protobuf/empty.proto";
|
||||
|
||||
// DeviceService is the service providing API methods for managing devices.
|
||||
service DeviceService {
|
||||
// Create the given device.
|
||||
rpc Create(CreateDeviceRequest) returns (google.protobuf.Empty) {
|
||||
option(google.api.http) = {
|
||||
post: "/api/devices"
|
||||
body: "*"
|
||||
};
|
||||
}
|
||||
// Create the given device.
|
||||
rpc Create(CreateDeviceRequest) returns (google.protobuf.Empty) {
|
||||
option (google.api.http) = {
|
||||
post : "/api/devices"
|
||||
body : "*"
|
||||
};
|
||||
}
|
||||
|
||||
// Get returns the device for the given DevEUI.
|
||||
rpc Get(GetDeviceRequest) returns (GetDeviceResponse) {
|
||||
option(google.api.http) = {
|
||||
get: "/api/devices/{dev_eui}"
|
||||
};
|
||||
}
|
||||
// Get returns the device for the given DevEUI.
|
||||
rpc Get(GetDeviceRequest) returns (GetDeviceResponse) {
|
||||
option (google.api.http) = {
|
||||
get : "/api/devices/{dev_eui}"
|
||||
};
|
||||
}
|
||||
|
||||
// Update the given device.
|
||||
rpc Update(UpdateDeviceRequest) returns (google.protobuf.Empty) {
|
||||
option(google.api.http) = {
|
||||
put: "/api/devices/{device.dev_eui}"
|
||||
body: "*"
|
||||
};
|
||||
}
|
||||
// Update the given device.
|
||||
rpc Update(UpdateDeviceRequest) returns (google.protobuf.Empty) {
|
||||
option (google.api.http) = {
|
||||
put : "/api/devices/{device.dev_eui}"
|
||||
body : "*"
|
||||
};
|
||||
}
|
||||
|
||||
// Delete the device with the given DevEUI.
|
||||
rpc Delete(DeleteDeviceRequest) returns (google.protobuf.Empty) {
|
||||
option(google.api.http) = {
|
||||
delete: "/api/devices/{dev_eui}"
|
||||
};
|
||||
}
|
||||
// Delete the device with the given DevEUI.
|
||||
rpc Delete(DeleteDeviceRequest) returns (google.protobuf.Empty) {
|
||||
option (google.api.http) = {
|
||||
delete : "/api/devices/{dev_eui}"
|
||||
};
|
||||
}
|
||||
|
||||
// Get the list of devices.
|
||||
rpc List(ListDevicesRequest) returns (ListDevicesResponse) {
|
||||
option(google.api.http) = {
|
||||
get: "/api/devices"
|
||||
};
|
||||
}
|
||||
// Get the list of devices.
|
||||
rpc List(ListDevicesRequest) returns (ListDevicesResponse) {
|
||||
option (google.api.http) = {
|
||||
get : "/api/devices"
|
||||
};
|
||||
}
|
||||
|
||||
// Create the given device-keys.
|
||||
rpc CreateKeys(CreateDeviceKeysRequest) returns (google.protobuf.Empty) {
|
||||
option(google.api.http) = {
|
||||
post: "/api/devices/{device_keys.dev_eui}/keys"
|
||||
body: "*"
|
||||
};
|
||||
}
|
||||
// Create the given device-keys.
|
||||
rpc CreateKeys(CreateDeviceKeysRequest) returns (google.protobuf.Empty) {
|
||||
option (google.api.http) = {
|
||||
post : "/api/devices/{device_keys.dev_eui}/keys"
|
||||
body : "*"
|
||||
};
|
||||
}
|
||||
|
||||
// Get the device-keys for the given DevEUI.
|
||||
rpc GetKeys(GetDeviceKeysRequest) returns (GetDeviceKeysResponse) {
|
||||
option(google.api.http) = {
|
||||
get: "/api/devices/{dev_eui}/keys"
|
||||
};
|
||||
}
|
||||
// Get the device-keys for the given DevEUI.
|
||||
rpc GetKeys(GetDeviceKeysRequest) returns (GetDeviceKeysResponse) {
|
||||
option (google.api.http) = {
|
||||
get : "/api/devices/{dev_eui}/keys"
|
||||
};
|
||||
}
|
||||
|
||||
// Update the given device-keys.
|
||||
rpc UpdateKeys(UpdateDeviceKeysRequest) returns (google.protobuf.Empty) {
|
||||
option(google.api.http) = {
|
||||
put: "/api/devices/{device_keys.dev_eui}/keys"
|
||||
body: "*"
|
||||
};
|
||||
}
|
||||
// Update the given device-keys.
|
||||
rpc UpdateKeys(UpdateDeviceKeysRequest) returns (google.protobuf.Empty) {
|
||||
option (google.api.http) = {
|
||||
put : "/api/devices/{device_keys.dev_eui}/keys"
|
||||
body : "*"
|
||||
};
|
||||
}
|
||||
|
||||
// Delete the device-keys for the given DevEUI.
|
||||
rpc DeleteKeys(DeleteDeviceKeysRequest) returns (google.protobuf.Empty) {
|
||||
option(google.api.http) = {
|
||||
delete: "/api/devices/{dev_eui}/keys"
|
||||
};
|
||||
}
|
||||
// Delete the device-keys for the given DevEUI.
|
||||
rpc DeleteKeys(DeleteDeviceKeysRequest) returns (google.protobuf.Empty) {
|
||||
option (google.api.http) = {
|
||||
delete : "/api/devices/{dev_eui}/keys"
|
||||
};
|
||||
}
|
||||
|
||||
// FlushDevNonces flushes the OTAA device nonces.
|
||||
rpc FlushDevNonces(FlushDevNoncesRequest) returns (google.protobuf.Empty) {
|
||||
option(google.api.http) = {
|
||||
delete: "/api/devices/{dev_eui}/dev-nonces"
|
||||
};
|
||||
}
|
||||
// FlushDevNonces flushes the OTAA device nonces.
|
||||
rpc FlushDevNonces(FlushDevNoncesRequest) returns (google.protobuf.Empty) {
|
||||
option (google.api.http) = {
|
||||
delete : "/api/devices/{dev_eui}/dev-nonces"
|
||||
};
|
||||
}
|
||||
|
||||
// Activate (re)activates the device with the given parameters (for ABP or for importing OTAA activations).
|
||||
rpc Activate(ActivateDeviceRequest) returns (google.protobuf.Empty) {
|
||||
option(google.api.http) = {
|
||||
post: "/api/devices/{device_activation.dev_eui}/activate"
|
||||
body: "*"
|
||||
};
|
||||
}
|
||||
// Activate (re)activates the device with the given parameters (for ABP or for
|
||||
// importing OTAA activations).
|
||||
rpc Activate(ActivateDeviceRequest) returns (google.protobuf.Empty) {
|
||||
option (google.api.http) = {
|
||||
post : "/api/devices/{device_activation.dev_eui}/activate"
|
||||
body : "*"
|
||||
};
|
||||
}
|
||||
|
||||
// Deactivate de-activates the device.
|
||||
rpc Deactivate(DeactivateDeviceRequest) returns (google.protobuf.Empty) {
|
||||
option(google.api.http) = {
|
||||
delete: "/api/devices/{dev_eui}/activation"
|
||||
};
|
||||
}
|
||||
// Deactivate de-activates the device.
|
||||
rpc Deactivate(DeactivateDeviceRequest) returns (google.protobuf.Empty) {
|
||||
option (google.api.http) = {
|
||||
delete : "/api/devices/{dev_eui}/activation"
|
||||
};
|
||||
}
|
||||
|
||||
// GetActivation returns the current activation details of the device (OTAA or ABP).
|
||||
rpc GetActivation(GetDeviceActivationRequest) returns (GetDeviceActivationResponse) {
|
||||
option(google.api.http) = {
|
||||
get: "/api/devices/{dev_eui}/activation"
|
||||
};
|
||||
}
|
||||
// GetActivation returns the current activation details of the device (OTAA or
|
||||
// ABP).
|
||||
rpc GetActivation(GetDeviceActivationRequest)
|
||||
returns (GetDeviceActivationResponse) {
|
||||
option (google.api.http) = {
|
||||
get : "/api/devices/{dev_eui}/activation"
|
||||
};
|
||||
}
|
||||
|
||||
// GetRandomDevAddr returns a random DevAddr taking the NwkID prefix into account.
|
||||
rpc GetRandomDevAddr(GetRandomDevAddrRequest) returns (GetRandomDevAddrResponse) {
|
||||
option(google.api.http) = {
|
||||
post: "/api/devices/{dev_eui}/get-random-dev-addr"
|
||||
};
|
||||
}
|
||||
// GetRandomDevAddr returns a random DevAddr taking the NwkID prefix into
|
||||
// account.
|
||||
rpc GetRandomDevAddr(GetRandomDevAddrRequest)
|
||||
returns (GetRandomDevAddrResponse) {
|
||||
option (google.api.http) = {
|
||||
post : "/api/devices/{dev_eui}/get-random-dev-addr"
|
||||
};
|
||||
}
|
||||
|
||||
// GetMetrics returns the device metrics.
|
||||
// Note that this requires a device-profile with codec and measurements configured.
|
||||
rpc GetMetrics(GetDeviceMetricsRequest) returns (GetDeviceMetricsResponse) {
|
||||
option(google.api.http) = {
|
||||
get: "/api/devices/{dev_eui}/metrics"
|
||||
};
|
||||
}
|
||||
// GetMetrics returns the device metrics.
|
||||
// Note that this requires a device-profile with codec and measurements
|
||||
// configured.
|
||||
rpc GetMetrics(GetDeviceMetricsRequest) returns (GetDeviceMetricsResponse) {
|
||||
option (google.api.http) = {
|
||||
get : "/api/devices/{dev_eui}/metrics"
|
||||
};
|
||||
}
|
||||
|
||||
// GetLinkMetrics returns the device link metrics.
|
||||
// This includes uplinks, downlinks, RSSI, SNR, etc...
|
||||
rpc GetLinkMetrics(GetDeviceLinkMetricsRequest) returns (GetDeviceLinkMetricsResponse) {
|
||||
option(google.api.http) = {
|
||||
get: "/api/devices/{dev_eui}/link-metrics"
|
||||
};
|
||||
}
|
||||
// GetLinkMetrics returns the device link metrics.
|
||||
// This includes uplinks, downlinks, RSSI, SNR, etc...
|
||||
rpc GetLinkMetrics(GetDeviceLinkMetricsRequest)
|
||||
returns (GetDeviceLinkMetricsResponse) {
|
||||
option (google.api.http) = {
|
||||
get : "/api/devices/{dev_eui}/link-metrics"
|
||||
};
|
||||
}
|
||||
|
||||
// Enqueue adds the given item to the downlink queue.
|
||||
rpc Enqueue(EnqueueDeviceQueueItemRequest) returns (EnqueueDeviceQueueItemResponse) {
|
||||
option(google.api.http) = {
|
||||
post: "/api/devices/{queue_item.dev_eui}/queue"
|
||||
body: "*"
|
||||
};
|
||||
}
|
||||
// Enqueue adds the given item to the downlink queue.
|
||||
rpc Enqueue(EnqueueDeviceQueueItemRequest)
|
||||
returns (EnqueueDeviceQueueItemResponse) {
|
||||
option (google.api.http) = {
|
||||
post : "/api/devices/{queue_item.dev_eui}/queue"
|
||||
body : "*"
|
||||
};
|
||||
}
|
||||
|
||||
// FlushQueue flushes the downlink device-queue.
|
||||
rpc FlushQueue(FlushDeviceQueueRequest) returns (google.protobuf.Empty) {
|
||||
option(google.api.http) = {
|
||||
delete: "/api/devices/{dev_eui}/queue"
|
||||
};
|
||||
}
|
||||
// FlushQueue flushes the downlink device-queue.
|
||||
rpc FlushQueue(FlushDeviceQueueRequest) returns (google.protobuf.Empty) {
|
||||
option (google.api.http) = {
|
||||
delete : "/api/devices/{dev_eui}/queue"
|
||||
};
|
||||
}
|
||||
|
||||
// GetQueue returns the downlink device-queue.
|
||||
rpc GetQueue(GetDeviceQueueItemsRequest) returns (GetDeviceQueueItemsResponse) {
|
||||
option(google.api.http) = {
|
||||
get: "/api/devices/{dev_eui}/queue"
|
||||
};
|
||||
}
|
||||
// GetQueue returns the downlink device-queue.
|
||||
rpc GetQueue(GetDeviceQueueItemsRequest)
|
||||
returns (GetDeviceQueueItemsResponse) {
|
||||
option (google.api.http) = {
|
||||
get : "/api/devices/{dev_eui}/queue"
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
message Device {
|
||||
// DevEUI (EUI64).
|
||||
string dev_eui = 1;
|
||||
// DevEUI (EUI64).
|
||||
string dev_eui = 1;
|
||||
|
||||
// Name.
|
||||
string name = 2;
|
||||
// Name.
|
||||
string name = 2;
|
||||
|
||||
// Description.
|
||||
string description = 3;
|
||||
// Description.
|
||||
string description = 3;
|
||||
|
||||
// Application ID (UUID).
|
||||
string application_id = 4;
|
||||
|
||||
// Device-profile ID (UUID).
|
||||
string device_profile_id = 5;
|
||||
// Application ID (UUID).
|
||||
string application_id = 4;
|
||||
|
||||
// Skip frame-counter checks (this is insecure, but could be helpful for debugging).
|
||||
bool skip_fcnt_check = 6;
|
||||
// Device-profile ID (UUID).
|
||||
string device_profile_id = 5;
|
||||
|
||||
// Device is disabled.
|
||||
bool is_disabled = 7;
|
||||
// Skip frame-counter checks (this is insecure, but could be helpful for
|
||||
// debugging).
|
||||
bool skip_fcnt_check = 6;
|
||||
|
||||
// Variables (user defined).
|
||||
// These variables can be used together with integrations to store tokens /
|
||||
// secrets that must be configured per device. These variables are not
|
||||
// exposed in the event payloads.
|
||||
map<string, string> variables = 8;
|
||||
// Device is disabled.
|
||||
bool is_disabled = 7;
|
||||
|
||||
// Tags (user defined).
|
||||
// These tags are exposed in the event payloads or to integration. Tags are
|
||||
// intended for aggregation and filtering.
|
||||
map<string, string> tags = 9;
|
||||
// Variables (user defined).
|
||||
// These variables can be used together with integrations to store tokens /
|
||||
// secrets that must be configured per device. These variables are not
|
||||
// exposed in the event payloads.
|
||||
map<string, string> variables = 8;
|
||||
|
||||
// JoinEUI (optional, EUI64).
|
||||
// This field will be automatically set / updated on OTAA. However, in some
|
||||
// cases it must be pre-configured. For example to allow OTAA using a Relay.
|
||||
// In this case the Relay needs to know the JoinEUI + DevEUI combinations
|
||||
// of the devices for which it needs to forward uplinks.
|
||||
string join_eui = 10;
|
||||
// Tags (user defined).
|
||||
// These tags are exposed in the event payloads or to integration. Tags are
|
||||
// intended for aggregation and filtering.
|
||||
map<string, string> tags = 9;
|
||||
|
||||
// JoinEUI (optional, EUI64).
|
||||
// This field will be automatically set / updated on OTAA. However, in some
|
||||
// cases it must be pre-configured. For example to allow OTAA using a Relay.
|
||||
// In this case the Relay needs to know the JoinEUI + DevEUI combinations
|
||||
// of the devices for which it needs to forward uplinks.
|
||||
string join_eui = 10;
|
||||
}
|
||||
|
||||
message DeviceStatus {
|
||||
// The device margin status
|
||||
// -32..32: The demodulation SNR ration in dB
|
||||
int32 margin = 1;
|
||||
// The device margin status
|
||||
// -32..32: The demodulation SNR ration in dB
|
||||
int32 margin = 1;
|
||||
|
||||
// Device is connected to an external power source.
|
||||
bool external_power_source = 2;
|
||||
// Device is connected to an external power source.
|
||||
bool external_power_source = 2;
|
||||
|
||||
// Device battery level as a percentage.
|
||||
// -1 when the battery level is not available.
|
||||
float battery_level = 3;
|
||||
// Device battery level as a percentage.
|
||||
// -1 when the battery level is not available.
|
||||
float battery_level = 3;
|
||||
}
|
||||
|
||||
message DeviceListItem {
|
||||
// DevEUI (EUI64).
|
||||
string dev_eui = 1;
|
||||
// DevEUI (EUI64).
|
||||
string dev_eui = 1;
|
||||
|
||||
// Created at timestamp.
|
||||
google.protobuf.Timestamp created_at = 2;
|
||||
// Created at timestamp.
|
||||
google.protobuf.Timestamp created_at = 2;
|
||||
|
||||
// Last update timestamp.
|
||||
google.protobuf.Timestamp updated_at = 3;
|
||||
// Last update timestamp.
|
||||
google.protobuf.Timestamp updated_at = 3;
|
||||
|
||||
// Last seen at timestamp.
|
||||
google.protobuf.Timestamp last_seen_at = 4;
|
||||
// Last seen at timestamp.
|
||||
google.protobuf.Timestamp last_seen_at = 4;
|
||||
|
||||
// Name.
|
||||
string name = 5;
|
||||
// Name.
|
||||
string name = 5;
|
||||
|
||||
// Description.
|
||||
string description = 6;
|
||||
// Description.
|
||||
string description = 6;
|
||||
|
||||
// Device-profile ID (UUID).
|
||||
string device_profile_id = 7;
|
||||
// Device-profile ID (UUID).
|
||||
string device_profile_id = 7;
|
||||
|
||||
// Device-profile name.
|
||||
string device_profile_name = 8;
|
||||
// Device-profile name.
|
||||
string device_profile_name = 8;
|
||||
|
||||
// Device status.
|
||||
DeviceStatus device_status = 9;
|
||||
// Device status.
|
||||
DeviceStatus device_status = 9;
|
||||
}
|
||||
|
||||
message DeviceKeys {
|
||||
// DevEUI (EUI64).
|
||||
string dev_eui = 1;
|
||||
// DevEUI (EUI64).
|
||||
string dev_eui = 1;
|
||||
|
||||
// Network root key (128 bit).
|
||||
// Note: For LoRaWAN 1.0.x, use this field for the LoRaWAN 1.0.x 'AppKey`!
|
||||
string nwk_key = 2;
|
||||
// Network root key (128 bit).
|
||||
// Note: For LoRaWAN 1.0.x, use this field for the LoRaWAN 1.0.x 'AppKey`!
|
||||
string nwk_key = 2;
|
||||
|
||||
// Application root key (128 bit).
|
||||
// Note: This field only needs to be set for LoRaWAN 1.1.x devices!
|
||||
string app_key = 3;
|
||||
// Application root key (128 bit).
|
||||
// Note: This field only needs to be set for LoRaWAN 1.1.x devices!
|
||||
string app_key = 3;
|
||||
}
|
||||
|
||||
message CreateDeviceRequest {
|
||||
// Device object.
|
||||
Device device = 1;
|
||||
// Device object.
|
||||
Device device = 1;
|
||||
}
|
||||
|
||||
message GetDeviceRequest {
|
||||
// DevEUI (EUI64).
|
||||
string dev_eui = 1;
|
||||
// DevEUI (EUI64).
|
||||
string dev_eui = 1;
|
||||
}
|
||||
|
||||
message GetDeviceResponse {
|
||||
// Device object.
|
||||
Device device = 1;
|
||||
// Device object.
|
||||
Device device = 1;
|
||||
|
||||
// Created at timestamp.
|
||||
google.protobuf.Timestamp created_at = 2;
|
||||
// Created at timestamp.
|
||||
google.protobuf.Timestamp created_at = 2;
|
||||
|
||||
// Last update timestamp.
|
||||
google.protobuf.Timestamp updated_at = 3;
|
||||
// Last update timestamp.
|
||||
google.protobuf.Timestamp updated_at = 3;
|
||||
|
||||
// Last seen at timestamp.
|
||||
google.protobuf.Timestamp last_seen_at = 4;
|
||||
// Last seen at timestamp.
|
||||
google.protobuf.Timestamp last_seen_at = 4;
|
||||
|
||||
// Device status.
|
||||
DeviceStatus device_status = 5;
|
||||
// Device status.
|
||||
DeviceStatus device_status = 5;
|
||||
|
||||
// Enabled device class.
|
||||
common.DeviceClass class_enabled = 6;
|
||||
}
|
||||
|
||||
message UpdateDeviceRequest {
|
||||
// Device object.
|
||||
Device device = 1;
|
||||
// Device object.
|
||||
Device device = 1;
|
||||
}
|
||||
|
||||
message DeleteDeviceRequest {
|
||||
// DevEUI (EUI64).
|
||||
string dev_eui = 1;
|
||||
// DevEUI (EUI64).
|
||||
string dev_eui = 1;
|
||||
}
|
||||
|
||||
message ListDevicesRequest {
|
||||
// Max number of devices to return in the result-set.
|
||||
uint32 limit = 1;
|
||||
// Max number of devices to return in the result-set.
|
||||
uint32 limit = 1;
|
||||
|
||||
// Offset in the result-set (for pagination).
|
||||
uint32 offset = 2;
|
||||
// Offset in the result-set (for pagination).
|
||||
uint32 offset = 2;
|
||||
|
||||
// If set, the given string will be used to search on name (optional).
|
||||
string search = 3;
|
||||
// If set, the given string will be used to search on name (optional).
|
||||
string search = 3;
|
||||
|
||||
// Application ID (UUID) to filter devices on.
|
||||
string application_id = 4;
|
||||
// Application ID (UUID) to filter devices on.
|
||||
string application_id = 4;
|
||||
|
||||
// Multicst-group ID (UUID) to filter devices on.
|
||||
string multicast_group_id = 5;
|
||||
// Multicst-group ID (UUID) to filter devices on.
|
||||
string multicast_group_id = 5;
|
||||
}
|
||||
|
||||
message ListDevicesResponse {
|
||||
// Total number of devices.
|
||||
uint32 total_count = 1;
|
||||
// Total number of devices.
|
||||
uint32 total_count = 1;
|
||||
|
||||
// Result-set.
|
||||
repeated DeviceListItem result = 2;
|
||||
// Result-set.
|
||||
repeated DeviceListItem result = 2;
|
||||
}
|
||||
|
||||
message CreateDeviceKeysRequest {
|
||||
// Device-keys object.
|
||||
DeviceKeys device_keys = 1;
|
||||
// Device-keys object.
|
||||
DeviceKeys device_keys = 1;
|
||||
}
|
||||
|
||||
message GetDeviceKeysRequest {
|
||||
// DevEUI (EUI64).
|
||||
string dev_eui = 1;
|
||||
// DevEUI (EUI64).
|
||||
string dev_eui = 1;
|
||||
}
|
||||
|
||||
message GetDeviceKeysResponse {
|
||||
// Device-keys object.
|
||||
DeviceKeys device_keys = 1;
|
||||
// Device-keys object.
|
||||
DeviceKeys device_keys = 1;
|
||||
|
||||
// Created at timestamp.
|
||||
google.protobuf.Timestamp created_at = 2;
|
||||
// Created at timestamp.
|
||||
google.protobuf.Timestamp created_at = 2;
|
||||
|
||||
// Last update timestamp.
|
||||
google.protobuf.Timestamp updated_at = 3;
|
||||
// Last update timestamp.
|
||||
google.protobuf.Timestamp updated_at = 3;
|
||||
}
|
||||
|
||||
message UpdateDeviceKeysRequest {
|
||||
// Device-keys object.
|
||||
DeviceKeys device_keys = 1;
|
||||
// Device-keys object.
|
||||
DeviceKeys device_keys = 1;
|
||||
}
|
||||
|
||||
message DeleteDeviceKeysRequest {
|
||||
// DevEUI (EUI64).
|
||||
string dev_eui = 1;
|
||||
// DevEUI (EUI64).
|
||||
string dev_eui = 1;
|
||||
}
|
||||
|
||||
message DeviceActivation {
|
||||
// Device EUI (EUI64).
|
||||
string dev_eui = 1;
|
||||
// Device EUI (EUI64).
|
||||
string dev_eui = 1;
|
||||
|
||||
// Device address (HEX encoded).
|
||||
string dev_addr = 2;
|
||||
// Device address (HEX encoded).
|
||||
string dev_addr = 2;
|
||||
|
||||
// Application session key (HEX encoded).
|
||||
string app_s_key = 3;
|
||||
// Application session key (HEX encoded).
|
||||
string app_s_key = 3;
|
||||
|
||||
// Network session encryption key (HEX encoded).
|
||||
string nwk_s_enc_key = 4;
|
||||
// Network session encryption key (HEX encoded).
|
||||
string nwk_s_enc_key = 4;
|
||||
|
||||
// Serving network session integrity key (HEX encoded).
|
||||
string s_nwk_s_int_key = 8;
|
||||
// Serving network session integrity key (HEX encoded).
|
||||
string s_nwk_s_int_key = 8;
|
||||
|
||||
// Forwarding network session integrity key (HEX encoded).
|
||||
string f_nwk_s_int_key = 9;
|
||||
// Forwarding network session integrity key (HEX encoded).
|
||||
string f_nwk_s_int_key = 9;
|
||||
|
||||
// Uplink frame-counter.
|
||||
uint32 f_cnt_up = 5;
|
||||
// Uplink frame-counter.
|
||||
uint32 f_cnt_up = 5;
|
||||
|
||||
// Downlink network frame-counter.
|
||||
uint32 n_f_cnt_down = 6;
|
||||
// Downlink network frame-counter.
|
||||
uint32 n_f_cnt_down = 6;
|
||||
|
||||
// Downlink application frame-counter.
|
||||
uint32 a_f_cnt_down = 10;
|
||||
// Downlink application frame-counter.
|
||||
uint32 a_f_cnt_down = 10;
|
||||
}
|
||||
|
||||
message ActivateDeviceRequest {
|
||||
// Device activation object.
|
||||
DeviceActivation device_activation = 1;
|
||||
// Device activation object.
|
||||
DeviceActivation device_activation = 1;
|
||||
}
|
||||
|
||||
message DeactivateDeviceRequest {
|
||||
// DevEUI (EUI64).
|
||||
string dev_eui = 1;
|
||||
// DevEUI (EUI64).
|
||||
string dev_eui = 1;
|
||||
}
|
||||
|
||||
message GetDeviceActivationRequest {
|
||||
// DevEUI (EUI64).
|
||||
string dev_eui = 1;
|
||||
// DevEUI (EUI64).
|
||||
string dev_eui = 1;
|
||||
}
|
||||
|
||||
message GetDeviceActivationResponse {
|
||||
// Device activation object.
|
||||
DeviceActivation device_activation = 1;
|
||||
// Device activation object.
|
||||
DeviceActivation device_activation = 1;
|
||||
}
|
||||
|
||||
message GetRandomDevAddrRequest {
|
||||
// DevEUI (EUI64).
|
||||
string dev_eui = 1;
|
||||
// DevEUI (EUI64).
|
||||
string dev_eui = 1;
|
||||
}
|
||||
|
||||
message GetRandomDevAddrResponse {
|
||||
// DevAddr.
|
||||
string dev_addr = 1;
|
||||
// DevAddr.
|
||||
string dev_addr = 1;
|
||||
}
|
||||
|
||||
message GetDeviceMetricsRequest {
|
||||
// DevEUI (EUI64).
|
||||
string dev_eui = 1;
|
||||
// DevEUI (EUI64).
|
||||
string dev_eui = 1;
|
||||
|
||||
// Interval start timestamp.
|
||||
google.protobuf.Timestamp start = 2;
|
||||
// Interval start timestamp.
|
||||
google.protobuf.Timestamp start = 2;
|
||||
|
||||
// Interval end timestamp.
|
||||
google.protobuf.Timestamp end = 3;
|
||||
// Interval end timestamp.
|
||||
google.protobuf.Timestamp end = 3;
|
||||
|
||||
// Aggregation.
|
||||
common.Aggregation aggregation = 4;
|
||||
// Aggregation.
|
||||
common.Aggregation aggregation = 4;
|
||||
}
|
||||
|
||||
message GetDeviceMetricsResponse {
|
||||
map<string, common.Metric> metrics = 1;
|
||||
map<string, common.Metric> metrics = 1;
|
||||
|
||||
map<string, DeviceState> states = 2;
|
||||
map<string, DeviceState> states = 2;
|
||||
}
|
||||
|
||||
message DeviceState {
|
||||
// Name.
|
||||
string name = 2;
|
||||
// Name.
|
||||
string name = 2;
|
||||
|
||||
// Value.
|
||||
string value = 3;
|
||||
// Value.
|
||||
string value = 3;
|
||||
}
|
||||
|
||||
message GetDeviceLinkMetricsRequest {
|
||||
// DevEUI (EUI64).
|
||||
string dev_eui = 1;
|
||||
// DevEUI (EUI64).
|
||||
string dev_eui = 1;
|
||||
|
||||
// Interval start timestamp.
|
||||
google.protobuf.Timestamp start = 2;
|
||||
// Interval start timestamp.
|
||||
google.protobuf.Timestamp start = 2;
|
||||
|
||||
// Interval end timestamp.
|
||||
google.protobuf.Timestamp end = 3;
|
||||
// Interval end timestamp.
|
||||
google.protobuf.Timestamp end = 3;
|
||||
|
||||
// Aggregation.
|
||||
common.Aggregation aggregation = 4;
|
||||
// Aggregation.
|
||||
common.Aggregation aggregation = 4;
|
||||
}
|
||||
|
||||
message GetDeviceLinkMetricsResponse {
|
||||
// Packets received from the device.
|
||||
common.Metric rx_packets = 1;
|
||||
// Packets received from the device.
|
||||
common.Metric rx_packets = 1;
|
||||
|
||||
// RSSI (as reported by the gateway(s)).
|
||||
common.Metric gw_rssi = 2;
|
||||
// RSSI (as reported by the gateway(s)).
|
||||
common.Metric gw_rssi = 2;
|
||||
|
||||
// SNR (as reported by the gateway(s)).
|
||||
common.Metric gw_snr = 3;
|
||||
// SNR (as reported by the gateway(s)).
|
||||
common.Metric gw_snr = 3;
|
||||
|
||||
// Packets received by frequency.
|
||||
common.Metric rx_packets_per_freq = 4;
|
||||
// Packets received by frequency.
|
||||
common.Metric rx_packets_per_freq = 4;
|
||||
|
||||
// Packets received by DR.
|
||||
common.Metric rx_packets_per_dr = 5;
|
||||
// Packets received by DR.
|
||||
common.Metric rx_packets_per_dr = 5;
|
||||
|
||||
// Errors.
|
||||
common.Metric errors = 6;
|
||||
// Errors.
|
||||
common.Metric errors = 6;
|
||||
}
|
||||
|
||||
message DeviceQueueItem {
|
||||
// ID (UUID).
|
||||
// This is automatically generated on enqueue.
|
||||
string id = 1;
|
||||
// ID (UUID).
|
||||
// This is automatically generated on enqueue.
|
||||
string id = 1;
|
||||
|
||||
// Device EUI (EUI64).
|
||||
string dev_eui = 2;
|
||||
// Device EUI (EUI64).
|
||||
string dev_eui = 2;
|
||||
|
||||
// Confirmed.
|
||||
bool confirmed = 3;
|
||||
// Confirmed.
|
||||
bool confirmed = 3;
|
||||
|
||||
// FPort (must be > 0).
|
||||
uint32 f_port = 4;
|
||||
// FPort (must be > 0).
|
||||
uint32 f_port = 4;
|
||||
|
||||
// Data.
|
||||
// Or use the json_object field when a codec has been configured.
|
||||
bytes data = 5;
|
||||
// Data.
|
||||
// Or use the json_object field when a codec has been configured.
|
||||
bytes data = 5;
|
||||
|
||||
// Only use this when a codec has been configured that can encode this
|
||||
// object to bytes.
|
||||
google.protobuf.Struct object = 6;
|
||||
// Only use this when a codec has been configured that can encode this
|
||||
// object to bytes.
|
||||
google.protobuf.Struct object = 6;
|
||||
|
||||
// Is pending.
|
||||
// This is set to true when the downlink is pending.
|
||||
bool is_pending = 7;
|
||||
// Is pending.
|
||||
// This is set to true when the downlink is pending.
|
||||
bool is_pending = 7;
|
||||
|
||||
// Downlink frame-counter.
|
||||
// This is set when the payload has been sent as downlink.
|
||||
uint32 f_cnt_down = 8;
|
||||
// Downlink frame-counter.
|
||||
// This is set when the payload has been sent as downlink.
|
||||
uint32 f_cnt_down = 8;
|
||||
}
|
||||
|
||||
message EnqueueDeviceQueueItemRequest {
|
||||
DeviceQueueItem queue_item = 1;
|
||||
}
|
||||
message EnqueueDeviceQueueItemRequest { DeviceQueueItem queue_item = 1; }
|
||||
|
||||
message EnqueueDeviceQueueItemResponse {
|
||||
// ID (UUID).
|
||||
string id = 1;
|
||||
// ID (UUID).
|
||||
string id = 1;
|
||||
}
|
||||
|
||||
message FlushDeviceQueueRequest {
|
||||
// Device EUI (EUI64).
|
||||
string dev_eui = 1;
|
||||
// Device EUI (EUI64).
|
||||
string dev_eui = 1;
|
||||
}
|
||||
|
||||
message GetDeviceQueueItemsRequest {
|
||||
// Device EUI (EUI64).
|
||||
string dev_eui = 1;
|
||||
// Device EUI (EUI64).
|
||||
string dev_eui = 1;
|
||||
|
||||
// Return only the count, not the result-set.
|
||||
bool count_only = 2;
|
||||
// Return only the count, not the result-set.
|
||||
bool count_only = 2;
|
||||
}
|
||||
|
||||
message GetDeviceQueueItemsResponse {
|
||||
// Total number of queue items.
|
||||
uint32 total_count = 1;
|
||||
// Total number of queue items.
|
||||
uint32 total_count = 1;
|
||||
|
||||
// Result-set.
|
||||
repeated DeviceQueueItem result = 2;
|
||||
// Result-set.
|
||||
repeated DeviceQueueItem result = 2;
|
||||
}
|
||||
|
||||
message FlushDevNoncesRequest {
|
||||
// Device EUI (EUI64).
|
||||
string dev_eui = 1;
|
||||
// Device EUI (EUI64).
|
||||
string dev_eui = 1;
|
||||
}
|
||||
|
246
api/python/proto/chirpstack-api/common/common.proto
vendored
246
api/python/proto/chirpstack-api/common/common.proto
vendored
@ -11,193 +11,205 @@ option csharp_namespace = "Chirpstack.Common";
|
||||
import "google/protobuf/timestamp.proto";
|
||||
|
||||
enum Modulation {
|
||||
// LoRa
|
||||
LORA = 0;
|
||||
// LoRa
|
||||
LORA = 0;
|
||||
|
||||
// FSK
|
||||
FSK = 1;
|
||||
// FSK
|
||||
FSK = 1;
|
||||
|
||||
// LR-FHSS
|
||||
LR_FHSS = 2;
|
||||
// LR-FHSS
|
||||
LR_FHSS = 2;
|
||||
}
|
||||
|
||||
enum Region {
|
||||
// EU868
|
||||
EU868 = 0;
|
||||
// EU868
|
||||
EU868 = 0;
|
||||
|
||||
// US915
|
||||
US915 = 2;
|
||||
// US915
|
||||
US915 = 2;
|
||||
|
||||
// CN779
|
||||
CN779 = 3;
|
||||
// CN779
|
||||
CN779 = 3;
|
||||
|
||||
// EU433
|
||||
EU433 = 4;
|
||||
// EU433
|
||||
EU433 = 4;
|
||||
|
||||
// AU915
|
||||
AU915 = 5;
|
||||
// AU915
|
||||
AU915 = 5;
|
||||
|
||||
// CN470
|
||||
CN470 = 6;
|
||||
// CN470
|
||||
CN470 = 6;
|
||||
|
||||
// AS923
|
||||
AS923 = 7;
|
||||
// AS923
|
||||
AS923 = 7;
|
||||
|
||||
// AS923 with -1.80 MHz frequency offset
|
||||
AS923_2 = 12;
|
||||
// AS923 with -1.80 MHz frequency offset
|
||||
AS923_2 = 12;
|
||||
|
||||
// AS923 with -6.60 MHz frequency offset
|
||||
AS923_3 = 13;
|
||||
// AS923 with -6.60 MHz frequency offset
|
||||
AS923_3 = 13;
|
||||
|
||||
// (AS923 with -5.90 MHz frequency offset).
|
||||
AS923_4 = 14;
|
||||
// (AS923 with -5.90 MHz frequency offset).
|
||||
AS923_4 = 14;
|
||||
|
||||
// KR920
|
||||
KR920 = 8;
|
||||
// KR920
|
||||
KR920 = 8;
|
||||
|
||||
// IN865
|
||||
IN865 = 9;
|
||||
// IN865
|
||||
IN865 = 9;
|
||||
|
||||
// RU864
|
||||
RU864 = 10;
|
||||
// RU864
|
||||
RU864 = 10;
|
||||
|
||||
// ISM2400 (LoRaWAN 2.4 GHz)
|
||||
ISM2400 = 11;
|
||||
// ISM2400 (LoRaWAN 2.4 GHz)
|
||||
ISM2400 = 11;
|
||||
}
|
||||
|
||||
enum MType {
|
||||
// JoinRequest.
|
||||
JOIN_REQUEST = 0;
|
||||
// JoinRequest.
|
||||
JOIN_REQUEST = 0;
|
||||
|
||||
// JoinAccept.
|
||||
JOIN_ACCEPT = 1;
|
||||
|
||||
// UnconfirmedDataUp.
|
||||
UNCONFIRMED_DATA_UP = 2;
|
||||
// JoinAccept.
|
||||
JOIN_ACCEPT = 1;
|
||||
|
||||
// UnconfirmedDataDown.
|
||||
UNCONFIRMED_DATA_DOWN = 3;
|
||||
// UnconfirmedDataUp.
|
||||
UNCONFIRMED_DATA_UP = 2;
|
||||
|
||||
// ConfirmedDataUp.
|
||||
CONFIRMED_DATA_UP = 4;
|
||||
|
||||
// ConfirmedDataDown.
|
||||
CONFIRMED_DATA_DOWN = 5;
|
||||
// UnconfirmedDataDown.
|
||||
UNCONFIRMED_DATA_DOWN = 3;
|
||||
|
||||
// RejoinRequest.
|
||||
REJOIN_REQUEST = 6;
|
||||
// ConfirmedDataUp.
|
||||
CONFIRMED_DATA_UP = 4;
|
||||
|
||||
// Proprietary.
|
||||
PROPRIETARY = 7;
|
||||
// ConfirmedDataDown.
|
||||
CONFIRMED_DATA_DOWN = 5;
|
||||
|
||||
// RejoinRequest.
|
||||
REJOIN_REQUEST = 6;
|
||||
|
||||
// Proprietary.
|
||||
PROPRIETARY = 7;
|
||||
}
|
||||
|
||||
enum MacVersion {
|
||||
LORAWAN_1_0_0 = 0;
|
||||
LORAWAN_1_0_1 = 1;
|
||||
LORAWAN_1_0_2 = 2;
|
||||
LORAWAN_1_0_3 = 3;
|
||||
LORAWAN_1_0_4 = 4;
|
||||
LORAWAN_1_1_0 = 5;
|
||||
LORAWAN_1_0_0 = 0;
|
||||
LORAWAN_1_0_1 = 1;
|
||||
LORAWAN_1_0_2 = 2;
|
||||
LORAWAN_1_0_3 = 3;
|
||||
LORAWAN_1_0_4 = 4;
|
||||
LORAWAN_1_1_0 = 5;
|
||||
}
|
||||
|
||||
enum RegParamsRevision {
|
||||
A = 0;
|
||||
B = 1;
|
||||
RP002_1_0_0 = 2;
|
||||
RP002_1_0_1 = 3;
|
||||
RP002_1_0_2 = 4;
|
||||
RP002_1_0_3 = 5;
|
||||
A = 0;
|
||||
B = 1;
|
||||
RP002_1_0_0 = 2;
|
||||
RP002_1_0_1 = 3;
|
||||
RP002_1_0_2 = 4;
|
||||
RP002_1_0_3 = 5;
|
||||
}
|
||||
|
||||
enum LocationSource {
|
||||
// Unknown.
|
||||
UNKNOWN = 0;
|
||||
// Unknown.
|
||||
UNKNOWN = 0;
|
||||
|
||||
// GPS.
|
||||
GPS = 1;
|
||||
// GPS.
|
||||
GPS = 1;
|
||||
|
||||
// Manually configured.
|
||||
CONFIG = 2;
|
||||
// Manually configured.
|
||||
CONFIG = 2;
|
||||
|
||||
// Geo resolver (TDOA).
|
||||
GEO_RESOLVER_TDOA = 3;
|
||||
// Geo resolver (TDOA).
|
||||
GEO_RESOLVER_TDOA = 3;
|
||||
|
||||
// Geo resolver (RSSI).
|
||||
GEO_RESOLVER_RSSI = 4;
|
||||
// Geo resolver (RSSI).
|
||||
GEO_RESOLVER_RSSI = 4;
|
||||
|
||||
// Geo resolver (GNSS).
|
||||
GEO_RESOLVER_GNSS = 5;
|
||||
// Geo resolver (GNSS).
|
||||
GEO_RESOLVER_GNSS = 5;
|
||||
|
||||
// Geo resolver (WIFI).
|
||||
GEO_RESOLVER_WIFI = 6;
|
||||
// Geo resolver (WIFI).
|
||||
GEO_RESOLVER_WIFI = 6;
|
||||
}
|
||||
|
||||
enum Aggregation {
|
||||
// Hour.
|
||||
HOUR = 0;
|
||||
// Hour.
|
||||
HOUR = 0;
|
||||
|
||||
// Day.
|
||||
DAY = 1;
|
||||
// Day.
|
||||
DAY = 1;
|
||||
|
||||
// Month.
|
||||
MONTH = 2;
|
||||
// Month.
|
||||
MONTH = 2;
|
||||
}
|
||||
|
||||
enum MetricKind {
|
||||
// Incrementing counters that never decrease (these are not reset on each reading).
|
||||
COUNTER = 0;
|
||||
// Incrementing counters that never decrease (these are not reset on each
|
||||
// reading).
|
||||
COUNTER = 0;
|
||||
|
||||
// Counters that do get reset upon reading.
|
||||
ABSOLUTE = 1;
|
||||
// Counters that do get reset upon reading.
|
||||
ABSOLUTE = 1;
|
||||
|
||||
// E.g. a temperature value.
|
||||
GAUGE = 2;
|
||||
// E.g. a temperature value.
|
||||
GAUGE = 2;
|
||||
}
|
||||
|
||||
message Location {
|
||||
// Latitude.
|
||||
double latitude = 1;
|
||||
// Latitude.
|
||||
double latitude = 1;
|
||||
|
||||
// Longitude.
|
||||
double longitude = 2;
|
||||
// Longitude.
|
||||
double longitude = 2;
|
||||
|
||||
// Altitude.
|
||||
double altitude = 3;
|
||||
// Altitude.
|
||||
double altitude = 3;
|
||||
|
||||
// Location source.
|
||||
LocationSource source = 4;
|
||||
// Location source.
|
||||
LocationSource source = 4;
|
||||
|
||||
// Accuracy.
|
||||
float accuracy = 5;
|
||||
// Accuracy.
|
||||
float accuracy = 5;
|
||||
}
|
||||
|
||||
message KeyEnvelope {
|
||||
// KEK label.
|
||||
string kek_label = 1;
|
||||
// KEK label.
|
||||
string kek_label = 1;
|
||||
|
||||
// AES key (when the kek_label is set, this value must first be decrypted).
|
||||
bytes aes_key = 2;
|
||||
// AES key (when the kek_label is set, this value must first be decrypted).
|
||||
bytes aes_key = 2;
|
||||
}
|
||||
|
||||
message Metric {
|
||||
// Name.
|
||||
string name = 1;
|
||||
// Name.
|
||||
string name = 1;
|
||||
|
||||
// Timestamps.
|
||||
repeated google.protobuf.Timestamp timestamps = 2;
|
||||
// Timestamps.
|
||||
repeated google.protobuf.Timestamp timestamps = 2;
|
||||
|
||||
// Datasets.
|
||||
repeated MetricDataset datasets = 3;
|
||||
// Datasets.
|
||||
repeated MetricDataset datasets = 3;
|
||||
|
||||
// Kind.
|
||||
MetricKind kind = 4;
|
||||
// Kind.
|
||||
MetricKind kind = 4;
|
||||
}
|
||||
|
||||
message MetricDataset {
|
||||
// Label.
|
||||
string label = 1;
|
||||
// Label.
|
||||
string label = 1;
|
||||
|
||||
// Data.
|
||||
// Each value index corresponds with the same timestamp index of the Metric.
|
||||
repeated float data = 2;
|
||||
// Data.
|
||||
// Each value index corresponds with the same timestamp index of the Metric.
|
||||
repeated float data = 2;
|
||||
}
|
||||
|
||||
enum DeviceClass {
|
||||
// Class-A.
|
||||
CLASS_A = 0;
|
||||
|
||||
// Class-B.
|
||||
CLASS_B = 1;
|
||||
|
||||
// Class-C.
|
||||
CLASS_C = 2;
|
||||
}
|
||||
|
@ -83,6 +83,9 @@ message DeviceInfo {
|
||||
// Device EUI.
|
||||
string dev_eui = 8;
|
||||
|
||||
// Device class.
|
||||
common.DeviceClass device_class_enabled = 10;
|
||||
|
||||
// Device-profile and device tags.
|
||||
map<string, string> tags = 9;
|
||||
}
|
||||
|
128
api/python/src/chirpstack_api/api/device_pb2.py
vendored
128
api/python/src/chirpstack_api/api/device_pb2.py
vendored
File diff suppressed because one or more lines are too long
@ -313,18 +313,20 @@ class GetDeviceRequest(_message.Message):
|
||||
def __init__(self, dev_eui: _Optional[str] = ...) -> None: ...
|
||||
|
||||
class GetDeviceResponse(_message.Message):
|
||||
__slots__ = ["created_at", "device", "device_status", "last_seen_at", "updated_at"]
|
||||
__slots__ = ["class_enabled", "created_at", "device", "device_status", "last_seen_at", "updated_at"]
|
||||
CLASS_ENABLED_FIELD_NUMBER: _ClassVar[int]
|
||||
CREATED_AT_FIELD_NUMBER: _ClassVar[int]
|
||||
DEVICE_FIELD_NUMBER: _ClassVar[int]
|
||||
DEVICE_STATUS_FIELD_NUMBER: _ClassVar[int]
|
||||
LAST_SEEN_AT_FIELD_NUMBER: _ClassVar[int]
|
||||
UPDATED_AT_FIELD_NUMBER: _ClassVar[int]
|
||||
class_enabled: _common_pb2.DeviceClass
|
||||
created_at: _timestamp_pb2.Timestamp
|
||||
device: Device
|
||||
device_status: DeviceStatus
|
||||
last_seen_at: _timestamp_pb2.Timestamp
|
||||
updated_at: _timestamp_pb2.Timestamp
|
||||
def __init__(self, device: _Optional[_Union[Device, _Mapping]] = ..., created_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., updated_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., last_seen_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., device_status: _Optional[_Union[DeviceStatus, _Mapping]] = ...) -> None: ...
|
||||
def __init__(self, device: _Optional[_Union[Device, _Mapping]] = ..., created_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., updated_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., last_seen_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., device_status: _Optional[_Union[DeviceStatus, _Mapping]] = ..., class_enabled: _Optional[_Union[_common_pb2.DeviceClass, str]] = ...) -> None: ...
|
||||
|
||||
class GetRandomDevAddrRequest(_message.Message):
|
||||
__slots__ = ["dev_eui"]
|
||||
|
@ -188,7 +188,8 @@ class DeviceServiceServicer(object):
|
||||
raise NotImplementedError('Method not implemented!')
|
||||
|
||||
def Activate(self, request, context):
|
||||
"""Activate (re)activates the device with the given parameters (for ABP or for importing OTAA activations).
|
||||
"""Activate (re)activates the device with the given parameters (for ABP or for
|
||||
importing OTAA activations).
|
||||
"""
|
||||
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
|
||||
context.set_details('Method not implemented!')
|
||||
@ -202,14 +203,16 @@ class DeviceServiceServicer(object):
|
||||
raise NotImplementedError('Method not implemented!')
|
||||
|
||||
def GetActivation(self, request, context):
|
||||
"""GetActivation returns the current activation details of the device (OTAA or ABP).
|
||||
"""GetActivation returns the current activation details of the device (OTAA or
|
||||
ABP).
|
||||
"""
|
||||
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
|
||||
context.set_details('Method not implemented!')
|
||||
raise NotImplementedError('Method not implemented!')
|
||||
|
||||
def GetRandomDevAddr(self, request, context):
|
||||
"""GetRandomDevAddr returns a random DevAddr taking the NwkID prefix into account.
|
||||
"""GetRandomDevAddr returns a random DevAddr taking the NwkID prefix into
|
||||
account.
|
||||
"""
|
||||
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
|
||||
context.set_details('Method not implemented!')
|
||||
@ -217,7 +220,8 @@ class DeviceServiceServicer(object):
|
||||
|
||||
def GetMetrics(self, request, context):
|
||||
"""GetMetrics returns the device metrics.
|
||||
Note that this requires a device-profile with codec and measurements configured.
|
||||
Note that this requires a device-profile with codec and measurements
|
||||
configured.
|
||||
"""
|
||||
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
|
||||
context.set_details('Method not implemented!')
|
||||
|
@ -14,7 +14,7 @@ _sym_db = _symbol_database.Default()
|
||||
from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2
|
||||
|
||||
|
||||
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\"chirpstack-api/common/common.proto\x12\x06\x63ommon\x1a\x1fgoogle/protobuf/timestamp.proto\"{\n\x08Location\x12\x10\n\x08latitude\x18\x01 \x01(\x01\x12\x11\n\tlongitude\x18\x02 \x01(\x01\x12\x10\n\x08\x61ltitude\x18\x03 \x01(\x01\x12&\n\x06source\x18\x04 \x01(\x0e\x32\x16.common.LocationSource\x12\x10\n\x08\x61\x63\x63uracy\x18\x05 \x01(\x02\"1\n\x0bKeyEnvelope\x12\x11\n\tkek_label\x18\x01 \x01(\t\x12\x0f\n\x07\x61\x65s_key\x18\x02 \x01(\x0c\"\x91\x01\n\x06Metric\x12\x0c\n\x04name\x18\x01 \x01(\t\x12.\n\ntimestamps\x18\x02 \x03(\x0b\x32\x1a.google.protobuf.Timestamp\x12\'\n\x08\x64\x61tasets\x18\x03 \x03(\x0b\x32\x15.common.MetricDataset\x12 \n\x04kind\x18\x04 \x01(\x0e\x32\x12.common.MetricKind\",\n\rMetricDataset\x12\r\n\x05label\x18\x01 \x01(\t\x12\x0c\n\x04\x64\x61ta\x18\x02 \x03(\x02*,\n\nModulation\x12\x08\n\x04LORA\x10\x00\x12\x07\n\x03\x46SK\x10\x01\x12\x0b\n\x07LR_FHSS\x10\x02*\xaa\x01\n\x06Region\x12\t\n\x05\x45U868\x10\x00\x12\t\n\x05US915\x10\x02\x12\t\n\x05\x43N779\x10\x03\x12\t\n\x05\x45U433\x10\x04\x12\t\n\x05\x41U915\x10\x05\x12\t\n\x05\x43N470\x10\x06\x12\t\n\x05\x41S923\x10\x07\x12\x0b\n\x07\x41S923_2\x10\x0c\x12\x0b\n\x07\x41S923_3\x10\r\x12\x0b\n\x07\x41S923_4\x10\x0e\x12\t\n\x05KR920\x10\x08\x12\t\n\x05IN865\x10\t\x12\t\n\x05RU864\x10\n\x12\x0b\n\x07ISM2400\x10\x0b*\xb3\x01\n\x05MType\x12\x10\n\x0cJOIN_REQUEST\x10\x00\x12\x0f\n\x0bJOIN_ACCEPT\x10\x01\x12\x17\n\x13UNCONFIRMED_DATA_UP\x10\x02\x12\x19\n\x15UNCONFIRMED_DATA_DOWN\x10\x03\x12\x15\n\x11\x43ONFIRMED_DATA_UP\x10\x04\x12\x17\n\x13\x43ONFIRMED_DATA_DOWN\x10\x05\x12\x12\n\x0eREJOIN_REQUEST\x10\x06\x12\x0f\n\x0bPROPRIETARY\x10\x07*~\n\nMacVersion\x12\x11\n\rLORAWAN_1_0_0\x10\x00\x12\x11\n\rLORAWAN_1_0_1\x10\x01\x12\x11\n\rLORAWAN_1_0_2\x10\x02\x12\x11\n\rLORAWAN_1_0_3\x10\x03\x12\x11\n\rLORAWAN_1_0_4\x10\x04\x12\x11\n\rLORAWAN_1_1_0\x10\x05*e\n\x11RegParamsRevision\x12\x05\n\x01\x41\x10\x00\x12\x05\n\x01\x42\x10\x01\x12\x0f\n\x0bRP002_1_0_0\x10\x02\x12\x0f\n\x0bRP002_1_0_1\x10\x03\x12\x0f\n\x0bRP002_1_0_2\x10\x04\x12\x0f\n\x0bRP002_1_0_3\x10\x05*\x8e\x01\n\x0eLocationSource\x12\x0b\n\x07UNKNOWN\x10\x00\x12\x07\n\x03GPS\x10\x01\x12\n\n\x06\x43ONFIG\x10\x02\x12\x15\n\x11GEO_RESOLVER_TDOA\x10\x03\x12\x15\n\x11GEO_RESOLVER_RSSI\x10\x04\x12\x15\n\x11GEO_RESOLVER_GNSS\x10\x05\x12\x15\n\x11GEO_RESOLVER_WIFI\x10\x06*+\n\x0b\x41ggregation\x12\x08\n\x04HOUR\x10\x00\x12\x07\n\x03\x44\x41Y\x10\x01\x12\t\n\x05MONTH\x10\x02*2\n\nMetricKind\x12\x0b\n\x07\x43OUNTER\x10\x00\x12\x0c\n\x08\x41\x42SOLUTE\x10\x01\x12\t\n\x05GAUGE\x10\x02\x42i\n\x11io.chirpstack.apiB\x0b\x43ommonProtoP\x01Z1github.com/chirpstack/chirpstack/api/go/v4/common\xaa\x02\x11\x43hirpstack.Commonb\x06proto3')
|
||||
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\"chirpstack-api/common/common.proto\x12\x06\x63ommon\x1a\x1fgoogle/protobuf/timestamp.proto\"{\n\x08Location\x12\x10\n\x08latitude\x18\x01 \x01(\x01\x12\x11\n\tlongitude\x18\x02 \x01(\x01\x12\x10\n\x08\x61ltitude\x18\x03 \x01(\x01\x12&\n\x06source\x18\x04 \x01(\x0e\x32\x16.common.LocationSource\x12\x10\n\x08\x61\x63\x63uracy\x18\x05 \x01(\x02\"1\n\x0bKeyEnvelope\x12\x11\n\tkek_label\x18\x01 \x01(\t\x12\x0f\n\x07\x61\x65s_key\x18\x02 \x01(\x0c\"\x91\x01\n\x06Metric\x12\x0c\n\x04name\x18\x01 \x01(\t\x12.\n\ntimestamps\x18\x02 \x03(\x0b\x32\x1a.google.protobuf.Timestamp\x12\'\n\x08\x64\x61tasets\x18\x03 \x03(\x0b\x32\x15.common.MetricDataset\x12 \n\x04kind\x18\x04 \x01(\x0e\x32\x12.common.MetricKind\",\n\rMetricDataset\x12\r\n\x05label\x18\x01 \x01(\t\x12\x0c\n\x04\x64\x61ta\x18\x02 \x03(\x02*,\n\nModulation\x12\x08\n\x04LORA\x10\x00\x12\x07\n\x03\x46SK\x10\x01\x12\x0b\n\x07LR_FHSS\x10\x02*\xaa\x01\n\x06Region\x12\t\n\x05\x45U868\x10\x00\x12\t\n\x05US915\x10\x02\x12\t\n\x05\x43N779\x10\x03\x12\t\n\x05\x45U433\x10\x04\x12\t\n\x05\x41U915\x10\x05\x12\t\n\x05\x43N470\x10\x06\x12\t\n\x05\x41S923\x10\x07\x12\x0b\n\x07\x41S923_2\x10\x0c\x12\x0b\n\x07\x41S923_3\x10\r\x12\x0b\n\x07\x41S923_4\x10\x0e\x12\t\n\x05KR920\x10\x08\x12\t\n\x05IN865\x10\t\x12\t\n\x05RU864\x10\n\x12\x0b\n\x07ISM2400\x10\x0b*\xb3\x01\n\x05MType\x12\x10\n\x0cJOIN_REQUEST\x10\x00\x12\x0f\n\x0bJOIN_ACCEPT\x10\x01\x12\x17\n\x13UNCONFIRMED_DATA_UP\x10\x02\x12\x19\n\x15UNCONFIRMED_DATA_DOWN\x10\x03\x12\x15\n\x11\x43ONFIRMED_DATA_UP\x10\x04\x12\x17\n\x13\x43ONFIRMED_DATA_DOWN\x10\x05\x12\x12\n\x0eREJOIN_REQUEST\x10\x06\x12\x0f\n\x0bPROPRIETARY\x10\x07*~\n\nMacVersion\x12\x11\n\rLORAWAN_1_0_0\x10\x00\x12\x11\n\rLORAWAN_1_0_1\x10\x01\x12\x11\n\rLORAWAN_1_0_2\x10\x02\x12\x11\n\rLORAWAN_1_0_3\x10\x03\x12\x11\n\rLORAWAN_1_0_4\x10\x04\x12\x11\n\rLORAWAN_1_1_0\x10\x05*e\n\x11RegParamsRevision\x12\x05\n\x01\x41\x10\x00\x12\x05\n\x01\x42\x10\x01\x12\x0f\n\x0bRP002_1_0_0\x10\x02\x12\x0f\n\x0bRP002_1_0_1\x10\x03\x12\x0f\n\x0bRP002_1_0_2\x10\x04\x12\x0f\n\x0bRP002_1_0_3\x10\x05*\x8e\x01\n\x0eLocationSource\x12\x0b\n\x07UNKNOWN\x10\x00\x12\x07\n\x03GPS\x10\x01\x12\n\n\x06\x43ONFIG\x10\x02\x12\x15\n\x11GEO_RESOLVER_TDOA\x10\x03\x12\x15\n\x11GEO_RESOLVER_RSSI\x10\x04\x12\x15\n\x11GEO_RESOLVER_GNSS\x10\x05\x12\x15\n\x11GEO_RESOLVER_WIFI\x10\x06*+\n\x0b\x41ggregation\x12\x08\n\x04HOUR\x10\x00\x12\x07\n\x03\x44\x41Y\x10\x01\x12\t\n\x05MONTH\x10\x02*2\n\nMetricKind\x12\x0b\n\x07\x43OUNTER\x10\x00\x12\x0c\n\x08\x41\x42SOLUTE\x10\x01\x12\t\n\x05GAUGE\x10\x02*4\n\x0b\x44\x65viceClass\x12\x0b\n\x07\x43LASS_A\x10\x00\x12\x0b\n\x07\x43LASS_B\x10\x01\x12\x0b\n\x07\x43LASS_C\x10\x02\x42i\n\x11io.chirpstack.apiB\x0b\x43ommonProtoP\x01Z1github.com/chirpstack/chirpstack/api/go/v4/common\xaa\x02\x11\x43hirpstack.Commonb\x06proto3')
|
||||
|
||||
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, globals())
|
||||
_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'chirpstack_api.common.common_pb2', globals())
|
||||
@ -38,6 +38,8 @@ if _descriptor._USE_C_DESCRIPTORS == False:
|
||||
_AGGREGATION._serialized_end=1269
|
||||
_METRICKIND._serialized_start=1271
|
||||
_METRICKIND._serialized_end=1321
|
||||
_DEVICECLASS._serialized_start=1323
|
||||
_DEVICECLASS._serialized_end=1375
|
||||
_LOCATION._serialized_start=79
|
||||
_LOCATION._serialized_end=202
|
||||
_KEYENVELOPE._serialized_start=204
|
||||
|
@ -13,6 +13,9 @@ AS923_3: Region
|
||||
AS923_4: Region
|
||||
AU915: Region
|
||||
B: RegParamsRevision
|
||||
CLASS_A: DeviceClass
|
||||
CLASS_B: DeviceClass
|
||||
CLASS_C: DeviceClass
|
||||
CN470: Region
|
||||
CN779: Region
|
||||
CONFIG: LocationSource
|
||||
@ -122,3 +125,6 @@ class Aggregation(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
|
||||
|
||||
class MetricKind(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
|
||||
__slots__ = []
|
||||
|
||||
class DeviceClass(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
|
||||
__slots__ = []
|
||||
|
File diff suppressed because one or more lines are too long
@ -40,7 +40,7 @@ class AckEvent(_message.Message):
|
||||
def __init__(self, deduplication_id: _Optional[str] = ..., time: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., device_info: _Optional[_Union[DeviceInfo, _Mapping]] = ..., queue_item_id: _Optional[str] = ..., acknowledged: bool = ..., f_cnt_down: _Optional[int] = ...) -> None: ...
|
||||
|
||||
class DeviceInfo(_message.Message):
|
||||
__slots__ = ["application_id", "application_name", "dev_eui", "device_name", "device_profile_id", "device_profile_name", "tags", "tenant_id", "tenant_name"]
|
||||
__slots__ = ["application_id", "application_name", "dev_eui", "device_class_enabled", "device_name", "device_profile_id", "device_profile_name", "tags", "tenant_id", "tenant_name"]
|
||||
class TagsEntry(_message.Message):
|
||||
__slots__ = ["key", "value"]
|
||||
KEY_FIELD_NUMBER: _ClassVar[int]
|
||||
@ -50,6 +50,7 @@ class DeviceInfo(_message.Message):
|
||||
def __init__(self, key: _Optional[str] = ..., value: _Optional[str] = ...) -> None: ...
|
||||
APPLICATION_ID_FIELD_NUMBER: _ClassVar[int]
|
||||
APPLICATION_NAME_FIELD_NUMBER: _ClassVar[int]
|
||||
DEVICE_CLASS_ENABLED_FIELD_NUMBER: _ClassVar[int]
|
||||
DEVICE_NAME_FIELD_NUMBER: _ClassVar[int]
|
||||
DEVICE_PROFILE_ID_FIELD_NUMBER: _ClassVar[int]
|
||||
DEVICE_PROFILE_NAME_FIELD_NUMBER: _ClassVar[int]
|
||||
@ -60,13 +61,14 @@ class DeviceInfo(_message.Message):
|
||||
application_id: str
|
||||
application_name: str
|
||||
dev_eui: str
|
||||
device_class_enabled: _common_pb2.DeviceClass
|
||||
device_name: str
|
||||
device_profile_id: str
|
||||
device_profile_name: str
|
||||
tags: _containers.ScalarMap[str, str]
|
||||
tenant_id: str
|
||||
tenant_name: str
|
||||
def __init__(self, tenant_id: _Optional[str] = ..., tenant_name: _Optional[str] = ..., application_id: _Optional[str] = ..., application_name: _Optional[str] = ..., device_profile_id: _Optional[str] = ..., device_profile_name: _Optional[str] = ..., device_name: _Optional[str] = ..., dev_eui: _Optional[str] = ..., tags: _Optional[_Mapping[str, str]] = ...) -> None: ...
|
||||
def __init__(self, tenant_id: _Optional[str] = ..., tenant_name: _Optional[str] = ..., application_id: _Optional[str] = ..., application_name: _Optional[str] = ..., device_profile_id: _Optional[str] = ..., device_profile_name: _Optional[str] = ..., device_name: _Optional[str] = ..., dev_eui: _Optional[str] = ..., device_class_enabled: _Optional[_Union[_common_pb2.DeviceClass, str]] = ..., tags: _Optional[_Mapping[str, str]] = ...) -> None: ...
|
||||
|
||||
class DownlinkCommand(_message.Message):
|
||||
__slots__ = ["confirmed", "data", "dev_eui", "f_port", "id", "object"]
|
||||
|
Reference in New Issue
Block a user