syntax = "proto3";
package common;
option go_package = "github.com/brocaar/chirpstack-api/go/v3/common";
option java_package = "io.chirpstack.api.common";
option java_multiple_files = true;
option java_outer_classname = "CommonProto";
enum Modulation {
// LoRa
LORA = 0;
// FSK
FSK = 1;
// LR-FHSS
LR_FHSS = 2;
}
enum Region {
// EU868
EU868 = 0;
// US915
US915 = 2;
// CN779
CN779 = 3;
// EU433
EU433 = 4;
// AU915
AU915 = 5;
// CN470
CN470 = 6;
// AS923
AS923 = 7;
// AS923 with -1.80 MHz frequency offset
AS923_2 = 12;
// AS923 with -6.60 MHz frequency offset
AS923_3 = 13;
// AS923 with -5.90 MHz frequency offset
AS923_4 = 14;
// KR920
KR920 = 8;
// IN865
IN865 = 9;
// RU864
RU864 = 10;
// ISM2400 (LoRaWAN 2.4 GHz)
ISM2400 = 11;
}
enum MType {
// JoinRequest.
JoinRequest = 0;
// JoinAccept.
JoinAccept = 1;
// UnconfirmedDataUp.
UnconfirmedDataUp = 2;
// UnconfirmedDataDown.
UnconfirmedDataDown = 3;
// ConfirmedDataUp.
ConfirmedDataUp = 4;
// ConfirmedDataDown.
ConfirmedDataDown = 5;
// RejoinRequest.
RejoinRequest = 6;
// Proprietary.
Proprietary = 7;
}
message KeyEnvelope {
// KEK label.
string kek_label = 1;
// AES key (when the kek_label is set, this key is encrypted using a key
// known to the join-server and application-server.
// For more information please refer to the LoRaWAN Backend Interface
// 'Key Transport Security' section.
bytes aes_key = 2;
}
enum LocationSource {
// Unknown.
UNKNOWN = 0;
// GPS.
GPS = 1;
// Manually configured.
CONFIG = 2;
// Geo resolver (TDOA).
GEO_RESOLVER_TDOA = 3;
// Geo resolver (RSSI).
GEO_RESOLVER_RSSI = 4;
// Geo resolver (GNSS).
GEO_RESOLVER_GNSS = 5;
// Geo resolver (WIFI).
GEO_RESOLVER_WIFI = 6;
}
message Location {
// Latitude.
double latitude = 1;
// Longitude.
double longitude = 2;
// Altitude.
double altitude = 3;
// Location source.
LocationSource source = 4;
// Accuracy (in meters).
uint32 accuracy = 5;
}