Bump version to 4.7.0-test.1

This commit is contained in:
Orne Brocaar 2024-01-11 12:48:18 +00:00
parent 3b7ab175b4
commit cc47958839
48 changed files with 705 additions and 705 deletions

10
Cargo.lock generated
View File

@ -570,7 +570,7 @@ dependencies = [
[[package]]
name = "backend"
version = "4.6.0"
version = "4.7.0-test.1"
dependencies = [
"aes-kw",
"anyhow",
@ -787,7 +787,7 @@ checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
[[package]]
name = "chirpstack"
version = "4.6.0"
version = "4.7.0-test.1"
dependencies = [
"aes",
"anyhow",
@ -874,7 +874,7 @@ dependencies = [
[[package]]
name = "chirpstack_api"
version = "4.6.0"
version = "4.7.0-test.1"
dependencies = [
"hex",
"pbjson",
@ -2433,7 +2433,7 @@ dependencies = [
[[package]]
name = "lrwn"
version = "4.6.0"
version = "4.7.0-test.1"
dependencies = [
"aes",
"anyhow",
@ -2447,7 +2447,7 @@ dependencies = [
[[package]]
name = "lrwn_filters"
version = "4.6.0"
version = "4.7.0-test.1"
dependencies = [
"hex",
"lrwn",

View File

@ -1,6 +1,6 @@
{
"name": "@chirpstack/chirpstack-api-grpc-web",
"version": "4.6.0",
"version": "4.7.0-test.1",
"description": "Chirpstack gRPC-web API",
"license": "MIT",
"devDependencies": {

View File

@ -8,7 +8,7 @@ plugins {
}
group = "io.chirpstack"
version = "4.6.0"
version = "4.7.0-test.1"
repositories {
mavenCentral()

2
api/js/package.json vendored
View File

@ -1,6 +1,6 @@
{
"name": "@chirpstack/chirpstack-api",
"version": "4.6.0",
"version": "4.7.0-test.1",
"description": "Chirpstack JS and TS API",
"license": "MIT",
"devDependencies": {

View File

@ -9,7 +9,7 @@ plugins {
}
group = "io.chirpstack"
version = "4.6.0"
version = "4.7.0-test.1"
repositories {
mavenCentral()

View File

@ -1,6 +1,7 @@
# -*- coding: utf-8 -*-
# Generated by the protocol buffer compiler. DO NOT EDIT!
# source: chirpstack-api/api/application.proto
# Protobuf Python Version: 4.25.0
"""Generated protocol buffer code."""
from google.protobuf import descriptor as _descriptor
from google.protobuf import descriptor_pool as _descriptor_pool
@ -22,107 +23,106 @@ _globals = globals()
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'chirpstack_api.api.application_pb2', _globals)
if _descriptor._USE_C_DESCRIPTORS == False:
DESCRIPTOR._options = None
DESCRIPTOR._serialized_options = b'\n\021io.chirpstack.apiB\020ApplicationProtoP\001Z.github.com/chirpstack/chirpstack/api/go/v4/api\252\002\016Chirpstack.Api'
_APPLICATION_TAGSENTRY._options = None
_APPLICATION_TAGSENTRY._serialized_options = b'8\001'
_HTTPINTEGRATION_HEADERSENTRY._options = None
_HTTPINTEGRATION_HEADERSENTRY._serialized_options = b'8\001'
_APPLICATIONSERVICE.methods_by_name['Create']._options = None
_APPLICATIONSERVICE.methods_by_name['Create']._serialized_options = b'\202\323\344\223\002\026\"\021/api/applications:\001*'
_APPLICATIONSERVICE.methods_by_name['Get']._options = None
_APPLICATIONSERVICE.methods_by_name['Get']._serialized_options = b'\202\323\344\223\002\030\022\026/api/applications/{id}'
_APPLICATIONSERVICE.methods_by_name['Update']._options = None
_APPLICATIONSERVICE.methods_by_name['Update']._serialized_options = b'\202\323\344\223\002\'\032\"/api/applications/{application.id}:\001*'
_APPLICATIONSERVICE.methods_by_name['Delete']._options = None
_APPLICATIONSERVICE.methods_by_name['Delete']._serialized_options = b'\202\323\344\223\002\030*\026/api/applications/{id}'
_APPLICATIONSERVICE.methods_by_name['List']._options = None
_APPLICATIONSERVICE.methods_by_name['List']._serialized_options = b'\202\323\344\223\002\023\022\021/api/applications'
_APPLICATIONSERVICE.methods_by_name['ListIntegrations']._options = None
_APPLICATIONSERVICE.methods_by_name['ListIntegrations']._serialized_options = b'\202\323\344\223\0021\022//api/applications/{application_id}/integrations'
_APPLICATIONSERVICE.methods_by_name['CreateHttpIntegration']._options = None
_APPLICATIONSERVICE.methods_by_name['CreateHttpIntegration']._serialized_options = b'\202\323\344\223\002E\"@/api/applications/{integration.application_id}/integrations/http:\001*'
_APPLICATIONSERVICE.methods_by_name['GetHttpIntegration']._options = None
_APPLICATIONSERVICE.methods_by_name['GetHttpIntegration']._serialized_options = b'\202\323\344\223\0026\0224/api/applications/{application_id}/integrations/http'
_APPLICATIONSERVICE.methods_by_name['UpdateHttpIntegration']._options = None
_APPLICATIONSERVICE.methods_by_name['UpdateHttpIntegration']._serialized_options = b'\202\323\344\223\002E\032@/api/applications/{integration.application_id}/integrations/http:\001*'
_APPLICATIONSERVICE.methods_by_name['DeleteHttpIntegration']._options = None
_APPLICATIONSERVICE.methods_by_name['DeleteHttpIntegration']._serialized_options = b'\202\323\344\223\0026*4/api/applications/{application_id}/integrations/http'
_APPLICATIONSERVICE.methods_by_name['CreateInfluxDbIntegration']._options = None
_APPLICATIONSERVICE.methods_by_name['CreateInfluxDbIntegration']._serialized_options = b'\202\323\344\223\002I\"D/api/applications/{integration.application_id}/integrations/influxdb:\001*'
_APPLICATIONSERVICE.methods_by_name['GetInfluxDbIntegration']._options = None
_APPLICATIONSERVICE.methods_by_name['GetInfluxDbIntegration']._serialized_options = b'\202\323\344\223\002:\0228/api/applications/{application_id}/integrations/influxdb'
_APPLICATIONSERVICE.methods_by_name['UpdateInfluxDbIntegration']._options = None
_APPLICATIONSERVICE.methods_by_name['UpdateInfluxDbIntegration']._serialized_options = b'\202\323\344\223\002I\032D/api/applications/{integration.application_id}/integrations/influxdb:\001*'
_APPLICATIONSERVICE.methods_by_name['DeleteInfluxDbIntegration']._options = None
_APPLICATIONSERVICE.methods_by_name['DeleteInfluxDbIntegration']._serialized_options = b'\202\323\344\223\002:*8/api/applications/{application_id}/integrations/influxdb'
_APPLICATIONSERVICE.methods_by_name['CreateThingsBoardIntegration']._options = None
_APPLICATIONSERVICE.methods_by_name['CreateThingsBoardIntegration']._serialized_options = b'\202\323\344\223\002L\"G/api/applications/{integration.application_id}/integrations/thingsboard:\001*'
_APPLICATIONSERVICE.methods_by_name['GetThingsBoardIntegration']._options = None
_APPLICATIONSERVICE.methods_by_name['GetThingsBoardIntegration']._serialized_options = b'\202\323\344\223\002=\022;/api/applications/{application_id}/integrations/thingsboard'
_APPLICATIONSERVICE.methods_by_name['UpdateThingsBoardIntegration']._options = None
_APPLICATIONSERVICE.methods_by_name['UpdateThingsBoardIntegration']._serialized_options = b'\202\323\344\223\002L\032G/api/applications/{integration.application_id}/integrations/thingsboard:\001*'
_APPLICATIONSERVICE.methods_by_name['DeleteThingsBoardIntegration']._options = None
_APPLICATIONSERVICE.methods_by_name['DeleteThingsBoardIntegration']._serialized_options = b'\202\323\344\223\002=*;/api/applications/{application_id}/integrations/thingsboard'
_APPLICATIONSERVICE.methods_by_name['CreateMyDevicesIntegration']._options = None
_APPLICATIONSERVICE.methods_by_name['CreateMyDevicesIntegration']._serialized_options = b'\202\323\344\223\002J\"E/api/applications/{integration.application_id}/integrations/mydevices:\001*'
_APPLICATIONSERVICE.methods_by_name['GetMyDevicesIntegration']._options = None
_APPLICATIONSERVICE.methods_by_name['GetMyDevicesIntegration']._serialized_options = b'\202\323\344\223\002;\0229/api/applications/{application_id}/integrations/mydevices'
_APPLICATIONSERVICE.methods_by_name['UpdateMyDevicesIntegration']._options = None
_APPLICATIONSERVICE.methods_by_name['UpdateMyDevicesIntegration']._serialized_options = b'\202\323\344\223\002J\032E/api/applications/{integration.application_id}/integrations/mydevices:\001*'
_APPLICATIONSERVICE.methods_by_name['DeleteMyDevicesIntegration']._options = None
_APPLICATIONSERVICE.methods_by_name['DeleteMyDevicesIntegration']._serialized_options = b'\202\323\344\223\002;*9/api/applications/{application_id}/integrations/mydevices'
_APPLICATIONSERVICE.methods_by_name['CreateLoraCloudIntegration']._options = None
_APPLICATIONSERVICE.methods_by_name['CreateLoraCloudIntegration']._serialized_options = b'\202\323\344\223\002J\"E/api/applications/{integration.application_id}/integrations/loracloud:\001*'
_APPLICATIONSERVICE.methods_by_name['GetLoraCloudIntegration']._options = None
_APPLICATIONSERVICE.methods_by_name['GetLoraCloudIntegration']._serialized_options = b'\202\323\344\223\002;\0229/api/applications/{application_id}/integrations/loracloud'
_APPLICATIONSERVICE.methods_by_name['UpdateLoraCloudIntegration']._options = None
_APPLICATIONSERVICE.methods_by_name['UpdateLoraCloudIntegration']._serialized_options = b'\202\323\344\223\002J\032E/api/applications/{integration.application_id}/integrations/loracloud:\001*'
_APPLICATIONSERVICE.methods_by_name['DeleteLoraCloudIntegration']._options = None
_APPLICATIONSERVICE.methods_by_name['DeleteLoraCloudIntegration']._serialized_options = b'\202\323\344\223\002;*9/api/applications/{application_id}/integrations/loracloud'
_APPLICATIONSERVICE.methods_by_name['CreateGcpPubSubIntegration']._options = None
_APPLICATIONSERVICE.methods_by_name['CreateGcpPubSubIntegration']._serialized_options = b'\202\323\344\223\002L\"G/api/applications/{integration.application_id}/integrations/gcp-pub-sub:\001*'
_APPLICATIONSERVICE.methods_by_name['GetGcpPubSubIntegration']._options = None
_APPLICATIONSERVICE.methods_by_name['GetGcpPubSubIntegration']._serialized_options = b'\202\323\344\223\002=\022;/api/applications/{application_id}/integrations/gcp-pub-sub'
_APPLICATIONSERVICE.methods_by_name['UpdateGcpPubSubIntegration']._options = None
_APPLICATIONSERVICE.methods_by_name['UpdateGcpPubSubIntegration']._serialized_options = b'\202\323\344\223\002L\032G/api/applications/{integration.application_id}/integrations/gcp-pub-sub:\001*'
_APPLICATIONSERVICE.methods_by_name['DeleteGcpPubSubIntegration']._options = None
_APPLICATIONSERVICE.methods_by_name['DeleteGcpPubSubIntegration']._serialized_options = b'\202\323\344\223\002=*;/api/applications/{application_id}/integrations/gcp-pub-sub'
_APPLICATIONSERVICE.methods_by_name['CreateAwsSnsIntegration']._options = None
_APPLICATIONSERVICE.methods_by_name['CreateAwsSnsIntegration']._serialized_options = b'\202\323\344\223\002H\"C/api/applications/{integration.application_id}/integrations/aws-sns:\001*'
_APPLICATIONSERVICE.methods_by_name['GetAwsSnsIntegration']._options = None
_APPLICATIONSERVICE.methods_by_name['GetAwsSnsIntegration']._serialized_options = b'\202\323\344\223\0029\0227/api/applications/{application_id}/integrations/aws-sns'
_APPLICATIONSERVICE.methods_by_name['UpdateAwsSnsIntegration']._options = None
_APPLICATIONSERVICE.methods_by_name['UpdateAwsSnsIntegration']._serialized_options = b'\202\323\344\223\002H\032C/api/applications/{integration.application_id}/integrations/aws-sns:\001*'
_APPLICATIONSERVICE.methods_by_name['DeleteAwsSnsIntegration']._options = None
_APPLICATIONSERVICE.methods_by_name['DeleteAwsSnsIntegration']._serialized_options = b'\202\323\344\223\0029*7/api/applications/{application_id}/integrations/aws-sns'
_APPLICATIONSERVICE.methods_by_name['CreateAzureServiceBusIntegration']._options = None
_APPLICATIONSERVICE.methods_by_name['CreateAzureServiceBusIntegration']._serialized_options = b'\202\323\344\223\002R\"M/api/applications/{integration.application_id}/integrations/azure-service-bus:\001*'
_APPLICATIONSERVICE.methods_by_name['GetAzureServiceBusIntegration']._options = None
_APPLICATIONSERVICE.methods_by_name['GetAzureServiceBusIntegration']._serialized_options = b'\202\323\344\223\002C\022A/api/applications/{application_id}/integrations/azure-service-bus'
_APPLICATIONSERVICE.methods_by_name['UpdateAzureServiceBusIntegration']._options = None
_APPLICATIONSERVICE.methods_by_name['UpdateAzureServiceBusIntegration']._serialized_options = b'\202\323\344\223\002R\032M/api/applications/{integration.application_id}/integrations/azure-service-bus:\001*'
_APPLICATIONSERVICE.methods_by_name['DeleteAzureServiceBusIntegration']._options = None
_APPLICATIONSERVICE.methods_by_name['DeleteAzureServiceBusIntegration']._serialized_options = b'\202\323\344\223\002C*A/api/applications/{application_id}/integrations/azure-service-bus'
_APPLICATIONSERVICE.methods_by_name['CreatePilotThingsIntegration']._options = None
_APPLICATIONSERVICE.methods_by_name['CreatePilotThingsIntegration']._serialized_options = b'\202\323\344\223\002M\"H/api/applications/{integration.application_id}/integrations/pilot-things:\001*'
_APPLICATIONSERVICE.methods_by_name['GetPilotThingsIntegration']._options = None
_APPLICATIONSERVICE.methods_by_name['GetPilotThingsIntegration']._serialized_options = b'\202\323\344\223\002>\022</api/applications/{application_id}/integrations/pilot-things'
_APPLICATIONSERVICE.methods_by_name['UpdatePilotThingsIntegration']._options = None
_APPLICATIONSERVICE.methods_by_name['UpdatePilotThingsIntegration']._serialized_options = b'\202\323\344\223\002M\032H/api/applications/{integration.application_id}/integrations/pilot-things:\001*'
_APPLICATIONSERVICE.methods_by_name['DeletePilotThingsIntegration']._options = None
_APPLICATIONSERVICE.methods_by_name['DeletePilotThingsIntegration']._serialized_options = b'\202\323\344\223\002>*</api/applications/{application_id}/integrations/pilot-things'
_APPLICATIONSERVICE.methods_by_name['CreateIftttIntegration']._options = None
_APPLICATIONSERVICE.methods_by_name['CreateIftttIntegration']._serialized_options = b'\202\323\344\223\002F\"A/api/applications/{integration.application_id}/integrations/ifttt:\001*'
_APPLICATIONSERVICE.methods_by_name['GetIftttIntegration']._options = None
_APPLICATIONSERVICE.methods_by_name['GetIftttIntegration']._serialized_options = b'\202\323\344\223\0027\0225/api/applications/{application_id}/integrations/ifttt'
_APPLICATIONSERVICE.methods_by_name['UpdateIftttIntegration']._options = None
_APPLICATIONSERVICE.methods_by_name['UpdateIftttIntegration']._serialized_options = b'\202\323\344\223\002F\032A/api/applications/{integration.application_id}/integrations/ifttt:\001*'
_APPLICATIONSERVICE.methods_by_name['DeleteIftttIntegration']._options = None
_APPLICATIONSERVICE.methods_by_name['DeleteIftttIntegration']._serialized_options = b'\202\323\344\223\0027*5/api/applications/{application_id}/integrations/ifttt'
_APPLICATIONSERVICE.methods_by_name['GenerateMqttIntegrationClientCertificate']._options = None
_APPLICATIONSERVICE.methods_by_name['GenerateMqttIntegrationClientCertificate']._serialized_options = b'\202\323\344\223\002B\"@/api/applications/{application_id}/integrations/mqtt/certificate'
_globals['DESCRIPTOR']._options = None
_globals['DESCRIPTOR']._serialized_options = b'\n\021io.chirpstack.apiB\020ApplicationProtoP\001Z.github.com/chirpstack/chirpstack/api/go/v4/api\252\002\016Chirpstack.Api'
_globals['_APPLICATION_TAGSENTRY']._options = None
_globals['_APPLICATION_TAGSENTRY']._serialized_options = b'8\001'
_globals['_HTTPINTEGRATION_HEADERSENTRY']._options = None
_globals['_HTTPINTEGRATION_HEADERSENTRY']._serialized_options = b'8\001'
_globals['_APPLICATIONSERVICE'].methods_by_name['Create']._options = None
_globals['_APPLICATIONSERVICE'].methods_by_name['Create']._serialized_options = b'\202\323\344\223\002\026\"\021/api/applications:\001*'
_globals['_APPLICATIONSERVICE'].methods_by_name['Get']._options = None
_globals['_APPLICATIONSERVICE'].methods_by_name['Get']._serialized_options = b'\202\323\344\223\002\030\022\026/api/applications/{id}'
_globals['_APPLICATIONSERVICE'].methods_by_name['Update']._options = None
_globals['_APPLICATIONSERVICE'].methods_by_name['Update']._serialized_options = b'\202\323\344\223\002\'\032\"/api/applications/{application.id}:\001*'
_globals['_APPLICATIONSERVICE'].methods_by_name['Delete']._options = None
_globals['_APPLICATIONSERVICE'].methods_by_name['Delete']._serialized_options = b'\202\323\344\223\002\030*\026/api/applications/{id}'
_globals['_APPLICATIONSERVICE'].methods_by_name['List']._options = None
_globals['_APPLICATIONSERVICE'].methods_by_name['List']._serialized_options = b'\202\323\344\223\002\023\022\021/api/applications'
_globals['_APPLICATIONSERVICE'].methods_by_name['ListIntegrations']._options = None
_globals['_APPLICATIONSERVICE'].methods_by_name['ListIntegrations']._serialized_options = b'\202\323\344\223\0021\022//api/applications/{application_id}/integrations'
_globals['_APPLICATIONSERVICE'].methods_by_name['CreateHttpIntegration']._options = None
_globals['_APPLICATIONSERVICE'].methods_by_name['CreateHttpIntegration']._serialized_options = b'\202\323\344\223\002E\"@/api/applications/{integration.application_id}/integrations/http:\001*'
_globals['_APPLICATIONSERVICE'].methods_by_name['GetHttpIntegration']._options = None
_globals['_APPLICATIONSERVICE'].methods_by_name['GetHttpIntegration']._serialized_options = b'\202\323\344\223\0026\0224/api/applications/{application_id}/integrations/http'
_globals['_APPLICATIONSERVICE'].methods_by_name['UpdateHttpIntegration']._options = None
_globals['_APPLICATIONSERVICE'].methods_by_name['UpdateHttpIntegration']._serialized_options = b'\202\323\344\223\002E\032@/api/applications/{integration.application_id}/integrations/http:\001*'
_globals['_APPLICATIONSERVICE'].methods_by_name['DeleteHttpIntegration']._options = None
_globals['_APPLICATIONSERVICE'].methods_by_name['DeleteHttpIntegration']._serialized_options = b'\202\323\344\223\0026*4/api/applications/{application_id}/integrations/http'
_globals['_APPLICATIONSERVICE'].methods_by_name['CreateInfluxDbIntegration']._options = None
_globals['_APPLICATIONSERVICE'].methods_by_name['CreateInfluxDbIntegration']._serialized_options = b'\202\323\344\223\002I\"D/api/applications/{integration.application_id}/integrations/influxdb:\001*'
_globals['_APPLICATIONSERVICE'].methods_by_name['GetInfluxDbIntegration']._options = None
_globals['_APPLICATIONSERVICE'].methods_by_name['GetInfluxDbIntegration']._serialized_options = b'\202\323\344\223\002:\0228/api/applications/{application_id}/integrations/influxdb'
_globals['_APPLICATIONSERVICE'].methods_by_name['UpdateInfluxDbIntegration']._options = None
_globals['_APPLICATIONSERVICE'].methods_by_name['UpdateInfluxDbIntegration']._serialized_options = b'\202\323\344\223\002I\032D/api/applications/{integration.application_id}/integrations/influxdb:\001*'
_globals['_APPLICATIONSERVICE'].methods_by_name['DeleteInfluxDbIntegration']._options = None
_globals['_APPLICATIONSERVICE'].methods_by_name['DeleteInfluxDbIntegration']._serialized_options = b'\202\323\344\223\002:*8/api/applications/{application_id}/integrations/influxdb'
_globals['_APPLICATIONSERVICE'].methods_by_name['CreateThingsBoardIntegration']._options = None
_globals['_APPLICATIONSERVICE'].methods_by_name['CreateThingsBoardIntegration']._serialized_options = b'\202\323\344\223\002L\"G/api/applications/{integration.application_id}/integrations/thingsboard:\001*'
_globals['_APPLICATIONSERVICE'].methods_by_name['GetThingsBoardIntegration']._options = None
_globals['_APPLICATIONSERVICE'].methods_by_name['GetThingsBoardIntegration']._serialized_options = b'\202\323\344\223\002=\022;/api/applications/{application_id}/integrations/thingsboard'
_globals['_APPLICATIONSERVICE'].methods_by_name['UpdateThingsBoardIntegration']._options = None
_globals['_APPLICATIONSERVICE'].methods_by_name['UpdateThingsBoardIntegration']._serialized_options = b'\202\323\344\223\002L\032G/api/applications/{integration.application_id}/integrations/thingsboard:\001*'
_globals['_APPLICATIONSERVICE'].methods_by_name['DeleteThingsBoardIntegration']._options = None
_globals['_APPLICATIONSERVICE'].methods_by_name['DeleteThingsBoardIntegration']._serialized_options = b'\202\323\344\223\002=*;/api/applications/{application_id}/integrations/thingsboard'
_globals['_APPLICATIONSERVICE'].methods_by_name['CreateMyDevicesIntegration']._options = None
_globals['_APPLICATIONSERVICE'].methods_by_name['CreateMyDevicesIntegration']._serialized_options = b'\202\323\344\223\002J\"E/api/applications/{integration.application_id}/integrations/mydevices:\001*'
_globals['_APPLICATIONSERVICE'].methods_by_name['GetMyDevicesIntegration']._options = None
_globals['_APPLICATIONSERVICE'].methods_by_name['GetMyDevicesIntegration']._serialized_options = b'\202\323\344\223\002;\0229/api/applications/{application_id}/integrations/mydevices'
_globals['_APPLICATIONSERVICE'].methods_by_name['UpdateMyDevicesIntegration']._options = None
_globals['_APPLICATIONSERVICE'].methods_by_name['UpdateMyDevicesIntegration']._serialized_options = b'\202\323\344\223\002J\032E/api/applications/{integration.application_id}/integrations/mydevices:\001*'
_globals['_APPLICATIONSERVICE'].methods_by_name['DeleteMyDevicesIntegration']._options = None
_globals['_APPLICATIONSERVICE'].methods_by_name['DeleteMyDevicesIntegration']._serialized_options = b'\202\323\344\223\002;*9/api/applications/{application_id}/integrations/mydevices'
_globals['_APPLICATIONSERVICE'].methods_by_name['CreateLoraCloudIntegration']._options = None
_globals['_APPLICATIONSERVICE'].methods_by_name['CreateLoraCloudIntegration']._serialized_options = b'\202\323\344\223\002J\"E/api/applications/{integration.application_id}/integrations/loracloud:\001*'
_globals['_APPLICATIONSERVICE'].methods_by_name['GetLoraCloudIntegration']._options = None
_globals['_APPLICATIONSERVICE'].methods_by_name['GetLoraCloudIntegration']._serialized_options = b'\202\323\344\223\002;\0229/api/applications/{application_id}/integrations/loracloud'
_globals['_APPLICATIONSERVICE'].methods_by_name['UpdateLoraCloudIntegration']._options = None
_globals['_APPLICATIONSERVICE'].methods_by_name['UpdateLoraCloudIntegration']._serialized_options = b'\202\323\344\223\002J\032E/api/applications/{integration.application_id}/integrations/loracloud:\001*'
_globals['_APPLICATIONSERVICE'].methods_by_name['DeleteLoraCloudIntegration']._options = None
_globals['_APPLICATIONSERVICE'].methods_by_name['DeleteLoraCloudIntegration']._serialized_options = b'\202\323\344\223\002;*9/api/applications/{application_id}/integrations/loracloud'
_globals['_APPLICATIONSERVICE'].methods_by_name['CreateGcpPubSubIntegration']._options = None
_globals['_APPLICATIONSERVICE'].methods_by_name['CreateGcpPubSubIntegration']._serialized_options = b'\202\323\344\223\002L\"G/api/applications/{integration.application_id}/integrations/gcp-pub-sub:\001*'
_globals['_APPLICATIONSERVICE'].methods_by_name['GetGcpPubSubIntegration']._options = None
_globals['_APPLICATIONSERVICE'].methods_by_name['GetGcpPubSubIntegration']._serialized_options = b'\202\323\344\223\002=\022;/api/applications/{application_id}/integrations/gcp-pub-sub'
_globals['_APPLICATIONSERVICE'].methods_by_name['UpdateGcpPubSubIntegration']._options = None
_globals['_APPLICATIONSERVICE'].methods_by_name['UpdateGcpPubSubIntegration']._serialized_options = b'\202\323\344\223\002L\032G/api/applications/{integration.application_id}/integrations/gcp-pub-sub:\001*'
_globals['_APPLICATIONSERVICE'].methods_by_name['DeleteGcpPubSubIntegration']._options = None
_globals['_APPLICATIONSERVICE'].methods_by_name['DeleteGcpPubSubIntegration']._serialized_options = b'\202\323\344\223\002=*;/api/applications/{application_id}/integrations/gcp-pub-sub'
_globals['_APPLICATIONSERVICE'].methods_by_name['CreateAwsSnsIntegration']._options = None
_globals['_APPLICATIONSERVICE'].methods_by_name['CreateAwsSnsIntegration']._serialized_options = b'\202\323\344\223\002H\"C/api/applications/{integration.application_id}/integrations/aws-sns:\001*'
_globals['_APPLICATIONSERVICE'].methods_by_name['GetAwsSnsIntegration']._options = None
_globals['_APPLICATIONSERVICE'].methods_by_name['GetAwsSnsIntegration']._serialized_options = b'\202\323\344\223\0029\0227/api/applications/{application_id}/integrations/aws-sns'
_globals['_APPLICATIONSERVICE'].methods_by_name['UpdateAwsSnsIntegration']._options = None
_globals['_APPLICATIONSERVICE'].methods_by_name['UpdateAwsSnsIntegration']._serialized_options = b'\202\323\344\223\002H\032C/api/applications/{integration.application_id}/integrations/aws-sns:\001*'
_globals['_APPLICATIONSERVICE'].methods_by_name['DeleteAwsSnsIntegration']._options = None
_globals['_APPLICATIONSERVICE'].methods_by_name['DeleteAwsSnsIntegration']._serialized_options = b'\202\323\344\223\0029*7/api/applications/{application_id}/integrations/aws-sns'
_globals['_APPLICATIONSERVICE'].methods_by_name['CreateAzureServiceBusIntegration']._options = None
_globals['_APPLICATIONSERVICE'].methods_by_name['CreateAzureServiceBusIntegration']._serialized_options = b'\202\323\344\223\002R\"M/api/applications/{integration.application_id}/integrations/azure-service-bus:\001*'
_globals['_APPLICATIONSERVICE'].methods_by_name['GetAzureServiceBusIntegration']._options = None
_globals['_APPLICATIONSERVICE'].methods_by_name['GetAzureServiceBusIntegration']._serialized_options = b'\202\323\344\223\002C\022A/api/applications/{application_id}/integrations/azure-service-bus'
_globals['_APPLICATIONSERVICE'].methods_by_name['UpdateAzureServiceBusIntegration']._options = None
_globals['_APPLICATIONSERVICE'].methods_by_name['UpdateAzureServiceBusIntegration']._serialized_options = b'\202\323\344\223\002R\032M/api/applications/{integration.application_id}/integrations/azure-service-bus:\001*'
_globals['_APPLICATIONSERVICE'].methods_by_name['DeleteAzureServiceBusIntegration']._options = None
_globals['_APPLICATIONSERVICE'].methods_by_name['DeleteAzureServiceBusIntegration']._serialized_options = b'\202\323\344\223\002C*A/api/applications/{application_id}/integrations/azure-service-bus'
_globals['_APPLICATIONSERVICE'].methods_by_name['CreatePilotThingsIntegration']._options = None
_globals['_APPLICATIONSERVICE'].methods_by_name['CreatePilotThingsIntegration']._serialized_options = b'\202\323\344\223\002M\"H/api/applications/{integration.application_id}/integrations/pilot-things:\001*'
_globals['_APPLICATIONSERVICE'].methods_by_name['GetPilotThingsIntegration']._options = None
_globals['_APPLICATIONSERVICE'].methods_by_name['GetPilotThingsIntegration']._serialized_options = b'\202\323\344\223\002>\022</api/applications/{application_id}/integrations/pilot-things'
_globals['_APPLICATIONSERVICE'].methods_by_name['UpdatePilotThingsIntegration']._options = None
_globals['_APPLICATIONSERVICE'].methods_by_name['UpdatePilotThingsIntegration']._serialized_options = b'\202\323\344\223\002M\032H/api/applications/{integration.application_id}/integrations/pilot-things:\001*'
_globals['_APPLICATIONSERVICE'].methods_by_name['DeletePilotThingsIntegration']._options = None
_globals['_APPLICATIONSERVICE'].methods_by_name['DeletePilotThingsIntegration']._serialized_options = b'\202\323\344\223\002>*</api/applications/{application_id}/integrations/pilot-things'
_globals['_APPLICATIONSERVICE'].methods_by_name['CreateIftttIntegration']._options = None
_globals['_APPLICATIONSERVICE'].methods_by_name['CreateIftttIntegration']._serialized_options = b'\202\323\344\223\002F\"A/api/applications/{integration.application_id}/integrations/ifttt:\001*'
_globals['_APPLICATIONSERVICE'].methods_by_name['GetIftttIntegration']._options = None
_globals['_APPLICATIONSERVICE'].methods_by_name['GetIftttIntegration']._serialized_options = b'\202\323\344\223\0027\0225/api/applications/{application_id}/integrations/ifttt'
_globals['_APPLICATIONSERVICE'].methods_by_name['UpdateIftttIntegration']._options = None
_globals['_APPLICATIONSERVICE'].methods_by_name['UpdateIftttIntegration']._serialized_options = b'\202\323\344\223\002F\032A/api/applications/{integration.application_id}/integrations/ifttt:\001*'
_globals['_APPLICATIONSERVICE'].methods_by_name['DeleteIftttIntegration']._options = None
_globals['_APPLICATIONSERVICE'].methods_by_name['DeleteIftttIntegration']._serialized_options = b'\202\323\344\223\0027*5/api/applications/{application_id}/integrations/ifttt'
_globals['_APPLICATIONSERVICE'].methods_by_name['GenerateMqttIntegrationClientCertificate']._options = None
_globals['_APPLICATIONSERVICE'].methods_by_name['GenerateMqttIntegrationClientCertificate']._serialized_options = b'\202\323\344\223\002B\"@/api/applications/{application_id}/integrations/mqtt/certificate'
_globals['_ENCODING']._serialized_start=7091
_globals['_ENCODING']._serialized_end=7125
_globals['_INTEGRATIONKIND']._serialized_start=7128

View File

@ -10,12 +10,12 @@ from typing import ClassVar as _ClassVar, Iterable as _Iterable, Mapping as _Map
DESCRIPTOR: _descriptor.FileDescriptor
class Encoding(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
__slots__ = []
__slots__ = ()
JSON: _ClassVar[Encoding]
PROTOBUF: _ClassVar[Encoding]
class IntegrationKind(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
__slots__ = []
__slots__ = ()
HTTP: _ClassVar[IntegrationKind]
INFLUX_DB: _ClassVar[IntegrationKind]
THINGS_BOARD: _ClassVar[IntegrationKind]
@ -29,7 +29,7 @@ class IntegrationKind(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
IFTTT: _ClassVar[IntegrationKind]
class InfluxDbPrecision(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
__slots__ = []
__slots__ = ()
NS: _ClassVar[InfluxDbPrecision]
U: _ClassVar[InfluxDbPrecision]
MS: _ClassVar[InfluxDbPrecision]
@ -38,7 +38,7 @@ class InfluxDbPrecision(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
H: _ClassVar[InfluxDbPrecision]
class InfluxDbVersion(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
__slots__ = []
__slots__ = ()
INFLUXDB_1: _ClassVar[InfluxDbVersion]
INFLUXDB_2: _ClassVar[InfluxDbVersion]
JSON: Encoding
@ -64,9 +64,9 @@ INFLUXDB_1: InfluxDbVersion
INFLUXDB_2: InfluxDbVersion
class Application(_message.Message):
__slots__ = ["id", "name", "description", "tenant_id", "tags"]
__slots__ = ("id", "name", "description", "tenant_id", "tags")
class TagsEntry(_message.Message):
__slots__ = ["key", "value"]
__slots__ = ("key", "value")
KEY_FIELD_NUMBER: _ClassVar[int]
VALUE_FIELD_NUMBER: _ClassVar[int]
key: str
@ -85,7 +85,7 @@ class Application(_message.Message):
def __init__(self, id: _Optional[str] = ..., name: _Optional[str] = ..., description: _Optional[str] = ..., tenant_id: _Optional[str] = ..., tags: _Optional[_Mapping[str, str]] = ...) -> None: ...
class ApplicationListItem(_message.Message):
__slots__ = ["id", "created_at", "updated_at", "name", "description"]
__slots__ = ("id", "created_at", "updated_at", "name", "description")
ID_FIELD_NUMBER: _ClassVar[int]
CREATED_AT_FIELD_NUMBER: _ClassVar[int]
UPDATED_AT_FIELD_NUMBER: _ClassVar[int]
@ -99,25 +99,25 @@ class ApplicationListItem(_message.Message):
def __init__(self, id: _Optional[str] = ..., created_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., updated_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., name: _Optional[str] = ..., description: _Optional[str] = ...) -> None: ...
class CreateApplicationRequest(_message.Message):
__slots__ = ["application"]
__slots__ = ("application",)
APPLICATION_FIELD_NUMBER: _ClassVar[int]
application: Application
def __init__(self, application: _Optional[_Union[Application, _Mapping]] = ...) -> None: ...
class CreateApplicationResponse(_message.Message):
__slots__ = ["id"]
__slots__ = ("id",)
ID_FIELD_NUMBER: _ClassVar[int]
id: str
def __init__(self, id: _Optional[str] = ...) -> None: ...
class GetApplicationRequest(_message.Message):
__slots__ = ["id"]
__slots__ = ("id",)
ID_FIELD_NUMBER: _ClassVar[int]
id: str
def __init__(self, id: _Optional[str] = ...) -> None: ...
class GetApplicationResponse(_message.Message):
__slots__ = ["application", "created_at", "updated_at", "measurement_keys"]
__slots__ = ("application", "created_at", "updated_at", "measurement_keys")
APPLICATION_FIELD_NUMBER: _ClassVar[int]
CREATED_AT_FIELD_NUMBER: _ClassVar[int]
UPDATED_AT_FIELD_NUMBER: _ClassVar[int]
@ -129,19 +129,19 @@ class GetApplicationResponse(_message.Message):
def __init__(self, application: _Optional[_Union[Application, _Mapping]] = ..., created_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., updated_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., measurement_keys: _Optional[_Iterable[str]] = ...) -> None: ...
class UpdateApplicationRequest(_message.Message):
__slots__ = ["application"]
__slots__ = ("application",)
APPLICATION_FIELD_NUMBER: _ClassVar[int]
application: Application
def __init__(self, application: _Optional[_Union[Application, _Mapping]] = ...) -> None: ...
class DeleteApplicationRequest(_message.Message):
__slots__ = ["id"]
__slots__ = ("id",)
ID_FIELD_NUMBER: _ClassVar[int]
id: str
def __init__(self, id: _Optional[str] = ...) -> None: ...
class ListApplicationsRequest(_message.Message):
__slots__ = ["limit", "offset", "search", "tenant_id"]
__slots__ = ("limit", "offset", "search", "tenant_id")
LIMIT_FIELD_NUMBER: _ClassVar[int]
OFFSET_FIELD_NUMBER: _ClassVar[int]
SEARCH_FIELD_NUMBER: _ClassVar[int]
@ -153,7 +153,7 @@ class ListApplicationsRequest(_message.Message):
def __init__(self, limit: _Optional[int] = ..., offset: _Optional[int] = ..., search: _Optional[str] = ..., tenant_id: _Optional[str] = ...) -> None: ...
class ListApplicationsResponse(_message.Message):
__slots__ = ["total_count", "result"]
__slots__ = ("total_count", "result")
TOTAL_COUNT_FIELD_NUMBER: _ClassVar[int]
RESULT_FIELD_NUMBER: _ClassVar[int]
total_count: int
@ -161,19 +161,19 @@ class ListApplicationsResponse(_message.Message):
def __init__(self, total_count: _Optional[int] = ..., result: _Optional[_Iterable[_Union[ApplicationListItem, _Mapping]]] = ...) -> None: ...
class ListIntegrationsRequest(_message.Message):
__slots__ = ["application_id"]
__slots__ = ("application_id",)
APPLICATION_ID_FIELD_NUMBER: _ClassVar[int]
application_id: str
def __init__(self, application_id: _Optional[str] = ...) -> None: ...
class IntegrationListItem(_message.Message):
__slots__ = ["kind"]
__slots__ = ("kind",)
KIND_FIELD_NUMBER: _ClassVar[int]
kind: IntegrationKind
def __init__(self, kind: _Optional[_Union[IntegrationKind, str]] = ...) -> None: ...
class ListIntegrationsResponse(_message.Message):
__slots__ = ["total_count", "result"]
__slots__ = ("total_count", "result")
TOTAL_COUNT_FIELD_NUMBER: _ClassVar[int]
RESULT_FIELD_NUMBER: _ClassVar[int]
total_count: int
@ -181,9 +181,9 @@ class ListIntegrationsResponse(_message.Message):
def __init__(self, total_count: _Optional[int] = ..., result: _Optional[_Iterable[_Union[IntegrationListItem, _Mapping]]] = ...) -> None: ...
class HttpIntegration(_message.Message):
__slots__ = ["application_id", "headers", "encoding", "event_endpoint_url"]
__slots__ = ("application_id", "headers", "encoding", "event_endpoint_url")
class HeadersEntry(_message.Message):
__slots__ = ["key", "value"]
__slots__ = ("key", "value")
KEY_FIELD_NUMBER: _ClassVar[int]
VALUE_FIELD_NUMBER: _ClassVar[int]
key: str
@ -200,37 +200,37 @@ class HttpIntegration(_message.Message):
def __init__(self, application_id: _Optional[str] = ..., headers: _Optional[_Mapping[str, str]] = ..., encoding: _Optional[_Union[Encoding, str]] = ..., event_endpoint_url: _Optional[str] = ...) -> None: ...
class CreateHttpIntegrationRequest(_message.Message):
__slots__ = ["integration"]
__slots__ = ("integration",)
INTEGRATION_FIELD_NUMBER: _ClassVar[int]
integration: HttpIntegration
def __init__(self, integration: _Optional[_Union[HttpIntegration, _Mapping]] = ...) -> None: ...
class GetHttpIntegrationRequest(_message.Message):
__slots__ = ["application_id"]
__slots__ = ("application_id",)
APPLICATION_ID_FIELD_NUMBER: _ClassVar[int]
application_id: str
def __init__(self, application_id: _Optional[str] = ...) -> None: ...
class GetHttpIntegrationResponse(_message.Message):
__slots__ = ["integration"]
__slots__ = ("integration",)
INTEGRATION_FIELD_NUMBER: _ClassVar[int]
integration: HttpIntegration
def __init__(self, integration: _Optional[_Union[HttpIntegration, _Mapping]] = ...) -> None: ...
class UpdateHttpIntegrationRequest(_message.Message):
__slots__ = ["integration"]
__slots__ = ("integration",)
INTEGRATION_FIELD_NUMBER: _ClassVar[int]
integration: HttpIntegration
def __init__(self, integration: _Optional[_Union[HttpIntegration, _Mapping]] = ...) -> None: ...
class DeleteHttpIntegrationRequest(_message.Message):
__slots__ = ["application_id"]
__slots__ = ("application_id",)
APPLICATION_ID_FIELD_NUMBER: _ClassVar[int]
application_id: str
def __init__(self, application_id: _Optional[str] = ...) -> None: ...
class InfluxDbIntegration(_message.Message):
__slots__ = ["application_id", "endpoint", "db", "username", "password", "retention_policy_name", "precision", "version", "token", "organization", "bucket"]
__slots__ = ("application_id", "endpoint", "db", "username", "password", "retention_policy_name", "precision", "version", "token", "organization", "bucket")
APPLICATION_ID_FIELD_NUMBER: _ClassVar[int]
ENDPOINT_FIELD_NUMBER: _ClassVar[int]
DB_FIELD_NUMBER: _ClassVar[int]
@ -256,37 +256,37 @@ class InfluxDbIntegration(_message.Message):
def __init__(self, application_id: _Optional[str] = ..., endpoint: _Optional[str] = ..., db: _Optional[str] = ..., username: _Optional[str] = ..., password: _Optional[str] = ..., retention_policy_name: _Optional[str] = ..., precision: _Optional[_Union[InfluxDbPrecision, str]] = ..., version: _Optional[_Union[InfluxDbVersion, str]] = ..., token: _Optional[str] = ..., organization: _Optional[str] = ..., bucket: _Optional[str] = ...) -> None: ...
class CreateInfluxDbIntegrationRequest(_message.Message):
__slots__ = ["integration"]
__slots__ = ("integration",)
INTEGRATION_FIELD_NUMBER: _ClassVar[int]
integration: InfluxDbIntegration
def __init__(self, integration: _Optional[_Union[InfluxDbIntegration, _Mapping]] = ...) -> None: ...
class GetInfluxDbIntegrationRequest(_message.Message):
__slots__ = ["application_id"]
__slots__ = ("application_id",)
APPLICATION_ID_FIELD_NUMBER: _ClassVar[int]
application_id: str
def __init__(self, application_id: _Optional[str] = ...) -> None: ...
class GetInfluxDbIntegrationResponse(_message.Message):
__slots__ = ["integration"]
__slots__ = ("integration",)
INTEGRATION_FIELD_NUMBER: _ClassVar[int]
integration: InfluxDbIntegration
def __init__(self, integration: _Optional[_Union[InfluxDbIntegration, _Mapping]] = ...) -> None: ...
class UpdateInfluxDbIntegrationRequest(_message.Message):
__slots__ = ["integration"]
__slots__ = ("integration",)
INTEGRATION_FIELD_NUMBER: _ClassVar[int]
integration: InfluxDbIntegration
def __init__(self, integration: _Optional[_Union[InfluxDbIntegration, _Mapping]] = ...) -> None: ...
class DeleteInfluxDbIntegrationRequest(_message.Message):
__slots__ = ["application_id"]
__slots__ = ("application_id",)
APPLICATION_ID_FIELD_NUMBER: _ClassVar[int]
application_id: str
def __init__(self, application_id: _Optional[str] = ...) -> None: ...
class ThingsBoardIntegration(_message.Message):
__slots__ = ["application_id", "server"]
__slots__ = ("application_id", "server")
APPLICATION_ID_FIELD_NUMBER: _ClassVar[int]
SERVER_FIELD_NUMBER: _ClassVar[int]
application_id: str
@ -294,37 +294,37 @@ class ThingsBoardIntegration(_message.Message):
def __init__(self, application_id: _Optional[str] = ..., server: _Optional[str] = ...) -> None: ...
class CreateThingsBoardIntegrationRequest(_message.Message):
__slots__ = ["integration"]
__slots__ = ("integration",)
INTEGRATION_FIELD_NUMBER: _ClassVar[int]
integration: ThingsBoardIntegration
def __init__(self, integration: _Optional[_Union[ThingsBoardIntegration, _Mapping]] = ...) -> None: ...
class GetThingsBoardIntegrationRequest(_message.Message):
__slots__ = ["application_id"]
__slots__ = ("application_id",)
APPLICATION_ID_FIELD_NUMBER: _ClassVar[int]
application_id: str
def __init__(self, application_id: _Optional[str] = ...) -> None: ...
class GetThingsBoardIntegrationResponse(_message.Message):
__slots__ = ["integration"]
__slots__ = ("integration",)
INTEGRATION_FIELD_NUMBER: _ClassVar[int]
integration: ThingsBoardIntegration
def __init__(self, integration: _Optional[_Union[ThingsBoardIntegration, _Mapping]] = ...) -> None: ...
class UpdateThingsBoardIntegrationRequest(_message.Message):
__slots__ = ["integration"]
__slots__ = ("integration",)
INTEGRATION_FIELD_NUMBER: _ClassVar[int]
integration: ThingsBoardIntegration
def __init__(self, integration: _Optional[_Union[ThingsBoardIntegration, _Mapping]] = ...) -> None: ...
class DeleteThingsBoardIntegrationRequest(_message.Message):
__slots__ = ["application_id"]
__slots__ = ("application_id",)
APPLICATION_ID_FIELD_NUMBER: _ClassVar[int]
application_id: str
def __init__(self, application_id: _Optional[str] = ...) -> None: ...
class MyDevicesIntegration(_message.Message):
__slots__ = ["application_id", "endpoint"]
__slots__ = ("application_id", "endpoint")
APPLICATION_ID_FIELD_NUMBER: _ClassVar[int]
ENDPOINT_FIELD_NUMBER: _ClassVar[int]
application_id: str
@ -332,37 +332,37 @@ class MyDevicesIntegration(_message.Message):
def __init__(self, application_id: _Optional[str] = ..., endpoint: _Optional[str] = ...) -> None: ...
class CreateMyDevicesIntegrationRequest(_message.Message):
__slots__ = ["integration"]
__slots__ = ("integration",)
INTEGRATION_FIELD_NUMBER: _ClassVar[int]
integration: MyDevicesIntegration
def __init__(self, integration: _Optional[_Union[MyDevicesIntegration, _Mapping]] = ...) -> None: ...
class GetMyDevicesIntegrationRequest(_message.Message):
__slots__ = ["application_id"]
__slots__ = ("application_id",)
APPLICATION_ID_FIELD_NUMBER: _ClassVar[int]
application_id: str
def __init__(self, application_id: _Optional[str] = ...) -> None: ...
class GetMyDevicesIntegrationResponse(_message.Message):
__slots__ = ["integration"]
__slots__ = ("integration",)
INTEGRATION_FIELD_NUMBER: _ClassVar[int]
integration: MyDevicesIntegration
def __init__(self, integration: _Optional[_Union[MyDevicesIntegration, _Mapping]] = ...) -> None: ...
class UpdateMyDevicesIntegrationRequest(_message.Message):
__slots__ = ["integration"]
__slots__ = ("integration",)
INTEGRATION_FIELD_NUMBER: _ClassVar[int]
integration: MyDevicesIntegration
def __init__(self, integration: _Optional[_Union[MyDevicesIntegration, _Mapping]] = ...) -> None: ...
class DeleteMyDevicesIntegrationRequest(_message.Message):
__slots__ = ["application_id"]
__slots__ = ("application_id",)
APPLICATION_ID_FIELD_NUMBER: _ClassVar[int]
application_id: str
def __init__(self, application_id: _Optional[str] = ...) -> None: ...
class LoraCloudIntegration(_message.Message):
__slots__ = ["application_id", "modem_geolocation_services"]
__slots__ = ("application_id", "modem_geolocation_services")
APPLICATION_ID_FIELD_NUMBER: _ClassVar[int]
MODEM_GEOLOCATION_SERVICES_FIELD_NUMBER: _ClassVar[int]
application_id: str
@ -370,7 +370,7 @@ class LoraCloudIntegration(_message.Message):
def __init__(self, application_id: _Optional[str] = ..., modem_geolocation_services: _Optional[_Union[LoraCloudModemGeolocationServices, _Mapping]] = ...) -> None: ...
class LoraCloudModemGeolocationServices(_message.Message):
__slots__ = ["token", "modem_enabled", "forward_f_ports", "gnss_use_rx_time", "gnss_use_gateway_location", "parse_tlv", "geolocation_buffer_ttl", "geolocation_min_buffer_size", "geolocation_tdoa", "geolocation_rssi", "geolocation_gnss", "geolocation_gnss_payload_field", "geolocation_gnss_use_rx_time", "geolocation_wifi", "geolocation_wifi_payload_field"]
__slots__ = ("token", "modem_enabled", "forward_f_ports", "gnss_use_rx_time", "gnss_use_gateway_location", "parse_tlv", "geolocation_buffer_ttl", "geolocation_min_buffer_size", "geolocation_tdoa", "geolocation_rssi", "geolocation_gnss", "geolocation_gnss_payload_field", "geolocation_gnss_use_rx_time", "geolocation_wifi", "geolocation_wifi_payload_field")
TOKEN_FIELD_NUMBER: _ClassVar[int]
MODEM_ENABLED_FIELD_NUMBER: _ClassVar[int]
FORWARD_F_PORTS_FIELD_NUMBER: _ClassVar[int]
@ -404,37 +404,37 @@ class LoraCloudModemGeolocationServices(_message.Message):
def __init__(self, token: _Optional[str] = ..., modem_enabled: bool = ..., forward_f_ports: _Optional[_Iterable[int]] = ..., gnss_use_rx_time: bool = ..., gnss_use_gateway_location: bool = ..., parse_tlv: bool = ..., geolocation_buffer_ttl: _Optional[int] = ..., geolocation_min_buffer_size: _Optional[int] = ..., geolocation_tdoa: bool = ..., geolocation_rssi: bool = ..., geolocation_gnss: bool = ..., geolocation_gnss_payload_field: _Optional[str] = ..., geolocation_gnss_use_rx_time: bool = ..., geolocation_wifi: bool = ..., geolocation_wifi_payload_field: _Optional[str] = ...) -> None: ...
class CreateLoraCloudIntegrationRequest(_message.Message):
__slots__ = ["integration"]
__slots__ = ("integration",)
INTEGRATION_FIELD_NUMBER: _ClassVar[int]
integration: LoraCloudIntegration
def __init__(self, integration: _Optional[_Union[LoraCloudIntegration, _Mapping]] = ...) -> None: ...
class GetLoraCloudIntegrationRequest(_message.Message):
__slots__ = ["application_id"]
__slots__ = ("application_id",)
APPLICATION_ID_FIELD_NUMBER: _ClassVar[int]
application_id: str
def __init__(self, application_id: _Optional[str] = ...) -> None: ...
class GetLoraCloudIntegrationResponse(_message.Message):
__slots__ = ["integration"]
__slots__ = ("integration",)
INTEGRATION_FIELD_NUMBER: _ClassVar[int]
integration: LoraCloudIntegration
def __init__(self, integration: _Optional[_Union[LoraCloudIntegration, _Mapping]] = ...) -> None: ...
class UpdateLoraCloudIntegrationRequest(_message.Message):
__slots__ = ["integration"]
__slots__ = ("integration",)
INTEGRATION_FIELD_NUMBER: _ClassVar[int]
integration: LoraCloudIntegration
def __init__(self, integration: _Optional[_Union[LoraCloudIntegration, _Mapping]] = ...) -> None: ...
class DeleteLoraCloudIntegrationRequest(_message.Message):
__slots__ = ["application_id"]
__slots__ = ("application_id",)
APPLICATION_ID_FIELD_NUMBER: _ClassVar[int]
application_id: str
def __init__(self, application_id: _Optional[str] = ...) -> None: ...
class GcpPubSubIntegration(_message.Message):
__slots__ = ["application_id", "encoding", "credentials_file", "project_id", "topic_name"]
__slots__ = ("application_id", "encoding", "credentials_file", "project_id", "topic_name")
APPLICATION_ID_FIELD_NUMBER: _ClassVar[int]
ENCODING_FIELD_NUMBER: _ClassVar[int]
CREDENTIALS_FILE_FIELD_NUMBER: _ClassVar[int]
@ -448,37 +448,37 @@ class GcpPubSubIntegration(_message.Message):
def __init__(self, application_id: _Optional[str] = ..., encoding: _Optional[_Union[Encoding, str]] = ..., credentials_file: _Optional[str] = ..., project_id: _Optional[str] = ..., topic_name: _Optional[str] = ...) -> None: ...
class CreateGcpPubSubIntegrationRequest(_message.Message):
__slots__ = ["integration"]
__slots__ = ("integration",)
INTEGRATION_FIELD_NUMBER: _ClassVar[int]
integration: GcpPubSubIntegration
def __init__(self, integration: _Optional[_Union[GcpPubSubIntegration, _Mapping]] = ...) -> None: ...
class GetGcpPubSubIntegrationRequest(_message.Message):
__slots__ = ["application_id"]
__slots__ = ("application_id",)
APPLICATION_ID_FIELD_NUMBER: _ClassVar[int]
application_id: str
def __init__(self, application_id: _Optional[str] = ...) -> None: ...
class GetGcpPubSubIntegrationResponse(_message.Message):
__slots__ = ["integration"]
__slots__ = ("integration",)
INTEGRATION_FIELD_NUMBER: _ClassVar[int]
integration: GcpPubSubIntegration
def __init__(self, integration: _Optional[_Union[GcpPubSubIntegration, _Mapping]] = ...) -> None: ...
class UpdateGcpPubSubIntegrationRequest(_message.Message):
__slots__ = ["integration"]
__slots__ = ("integration",)
INTEGRATION_FIELD_NUMBER: _ClassVar[int]
integration: GcpPubSubIntegration
def __init__(self, integration: _Optional[_Union[GcpPubSubIntegration, _Mapping]] = ...) -> None: ...
class DeleteGcpPubSubIntegrationRequest(_message.Message):
__slots__ = ["application_id"]
__slots__ = ("application_id",)
APPLICATION_ID_FIELD_NUMBER: _ClassVar[int]
application_id: str
def __init__(self, application_id: _Optional[str] = ...) -> None: ...
class AwsSnsIntegration(_message.Message):
__slots__ = ["application_id", "encoding", "region", "access_key_id", "secret_access_key", "topic_arn"]
__slots__ = ("application_id", "encoding", "region", "access_key_id", "secret_access_key", "topic_arn")
APPLICATION_ID_FIELD_NUMBER: _ClassVar[int]
ENCODING_FIELD_NUMBER: _ClassVar[int]
REGION_FIELD_NUMBER: _ClassVar[int]
@ -494,37 +494,37 @@ class AwsSnsIntegration(_message.Message):
def __init__(self, application_id: _Optional[str] = ..., encoding: _Optional[_Union[Encoding, str]] = ..., region: _Optional[str] = ..., access_key_id: _Optional[str] = ..., secret_access_key: _Optional[str] = ..., topic_arn: _Optional[str] = ...) -> None: ...
class CreateAwsSnsIntegrationRequest(_message.Message):
__slots__ = ["integration"]
__slots__ = ("integration",)
INTEGRATION_FIELD_NUMBER: _ClassVar[int]
integration: AwsSnsIntegration
def __init__(self, integration: _Optional[_Union[AwsSnsIntegration, _Mapping]] = ...) -> None: ...
class GetAwsSnsIntegrationRequest(_message.Message):
__slots__ = ["application_id"]
__slots__ = ("application_id",)
APPLICATION_ID_FIELD_NUMBER: _ClassVar[int]
application_id: str
def __init__(self, application_id: _Optional[str] = ...) -> None: ...
class GetAwsSnsIntegrationResponse(_message.Message):
__slots__ = ["integration"]
__slots__ = ("integration",)
INTEGRATION_FIELD_NUMBER: _ClassVar[int]
integration: AwsSnsIntegration
def __init__(self, integration: _Optional[_Union[AwsSnsIntegration, _Mapping]] = ...) -> None: ...
class UpdateAwsSnsIntegrationRequest(_message.Message):
__slots__ = ["integration"]
__slots__ = ("integration",)
INTEGRATION_FIELD_NUMBER: _ClassVar[int]
integration: AwsSnsIntegration
def __init__(self, integration: _Optional[_Union[AwsSnsIntegration, _Mapping]] = ...) -> None: ...
class DeleteAwsSnsIntegrationRequest(_message.Message):
__slots__ = ["application_id"]
__slots__ = ("application_id",)
APPLICATION_ID_FIELD_NUMBER: _ClassVar[int]
application_id: str
def __init__(self, application_id: _Optional[str] = ...) -> None: ...
class AzureServiceBusIntegration(_message.Message):
__slots__ = ["application_id", "encoding", "connection_string", "publish_name"]
__slots__ = ("application_id", "encoding", "connection_string", "publish_name")
APPLICATION_ID_FIELD_NUMBER: _ClassVar[int]
ENCODING_FIELD_NUMBER: _ClassVar[int]
CONNECTION_STRING_FIELD_NUMBER: _ClassVar[int]
@ -536,37 +536,37 @@ class AzureServiceBusIntegration(_message.Message):
def __init__(self, application_id: _Optional[str] = ..., encoding: _Optional[_Union[Encoding, str]] = ..., connection_string: _Optional[str] = ..., publish_name: _Optional[str] = ...) -> None: ...
class CreateAzureServiceBusIntegrationRequest(_message.Message):
__slots__ = ["integration"]
__slots__ = ("integration",)
INTEGRATION_FIELD_NUMBER: _ClassVar[int]
integration: AzureServiceBusIntegration
def __init__(self, integration: _Optional[_Union[AzureServiceBusIntegration, _Mapping]] = ...) -> None: ...
class GetAzureServiceBusIntegrationRequest(_message.Message):
__slots__ = ["application_id"]
__slots__ = ("application_id",)
APPLICATION_ID_FIELD_NUMBER: _ClassVar[int]
application_id: str
def __init__(self, application_id: _Optional[str] = ...) -> None: ...
class GetAzureServiceBusIntegrationResponse(_message.Message):
__slots__ = ["integration"]
__slots__ = ("integration",)
INTEGRATION_FIELD_NUMBER: _ClassVar[int]
integration: AzureServiceBusIntegration
def __init__(self, integration: _Optional[_Union[AzureServiceBusIntegration, _Mapping]] = ...) -> None: ...
class UpdateAzureServiceBusIntegrationRequest(_message.Message):
__slots__ = ["integration"]
__slots__ = ("integration",)
INTEGRATION_FIELD_NUMBER: _ClassVar[int]
integration: AzureServiceBusIntegration
def __init__(self, integration: _Optional[_Union[AzureServiceBusIntegration, _Mapping]] = ...) -> None: ...
class DeleteAzureServiceBusIntegrationRequest(_message.Message):
__slots__ = ["application_id"]
__slots__ = ("application_id",)
APPLICATION_ID_FIELD_NUMBER: _ClassVar[int]
application_id: str
def __init__(self, application_id: _Optional[str] = ...) -> None: ...
class PilotThingsIntegration(_message.Message):
__slots__ = ["application_id", "server", "token"]
__slots__ = ("application_id", "server", "token")
APPLICATION_ID_FIELD_NUMBER: _ClassVar[int]
SERVER_FIELD_NUMBER: _ClassVar[int]
TOKEN_FIELD_NUMBER: _ClassVar[int]
@ -576,37 +576,37 @@ class PilotThingsIntegration(_message.Message):
def __init__(self, application_id: _Optional[str] = ..., server: _Optional[str] = ..., token: _Optional[str] = ...) -> None: ...
class CreatePilotThingsIntegrationRequest(_message.Message):
__slots__ = ["integration"]
__slots__ = ("integration",)
INTEGRATION_FIELD_NUMBER: _ClassVar[int]
integration: PilotThingsIntegration
def __init__(self, integration: _Optional[_Union[PilotThingsIntegration, _Mapping]] = ...) -> None: ...
class GetPilotThingsIntegrationRequest(_message.Message):
__slots__ = ["application_id"]
__slots__ = ("application_id",)
APPLICATION_ID_FIELD_NUMBER: _ClassVar[int]
application_id: str
def __init__(self, application_id: _Optional[str] = ...) -> None: ...
class GetPilotThingsIntegrationResponse(_message.Message):
__slots__ = ["integration"]
__slots__ = ("integration",)
INTEGRATION_FIELD_NUMBER: _ClassVar[int]
integration: PilotThingsIntegration
def __init__(self, integration: _Optional[_Union[PilotThingsIntegration, _Mapping]] = ...) -> None: ...
class UpdatePilotThingsIntegrationRequest(_message.Message):
__slots__ = ["integration"]
__slots__ = ("integration",)
INTEGRATION_FIELD_NUMBER: _ClassVar[int]
integration: PilotThingsIntegration
def __init__(self, integration: _Optional[_Union[PilotThingsIntegration, _Mapping]] = ...) -> None: ...
class DeletePilotThingsIntegrationRequest(_message.Message):
__slots__ = ["application_id"]
__slots__ = ("application_id",)
APPLICATION_ID_FIELD_NUMBER: _ClassVar[int]
application_id: str
def __init__(self, application_id: _Optional[str] = ...) -> None: ...
class IftttIntegration(_message.Message):
__slots__ = ["application_id", "key", "uplink_values", "arbitrary_json", "event_prefix"]
__slots__ = ("application_id", "key", "uplink_values", "arbitrary_json", "event_prefix")
APPLICATION_ID_FIELD_NUMBER: _ClassVar[int]
KEY_FIELD_NUMBER: _ClassVar[int]
UPLINK_VALUES_FIELD_NUMBER: _ClassVar[int]
@ -620,43 +620,43 @@ class IftttIntegration(_message.Message):
def __init__(self, application_id: _Optional[str] = ..., key: _Optional[str] = ..., uplink_values: _Optional[_Iterable[str]] = ..., arbitrary_json: bool = ..., event_prefix: _Optional[str] = ...) -> None: ...
class CreateIftttIntegrationRequest(_message.Message):
__slots__ = ["integration"]
__slots__ = ("integration",)
INTEGRATION_FIELD_NUMBER: _ClassVar[int]
integration: IftttIntegration
def __init__(self, integration: _Optional[_Union[IftttIntegration, _Mapping]] = ...) -> None: ...
class GetIftttIntegrationRequest(_message.Message):
__slots__ = ["application_id"]
__slots__ = ("application_id",)
APPLICATION_ID_FIELD_NUMBER: _ClassVar[int]
application_id: str
def __init__(self, application_id: _Optional[str] = ...) -> None: ...
class GetIftttIntegrationResponse(_message.Message):
__slots__ = ["integration"]
__slots__ = ("integration",)
INTEGRATION_FIELD_NUMBER: _ClassVar[int]
integration: IftttIntegration
def __init__(self, integration: _Optional[_Union[IftttIntegration, _Mapping]] = ...) -> None: ...
class UpdateIftttIntegrationRequest(_message.Message):
__slots__ = ["integration"]
__slots__ = ("integration",)
INTEGRATION_FIELD_NUMBER: _ClassVar[int]
integration: IftttIntegration
def __init__(self, integration: _Optional[_Union[IftttIntegration, _Mapping]] = ...) -> None: ...
class DeleteIftttIntegrationRequest(_message.Message):
__slots__ = ["application_id"]
__slots__ = ("application_id",)
APPLICATION_ID_FIELD_NUMBER: _ClassVar[int]
application_id: str
def __init__(self, application_id: _Optional[str] = ...) -> None: ...
class GenerateMqttIntegrationClientCertificateRequest(_message.Message):
__slots__ = ["application_id"]
__slots__ = ("application_id",)
APPLICATION_ID_FIELD_NUMBER: _ClassVar[int]
application_id: str
def __init__(self, application_id: _Optional[str] = ...) -> None: ...
class GenerateMqttIntegrationClientCertificateResponse(_message.Message):
__slots__ = ["tls_cert", "tls_key", "ca_cert", "expires_at"]
__slots__ = ("tls_cert", "tls_key", "ca_cert", "expires_at")
TLS_CERT_FIELD_NUMBER: _ClassVar[int]
TLS_KEY_FIELD_NUMBER: _ClassVar[int]
CA_CERT_FIELD_NUMBER: _ClassVar[int]

View File

@ -1,6 +1,7 @@
# -*- coding: utf-8 -*-
# Generated by the protocol buffer compiler. DO NOT EDIT!
# source: chirpstack-api/api/device.proto
# Protobuf Python Version: 4.25.0
"""Generated protocol buffer code."""
from google.protobuf import descriptor as _descriptor
from google.protobuf import descriptor_pool as _descriptor_pool
@ -24,57 +25,56 @@ _globals = globals()
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'chirpstack_api.api.device_pb2', _globals)
if _descriptor._USE_C_DESCRIPTORS == False:
DESCRIPTOR._options = None
DESCRIPTOR._serialized_options = b'\n\021io.chirpstack.apiB\013DeviceProtoP\001Z.github.com/chirpstack/chirpstack/api/go/v4/api\252\002\016Chirpstack.Api'
_DEVICE_VARIABLESENTRY._options = None
_DEVICE_VARIABLESENTRY._serialized_options = b'8\001'
_DEVICE_TAGSENTRY._options = None
_DEVICE_TAGSENTRY._serialized_options = b'8\001'
_GETDEVICEMETRICSRESPONSE_METRICSENTRY._options = None
_GETDEVICEMETRICSRESPONSE_METRICSENTRY._serialized_options = b'8\001'
_GETDEVICEMETRICSRESPONSE_STATESENTRY._options = None
_GETDEVICEMETRICSRESPONSE_STATESENTRY._serialized_options = b'8\001'
_DEVICESERVICE.methods_by_name['Create']._options = None
_DEVICESERVICE.methods_by_name['Create']._serialized_options = b'\202\323\344\223\002\021\"\014/api/devices:\001*'
_DEVICESERVICE.methods_by_name['Get']._options = None
_DEVICESERVICE.methods_by_name['Get']._serialized_options = b'\202\323\344\223\002\030\022\026/api/devices/{dev_eui}'
_DEVICESERVICE.methods_by_name['Update']._options = None
_DEVICESERVICE.methods_by_name['Update']._serialized_options = b'\202\323\344\223\002\"\032\035/api/devices/{device.dev_eui}:\001*'
_DEVICESERVICE.methods_by_name['Delete']._options = None
_DEVICESERVICE.methods_by_name['Delete']._serialized_options = b'\202\323\344\223\002\030*\026/api/devices/{dev_eui}'
_DEVICESERVICE.methods_by_name['List']._options = None
_DEVICESERVICE.methods_by_name['List']._serialized_options = b'\202\323\344\223\002\016\022\014/api/devices'
_DEVICESERVICE.methods_by_name['CreateKeys']._options = None
_DEVICESERVICE.methods_by_name['CreateKeys']._serialized_options = b'\202\323\344\223\002,\"\'/api/devices/{device_keys.dev_eui}/keys:\001*'
_DEVICESERVICE.methods_by_name['GetKeys']._options = None
_DEVICESERVICE.methods_by_name['GetKeys']._serialized_options = b'\202\323\344\223\002\035\022\033/api/devices/{dev_eui}/keys'
_DEVICESERVICE.methods_by_name['UpdateKeys']._options = None
_DEVICESERVICE.methods_by_name['UpdateKeys']._serialized_options = b'\202\323\344\223\002,\032\'/api/devices/{device_keys.dev_eui}/keys:\001*'
_DEVICESERVICE.methods_by_name['DeleteKeys']._options = None
_DEVICESERVICE.methods_by_name['DeleteKeys']._serialized_options = b'\202\323\344\223\002\035*\033/api/devices/{dev_eui}/keys'
_DEVICESERVICE.methods_by_name['FlushDevNonces']._options = None
_DEVICESERVICE.methods_by_name['FlushDevNonces']._serialized_options = b'\202\323\344\223\002#*!/api/devices/{dev_eui}/dev-nonces'
_DEVICESERVICE.methods_by_name['Activate']._options = None
_DEVICESERVICE.methods_by_name['Activate']._serialized_options = b'\202\323\344\223\0026\"1/api/devices/{device_activation.dev_eui}/activate:\001*'
_DEVICESERVICE.methods_by_name['Deactivate']._options = None
_DEVICESERVICE.methods_by_name['Deactivate']._serialized_options = b'\202\323\344\223\002#*!/api/devices/{dev_eui}/activation'
_DEVICESERVICE.methods_by_name['GetActivation']._options = None
_DEVICESERVICE.methods_by_name['GetActivation']._serialized_options = b'\202\323\344\223\002#\022!/api/devices/{dev_eui}/activation'
_DEVICESERVICE.methods_by_name['GetRandomDevAddr']._options = None
_DEVICESERVICE.methods_by_name['GetRandomDevAddr']._serialized_options = b'\202\323\344\223\002,\"*/api/devices/{dev_eui}/get-random-dev-addr'
_DEVICESERVICE.methods_by_name['GetMetrics']._options = None
_DEVICESERVICE.methods_by_name['GetMetrics']._serialized_options = b'\202\323\344\223\002 \022\036/api/devices/{dev_eui}/metrics'
_DEVICESERVICE.methods_by_name['GetLinkMetrics']._options = None
_DEVICESERVICE.methods_by_name['GetLinkMetrics']._serialized_options = b'\202\323\344\223\002%\022#/api/devices/{dev_eui}/link-metrics'
_DEVICESERVICE.methods_by_name['Enqueue']._options = None
_DEVICESERVICE.methods_by_name['Enqueue']._serialized_options = b'\202\323\344\223\002,\"\'/api/devices/{queue_item.dev_eui}/queue:\001*'
_DEVICESERVICE.methods_by_name['FlushQueue']._options = None
_DEVICESERVICE.methods_by_name['FlushQueue']._serialized_options = b'\202\323\344\223\002\036*\034/api/devices/{dev_eui}/queue'
_DEVICESERVICE.methods_by_name['GetQueue']._options = None
_DEVICESERVICE.methods_by_name['GetQueue']._serialized_options = b'\202\323\344\223\002\036\022\034/api/devices/{dev_eui}/queue'
_DEVICESERVICE.methods_by_name['GetNextFCntDown']._options = None
_DEVICESERVICE.methods_by_name['GetNextFCntDown']._serialized_options = b'\202\323\344\223\002/\"*/api/devices/{dev_eui}/get-next-f-cnt-down:\001*'
_globals['DESCRIPTOR']._options = None
_globals['DESCRIPTOR']._serialized_options = b'\n\021io.chirpstack.apiB\013DeviceProtoP\001Z.github.com/chirpstack/chirpstack/api/go/v4/api\252\002\016Chirpstack.Api'
_globals['_DEVICE_VARIABLESENTRY']._options = None
_globals['_DEVICE_VARIABLESENTRY']._serialized_options = b'8\001'
_globals['_DEVICE_TAGSENTRY']._options = None
_globals['_DEVICE_TAGSENTRY']._serialized_options = b'8\001'
_globals['_GETDEVICEMETRICSRESPONSE_METRICSENTRY']._options = None
_globals['_GETDEVICEMETRICSRESPONSE_METRICSENTRY']._serialized_options = b'8\001'
_globals['_GETDEVICEMETRICSRESPONSE_STATESENTRY']._options = None
_globals['_GETDEVICEMETRICSRESPONSE_STATESENTRY']._serialized_options = b'8\001'
_globals['_DEVICESERVICE'].methods_by_name['Create']._options = None
_globals['_DEVICESERVICE'].methods_by_name['Create']._serialized_options = b'\202\323\344\223\002\021\"\014/api/devices:\001*'
_globals['_DEVICESERVICE'].methods_by_name['Get']._options = None
_globals['_DEVICESERVICE'].methods_by_name['Get']._serialized_options = b'\202\323\344\223\002\030\022\026/api/devices/{dev_eui}'
_globals['_DEVICESERVICE'].methods_by_name['Update']._options = None
_globals['_DEVICESERVICE'].methods_by_name['Update']._serialized_options = b'\202\323\344\223\002\"\032\035/api/devices/{device.dev_eui}:\001*'
_globals['_DEVICESERVICE'].methods_by_name['Delete']._options = None
_globals['_DEVICESERVICE'].methods_by_name['Delete']._serialized_options = b'\202\323\344\223\002\030*\026/api/devices/{dev_eui}'
_globals['_DEVICESERVICE'].methods_by_name['List']._options = None
_globals['_DEVICESERVICE'].methods_by_name['List']._serialized_options = b'\202\323\344\223\002\016\022\014/api/devices'
_globals['_DEVICESERVICE'].methods_by_name['CreateKeys']._options = None
_globals['_DEVICESERVICE'].methods_by_name['CreateKeys']._serialized_options = b'\202\323\344\223\002,\"\'/api/devices/{device_keys.dev_eui}/keys:\001*'
_globals['_DEVICESERVICE'].methods_by_name['GetKeys']._options = None
_globals['_DEVICESERVICE'].methods_by_name['GetKeys']._serialized_options = b'\202\323\344\223\002\035\022\033/api/devices/{dev_eui}/keys'
_globals['_DEVICESERVICE'].methods_by_name['UpdateKeys']._options = None
_globals['_DEVICESERVICE'].methods_by_name['UpdateKeys']._serialized_options = b'\202\323\344\223\002,\032\'/api/devices/{device_keys.dev_eui}/keys:\001*'
_globals['_DEVICESERVICE'].methods_by_name['DeleteKeys']._options = None
_globals['_DEVICESERVICE'].methods_by_name['DeleteKeys']._serialized_options = b'\202\323\344\223\002\035*\033/api/devices/{dev_eui}/keys'
_globals['_DEVICESERVICE'].methods_by_name['FlushDevNonces']._options = None
_globals['_DEVICESERVICE'].methods_by_name['FlushDevNonces']._serialized_options = b'\202\323\344\223\002#*!/api/devices/{dev_eui}/dev-nonces'
_globals['_DEVICESERVICE'].methods_by_name['Activate']._options = None
_globals['_DEVICESERVICE'].methods_by_name['Activate']._serialized_options = b'\202\323\344\223\0026\"1/api/devices/{device_activation.dev_eui}/activate:\001*'
_globals['_DEVICESERVICE'].methods_by_name['Deactivate']._options = None
_globals['_DEVICESERVICE'].methods_by_name['Deactivate']._serialized_options = b'\202\323\344\223\002#*!/api/devices/{dev_eui}/activation'
_globals['_DEVICESERVICE'].methods_by_name['GetActivation']._options = None
_globals['_DEVICESERVICE'].methods_by_name['GetActivation']._serialized_options = b'\202\323\344\223\002#\022!/api/devices/{dev_eui}/activation'
_globals['_DEVICESERVICE'].methods_by_name['GetRandomDevAddr']._options = None
_globals['_DEVICESERVICE'].methods_by_name['GetRandomDevAddr']._serialized_options = b'\202\323\344\223\002,\"*/api/devices/{dev_eui}/get-random-dev-addr'
_globals['_DEVICESERVICE'].methods_by_name['GetMetrics']._options = None
_globals['_DEVICESERVICE'].methods_by_name['GetMetrics']._serialized_options = b'\202\323\344\223\002 \022\036/api/devices/{dev_eui}/metrics'
_globals['_DEVICESERVICE'].methods_by_name['GetLinkMetrics']._options = None
_globals['_DEVICESERVICE'].methods_by_name['GetLinkMetrics']._serialized_options = b'\202\323\344\223\002%\022#/api/devices/{dev_eui}/link-metrics'
_globals['_DEVICESERVICE'].methods_by_name['Enqueue']._options = None
_globals['_DEVICESERVICE'].methods_by_name['Enqueue']._serialized_options = b'\202\323\344\223\002,\"\'/api/devices/{queue_item.dev_eui}/queue:\001*'
_globals['_DEVICESERVICE'].methods_by_name['FlushQueue']._options = None
_globals['_DEVICESERVICE'].methods_by_name['FlushQueue']._serialized_options = b'\202\323\344\223\002\036*\034/api/devices/{dev_eui}/queue'
_globals['_DEVICESERVICE'].methods_by_name['GetQueue']._options = None
_globals['_DEVICESERVICE'].methods_by_name['GetQueue']._serialized_options = b'\202\323\344\223\002\036\022\034/api/devices/{dev_eui}/queue'
_globals['_DEVICESERVICE'].methods_by_name['GetNextFCntDown']._options = None
_globals['_DEVICESERVICE'].methods_by_name['GetNextFCntDown']._serialized_options = b'\202\323\344\223\002/\"*/api/devices/{dev_eui}/get-next-f-cnt-down:\001*'
_globals['_DEVICE']._serialized_start=199
_globals['_DEVICE']._serialized_end=553
_globals['_DEVICE_VARIABLESENTRY']._serialized_start=460

View File

@ -11,16 +11,16 @@ from typing import ClassVar as _ClassVar, Iterable as _Iterable, Mapping as _Map
DESCRIPTOR: _descriptor.FileDescriptor
class Device(_message.Message):
__slots__ = ["dev_eui", "name", "description", "application_id", "device_profile_id", "skip_fcnt_check", "is_disabled", "variables", "tags", "join_eui"]
__slots__ = ("dev_eui", "name", "description", "application_id", "device_profile_id", "skip_fcnt_check", "is_disabled", "variables", "tags", "join_eui")
class VariablesEntry(_message.Message):
__slots__ = ["key", "value"]
__slots__ = ("key", "value")
KEY_FIELD_NUMBER: _ClassVar[int]
VALUE_FIELD_NUMBER: _ClassVar[int]
key: str
value: str
def __init__(self, key: _Optional[str] = ..., value: _Optional[str] = ...) -> None: ...
class TagsEntry(_message.Message):
__slots__ = ["key", "value"]
__slots__ = ("key", "value")
KEY_FIELD_NUMBER: _ClassVar[int]
VALUE_FIELD_NUMBER: _ClassVar[int]
key: str
@ -49,7 +49,7 @@ class Device(_message.Message):
def __init__(self, dev_eui: _Optional[str] = ..., name: _Optional[str] = ..., description: _Optional[str] = ..., application_id: _Optional[str] = ..., device_profile_id: _Optional[str] = ..., skip_fcnt_check: bool = ..., is_disabled: bool = ..., variables: _Optional[_Mapping[str, str]] = ..., tags: _Optional[_Mapping[str, str]] = ..., join_eui: _Optional[str] = ...) -> None: ...
class DeviceStatus(_message.Message):
__slots__ = ["margin", "external_power_source", "battery_level"]
__slots__ = ("margin", "external_power_source", "battery_level")
MARGIN_FIELD_NUMBER: _ClassVar[int]
EXTERNAL_POWER_SOURCE_FIELD_NUMBER: _ClassVar[int]
BATTERY_LEVEL_FIELD_NUMBER: _ClassVar[int]
@ -59,7 +59,7 @@ class DeviceStatus(_message.Message):
def __init__(self, margin: _Optional[int] = ..., external_power_source: bool = ..., battery_level: _Optional[float] = ...) -> None: ...
class DeviceListItem(_message.Message):
__slots__ = ["dev_eui", "created_at", "updated_at", "last_seen_at", "name", "description", "device_profile_id", "device_profile_name", "device_status"]
__slots__ = ("dev_eui", "created_at", "updated_at", "last_seen_at", "name", "description", "device_profile_id", "device_profile_name", "device_status")
DEV_EUI_FIELD_NUMBER: _ClassVar[int]
CREATED_AT_FIELD_NUMBER: _ClassVar[int]
UPDATED_AT_FIELD_NUMBER: _ClassVar[int]
@ -81,7 +81,7 @@ class DeviceListItem(_message.Message):
def __init__(self, dev_eui: _Optional[str] = ..., 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]] = ..., name: _Optional[str] = ..., description: _Optional[str] = ..., device_profile_id: _Optional[str] = ..., device_profile_name: _Optional[str] = ..., device_status: _Optional[_Union[DeviceStatus, _Mapping]] = ...) -> None: ...
class DeviceKeys(_message.Message):
__slots__ = ["dev_eui", "nwk_key", "app_key"]
__slots__ = ("dev_eui", "nwk_key", "app_key")
DEV_EUI_FIELD_NUMBER: _ClassVar[int]
NWK_KEY_FIELD_NUMBER: _ClassVar[int]
APP_KEY_FIELD_NUMBER: _ClassVar[int]
@ -91,19 +91,19 @@ class DeviceKeys(_message.Message):
def __init__(self, dev_eui: _Optional[str] = ..., nwk_key: _Optional[str] = ..., app_key: _Optional[str] = ...) -> None: ...
class CreateDeviceRequest(_message.Message):
__slots__ = ["device"]
__slots__ = ("device",)
DEVICE_FIELD_NUMBER: _ClassVar[int]
device: Device
def __init__(self, device: _Optional[_Union[Device, _Mapping]] = ...) -> None: ...
class GetDeviceRequest(_message.Message):
__slots__ = ["dev_eui"]
__slots__ = ("dev_eui",)
DEV_EUI_FIELD_NUMBER: _ClassVar[int]
dev_eui: str
def __init__(self, dev_eui: _Optional[str] = ...) -> None: ...
class GetDeviceResponse(_message.Message):
__slots__ = ["device", "created_at", "updated_at", "last_seen_at", "device_status", "class_enabled"]
__slots__ = ("device", "created_at", "updated_at", "last_seen_at", "device_status", "class_enabled")
DEVICE_FIELD_NUMBER: _ClassVar[int]
CREATED_AT_FIELD_NUMBER: _ClassVar[int]
UPDATED_AT_FIELD_NUMBER: _ClassVar[int]
@ -119,19 +119,19 @@ class GetDeviceResponse(_message.Message):
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 UpdateDeviceRequest(_message.Message):
__slots__ = ["device"]
__slots__ = ("device",)
DEVICE_FIELD_NUMBER: _ClassVar[int]
device: Device
def __init__(self, device: _Optional[_Union[Device, _Mapping]] = ...) -> None: ...
class DeleteDeviceRequest(_message.Message):
__slots__ = ["dev_eui"]
__slots__ = ("dev_eui",)
DEV_EUI_FIELD_NUMBER: _ClassVar[int]
dev_eui: str
def __init__(self, dev_eui: _Optional[str] = ...) -> None: ...
class ListDevicesRequest(_message.Message):
__slots__ = ["limit", "offset", "search", "application_id", "multicast_group_id"]
__slots__ = ("limit", "offset", "search", "application_id", "multicast_group_id")
LIMIT_FIELD_NUMBER: _ClassVar[int]
OFFSET_FIELD_NUMBER: _ClassVar[int]
SEARCH_FIELD_NUMBER: _ClassVar[int]
@ -145,7 +145,7 @@ class ListDevicesRequest(_message.Message):
def __init__(self, limit: _Optional[int] = ..., offset: _Optional[int] = ..., search: _Optional[str] = ..., application_id: _Optional[str] = ..., multicast_group_id: _Optional[str] = ...) -> None: ...
class ListDevicesResponse(_message.Message):
__slots__ = ["total_count", "result"]
__slots__ = ("total_count", "result")
TOTAL_COUNT_FIELD_NUMBER: _ClassVar[int]
RESULT_FIELD_NUMBER: _ClassVar[int]
total_count: int
@ -153,19 +153,19 @@ class ListDevicesResponse(_message.Message):
def __init__(self, total_count: _Optional[int] = ..., result: _Optional[_Iterable[_Union[DeviceListItem, _Mapping]]] = ...) -> None: ...
class CreateDeviceKeysRequest(_message.Message):
__slots__ = ["device_keys"]
__slots__ = ("device_keys",)
DEVICE_KEYS_FIELD_NUMBER: _ClassVar[int]
device_keys: DeviceKeys
def __init__(self, device_keys: _Optional[_Union[DeviceKeys, _Mapping]] = ...) -> None: ...
class GetDeviceKeysRequest(_message.Message):
__slots__ = ["dev_eui"]
__slots__ = ("dev_eui",)
DEV_EUI_FIELD_NUMBER: _ClassVar[int]
dev_eui: str
def __init__(self, dev_eui: _Optional[str] = ...) -> None: ...
class GetDeviceKeysResponse(_message.Message):
__slots__ = ["device_keys", "created_at", "updated_at"]
__slots__ = ("device_keys", "created_at", "updated_at")
DEVICE_KEYS_FIELD_NUMBER: _ClassVar[int]
CREATED_AT_FIELD_NUMBER: _ClassVar[int]
UPDATED_AT_FIELD_NUMBER: _ClassVar[int]
@ -175,19 +175,19 @@ class GetDeviceKeysResponse(_message.Message):
def __init__(self, device_keys: _Optional[_Union[DeviceKeys, _Mapping]] = ..., created_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., updated_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ...) -> None: ...
class UpdateDeviceKeysRequest(_message.Message):
__slots__ = ["device_keys"]
__slots__ = ("device_keys",)
DEVICE_KEYS_FIELD_NUMBER: _ClassVar[int]
device_keys: DeviceKeys
def __init__(self, device_keys: _Optional[_Union[DeviceKeys, _Mapping]] = ...) -> None: ...
class DeleteDeviceKeysRequest(_message.Message):
__slots__ = ["dev_eui"]
__slots__ = ("dev_eui",)
DEV_EUI_FIELD_NUMBER: _ClassVar[int]
dev_eui: str
def __init__(self, dev_eui: _Optional[str] = ...) -> None: ...
class DeviceActivation(_message.Message):
__slots__ = ["dev_eui", "dev_addr", "app_s_key", "nwk_s_enc_key", "s_nwk_s_int_key", "f_nwk_s_int_key", "f_cnt_up", "n_f_cnt_down", "a_f_cnt_down"]
__slots__ = ("dev_eui", "dev_addr", "app_s_key", "nwk_s_enc_key", "s_nwk_s_int_key", "f_nwk_s_int_key", "f_cnt_up", "n_f_cnt_down", "a_f_cnt_down")
DEV_EUI_FIELD_NUMBER: _ClassVar[int]
DEV_ADDR_FIELD_NUMBER: _ClassVar[int]
APP_S_KEY_FIELD_NUMBER: _ClassVar[int]
@ -209,43 +209,43 @@ class DeviceActivation(_message.Message):
def __init__(self, dev_eui: _Optional[str] = ..., dev_addr: _Optional[str] = ..., app_s_key: _Optional[str] = ..., nwk_s_enc_key: _Optional[str] = ..., s_nwk_s_int_key: _Optional[str] = ..., f_nwk_s_int_key: _Optional[str] = ..., f_cnt_up: _Optional[int] = ..., n_f_cnt_down: _Optional[int] = ..., a_f_cnt_down: _Optional[int] = ...) -> None: ...
class ActivateDeviceRequest(_message.Message):
__slots__ = ["device_activation"]
__slots__ = ("device_activation",)
DEVICE_ACTIVATION_FIELD_NUMBER: _ClassVar[int]
device_activation: DeviceActivation
def __init__(self, device_activation: _Optional[_Union[DeviceActivation, _Mapping]] = ...) -> None: ...
class DeactivateDeviceRequest(_message.Message):
__slots__ = ["dev_eui"]
__slots__ = ("dev_eui",)
DEV_EUI_FIELD_NUMBER: _ClassVar[int]
dev_eui: str
def __init__(self, dev_eui: _Optional[str] = ...) -> None: ...
class GetDeviceActivationRequest(_message.Message):
__slots__ = ["dev_eui"]
__slots__ = ("dev_eui",)
DEV_EUI_FIELD_NUMBER: _ClassVar[int]
dev_eui: str
def __init__(self, dev_eui: _Optional[str] = ...) -> None: ...
class GetDeviceActivationResponse(_message.Message):
__slots__ = ["device_activation"]
__slots__ = ("device_activation",)
DEVICE_ACTIVATION_FIELD_NUMBER: _ClassVar[int]
device_activation: DeviceActivation
def __init__(self, device_activation: _Optional[_Union[DeviceActivation, _Mapping]] = ...) -> None: ...
class GetRandomDevAddrRequest(_message.Message):
__slots__ = ["dev_eui"]
__slots__ = ("dev_eui",)
DEV_EUI_FIELD_NUMBER: _ClassVar[int]
dev_eui: str
def __init__(self, dev_eui: _Optional[str] = ...) -> None: ...
class GetRandomDevAddrResponse(_message.Message):
__slots__ = ["dev_addr"]
__slots__ = ("dev_addr",)
DEV_ADDR_FIELD_NUMBER: _ClassVar[int]
dev_addr: str
def __init__(self, dev_addr: _Optional[str] = ...) -> None: ...
class GetDeviceMetricsRequest(_message.Message):
__slots__ = ["dev_eui", "start", "end", "aggregation"]
__slots__ = ("dev_eui", "start", "end", "aggregation")
DEV_EUI_FIELD_NUMBER: _ClassVar[int]
START_FIELD_NUMBER: _ClassVar[int]
END_FIELD_NUMBER: _ClassVar[int]
@ -257,16 +257,16 @@ class GetDeviceMetricsRequest(_message.Message):
def __init__(self, dev_eui: _Optional[str] = ..., start: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., end: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., aggregation: _Optional[_Union[_common_pb2.Aggregation, str]] = ...) -> None: ...
class GetDeviceMetricsResponse(_message.Message):
__slots__ = ["metrics", "states"]
__slots__ = ("metrics", "states")
class MetricsEntry(_message.Message):
__slots__ = ["key", "value"]
__slots__ = ("key", "value")
KEY_FIELD_NUMBER: _ClassVar[int]
VALUE_FIELD_NUMBER: _ClassVar[int]
key: str
value: _common_pb2.Metric
def __init__(self, key: _Optional[str] = ..., value: _Optional[_Union[_common_pb2.Metric, _Mapping]] = ...) -> None: ...
class StatesEntry(_message.Message):
__slots__ = ["key", "value"]
__slots__ = ("key", "value")
KEY_FIELD_NUMBER: _ClassVar[int]
VALUE_FIELD_NUMBER: _ClassVar[int]
key: str
@ -279,7 +279,7 @@ class GetDeviceMetricsResponse(_message.Message):
def __init__(self, metrics: _Optional[_Mapping[str, _common_pb2.Metric]] = ..., states: _Optional[_Mapping[str, DeviceState]] = ...) -> None: ...
class DeviceState(_message.Message):
__slots__ = ["name", "value"]
__slots__ = ("name", "value")
NAME_FIELD_NUMBER: _ClassVar[int]
VALUE_FIELD_NUMBER: _ClassVar[int]
name: str
@ -287,7 +287,7 @@ class DeviceState(_message.Message):
def __init__(self, name: _Optional[str] = ..., value: _Optional[str] = ...) -> None: ...
class GetDeviceLinkMetricsRequest(_message.Message):
__slots__ = ["dev_eui", "start", "end", "aggregation"]
__slots__ = ("dev_eui", "start", "end", "aggregation")
DEV_EUI_FIELD_NUMBER: _ClassVar[int]
START_FIELD_NUMBER: _ClassVar[int]
END_FIELD_NUMBER: _ClassVar[int]
@ -299,7 +299,7 @@ class GetDeviceLinkMetricsRequest(_message.Message):
def __init__(self, dev_eui: _Optional[str] = ..., start: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., end: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., aggregation: _Optional[_Union[_common_pb2.Aggregation, str]] = ...) -> None: ...
class GetDeviceLinkMetricsResponse(_message.Message):
__slots__ = ["rx_packets", "gw_rssi", "gw_snr", "rx_packets_per_freq", "rx_packets_per_dr", "errors"]
__slots__ = ("rx_packets", "gw_rssi", "gw_snr", "rx_packets_per_freq", "rx_packets_per_dr", "errors")
RX_PACKETS_FIELD_NUMBER: _ClassVar[int]
GW_RSSI_FIELD_NUMBER: _ClassVar[int]
GW_SNR_FIELD_NUMBER: _ClassVar[int]
@ -315,7 +315,7 @@ class GetDeviceLinkMetricsResponse(_message.Message):
def __init__(self, rx_packets: _Optional[_Union[_common_pb2.Metric, _Mapping]] = ..., gw_rssi: _Optional[_Union[_common_pb2.Metric, _Mapping]] = ..., gw_snr: _Optional[_Union[_common_pb2.Metric, _Mapping]] = ..., rx_packets_per_freq: _Optional[_Union[_common_pb2.Metric, _Mapping]] = ..., rx_packets_per_dr: _Optional[_Union[_common_pb2.Metric, _Mapping]] = ..., errors: _Optional[_Union[_common_pb2.Metric, _Mapping]] = ...) -> None: ...
class DeviceQueueItem(_message.Message):
__slots__ = ["id", "dev_eui", "confirmed", "f_port", "data", "object", "is_pending", "f_cnt_down", "is_encrypted"]
__slots__ = ("id", "dev_eui", "confirmed", "f_port", "data", "object", "is_pending", "f_cnt_down", "is_encrypted")
ID_FIELD_NUMBER: _ClassVar[int]
DEV_EUI_FIELD_NUMBER: _ClassVar[int]
CONFIRMED_FIELD_NUMBER: _ClassVar[int]
@ -337,25 +337,25 @@ class DeviceQueueItem(_message.Message):
def __init__(self, id: _Optional[str] = ..., dev_eui: _Optional[str] = ..., confirmed: bool = ..., f_port: _Optional[int] = ..., data: _Optional[bytes] = ..., object: _Optional[_Union[_struct_pb2.Struct, _Mapping]] = ..., is_pending: bool = ..., f_cnt_down: _Optional[int] = ..., is_encrypted: bool = ...) -> None: ...
class EnqueueDeviceQueueItemRequest(_message.Message):
__slots__ = ["queue_item"]
__slots__ = ("queue_item",)
QUEUE_ITEM_FIELD_NUMBER: _ClassVar[int]
queue_item: DeviceQueueItem
def __init__(self, queue_item: _Optional[_Union[DeviceQueueItem, _Mapping]] = ...) -> None: ...
class EnqueueDeviceQueueItemResponse(_message.Message):
__slots__ = ["id"]
__slots__ = ("id",)
ID_FIELD_NUMBER: _ClassVar[int]
id: str
def __init__(self, id: _Optional[str] = ...) -> None: ...
class FlushDeviceQueueRequest(_message.Message):
__slots__ = ["dev_eui"]
__slots__ = ("dev_eui",)
DEV_EUI_FIELD_NUMBER: _ClassVar[int]
dev_eui: str
def __init__(self, dev_eui: _Optional[str] = ...) -> None: ...
class GetDeviceQueueItemsRequest(_message.Message):
__slots__ = ["dev_eui", "count_only"]
__slots__ = ("dev_eui", "count_only")
DEV_EUI_FIELD_NUMBER: _ClassVar[int]
COUNT_ONLY_FIELD_NUMBER: _ClassVar[int]
dev_eui: str
@ -363,7 +363,7 @@ class GetDeviceQueueItemsRequest(_message.Message):
def __init__(self, dev_eui: _Optional[str] = ..., count_only: bool = ...) -> None: ...
class GetDeviceQueueItemsResponse(_message.Message):
__slots__ = ["total_count", "result"]
__slots__ = ("total_count", "result")
TOTAL_COUNT_FIELD_NUMBER: _ClassVar[int]
RESULT_FIELD_NUMBER: _ClassVar[int]
total_count: int
@ -371,19 +371,19 @@ class GetDeviceQueueItemsResponse(_message.Message):
def __init__(self, total_count: _Optional[int] = ..., result: _Optional[_Iterable[_Union[DeviceQueueItem, _Mapping]]] = ...) -> None: ...
class FlushDevNoncesRequest(_message.Message):
__slots__ = ["dev_eui"]
__slots__ = ("dev_eui",)
DEV_EUI_FIELD_NUMBER: _ClassVar[int]
dev_eui: str
def __init__(self, dev_eui: _Optional[str] = ...) -> None: ...
class GetDeviceNextFCntDownRequest(_message.Message):
__slots__ = ["dev_eui"]
__slots__ = ("dev_eui",)
DEV_EUI_FIELD_NUMBER: _ClassVar[int]
dev_eui: str
def __init__(self, dev_eui: _Optional[str] = ...) -> None: ...
class GetDeviceNextFCntDownResponse(_message.Message):
__slots__ = ["f_cnt_down"]
__slots__ = ("f_cnt_down",)
F_CNT_DOWN_FIELD_NUMBER: _ClassVar[int]
f_cnt_down: int
def __init__(self, f_cnt_down: _Optional[int] = ...) -> None: ...

View File

@ -1,6 +1,7 @@
# -*- coding: utf-8 -*-
# Generated by the protocol buffer compiler. DO NOT EDIT!
# source: chirpstack-api/api/device_profile.proto
# Protobuf Python Version: 4.25.0
"""Generated protocol buffer code."""
from google.protobuf import descriptor as _descriptor
from google.protobuf import descriptor_pool as _descriptor_pool
@ -23,25 +24,24 @@ _globals = globals()
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'chirpstack_api.api.device_profile_pb2', _globals)
if _descriptor._USE_C_DESCRIPTORS == False:
DESCRIPTOR._options = None
DESCRIPTOR._serialized_options = b'\n\021io.chirpstack.apiB\022DeviceProfileProtoP\001Z.github.com/chirpstack/chirpstack/api/go/v4/api\252\002\016Chirpstack.Api'
_DEVICEPROFILE_TAGSENTRY._options = None
_DEVICEPROFILE_TAGSENTRY._serialized_options = b'8\001'
_DEVICEPROFILE_MEASUREMENTSENTRY._options = None
_DEVICEPROFILE_MEASUREMENTSENTRY._serialized_options = b'8\001'
_DEVICEPROFILESERVICE.methods_by_name['Create']._options = None
_DEVICEPROFILESERVICE.methods_by_name['Create']._serialized_options = b'\202\323\344\223\002\031\"\024/api/device-profiles:\001*'
_DEVICEPROFILESERVICE.methods_by_name['Get']._options = None
_DEVICEPROFILESERVICE.methods_by_name['Get']._serialized_options = b'\202\323\344\223\002\033\022\031/api/device-profiles/{id}'
_DEVICEPROFILESERVICE.methods_by_name['Update']._options = None
_DEVICEPROFILESERVICE.methods_by_name['Update']._serialized_options = b'\202\323\344\223\002-\032(/api/device-profiles/{device_profile.id}:\001*'
_DEVICEPROFILESERVICE.methods_by_name['Delete']._options = None
_DEVICEPROFILESERVICE.methods_by_name['Delete']._serialized_options = b'\202\323\344\223\002\033*\031/api/device-profiles/{id}'
_DEVICEPROFILESERVICE.methods_by_name['List']._options = None
_DEVICEPROFILESERVICE.methods_by_name['List']._serialized_options = b'\202\323\344\223\002\026\022\024/api/device-profiles'
_DEVICEPROFILESERVICE.methods_by_name['ListAdrAlgorithms']._options = None
_DEVICEPROFILESERVICE.methods_by_name['ListAdrAlgorithms']._serialized_options = b'\202\323\344\223\002%\022#/api/device-profiles/adr-algorithms'
_globals['DESCRIPTOR']._options = None
_globals['DESCRIPTOR']._serialized_options = b'\n\021io.chirpstack.apiB\022DeviceProfileProtoP\001Z.github.com/chirpstack/chirpstack/api/go/v4/api\252\002\016Chirpstack.Api'
_globals['_DEVICEPROFILE_TAGSENTRY']._options = None
_globals['_DEVICEPROFILE_TAGSENTRY']._serialized_options = b'8\001'
_globals['_DEVICEPROFILE_MEASUREMENTSENTRY']._options = None
_globals['_DEVICEPROFILE_MEASUREMENTSENTRY']._serialized_options = b'8\001'
_globals['_DEVICEPROFILESERVICE'].methods_by_name['Create']._options = None
_globals['_DEVICEPROFILESERVICE'].methods_by_name['Create']._serialized_options = b'\202\323\344\223\002\031\"\024/api/device-profiles:\001*'
_globals['_DEVICEPROFILESERVICE'].methods_by_name['Get']._options = None
_globals['_DEVICEPROFILESERVICE'].methods_by_name['Get']._serialized_options = b'\202\323\344\223\002\033\022\031/api/device-profiles/{id}'
_globals['_DEVICEPROFILESERVICE'].methods_by_name['Update']._options = None
_globals['_DEVICEPROFILESERVICE'].methods_by_name['Update']._serialized_options = b'\202\323\344\223\002-\032(/api/device-profiles/{device_profile.id}:\001*'
_globals['_DEVICEPROFILESERVICE'].methods_by_name['Delete']._options = None
_globals['_DEVICEPROFILESERVICE'].methods_by_name['Delete']._serialized_options = b'\202\323\344\223\002\033*\031/api/device-profiles/{id}'
_globals['_DEVICEPROFILESERVICE'].methods_by_name['List']._options = None
_globals['_DEVICEPROFILESERVICE'].methods_by_name['List']._serialized_options = b'\202\323\344\223\002\026\022\024/api/device-profiles'
_globals['_DEVICEPROFILESERVICE'].methods_by_name['ListAdrAlgorithms']._options = None
_globals['_DEVICEPROFILESERVICE'].methods_by_name['ListAdrAlgorithms']._serialized_options = b'\202\323\344\223\002%\022#/api/device-profiles/adr-algorithms'
_globals['_CODECRUNTIME']._serialized_start=3270
_globals['_CODECRUNTIME']._serialized_end=3319
_globals['_MEASUREMENTKIND']._serialized_start=3321

View File

@ -11,13 +11,13 @@ from typing import ClassVar as _ClassVar, Iterable as _Iterable, Mapping as _Map
DESCRIPTOR: _descriptor.FileDescriptor
class CodecRuntime(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
__slots__ = []
__slots__ = ()
NONE: _ClassVar[CodecRuntime]
CAYENNE_LPP: _ClassVar[CodecRuntime]
JS: _ClassVar[CodecRuntime]
class MeasurementKind(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
__slots__ = []
__slots__ = ()
UNKNOWN: _ClassVar[MeasurementKind]
COUNTER: _ClassVar[MeasurementKind]
ABSOLUTE: _ClassVar[MeasurementKind]
@ -25,7 +25,7 @@ class MeasurementKind(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
STRING: _ClassVar[MeasurementKind]
class CadPeriodicity(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
__slots__ = []
__slots__ = ()
SEC_1: _ClassVar[CadPeriodicity]
MS_500: _ClassVar[CadPeriodicity]
MS_250: _ClassVar[CadPeriodicity]
@ -34,7 +34,7 @@ class CadPeriodicity(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
MS_20: _ClassVar[CadPeriodicity]
class SecondChAckOffset(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
__slots__ = []
__slots__ = ()
KHZ_0: _ClassVar[SecondChAckOffset]
KHZ_200: _ClassVar[SecondChAckOffset]
KHZ_400: _ClassVar[SecondChAckOffset]
@ -43,7 +43,7 @@ class SecondChAckOffset(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
KHZ_3200: _ClassVar[SecondChAckOffset]
class RelayModeActivation(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
__slots__ = []
__slots__ = ()
DISABLE_RELAY_MODE: _ClassVar[RelayModeActivation]
ENABLE_RELAY_MODE: _ClassVar[RelayModeActivation]
DYNAMIC: _ClassVar[RelayModeActivation]
@ -74,16 +74,16 @@ DYNAMIC: RelayModeActivation
END_DEVICE_CONTROLLED: RelayModeActivation
class DeviceProfile(_message.Message):
__slots__ = ["id", "tenant_id", "name", "description", "region", "mac_version", "reg_params_revision", "adr_algorithm_id", "payload_codec_runtime", "payload_codec_script", "flush_queue_on_activate", "uplink_interval", "device_status_req_interval", "supports_otaa", "supports_class_b", "supports_class_c", "class_b_timeout", "class_b_ping_slot_nb_k", "class_b_ping_slot_dr", "class_b_ping_slot_freq", "class_c_timeout", "abp_rx1_delay", "abp_rx1_dr_offset", "abp_rx2_dr", "abp_rx2_freq", "tags", "measurements", "auto_detect_measurements", "region_config_id", "is_relay", "is_relay_ed", "relay_ed_relay_only", "relay_enabled", "relay_cad_periodicity", "relay_default_channel_index", "relay_second_channel_freq", "relay_second_channel_dr", "relay_second_channel_ack_offset", "relay_ed_activation_mode", "relay_ed_smart_enable_level", "relay_ed_back_off", "relay_ed_uplink_limit_bucket_size", "relay_ed_uplink_limit_reload_rate", "relay_join_req_limit_reload_rate", "relay_notify_limit_reload_rate", "relay_global_uplink_limit_reload_rate", "relay_overall_limit_reload_rate", "relay_join_req_limit_bucket_size", "relay_notify_limit_bucket_size", "relay_global_uplink_limit_bucket_size", "relay_overall_limit_bucket_size", "allow_roaming"]
__slots__ = ("id", "tenant_id", "name", "description", "region", "mac_version", "reg_params_revision", "adr_algorithm_id", "payload_codec_runtime", "payload_codec_script", "flush_queue_on_activate", "uplink_interval", "device_status_req_interval", "supports_otaa", "supports_class_b", "supports_class_c", "class_b_timeout", "class_b_ping_slot_nb_k", "class_b_ping_slot_dr", "class_b_ping_slot_freq", "class_c_timeout", "abp_rx1_delay", "abp_rx1_dr_offset", "abp_rx2_dr", "abp_rx2_freq", "tags", "measurements", "auto_detect_measurements", "region_config_id", "is_relay", "is_relay_ed", "relay_ed_relay_only", "relay_enabled", "relay_cad_periodicity", "relay_default_channel_index", "relay_second_channel_freq", "relay_second_channel_dr", "relay_second_channel_ack_offset", "relay_ed_activation_mode", "relay_ed_smart_enable_level", "relay_ed_back_off", "relay_ed_uplink_limit_bucket_size", "relay_ed_uplink_limit_reload_rate", "relay_join_req_limit_reload_rate", "relay_notify_limit_reload_rate", "relay_global_uplink_limit_reload_rate", "relay_overall_limit_reload_rate", "relay_join_req_limit_bucket_size", "relay_notify_limit_bucket_size", "relay_global_uplink_limit_bucket_size", "relay_overall_limit_bucket_size", "allow_roaming")
class TagsEntry(_message.Message):
__slots__ = ["key", "value"]
__slots__ = ("key", "value")
KEY_FIELD_NUMBER: _ClassVar[int]
VALUE_FIELD_NUMBER: _ClassVar[int]
key: str
value: str
def __init__(self, key: _Optional[str] = ..., value: _Optional[str] = ...) -> None: ...
class MeasurementsEntry(_message.Message):
__slots__ = ["key", "value"]
__slots__ = ("key", "value")
KEY_FIELD_NUMBER: _ClassVar[int]
VALUE_FIELD_NUMBER: _ClassVar[int]
key: str
@ -196,7 +196,7 @@ class DeviceProfile(_message.Message):
def __init__(self, id: _Optional[str] = ..., tenant_id: _Optional[str] = ..., name: _Optional[str] = ..., description: _Optional[str] = ..., region: _Optional[_Union[_common_pb2.Region, str]] = ..., mac_version: _Optional[_Union[_common_pb2.MacVersion, str]] = ..., reg_params_revision: _Optional[_Union[_common_pb2.RegParamsRevision, str]] = ..., adr_algorithm_id: _Optional[str] = ..., payload_codec_runtime: _Optional[_Union[CodecRuntime, str]] = ..., payload_codec_script: _Optional[str] = ..., flush_queue_on_activate: bool = ..., uplink_interval: _Optional[int] = ..., device_status_req_interval: _Optional[int] = ..., supports_otaa: bool = ..., supports_class_b: bool = ..., supports_class_c: bool = ..., class_b_timeout: _Optional[int] = ..., class_b_ping_slot_nb_k: _Optional[int] = ..., class_b_ping_slot_dr: _Optional[int] = ..., class_b_ping_slot_freq: _Optional[int] = ..., class_c_timeout: _Optional[int] = ..., abp_rx1_delay: _Optional[int] = ..., abp_rx1_dr_offset: _Optional[int] = ..., abp_rx2_dr: _Optional[int] = ..., abp_rx2_freq: _Optional[int] = ..., tags: _Optional[_Mapping[str, str]] = ..., measurements: _Optional[_Mapping[str, Measurement]] = ..., auto_detect_measurements: bool = ..., region_config_id: _Optional[str] = ..., is_relay: bool = ..., is_relay_ed: bool = ..., relay_ed_relay_only: bool = ..., relay_enabled: bool = ..., relay_cad_periodicity: _Optional[_Union[CadPeriodicity, str]] = ..., relay_default_channel_index: _Optional[int] = ..., relay_second_channel_freq: _Optional[int] = ..., relay_second_channel_dr: _Optional[int] = ..., relay_second_channel_ack_offset: _Optional[_Union[SecondChAckOffset, str]] = ..., relay_ed_activation_mode: _Optional[_Union[RelayModeActivation, str]] = ..., relay_ed_smart_enable_level: _Optional[int] = ..., relay_ed_back_off: _Optional[int] = ..., relay_ed_uplink_limit_bucket_size: _Optional[int] = ..., relay_ed_uplink_limit_reload_rate: _Optional[int] = ..., relay_join_req_limit_reload_rate: _Optional[int] = ..., relay_notify_limit_reload_rate: _Optional[int] = ..., relay_global_uplink_limit_reload_rate: _Optional[int] = ..., relay_overall_limit_reload_rate: _Optional[int] = ..., relay_join_req_limit_bucket_size: _Optional[int] = ..., relay_notify_limit_bucket_size: _Optional[int] = ..., relay_global_uplink_limit_bucket_size: _Optional[int] = ..., relay_overall_limit_bucket_size: _Optional[int] = ..., allow_roaming: bool = ...) -> None: ...
class Measurement(_message.Message):
__slots__ = ["name", "kind"]
__slots__ = ("name", "kind")
NAME_FIELD_NUMBER: _ClassVar[int]
KIND_FIELD_NUMBER: _ClassVar[int]
name: str
@ -204,7 +204,7 @@ class Measurement(_message.Message):
def __init__(self, name: _Optional[str] = ..., kind: _Optional[_Union[MeasurementKind, str]] = ...) -> None: ...
class DeviceProfileListItem(_message.Message):
__slots__ = ["id", "created_at", "updated_at", "name", "region", "mac_version", "reg_params_revision", "supports_otaa", "supports_class_b", "supports_class_c"]
__slots__ = ("id", "created_at", "updated_at", "name", "region", "mac_version", "reg_params_revision", "supports_otaa", "supports_class_b", "supports_class_c")
ID_FIELD_NUMBER: _ClassVar[int]
CREATED_AT_FIELD_NUMBER: _ClassVar[int]
UPDATED_AT_FIELD_NUMBER: _ClassVar[int]
@ -228,25 +228,25 @@ class DeviceProfileListItem(_message.Message):
def __init__(self, id: _Optional[str] = ..., created_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., updated_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., name: _Optional[str] = ..., region: _Optional[_Union[_common_pb2.Region, str]] = ..., mac_version: _Optional[_Union[_common_pb2.MacVersion, str]] = ..., reg_params_revision: _Optional[_Union[_common_pb2.RegParamsRevision, str]] = ..., supports_otaa: bool = ..., supports_class_b: bool = ..., supports_class_c: bool = ...) -> None: ...
class CreateDeviceProfileRequest(_message.Message):
__slots__ = ["device_profile"]
__slots__ = ("device_profile",)
DEVICE_PROFILE_FIELD_NUMBER: _ClassVar[int]
device_profile: DeviceProfile
def __init__(self, device_profile: _Optional[_Union[DeviceProfile, _Mapping]] = ...) -> None: ...
class CreateDeviceProfileResponse(_message.Message):
__slots__ = ["id"]
__slots__ = ("id",)
ID_FIELD_NUMBER: _ClassVar[int]
id: str
def __init__(self, id: _Optional[str] = ...) -> None: ...
class GetDeviceProfileRequest(_message.Message):
__slots__ = ["id"]
__slots__ = ("id",)
ID_FIELD_NUMBER: _ClassVar[int]
id: str
def __init__(self, id: _Optional[str] = ...) -> None: ...
class GetDeviceProfileResponse(_message.Message):
__slots__ = ["device_profile", "created_at", "updated_at"]
__slots__ = ("device_profile", "created_at", "updated_at")
DEVICE_PROFILE_FIELD_NUMBER: _ClassVar[int]
CREATED_AT_FIELD_NUMBER: _ClassVar[int]
UPDATED_AT_FIELD_NUMBER: _ClassVar[int]
@ -256,19 +256,19 @@ class GetDeviceProfileResponse(_message.Message):
def __init__(self, device_profile: _Optional[_Union[DeviceProfile, _Mapping]] = ..., created_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., updated_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ...) -> None: ...
class UpdateDeviceProfileRequest(_message.Message):
__slots__ = ["device_profile"]
__slots__ = ("device_profile",)
DEVICE_PROFILE_FIELD_NUMBER: _ClassVar[int]
device_profile: DeviceProfile
def __init__(self, device_profile: _Optional[_Union[DeviceProfile, _Mapping]] = ...) -> None: ...
class DeleteDeviceProfileRequest(_message.Message):
__slots__ = ["id"]
__slots__ = ("id",)
ID_FIELD_NUMBER: _ClassVar[int]
id: str
def __init__(self, id: _Optional[str] = ...) -> None: ...
class ListDeviceProfilesRequest(_message.Message):
__slots__ = ["limit", "offset", "search", "tenant_id"]
__slots__ = ("limit", "offset", "search", "tenant_id")
LIMIT_FIELD_NUMBER: _ClassVar[int]
OFFSET_FIELD_NUMBER: _ClassVar[int]
SEARCH_FIELD_NUMBER: _ClassVar[int]
@ -280,7 +280,7 @@ class ListDeviceProfilesRequest(_message.Message):
def __init__(self, limit: _Optional[int] = ..., offset: _Optional[int] = ..., search: _Optional[str] = ..., tenant_id: _Optional[str] = ...) -> None: ...
class ListDeviceProfilesResponse(_message.Message):
__slots__ = ["total_count", "result"]
__slots__ = ("total_count", "result")
TOTAL_COUNT_FIELD_NUMBER: _ClassVar[int]
RESULT_FIELD_NUMBER: _ClassVar[int]
total_count: int
@ -288,7 +288,7 @@ class ListDeviceProfilesResponse(_message.Message):
def __init__(self, total_count: _Optional[int] = ..., result: _Optional[_Iterable[_Union[DeviceProfileListItem, _Mapping]]] = ...) -> None: ...
class ListDeviceProfileAdrAlgorithmsResponse(_message.Message):
__slots__ = ["total_count", "result"]
__slots__ = ("total_count", "result")
TOTAL_COUNT_FIELD_NUMBER: _ClassVar[int]
RESULT_FIELD_NUMBER: _ClassVar[int]
total_count: int
@ -296,7 +296,7 @@ class ListDeviceProfileAdrAlgorithmsResponse(_message.Message):
def __init__(self, total_count: _Optional[int] = ..., result: _Optional[_Iterable[_Union[AdrAlgorithmListItem, _Mapping]]] = ...) -> None: ...
class AdrAlgorithmListItem(_message.Message):
__slots__ = ["id", "name"]
__slots__ = ("id", "name")
ID_FIELD_NUMBER: _ClassVar[int]
NAME_FIELD_NUMBER: _ClassVar[int]
id: str

View File

@ -1,6 +1,7 @@
# -*- coding: utf-8 -*-
# Generated by the protocol buffer compiler. DO NOT EDIT!
# source: chirpstack-api/api/device_profile_template.proto
# Protobuf Python Version: 4.25.0
"""Generated protocol buffer code."""
from google.protobuf import descriptor as _descriptor
from google.protobuf import descriptor_pool as _descriptor_pool
@ -24,23 +25,22 @@ _globals = globals()
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'chirpstack_api.api.device_profile_template_pb2', _globals)
if _descriptor._USE_C_DESCRIPTORS == False:
DESCRIPTOR._options = None
DESCRIPTOR._serialized_options = b'\n\021io.chirpstack.apiB\032DeviceProfileTemplateProtoP\001Z.github.com/chirpstack/chirpstack/api/go/v4/api\252\002\016Chirpstack.Api'
_DEVICEPROFILETEMPLATE_TAGSENTRY._options = None
_DEVICEPROFILETEMPLATE_TAGSENTRY._serialized_options = b'8\001'
_DEVICEPROFILETEMPLATE_MEASUREMENTSENTRY._options = None
_DEVICEPROFILETEMPLATE_MEASUREMENTSENTRY._serialized_options = b'8\001'
_DEVICEPROFILETEMPLATESERVICE.methods_by_name['Create']._options = None
_DEVICEPROFILETEMPLATESERVICE.methods_by_name['Create']._serialized_options = b'\202\323\344\223\002\"\"\035/api/device-profile-templates:\001*'
_DEVICEPROFILETEMPLATESERVICE.methods_by_name['Get']._options = None
_DEVICEPROFILETEMPLATESERVICE.methods_by_name['Get']._serialized_options = b'\202\323\344\223\002$\022\"/api/device-profile-templates/{id}'
_DEVICEPROFILETEMPLATESERVICE.methods_by_name['Update']._options = None
_DEVICEPROFILETEMPLATESERVICE.methods_by_name['Update']._serialized_options = b'\202\323\344\223\002?\032:/api/device-profile-templates/{device_profile_template.id}:\001*'
_DEVICEPROFILETEMPLATESERVICE.methods_by_name['Delete']._options = None
_DEVICEPROFILETEMPLATESERVICE.methods_by_name['Delete']._serialized_options = b'\202\323\344\223\002$*\"/api/device-profile-templates/{id}'
_DEVICEPROFILETEMPLATESERVICE.methods_by_name['List']._options = None
_DEVICEPROFILETEMPLATESERVICE.methods_by_name['List']._serialized_options = b'\202\323\344\223\002\037\022\035/api/device-profile-templates'
_globals['DESCRIPTOR']._options = None
_globals['DESCRIPTOR']._serialized_options = b'\n\021io.chirpstack.apiB\032DeviceProfileTemplateProtoP\001Z.github.com/chirpstack/chirpstack/api/go/v4/api\252\002\016Chirpstack.Api'
_globals['_DEVICEPROFILETEMPLATE_TAGSENTRY']._options = None
_globals['_DEVICEPROFILETEMPLATE_TAGSENTRY']._serialized_options = b'8\001'
_globals['_DEVICEPROFILETEMPLATE_MEASUREMENTSENTRY']._options = None
_globals['_DEVICEPROFILETEMPLATE_MEASUREMENTSENTRY']._serialized_options = b'8\001'
_globals['_DEVICEPROFILETEMPLATESERVICE'].methods_by_name['Create']._options = None
_globals['_DEVICEPROFILETEMPLATESERVICE'].methods_by_name['Create']._serialized_options = b'\202\323\344\223\002\"\"\035/api/device-profile-templates:\001*'
_globals['_DEVICEPROFILETEMPLATESERVICE'].methods_by_name['Get']._options = None
_globals['_DEVICEPROFILETEMPLATESERVICE'].methods_by_name['Get']._serialized_options = b'\202\323\344\223\002$\022\"/api/device-profile-templates/{id}'
_globals['_DEVICEPROFILETEMPLATESERVICE'].methods_by_name['Update']._options = None
_globals['_DEVICEPROFILETEMPLATESERVICE'].methods_by_name['Update']._serialized_options = b'\202\323\344\223\002?\032:/api/device-profile-templates/{device_profile_template.id}:\001*'
_globals['_DEVICEPROFILETEMPLATESERVICE'].methods_by_name['Delete']._options = None
_globals['_DEVICEPROFILETEMPLATESERVICE'].methods_by_name['Delete']._serialized_options = b'\202\323\344\223\002$*\"/api/device-profile-templates/{id}'
_globals['_DEVICEPROFILETEMPLATESERVICE'].methods_by_name['List']._options = None
_globals['_DEVICEPROFILETEMPLATESERVICE'].methods_by_name['List']._serialized_options = b'\202\323\344\223\002\037\022\035/api/device-profile-templates'
_globals['_DEVICEPROFILETEMPLATE']._serialized_start=227
_globals['_DEVICEPROFILETEMPLATE']._serialized_end=1241
_globals['_DEVICEPROFILETEMPLATE_TAGSENTRY']._serialized_start=1127

View File

@ -11,16 +11,16 @@ from typing import ClassVar as _ClassVar, Iterable as _Iterable, Mapping as _Map
DESCRIPTOR: _descriptor.FileDescriptor
class DeviceProfileTemplate(_message.Message):
__slots__ = ["id", "name", "description", "vendor", "firmware", "region", "mac_version", "reg_params_revision", "adr_algorithm_id", "payload_codec_runtime", "payload_codec_script", "flush_queue_on_activate", "uplink_interval", "device_status_req_interval", "supports_otaa", "supports_class_b", "supports_class_c", "class_b_timeout", "class_b_ping_slot_nb_k", "class_b_ping_slot_dr", "class_b_ping_slot_freq", "class_c_timeout", "abp_rx1_delay", "abp_rx1_dr_offset", "abp_rx2_dr", "abp_rx2_freq", "tags", "measurements", "auto_detect_measurements"]
__slots__ = ("id", "name", "description", "vendor", "firmware", "region", "mac_version", "reg_params_revision", "adr_algorithm_id", "payload_codec_runtime", "payload_codec_script", "flush_queue_on_activate", "uplink_interval", "device_status_req_interval", "supports_otaa", "supports_class_b", "supports_class_c", "class_b_timeout", "class_b_ping_slot_nb_k", "class_b_ping_slot_dr", "class_b_ping_slot_freq", "class_c_timeout", "abp_rx1_delay", "abp_rx1_dr_offset", "abp_rx2_dr", "abp_rx2_freq", "tags", "measurements", "auto_detect_measurements")
class TagsEntry(_message.Message):
__slots__ = ["key", "value"]
__slots__ = ("key", "value")
KEY_FIELD_NUMBER: _ClassVar[int]
VALUE_FIELD_NUMBER: _ClassVar[int]
key: str
value: str
def __init__(self, key: _Optional[str] = ..., value: _Optional[str] = ...) -> None: ...
class MeasurementsEntry(_message.Message):
__slots__ = ["key", "value"]
__slots__ = ("key", "value")
KEY_FIELD_NUMBER: _ClassVar[int]
VALUE_FIELD_NUMBER: _ClassVar[int]
key: str
@ -87,7 +87,7 @@ class DeviceProfileTemplate(_message.Message):
def __init__(self, id: _Optional[str] = ..., name: _Optional[str] = ..., description: _Optional[str] = ..., vendor: _Optional[str] = ..., firmware: _Optional[str] = ..., region: _Optional[_Union[_common_pb2.Region, str]] = ..., mac_version: _Optional[_Union[_common_pb2.MacVersion, str]] = ..., reg_params_revision: _Optional[_Union[_common_pb2.RegParamsRevision, str]] = ..., adr_algorithm_id: _Optional[str] = ..., payload_codec_runtime: _Optional[_Union[_device_profile_pb2.CodecRuntime, str]] = ..., payload_codec_script: _Optional[str] = ..., flush_queue_on_activate: bool = ..., uplink_interval: _Optional[int] = ..., device_status_req_interval: _Optional[int] = ..., supports_otaa: bool = ..., supports_class_b: bool = ..., supports_class_c: bool = ..., class_b_timeout: _Optional[int] = ..., class_b_ping_slot_nb_k: _Optional[int] = ..., class_b_ping_slot_dr: _Optional[int] = ..., class_b_ping_slot_freq: _Optional[int] = ..., class_c_timeout: _Optional[int] = ..., abp_rx1_delay: _Optional[int] = ..., abp_rx1_dr_offset: _Optional[int] = ..., abp_rx2_dr: _Optional[int] = ..., abp_rx2_freq: _Optional[int] = ..., tags: _Optional[_Mapping[str, str]] = ..., measurements: _Optional[_Mapping[str, _device_profile_pb2.Measurement]] = ..., auto_detect_measurements: bool = ...) -> None: ...
class DeviceProfileTemplateListItem(_message.Message):
__slots__ = ["id", "created_at", "updated_at", "name", "vendor", "firmware", "region", "mac_version", "reg_params_revision", "supports_otaa", "supports_class_b", "supports_class_c"]
__slots__ = ("id", "created_at", "updated_at", "name", "vendor", "firmware", "region", "mac_version", "reg_params_revision", "supports_otaa", "supports_class_b", "supports_class_c")
ID_FIELD_NUMBER: _ClassVar[int]
CREATED_AT_FIELD_NUMBER: _ClassVar[int]
UPDATED_AT_FIELD_NUMBER: _ClassVar[int]
@ -115,19 +115,19 @@ class DeviceProfileTemplateListItem(_message.Message):
def __init__(self, id: _Optional[str] = ..., created_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., updated_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., name: _Optional[str] = ..., vendor: _Optional[str] = ..., firmware: _Optional[str] = ..., region: _Optional[_Union[_common_pb2.Region, str]] = ..., mac_version: _Optional[_Union[_common_pb2.MacVersion, str]] = ..., reg_params_revision: _Optional[_Union[_common_pb2.RegParamsRevision, str]] = ..., supports_otaa: bool = ..., supports_class_b: bool = ..., supports_class_c: bool = ...) -> None: ...
class CreateDeviceProfileTemplateRequest(_message.Message):
__slots__ = ["device_profile_template"]
__slots__ = ("device_profile_template",)
DEVICE_PROFILE_TEMPLATE_FIELD_NUMBER: _ClassVar[int]
device_profile_template: DeviceProfileTemplate
def __init__(self, device_profile_template: _Optional[_Union[DeviceProfileTemplate, _Mapping]] = ...) -> None: ...
class GetDeviceProfileTemplateRequest(_message.Message):
__slots__ = ["id"]
__slots__ = ("id",)
ID_FIELD_NUMBER: _ClassVar[int]
id: str
def __init__(self, id: _Optional[str] = ...) -> None: ...
class GetDeviceProfileTemplateResponse(_message.Message):
__slots__ = ["device_profile_template", "created_at", "updated_at"]
__slots__ = ("device_profile_template", "created_at", "updated_at")
DEVICE_PROFILE_TEMPLATE_FIELD_NUMBER: _ClassVar[int]
CREATED_AT_FIELD_NUMBER: _ClassVar[int]
UPDATED_AT_FIELD_NUMBER: _ClassVar[int]
@ -137,19 +137,19 @@ class GetDeviceProfileTemplateResponse(_message.Message):
def __init__(self, device_profile_template: _Optional[_Union[DeviceProfileTemplate, _Mapping]] = ..., created_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., updated_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ...) -> None: ...
class UpdateDeviceProfileTemplateRequest(_message.Message):
__slots__ = ["device_profile_template"]
__slots__ = ("device_profile_template",)
DEVICE_PROFILE_TEMPLATE_FIELD_NUMBER: _ClassVar[int]
device_profile_template: DeviceProfileTemplate
def __init__(self, device_profile_template: _Optional[_Union[DeviceProfileTemplate, _Mapping]] = ...) -> None: ...
class DeleteDeviceProfileTemplateRequest(_message.Message):
__slots__ = ["id"]
__slots__ = ("id",)
ID_FIELD_NUMBER: _ClassVar[int]
id: str
def __init__(self, id: _Optional[str] = ...) -> None: ...
class ListDeviceProfileTemplatesRequest(_message.Message):
__slots__ = ["limit", "offset"]
__slots__ = ("limit", "offset")
LIMIT_FIELD_NUMBER: _ClassVar[int]
OFFSET_FIELD_NUMBER: _ClassVar[int]
limit: int
@ -157,7 +157,7 @@ class ListDeviceProfileTemplatesRequest(_message.Message):
def __init__(self, limit: _Optional[int] = ..., offset: _Optional[int] = ...) -> None: ...
class ListDeviceProfileTemplatesResponse(_message.Message):
__slots__ = ["total_count", "result"]
__slots__ = ("total_count", "result")
TOTAL_COUNT_FIELD_NUMBER: _ClassVar[int]
RESULT_FIELD_NUMBER: _ClassVar[int]
total_count: int

View File

@ -1,6 +1,7 @@
# -*- coding: utf-8 -*-
# Generated by the protocol buffer compiler. DO NOT EDIT!
# source: chirpstack-api/api/gateway.proto
# Protobuf Python Version: 4.25.0
"""Generated protocol buffer code."""
from google.protobuf import descriptor as _descriptor
from google.protobuf import descriptor_pool as _descriptor_pool
@ -23,29 +24,28 @@ _globals = globals()
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'chirpstack_api.api.gateway_pb2', _globals)
if _descriptor._USE_C_DESCRIPTORS == False:
DESCRIPTOR._options = None
DESCRIPTOR._serialized_options = b'\n\021io.chirpstack.apiB\014GatewayProtoP\001Z.github.com/chirpstack/chirpstack/api/go/v4/api\252\002\016Chirpstack.Api'
_GATEWAY_TAGSENTRY._options = None
_GATEWAY_TAGSENTRY._serialized_options = b'8\001'
_GATEWAY_METADATAENTRY._options = None
_GATEWAY_METADATAENTRY._serialized_options = b'8\001'
_GATEWAYLISTITEM_PROPERTIESENTRY._options = None
_GATEWAYLISTITEM_PROPERTIESENTRY._serialized_options = b'8\001'
_GATEWAYSERVICE.methods_by_name['Create']._options = None
_GATEWAYSERVICE.methods_by_name['Create']._serialized_options = b'\202\323\344\223\002\022\"\r/api/gateways:\001*'
_GATEWAYSERVICE.methods_by_name['Get']._options = None
_GATEWAYSERVICE.methods_by_name['Get']._serialized_options = b'\202\323\344\223\002\034\022\032/api/gateways/{gateway_id}'
_GATEWAYSERVICE.methods_by_name['Update']._options = None
_GATEWAYSERVICE.methods_by_name['Update']._serialized_options = b'\202\323\344\223\002\'\032\"/api/gateways/{gateway.gateway_id}:\001*'
_GATEWAYSERVICE.methods_by_name['Delete']._options = None
_GATEWAYSERVICE.methods_by_name['Delete']._serialized_options = b'\202\323\344\223\002\034*\032/api/gateways/{gateway_id}'
_GATEWAYSERVICE.methods_by_name['List']._options = None
_GATEWAYSERVICE.methods_by_name['List']._serialized_options = b'\202\323\344\223\002\017\022\r/api/gateways'
_GATEWAYSERVICE.methods_by_name['GenerateClientCertificate']._options = None
_GATEWAYSERVICE.methods_by_name['GenerateClientCertificate']._serialized_options = b'\202\323\344\223\0021\"//api/gateways/{gateway_id}/generate-certificate'
_GATEWAYSERVICE.methods_by_name['GetMetrics']._options = None
_GATEWAYSERVICE.methods_by_name['GetMetrics']._serialized_options = b'\202\323\344\223\002$\022\"/api/gateways/{gateway_id}/metrics'
_globals['DESCRIPTOR']._options = None
_globals['DESCRIPTOR']._serialized_options = b'\n\021io.chirpstack.apiB\014GatewayProtoP\001Z.github.com/chirpstack/chirpstack/api/go/v4/api\252\002\016Chirpstack.Api'
_globals['_GATEWAY_TAGSENTRY']._options = None
_globals['_GATEWAY_TAGSENTRY']._serialized_options = b'8\001'
_globals['_GATEWAY_METADATAENTRY']._options = None
_globals['_GATEWAY_METADATAENTRY']._serialized_options = b'8\001'
_globals['_GATEWAYLISTITEM_PROPERTIESENTRY']._options = None
_globals['_GATEWAYLISTITEM_PROPERTIESENTRY']._serialized_options = b'8\001'
_globals['_GATEWAYSERVICE'].methods_by_name['Create']._options = None
_globals['_GATEWAYSERVICE'].methods_by_name['Create']._serialized_options = b'\202\323\344\223\002\022\"\r/api/gateways:\001*'
_globals['_GATEWAYSERVICE'].methods_by_name['Get']._options = None
_globals['_GATEWAYSERVICE'].methods_by_name['Get']._serialized_options = b'\202\323\344\223\002\034\022\032/api/gateways/{gateway_id}'
_globals['_GATEWAYSERVICE'].methods_by_name['Update']._options = None
_globals['_GATEWAYSERVICE'].methods_by_name['Update']._serialized_options = b'\202\323\344\223\002\'\032\"/api/gateways/{gateway.gateway_id}:\001*'
_globals['_GATEWAYSERVICE'].methods_by_name['Delete']._options = None
_globals['_GATEWAYSERVICE'].methods_by_name['Delete']._serialized_options = b'\202\323\344\223\002\034*\032/api/gateways/{gateway_id}'
_globals['_GATEWAYSERVICE'].methods_by_name['List']._options = None
_globals['_GATEWAYSERVICE'].methods_by_name['List']._serialized_options = b'\202\323\344\223\002\017\022\r/api/gateways'
_globals['_GATEWAYSERVICE'].methods_by_name['GenerateClientCertificate']._options = None
_globals['_GATEWAYSERVICE'].methods_by_name['GenerateClientCertificate']._serialized_options = b'\202\323\344\223\0021\"//api/gateways/{gateway_id}/generate-certificate'
_globals['_GATEWAYSERVICE'].methods_by_name['GetMetrics']._options = None
_globals['_GATEWAYSERVICE'].methods_by_name['GetMetrics']._serialized_options = b'\202\323\344\223\002$\022\"/api/gateways/{gateway_id}/metrics'
_globals['_GATEWAYSTATE']._serialized_start=2215
_globals['_GATEWAYSTATE']._serialized_end=2270
_globals['_GATEWAY']._serialized_start=170

View File

@ -11,7 +11,7 @@ from typing import ClassVar as _ClassVar, Iterable as _Iterable, Mapping as _Map
DESCRIPTOR: _descriptor.FileDescriptor
class GatewayState(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
__slots__ = []
__slots__ = ()
NEVER_SEEN: _ClassVar[GatewayState]
ONLINE: _ClassVar[GatewayState]
OFFLINE: _ClassVar[GatewayState]
@ -20,16 +20,16 @@ ONLINE: GatewayState
OFFLINE: GatewayState
class Gateway(_message.Message):
__slots__ = ["gateway_id", "name", "description", "location", "tenant_id", "tags", "metadata", "stats_interval"]
__slots__ = ("gateway_id", "name", "description", "location", "tenant_id", "tags", "metadata", "stats_interval")
class TagsEntry(_message.Message):
__slots__ = ["key", "value"]
__slots__ = ("key", "value")
KEY_FIELD_NUMBER: _ClassVar[int]
VALUE_FIELD_NUMBER: _ClassVar[int]
key: str
value: str
def __init__(self, key: _Optional[str] = ..., value: _Optional[str] = ...) -> None: ...
class MetadataEntry(_message.Message):
__slots__ = ["key", "value"]
__slots__ = ("key", "value")
KEY_FIELD_NUMBER: _ClassVar[int]
VALUE_FIELD_NUMBER: _ClassVar[int]
key: str
@ -54,9 +54,9 @@ class Gateway(_message.Message):
def __init__(self, gateway_id: _Optional[str] = ..., name: _Optional[str] = ..., description: _Optional[str] = ..., location: _Optional[_Union[_common_pb2.Location, _Mapping]] = ..., tenant_id: _Optional[str] = ..., tags: _Optional[_Mapping[str, str]] = ..., metadata: _Optional[_Mapping[str, str]] = ..., stats_interval: _Optional[int] = ...) -> None: ...
class GatewayListItem(_message.Message):
__slots__ = ["tenant_id", "gateway_id", "name", "description", "location", "properties", "created_at", "updated_at", "last_seen_at", "state"]
__slots__ = ("tenant_id", "gateway_id", "name", "description", "location", "properties", "created_at", "updated_at", "last_seen_at", "state")
class PropertiesEntry(_message.Message):
__slots__ = ["key", "value"]
__slots__ = ("key", "value")
KEY_FIELD_NUMBER: _ClassVar[int]
VALUE_FIELD_NUMBER: _ClassVar[int]
key: str
@ -85,19 +85,19 @@ class GatewayListItem(_message.Message):
def __init__(self, tenant_id: _Optional[str] = ..., gateway_id: _Optional[str] = ..., name: _Optional[str] = ..., description: _Optional[str] = ..., location: _Optional[_Union[_common_pb2.Location, _Mapping]] = ..., properties: _Optional[_Mapping[str, str]] = ..., 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]] = ..., state: _Optional[_Union[GatewayState, str]] = ...) -> None: ...
class CreateGatewayRequest(_message.Message):
__slots__ = ["gateway"]
__slots__ = ("gateway",)
GATEWAY_FIELD_NUMBER: _ClassVar[int]
gateway: Gateway
def __init__(self, gateway: _Optional[_Union[Gateway, _Mapping]] = ...) -> None: ...
class GetGatewayRequest(_message.Message):
__slots__ = ["gateway_id"]
__slots__ = ("gateway_id",)
GATEWAY_ID_FIELD_NUMBER: _ClassVar[int]
gateway_id: str
def __init__(self, gateway_id: _Optional[str] = ...) -> None: ...
class GetGatewayResponse(_message.Message):
__slots__ = ["gateway", "created_at", "updated_at", "last_seen_at"]
__slots__ = ("gateway", "created_at", "updated_at", "last_seen_at")
GATEWAY_FIELD_NUMBER: _ClassVar[int]
CREATED_AT_FIELD_NUMBER: _ClassVar[int]
UPDATED_AT_FIELD_NUMBER: _ClassVar[int]
@ -109,19 +109,19 @@ class GetGatewayResponse(_message.Message):
def __init__(self, gateway: _Optional[_Union[Gateway, _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]] = ...) -> None: ...
class UpdateGatewayRequest(_message.Message):
__slots__ = ["gateway"]
__slots__ = ("gateway",)
GATEWAY_FIELD_NUMBER: _ClassVar[int]
gateway: Gateway
def __init__(self, gateway: _Optional[_Union[Gateway, _Mapping]] = ...) -> None: ...
class DeleteGatewayRequest(_message.Message):
__slots__ = ["gateway_id"]
__slots__ = ("gateway_id",)
GATEWAY_ID_FIELD_NUMBER: _ClassVar[int]
gateway_id: str
def __init__(self, gateway_id: _Optional[str] = ...) -> None: ...
class ListGatewaysRequest(_message.Message):
__slots__ = ["limit", "offset", "search", "tenant_id", "multicast_group_id"]
__slots__ = ("limit", "offset", "search", "tenant_id", "multicast_group_id")
LIMIT_FIELD_NUMBER: _ClassVar[int]
OFFSET_FIELD_NUMBER: _ClassVar[int]
SEARCH_FIELD_NUMBER: _ClassVar[int]
@ -135,7 +135,7 @@ class ListGatewaysRequest(_message.Message):
def __init__(self, limit: _Optional[int] = ..., offset: _Optional[int] = ..., search: _Optional[str] = ..., tenant_id: _Optional[str] = ..., multicast_group_id: _Optional[str] = ...) -> None: ...
class ListGatewaysResponse(_message.Message):
__slots__ = ["total_count", "result"]
__slots__ = ("total_count", "result")
TOTAL_COUNT_FIELD_NUMBER: _ClassVar[int]
RESULT_FIELD_NUMBER: _ClassVar[int]
total_count: int
@ -143,13 +143,13 @@ class ListGatewaysResponse(_message.Message):
def __init__(self, total_count: _Optional[int] = ..., result: _Optional[_Iterable[_Union[GatewayListItem, _Mapping]]] = ...) -> None: ...
class GenerateGatewayClientCertificateRequest(_message.Message):
__slots__ = ["gateway_id"]
__slots__ = ("gateway_id",)
GATEWAY_ID_FIELD_NUMBER: _ClassVar[int]
gateway_id: str
def __init__(self, gateway_id: _Optional[str] = ...) -> None: ...
class GenerateGatewayClientCertificateResponse(_message.Message):
__slots__ = ["tls_cert", "tls_key", "ca_cert", "expires_at"]
__slots__ = ("tls_cert", "tls_key", "ca_cert", "expires_at")
TLS_CERT_FIELD_NUMBER: _ClassVar[int]
TLS_KEY_FIELD_NUMBER: _ClassVar[int]
CA_CERT_FIELD_NUMBER: _ClassVar[int]
@ -161,7 +161,7 @@ class GenerateGatewayClientCertificateResponse(_message.Message):
def __init__(self, tls_cert: _Optional[str] = ..., tls_key: _Optional[str] = ..., ca_cert: _Optional[str] = ..., expires_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ...) -> None: ...
class GetGatewayMetricsRequest(_message.Message):
__slots__ = ["gateway_id", "start", "end", "aggregation"]
__slots__ = ("gateway_id", "start", "end", "aggregation")
GATEWAY_ID_FIELD_NUMBER: _ClassVar[int]
START_FIELD_NUMBER: _ClassVar[int]
END_FIELD_NUMBER: _ClassVar[int]
@ -173,7 +173,7 @@ class GetGatewayMetricsRequest(_message.Message):
def __init__(self, gateway_id: _Optional[str] = ..., start: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., end: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., aggregation: _Optional[_Union[_common_pb2.Aggregation, str]] = ...) -> None: ...
class GetGatewayMetricsResponse(_message.Message):
__slots__ = ["rx_packets", "tx_packets", "tx_packets_per_freq", "rx_packets_per_freq", "tx_packets_per_dr", "rx_packets_per_dr", "tx_packets_per_status"]
__slots__ = ("rx_packets", "tx_packets", "tx_packets_per_freq", "rx_packets_per_freq", "tx_packets_per_dr", "rx_packets_per_dr", "tx_packets_per_status")
RX_PACKETS_FIELD_NUMBER: _ClassVar[int]
TX_PACKETS_FIELD_NUMBER: _ClassVar[int]
TX_PACKETS_PER_FREQ_FIELD_NUMBER: _ClassVar[int]

View File

@ -1,6 +1,7 @@
# -*- coding: utf-8 -*-
# Generated by the protocol buffer compiler. DO NOT EDIT!
# source: chirpstack-api/api/internal.proto
# Protobuf Python Version: 4.25.0
"""Generated protocol buffer code."""
from google.protobuf import descriptor as _descriptor
from google.protobuf import descriptor_pool as _descriptor_pool
@ -23,13 +24,12 @@ _globals = globals()
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'chirpstack_api.api.internal_pb2', _globals)
if _descriptor._USE_C_DESCRIPTORS == False:
DESCRIPTOR._options = None
DESCRIPTOR._serialized_options = b'\n\021io.chirpstack.apiB\rInternalProtoP\001Z.github.com/chirpstack/chirpstack/api/go/v4/api\252\002\016Chirpstack.Api'
_GETDEVICESSUMMARYRESPONSE_DRCOUNTENTRY._options = None
_GETDEVICESSUMMARYRESPONSE_DRCOUNTENTRY._serialized_options = b'8\001'
_LOGITEM_PROPERTIESENTRY._options = None
_LOGITEM_PROPERTIESENTRY._serialized_options = b'8\001'
_globals['DESCRIPTOR']._options = None
_globals['DESCRIPTOR']._serialized_options = b'\n\021io.chirpstack.apiB\rInternalProtoP\001Z.github.com/chirpstack/chirpstack/api/go/v4/api\252\002\016Chirpstack.Api'
_globals['_GETDEVICESSUMMARYRESPONSE_DRCOUNTENTRY']._options = None
_globals['_GETDEVICESSUMMARYRESPONSE_DRCOUNTENTRY']._serialized_options = b'8\001'
_globals['_LOGITEM_PROPERTIESENTRY']._options = None
_globals['_LOGITEM_PROPERTIESENTRY']._serialized_options = b'8\001'
_globals['_APIKEY']._serialized_start=171
_globals['_APIKEY']._serialized_end=242
_globals['_CREATEAPIKEYREQUEST']._serialized_start=244

View File

@ -10,7 +10,7 @@ from typing import ClassVar as _ClassVar, Iterable as _Iterable, Mapping as _Map
DESCRIPTOR: _descriptor.FileDescriptor
class ApiKey(_message.Message):
__slots__ = ["id", "name", "is_admin", "tenant_id"]
__slots__ = ("id", "name", "is_admin", "tenant_id")
ID_FIELD_NUMBER: _ClassVar[int]
NAME_FIELD_NUMBER: _ClassVar[int]
IS_ADMIN_FIELD_NUMBER: _ClassVar[int]
@ -22,13 +22,13 @@ class ApiKey(_message.Message):
def __init__(self, id: _Optional[str] = ..., name: _Optional[str] = ..., is_admin: bool = ..., tenant_id: _Optional[str] = ...) -> None: ...
class CreateApiKeyRequest(_message.Message):
__slots__ = ["api_key"]
__slots__ = ("api_key",)
API_KEY_FIELD_NUMBER: _ClassVar[int]
api_key: ApiKey
def __init__(self, api_key: _Optional[_Union[ApiKey, _Mapping]] = ...) -> None: ...
class CreateApiKeyResponse(_message.Message):
__slots__ = ["id", "token"]
__slots__ = ("id", "token")
ID_FIELD_NUMBER: _ClassVar[int]
TOKEN_FIELD_NUMBER: _ClassVar[int]
id: str
@ -36,13 +36,13 @@ class CreateApiKeyResponse(_message.Message):
def __init__(self, id: _Optional[str] = ..., token: _Optional[str] = ...) -> None: ...
class DeleteApiKeyRequest(_message.Message):
__slots__ = ["id"]
__slots__ = ("id",)
ID_FIELD_NUMBER: _ClassVar[int]
id: str
def __init__(self, id: _Optional[str] = ...) -> None: ...
class ListApiKeysRequest(_message.Message):
__slots__ = ["limit", "offset", "is_admin", "tenant_id"]
__slots__ = ("limit", "offset", "is_admin", "tenant_id")
LIMIT_FIELD_NUMBER: _ClassVar[int]
OFFSET_FIELD_NUMBER: _ClassVar[int]
IS_ADMIN_FIELD_NUMBER: _ClassVar[int]
@ -54,7 +54,7 @@ class ListApiKeysRequest(_message.Message):
def __init__(self, limit: _Optional[int] = ..., offset: _Optional[int] = ..., is_admin: bool = ..., tenant_id: _Optional[str] = ...) -> None: ...
class ListApiKeysResponse(_message.Message):
__slots__ = ["total_count", "result"]
__slots__ = ("total_count", "result")
TOTAL_COUNT_FIELD_NUMBER: _ClassVar[int]
RESULT_FIELD_NUMBER: _ClassVar[int]
total_count: int
@ -62,7 +62,7 @@ class ListApiKeysResponse(_message.Message):
def __init__(self, total_count: _Optional[int] = ..., result: _Optional[_Iterable[_Union[ApiKey, _Mapping]]] = ...) -> None: ...
class UserTenantLink(_message.Message):
__slots__ = ["created_at", "updated_at", "tenant_id", "is_admin", "is_device_admin", "is_gateway_admin"]
__slots__ = ("created_at", "updated_at", "tenant_id", "is_admin", "is_device_admin", "is_gateway_admin")
CREATED_AT_FIELD_NUMBER: _ClassVar[int]
UPDATED_AT_FIELD_NUMBER: _ClassVar[int]
TENANT_ID_FIELD_NUMBER: _ClassVar[int]
@ -78,7 +78,7 @@ class UserTenantLink(_message.Message):
def __init__(self, created_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., updated_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., tenant_id: _Optional[str] = ..., is_admin: bool = ..., is_device_admin: bool = ..., is_gateway_admin: bool = ...) -> None: ...
class LoginRequest(_message.Message):
__slots__ = ["email", "password"]
__slots__ = ("email", "password")
EMAIL_FIELD_NUMBER: _ClassVar[int]
PASSWORD_FIELD_NUMBER: _ClassVar[int]
email: str
@ -86,13 +86,13 @@ class LoginRequest(_message.Message):
def __init__(self, email: _Optional[str] = ..., password: _Optional[str] = ...) -> None: ...
class LoginResponse(_message.Message):
__slots__ = ["jwt"]
__slots__ = ("jwt",)
JWT_FIELD_NUMBER: _ClassVar[int]
jwt: str
def __init__(self, jwt: _Optional[str] = ...) -> None: ...
class ProfileResponse(_message.Message):
__slots__ = ["user", "tenants"]
__slots__ = ("user", "tenants")
USER_FIELD_NUMBER: _ClassVar[int]
TENANTS_FIELD_NUMBER: _ClassVar[int]
user: _user_pb2.User
@ -100,7 +100,7 @@ class ProfileResponse(_message.Message):
def __init__(self, user: _Optional[_Union[_user_pb2.User, _Mapping]] = ..., tenants: _Optional[_Iterable[_Union[UserTenantLink, _Mapping]]] = ...) -> None: ...
class GlobalSearchRequest(_message.Message):
__slots__ = ["search", "limit", "offset"]
__slots__ = ("search", "limit", "offset")
SEARCH_FIELD_NUMBER: _ClassVar[int]
LIMIT_FIELD_NUMBER: _ClassVar[int]
OFFSET_FIELD_NUMBER: _ClassVar[int]
@ -110,13 +110,13 @@ class GlobalSearchRequest(_message.Message):
def __init__(self, search: _Optional[str] = ..., limit: _Optional[int] = ..., offset: _Optional[int] = ...) -> None: ...
class GlobalSearchResponse(_message.Message):
__slots__ = ["result"]
__slots__ = ("result",)
RESULT_FIELD_NUMBER: _ClassVar[int]
result: _containers.RepeatedCompositeFieldContainer[GlobalSearchResult]
def __init__(self, result: _Optional[_Iterable[_Union[GlobalSearchResult, _Mapping]]] = ...) -> None: ...
class GlobalSearchResult(_message.Message):
__slots__ = ["kind", "score", "tenant_id", "tenant_name", "application_id", "application_name", "device_dev_eui", "device_name", "gateway_id", "gateway_name"]
__slots__ = ("kind", "score", "tenant_id", "tenant_name", "application_id", "application_name", "device_dev_eui", "device_name", "gateway_id", "gateway_name")
KIND_FIELD_NUMBER: _ClassVar[int]
SCORE_FIELD_NUMBER: _ClassVar[int]
TENANT_ID_FIELD_NUMBER: _ClassVar[int]
@ -140,7 +140,7 @@ class GlobalSearchResult(_message.Message):
def __init__(self, kind: _Optional[str] = ..., score: _Optional[float] = ..., tenant_id: _Optional[str] = ..., tenant_name: _Optional[str] = ..., application_id: _Optional[str] = ..., application_name: _Optional[str] = ..., device_dev_eui: _Optional[str] = ..., device_name: _Optional[str] = ..., gateway_id: _Optional[str] = ..., gateway_name: _Optional[str] = ...) -> None: ...
class SettingsResponse(_message.Message):
__slots__ = ["openid_connect", "oauth2"]
__slots__ = ("openid_connect", "oauth2")
OPENID_CONNECT_FIELD_NUMBER: _ClassVar[int]
OAUTH2_FIELD_NUMBER: _ClassVar[int]
openid_connect: OpenIdConnect
@ -148,7 +148,7 @@ class SettingsResponse(_message.Message):
def __init__(self, openid_connect: _Optional[_Union[OpenIdConnect, _Mapping]] = ..., oauth2: _Optional[_Union[OAuth2, _Mapping]] = ...) -> None: ...
class OpenIdConnect(_message.Message):
__slots__ = ["enabled", "login_url", "login_label", "logout_url", "login_redirect"]
__slots__ = ("enabled", "login_url", "login_label", "logout_url", "login_redirect")
ENABLED_FIELD_NUMBER: _ClassVar[int]
LOGIN_URL_FIELD_NUMBER: _ClassVar[int]
LOGIN_LABEL_FIELD_NUMBER: _ClassVar[int]
@ -162,7 +162,7 @@ class OpenIdConnect(_message.Message):
def __init__(self, enabled: bool = ..., login_url: _Optional[str] = ..., login_label: _Optional[str] = ..., logout_url: _Optional[str] = ..., login_redirect: bool = ...) -> None: ...
class OAuth2(_message.Message):
__slots__ = ["enabled", "login_url", "login_label", "logout_url", "login_redirect"]
__slots__ = ("enabled", "login_url", "login_label", "logout_url", "login_redirect")
ENABLED_FIELD_NUMBER: _ClassVar[int]
LOGIN_URL_FIELD_NUMBER: _ClassVar[int]
LOGIN_LABEL_FIELD_NUMBER: _ClassVar[int]
@ -176,7 +176,7 @@ class OAuth2(_message.Message):
def __init__(self, enabled: bool = ..., login_url: _Optional[str] = ..., login_label: _Optional[str] = ..., logout_url: _Optional[str] = ..., login_redirect: bool = ...) -> None: ...
class OpenIdConnectLoginRequest(_message.Message):
__slots__ = ["code", "state"]
__slots__ = ("code", "state")
CODE_FIELD_NUMBER: _ClassVar[int]
STATE_FIELD_NUMBER: _ClassVar[int]
code: str
@ -184,13 +184,13 @@ class OpenIdConnectLoginRequest(_message.Message):
def __init__(self, code: _Optional[str] = ..., state: _Optional[str] = ...) -> None: ...
class OpenIdConnectLoginResponse(_message.Message):
__slots__ = ["token"]
__slots__ = ("token",)
TOKEN_FIELD_NUMBER: _ClassVar[int]
token: str
def __init__(self, token: _Optional[str] = ...) -> None: ...
class OAuth2LoginRequest(_message.Message):
__slots__ = ["code", "state"]
__slots__ = ("code", "state")
CODE_FIELD_NUMBER: _ClassVar[int]
STATE_FIELD_NUMBER: _ClassVar[int]
code: str
@ -198,21 +198,21 @@ class OAuth2LoginRequest(_message.Message):
def __init__(self, code: _Optional[str] = ..., state: _Optional[str] = ...) -> None: ...
class OAuth2LoginResponse(_message.Message):
__slots__ = ["token"]
__slots__ = ("token",)
TOKEN_FIELD_NUMBER: _ClassVar[int]
token: str
def __init__(self, token: _Optional[str] = ...) -> None: ...
class GetDevicesSummaryRequest(_message.Message):
__slots__ = ["tenant_id"]
__slots__ = ("tenant_id",)
TENANT_ID_FIELD_NUMBER: _ClassVar[int]
tenant_id: str
def __init__(self, tenant_id: _Optional[str] = ...) -> None: ...
class GetDevicesSummaryResponse(_message.Message):
__slots__ = ["active_count", "inactive_count", "dr_count", "never_seen_count"]
__slots__ = ("active_count", "inactive_count", "dr_count", "never_seen_count")
class DrCountEntry(_message.Message):
__slots__ = ["key", "value"]
__slots__ = ("key", "value")
KEY_FIELD_NUMBER: _ClassVar[int]
VALUE_FIELD_NUMBER: _ClassVar[int]
key: int
@ -229,13 +229,13 @@ class GetDevicesSummaryResponse(_message.Message):
def __init__(self, active_count: _Optional[int] = ..., inactive_count: _Optional[int] = ..., dr_count: _Optional[_Mapping[int, int]] = ..., never_seen_count: _Optional[int] = ...) -> None: ...
class GetGatewaysSummaryRequest(_message.Message):
__slots__ = ["tenant_id"]
__slots__ = ("tenant_id",)
TENANT_ID_FIELD_NUMBER: _ClassVar[int]
tenant_id: str
def __init__(self, tenant_id: _Optional[str] = ...) -> None: ...
class GetGatewaysSummaryResponse(_message.Message):
__slots__ = ["online_count", "offline_count", "never_seen_count"]
__slots__ = ("online_count", "offline_count", "never_seen_count")
ONLINE_COUNT_FIELD_NUMBER: _ClassVar[int]
OFFLINE_COUNT_FIELD_NUMBER: _ClassVar[int]
NEVER_SEEN_COUNT_FIELD_NUMBER: _ClassVar[int]
@ -245,9 +245,9 @@ class GetGatewaysSummaryResponse(_message.Message):
def __init__(self, online_count: _Optional[int] = ..., offline_count: _Optional[int] = ..., never_seen_count: _Optional[int] = ...) -> None: ...
class LogItem(_message.Message):
__slots__ = ["id", "time", "description", "body", "properties"]
__slots__ = ("id", "time", "description", "body", "properties")
class PropertiesEntry(_message.Message):
__slots__ = ["key", "value"]
__slots__ = ("key", "value")
KEY_FIELD_NUMBER: _ClassVar[int]
VALUE_FIELD_NUMBER: _ClassVar[int]
key: str
@ -266,31 +266,31 @@ class LogItem(_message.Message):
def __init__(self, id: _Optional[str] = ..., time: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., description: _Optional[str] = ..., body: _Optional[str] = ..., properties: _Optional[_Mapping[str, str]] = ...) -> None: ...
class StreamGatewayFramesRequest(_message.Message):
__slots__ = ["gateway_id"]
__slots__ = ("gateway_id",)
GATEWAY_ID_FIELD_NUMBER: _ClassVar[int]
gateway_id: str
def __init__(self, gateway_id: _Optional[str] = ...) -> None: ...
class StreamDeviceFramesRequest(_message.Message):
__slots__ = ["dev_eui"]
__slots__ = ("dev_eui",)
DEV_EUI_FIELD_NUMBER: _ClassVar[int]
dev_eui: str
def __init__(self, dev_eui: _Optional[str] = ...) -> None: ...
class StreamDeviceEventsRequest(_message.Message):
__slots__ = ["dev_eui"]
__slots__ = ("dev_eui",)
DEV_EUI_FIELD_NUMBER: _ClassVar[int]
dev_eui: str
def __init__(self, dev_eui: _Optional[str] = ...) -> None: ...
class ListRegionsResponse(_message.Message):
__slots__ = ["regions"]
__slots__ = ("regions",)
REGIONS_FIELD_NUMBER: _ClassVar[int]
regions: _containers.RepeatedCompositeFieldContainer[RegionListItem]
def __init__(self, regions: _Optional[_Iterable[_Union[RegionListItem, _Mapping]]] = ...) -> None: ...
class RegionListItem(_message.Message):
__slots__ = ["id", "region", "description"]
__slots__ = ("id", "region", "description")
ID_FIELD_NUMBER: _ClassVar[int]
REGION_FIELD_NUMBER: _ClassVar[int]
DESCRIPTION_FIELD_NUMBER: _ClassVar[int]
@ -300,13 +300,13 @@ class RegionListItem(_message.Message):
def __init__(self, id: _Optional[str] = ..., region: _Optional[_Union[_common_pb2.Region, str]] = ..., description: _Optional[str] = ...) -> None: ...
class GetRegionRequest(_message.Message):
__slots__ = ["id"]
__slots__ = ("id",)
ID_FIELD_NUMBER: _ClassVar[int]
id: str
def __init__(self, id: _Optional[str] = ...) -> None: ...
class GetRegionResponse(_message.Message):
__slots__ = ["id", "region", "user_info", "uplink_channels", "rx1_delay", "rx1_dr_offset", "rx2_dr", "rx2_frequency", "class_b_ping_slot_dr", "class_b_ping_slot_frequency", "description"]
__slots__ = ("id", "region", "user_info", "uplink_channels", "rx1_delay", "rx1_dr_offset", "rx2_dr", "rx2_frequency", "class_b_ping_slot_dr", "class_b_ping_slot_frequency", "description")
ID_FIELD_NUMBER: _ClassVar[int]
REGION_FIELD_NUMBER: _ClassVar[int]
USER_INFO_FIELD_NUMBER: _ClassVar[int]
@ -332,7 +332,7 @@ class GetRegionResponse(_message.Message):
def __init__(self, id: _Optional[str] = ..., region: _Optional[_Union[_common_pb2.Region, str]] = ..., user_info: _Optional[str] = ..., uplink_channels: _Optional[_Iterable[_Union[RegionChannel, _Mapping]]] = ..., rx1_delay: _Optional[int] = ..., rx1_dr_offset: _Optional[int] = ..., rx2_dr: _Optional[int] = ..., rx2_frequency: _Optional[int] = ..., class_b_ping_slot_dr: _Optional[int] = ..., class_b_ping_slot_frequency: _Optional[int] = ..., description: _Optional[str] = ...) -> None: ...
class RegionChannel(_message.Message):
__slots__ = ["frequency", "dr_min", "dr_max"]
__slots__ = ("frequency", "dr_min", "dr_max")
FREQUENCY_FIELD_NUMBER: _ClassVar[int]
DR_MIN_FIELD_NUMBER: _ClassVar[int]
DR_MAX_FIELD_NUMBER: _ClassVar[int]

View File

@ -1,6 +1,7 @@
# -*- coding: utf-8 -*-
# Generated by the protocol buffer compiler. DO NOT EDIT!
# source: chirpstack-api/api/multicast_group.proto
# Protobuf Python Version: 4.25.0
"""Generated protocol buffer code."""
from google.protobuf import descriptor as _descriptor
from google.protobuf import descriptor_pool as _descriptor_pool
@ -23,33 +24,32 @@ _globals = globals()
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'chirpstack_api.api.multicast_group_pb2', _globals)
if _descriptor._USE_C_DESCRIPTORS == False:
DESCRIPTOR._options = None
DESCRIPTOR._serialized_options = b'\n\021io.chirpstack.apiB\023MulticastGroupProtoP\001Z.github.com/chirpstack/chirpstack/api/go/v4/api\252\002\016Chirpstack.Api'
_MULTICASTGROUPSERVICE.methods_by_name['Create']._options = None
_MULTICASTGROUPSERVICE.methods_by_name['Create']._serialized_options = b'\202\323\344\223\002\032\"\025/api/multicast-groups:\001*'
_MULTICASTGROUPSERVICE.methods_by_name['Get']._options = None
_MULTICASTGROUPSERVICE.methods_by_name['Get']._serialized_options = b'\202\323\344\223\002\034\022\032/api/multicast-groups/{id}'
_MULTICASTGROUPSERVICE.methods_by_name['Update']._options = None
_MULTICASTGROUPSERVICE.methods_by_name['Update']._serialized_options = b'\202\323\344\223\002/\032*/api/multicast-groups/{multicast_group.id}:\001*'
_MULTICASTGROUPSERVICE.methods_by_name['Delete']._options = None
_MULTICASTGROUPSERVICE.methods_by_name['Delete']._serialized_options = b'\202\323\344\223\002\034*\032/api/multicast-groups/{id}'
_MULTICASTGROUPSERVICE.methods_by_name['List']._options = None
_MULTICASTGROUPSERVICE.methods_by_name['List']._serialized_options = b'\202\323\344\223\002\027\022\025/api/multicast-groups'
_MULTICASTGROUPSERVICE.methods_by_name['AddDevice']._options = None
_MULTICASTGROUPSERVICE.methods_by_name['AddDevice']._serialized_options = b'\202\323\344\223\0027\"2/api/multicast-groups/{multicast_group_id}/devices:\001*'
_MULTICASTGROUPSERVICE.methods_by_name['RemoveDevice']._options = None
_MULTICASTGROUPSERVICE.methods_by_name['RemoveDevice']._serialized_options = b'\202\323\344\223\002>*</api/multicast-groups/{multicast_group_id}/devices/{dev_eui}'
_MULTICASTGROUPSERVICE.methods_by_name['AddGateway']._options = None
_MULTICASTGROUPSERVICE.methods_by_name['AddGateway']._serialized_options = b'\202\323\344\223\0028\"3/api/multicast-groups/{multicast_group_id}/gateways:\001*'
_MULTICASTGROUPSERVICE.methods_by_name['RemoveGateway']._options = None
_MULTICASTGROUPSERVICE.methods_by_name['RemoveGateway']._serialized_options = b'\202\323\344\223\002B*@/api/multicast-groups/{multicast_group_id}/gateways/{gateway_id}'
_MULTICASTGROUPSERVICE.methods_by_name['Enqueue']._options = None
_MULTICASTGROUPSERVICE.methods_by_name['Enqueue']._serialized_options = b'\202\323\344\223\002@\";/api/multicast-groups/{queue_item.multicast_group_id}/queue:\001*'
_MULTICASTGROUPSERVICE.methods_by_name['FlushQueue']._options = None
_MULTICASTGROUPSERVICE.methods_by_name['FlushQueue']._serialized_options = b'\202\323\344\223\0022*0/api/multicast-groups/{multicast_group_id}/queue'
_MULTICASTGROUPSERVICE.methods_by_name['ListQueue']._options = None
_MULTICASTGROUPSERVICE.methods_by_name['ListQueue']._serialized_options = b'\202\323\344\223\0022\0220/api/multicast-groups/{multicast_group_id}/queue'
_globals['DESCRIPTOR']._options = None
_globals['DESCRIPTOR']._serialized_options = b'\n\021io.chirpstack.apiB\023MulticastGroupProtoP\001Z.github.com/chirpstack/chirpstack/api/go/v4/api\252\002\016Chirpstack.Api'
_globals['_MULTICASTGROUPSERVICE'].methods_by_name['Create']._options = None
_globals['_MULTICASTGROUPSERVICE'].methods_by_name['Create']._serialized_options = b'\202\323\344\223\002\032\"\025/api/multicast-groups:\001*'
_globals['_MULTICASTGROUPSERVICE'].methods_by_name['Get']._options = None
_globals['_MULTICASTGROUPSERVICE'].methods_by_name['Get']._serialized_options = b'\202\323\344\223\002\034\022\032/api/multicast-groups/{id}'
_globals['_MULTICASTGROUPSERVICE'].methods_by_name['Update']._options = None
_globals['_MULTICASTGROUPSERVICE'].methods_by_name['Update']._serialized_options = b'\202\323\344\223\002/\032*/api/multicast-groups/{multicast_group.id}:\001*'
_globals['_MULTICASTGROUPSERVICE'].methods_by_name['Delete']._options = None
_globals['_MULTICASTGROUPSERVICE'].methods_by_name['Delete']._serialized_options = b'\202\323\344\223\002\034*\032/api/multicast-groups/{id}'
_globals['_MULTICASTGROUPSERVICE'].methods_by_name['List']._options = None
_globals['_MULTICASTGROUPSERVICE'].methods_by_name['List']._serialized_options = b'\202\323\344\223\002\027\022\025/api/multicast-groups'
_globals['_MULTICASTGROUPSERVICE'].methods_by_name['AddDevice']._options = None
_globals['_MULTICASTGROUPSERVICE'].methods_by_name['AddDevice']._serialized_options = b'\202\323\344\223\0027\"2/api/multicast-groups/{multicast_group_id}/devices:\001*'
_globals['_MULTICASTGROUPSERVICE'].methods_by_name['RemoveDevice']._options = None
_globals['_MULTICASTGROUPSERVICE'].methods_by_name['RemoveDevice']._serialized_options = b'\202\323\344\223\002>*</api/multicast-groups/{multicast_group_id}/devices/{dev_eui}'
_globals['_MULTICASTGROUPSERVICE'].methods_by_name['AddGateway']._options = None
_globals['_MULTICASTGROUPSERVICE'].methods_by_name['AddGateway']._serialized_options = b'\202\323\344\223\0028\"3/api/multicast-groups/{multicast_group_id}/gateways:\001*'
_globals['_MULTICASTGROUPSERVICE'].methods_by_name['RemoveGateway']._options = None
_globals['_MULTICASTGROUPSERVICE'].methods_by_name['RemoveGateway']._serialized_options = b'\202\323\344\223\002B*@/api/multicast-groups/{multicast_group_id}/gateways/{gateway_id}'
_globals['_MULTICASTGROUPSERVICE'].methods_by_name['Enqueue']._options = None
_globals['_MULTICASTGROUPSERVICE'].methods_by_name['Enqueue']._serialized_options = b'\202\323\344\223\002@\";/api/multicast-groups/{queue_item.multicast_group_id}/queue:\001*'
_globals['_MULTICASTGROUPSERVICE'].methods_by_name['FlushQueue']._options = None
_globals['_MULTICASTGROUPSERVICE'].methods_by_name['FlushQueue']._serialized_options = b'\202\323\344\223\0022*0/api/multicast-groups/{multicast_group_id}/queue'
_globals['_MULTICASTGROUPSERVICE'].methods_by_name['ListQueue']._options = None
_globals['_MULTICASTGROUPSERVICE'].methods_by_name['ListQueue']._serialized_options = b'\202\323\344\223\0022\0220/api/multicast-groups/{multicast_group_id}/queue'
_globals['_MULTICASTGROUPTYPE']._serialized_start=2204
_globals['_MULTICASTGROUPTYPE']._serialized_end=2250
_globals['_MULTICASTGROUPSCHEDULINGTYPE']._serialized_start=2252

View File

@ -11,12 +11,12 @@ from typing import ClassVar as _ClassVar, Iterable as _Iterable, Mapping as _Map
DESCRIPTOR: _descriptor.FileDescriptor
class MulticastGroupType(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
__slots__ = []
__slots__ = ()
CLASS_C: _ClassVar[MulticastGroupType]
CLASS_B: _ClassVar[MulticastGroupType]
class MulticastGroupSchedulingType(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
__slots__ = []
__slots__ = ()
DELAY: _ClassVar[MulticastGroupSchedulingType]
GPS_TIME: _ClassVar[MulticastGroupSchedulingType]
CLASS_C: MulticastGroupType
@ -25,7 +25,7 @@ DELAY: MulticastGroupSchedulingType
GPS_TIME: MulticastGroupSchedulingType
class MulticastGroup(_message.Message):
__slots__ = ["id", "name", "application_id", "region", "mc_addr", "mc_nwk_s_key", "mc_app_s_key", "f_cnt", "group_type", "dr", "frequency", "class_b_ping_slot_period", "class_c_scheduling_type"]
__slots__ = ("id", "name", "application_id", "region", "mc_addr", "mc_nwk_s_key", "mc_app_s_key", "f_cnt", "group_type", "dr", "frequency", "class_b_ping_slot_period", "class_c_scheduling_type")
ID_FIELD_NUMBER: _ClassVar[int]
NAME_FIELD_NUMBER: _ClassVar[int]
APPLICATION_ID_FIELD_NUMBER: _ClassVar[int]
@ -55,7 +55,7 @@ class MulticastGroup(_message.Message):
def __init__(self, id: _Optional[str] = ..., name: _Optional[str] = ..., application_id: _Optional[str] = ..., region: _Optional[_Union[_common_pb2.Region, str]] = ..., mc_addr: _Optional[str] = ..., mc_nwk_s_key: _Optional[str] = ..., mc_app_s_key: _Optional[str] = ..., f_cnt: _Optional[int] = ..., group_type: _Optional[_Union[MulticastGroupType, str]] = ..., dr: _Optional[int] = ..., frequency: _Optional[int] = ..., class_b_ping_slot_period: _Optional[int] = ..., class_c_scheduling_type: _Optional[_Union[MulticastGroupSchedulingType, str]] = ...) -> None: ...
class MulticastGroupListItem(_message.Message):
__slots__ = ["id", "created_at", "updated_at", "name", "region", "group_type"]
__slots__ = ("id", "created_at", "updated_at", "name", "region", "group_type")
ID_FIELD_NUMBER: _ClassVar[int]
CREATED_AT_FIELD_NUMBER: _ClassVar[int]
UPDATED_AT_FIELD_NUMBER: _ClassVar[int]
@ -71,25 +71,25 @@ class MulticastGroupListItem(_message.Message):
def __init__(self, id: _Optional[str] = ..., created_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., updated_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., name: _Optional[str] = ..., region: _Optional[_Union[_common_pb2.Region, str]] = ..., group_type: _Optional[_Union[MulticastGroupType, str]] = ...) -> None: ...
class CreateMulticastGroupRequest(_message.Message):
__slots__ = ["multicast_group"]
__slots__ = ("multicast_group",)
MULTICAST_GROUP_FIELD_NUMBER: _ClassVar[int]
multicast_group: MulticastGroup
def __init__(self, multicast_group: _Optional[_Union[MulticastGroup, _Mapping]] = ...) -> None: ...
class CreateMulticastGroupResponse(_message.Message):
__slots__ = ["id"]
__slots__ = ("id",)
ID_FIELD_NUMBER: _ClassVar[int]
id: str
def __init__(self, id: _Optional[str] = ...) -> None: ...
class GetMulticastGroupRequest(_message.Message):
__slots__ = ["id"]
__slots__ = ("id",)
ID_FIELD_NUMBER: _ClassVar[int]
id: str
def __init__(self, id: _Optional[str] = ...) -> None: ...
class GetMulticastGroupResponse(_message.Message):
__slots__ = ["multicast_group", "created_at", "updated_at"]
__slots__ = ("multicast_group", "created_at", "updated_at")
MULTICAST_GROUP_FIELD_NUMBER: _ClassVar[int]
CREATED_AT_FIELD_NUMBER: _ClassVar[int]
UPDATED_AT_FIELD_NUMBER: _ClassVar[int]
@ -99,19 +99,19 @@ class GetMulticastGroupResponse(_message.Message):
def __init__(self, multicast_group: _Optional[_Union[MulticastGroup, _Mapping]] = ..., created_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., updated_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ...) -> None: ...
class UpdateMulticastGroupRequest(_message.Message):
__slots__ = ["multicast_group"]
__slots__ = ("multicast_group",)
MULTICAST_GROUP_FIELD_NUMBER: _ClassVar[int]
multicast_group: MulticastGroup
def __init__(self, multicast_group: _Optional[_Union[MulticastGroup, _Mapping]] = ...) -> None: ...
class DeleteMulticastGroupRequest(_message.Message):
__slots__ = ["id"]
__slots__ = ("id",)
ID_FIELD_NUMBER: _ClassVar[int]
id: str
def __init__(self, id: _Optional[str] = ...) -> None: ...
class ListMulticastGroupsRequest(_message.Message):
__slots__ = ["limit", "offset", "search", "application_id"]
__slots__ = ("limit", "offset", "search", "application_id")
LIMIT_FIELD_NUMBER: _ClassVar[int]
OFFSET_FIELD_NUMBER: _ClassVar[int]
SEARCH_FIELD_NUMBER: _ClassVar[int]
@ -123,7 +123,7 @@ class ListMulticastGroupsRequest(_message.Message):
def __init__(self, limit: _Optional[int] = ..., offset: _Optional[int] = ..., search: _Optional[str] = ..., application_id: _Optional[str] = ...) -> None: ...
class ListMulticastGroupsResponse(_message.Message):
__slots__ = ["total_count", "result"]
__slots__ = ("total_count", "result")
TOTAL_COUNT_FIELD_NUMBER: _ClassVar[int]
RESULT_FIELD_NUMBER: _ClassVar[int]
total_count: int
@ -131,7 +131,7 @@ class ListMulticastGroupsResponse(_message.Message):
def __init__(self, total_count: _Optional[int] = ..., result: _Optional[_Iterable[_Union[MulticastGroupListItem, _Mapping]]] = ...) -> None: ...
class AddDeviceToMulticastGroupRequest(_message.Message):
__slots__ = ["multicast_group_id", "dev_eui"]
__slots__ = ("multicast_group_id", "dev_eui")
MULTICAST_GROUP_ID_FIELD_NUMBER: _ClassVar[int]
DEV_EUI_FIELD_NUMBER: _ClassVar[int]
multicast_group_id: str
@ -139,7 +139,7 @@ class AddDeviceToMulticastGroupRequest(_message.Message):
def __init__(self, multicast_group_id: _Optional[str] = ..., dev_eui: _Optional[str] = ...) -> None: ...
class RemoveDeviceFromMulticastGroupRequest(_message.Message):
__slots__ = ["multicast_group_id", "dev_eui"]
__slots__ = ("multicast_group_id", "dev_eui")
MULTICAST_GROUP_ID_FIELD_NUMBER: _ClassVar[int]
DEV_EUI_FIELD_NUMBER: _ClassVar[int]
multicast_group_id: str
@ -147,7 +147,7 @@ class RemoveDeviceFromMulticastGroupRequest(_message.Message):
def __init__(self, multicast_group_id: _Optional[str] = ..., dev_eui: _Optional[str] = ...) -> None: ...
class AddGatewayToMulticastGroupRequest(_message.Message):
__slots__ = ["multicast_group_id", "gateway_id"]
__slots__ = ("multicast_group_id", "gateway_id")
MULTICAST_GROUP_ID_FIELD_NUMBER: _ClassVar[int]
GATEWAY_ID_FIELD_NUMBER: _ClassVar[int]
multicast_group_id: str
@ -155,7 +155,7 @@ class AddGatewayToMulticastGroupRequest(_message.Message):
def __init__(self, multicast_group_id: _Optional[str] = ..., gateway_id: _Optional[str] = ...) -> None: ...
class RemoveGatewayFromMulticastGroupRequest(_message.Message):
__slots__ = ["multicast_group_id", "gateway_id"]
__slots__ = ("multicast_group_id", "gateway_id")
MULTICAST_GROUP_ID_FIELD_NUMBER: _ClassVar[int]
GATEWAY_ID_FIELD_NUMBER: _ClassVar[int]
multicast_group_id: str
@ -163,7 +163,7 @@ class RemoveGatewayFromMulticastGroupRequest(_message.Message):
def __init__(self, multicast_group_id: _Optional[str] = ..., gateway_id: _Optional[str] = ...) -> None: ...
class MulticastGroupQueueItem(_message.Message):
__slots__ = ["multicast_group_id", "f_cnt", "f_port", "data"]
__slots__ = ("multicast_group_id", "f_cnt", "f_port", "data")
MULTICAST_GROUP_ID_FIELD_NUMBER: _ClassVar[int]
F_CNT_FIELD_NUMBER: _ClassVar[int]
F_PORT_FIELD_NUMBER: _ClassVar[int]
@ -175,31 +175,31 @@ class MulticastGroupQueueItem(_message.Message):
def __init__(self, multicast_group_id: _Optional[str] = ..., f_cnt: _Optional[int] = ..., f_port: _Optional[int] = ..., data: _Optional[bytes] = ...) -> None: ...
class EnqueueMulticastGroupQueueItemRequest(_message.Message):
__slots__ = ["queue_item"]
__slots__ = ("queue_item",)
QUEUE_ITEM_FIELD_NUMBER: _ClassVar[int]
queue_item: MulticastGroupQueueItem
def __init__(self, queue_item: _Optional[_Union[MulticastGroupQueueItem, _Mapping]] = ...) -> None: ...
class EnqueueMulticastGroupQueueItemResponse(_message.Message):
__slots__ = ["f_cnt"]
__slots__ = ("f_cnt",)
F_CNT_FIELD_NUMBER: _ClassVar[int]
f_cnt: int
def __init__(self, f_cnt: _Optional[int] = ...) -> None: ...
class FlushMulticastGroupQueueRequest(_message.Message):
__slots__ = ["multicast_group_id"]
__slots__ = ("multicast_group_id",)
MULTICAST_GROUP_ID_FIELD_NUMBER: _ClassVar[int]
multicast_group_id: str
def __init__(self, multicast_group_id: _Optional[str] = ...) -> None: ...
class ListMulticastGroupQueueRequest(_message.Message):
__slots__ = ["multicast_group_id"]
__slots__ = ("multicast_group_id",)
MULTICAST_GROUP_ID_FIELD_NUMBER: _ClassVar[int]
multicast_group_id: str
def __init__(self, multicast_group_id: _Optional[str] = ...) -> None: ...
class ListMulticastGroupQueueResponse(_message.Message):
__slots__ = ["items"]
__slots__ = ("items",)
ITEMS_FIELD_NUMBER: _ClassVar[int]
items: _containers.RepeatedCompositeFieldContainer[MulticastGroupQueueItem]
def __init__(self, items: _Optional[_Iterable[_Union[MulticastGroupQueueItem, _Mapping]]] = ...) -> None: ...

View File

@ -1,6 +1,7 @@
# -*- coding: utf-8 -*-
# Generated by the protocol buffer compiler. DO NOT EDIT!
# source: chirpstack-api/api/relay.proto
# Protobuf Python Version: 4.25.0
"""Generated protocol buffer code."""
from google.protobuf import descriptor as _descriptor
from google.protobuf import descriptor_pool as _descriptor_pool
@ -22,17 +23,16 @@ _globals = globals()
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'chirpstack_api.api.relay_pb2', _globals)
if _descriptor._USE_C_DESCRIPTORS == False:
DESCRIPTOR._options = None
DESCRIPTOR._serialized_options = b'\n\021io.chirpstack.apiB\nRelayProtoP\001Z.github.com/chirpstack/chirpstack/api/go/v4/api\252\002\016Chirpstack.Api'
_RELAYSERVICE.methods_by_name['List']._options = None
_RELAYSERVICE.methods_by_name['List']._serialized_options = b'\202\323\344\223\002\r\022\013/api/relays'
_RELAYSERVICE.methods_by_name['AddDevice']._options = None
_RELAYSERVICE.methods_by_name['AddDevice']._serialized_options = b'\202\323\344\223\002(\"#/api/relays/{relay_dev_eui}/devices:\001*'
_RELAYSERVICE.methods_by_name['RemoveDevice']._options = None
_RELAYSERVICE.methods_by_name['RemoveDevice']._serialized_options = b'\202\323\344\223\002/*-/api/relays/{relay_dev_eui}/devices/{dev_eui}'
_RELAYSERVICE.methods_by_name['ListDevices']._options = None
_RELAYSERVICE.methods_by_name['ListDevices']._serialized_options = b'\202\323\344\223\002%\022#/api/relays/{relay_dev_eui}/devices'
_globals['DESCRIPTOR']._options = None
_globals['DESCRIPTOR']._serialized_options = b'\n\021io.chirpstack.apiB\nRelayProtoP\001Z.github.com/chirpstack/chirpstack/api/go/v4/api\252\002\016Chirpstack.Api'
_globals['_RELAYSERVICE'].methods_by_name['List']._options = None
_globals['_RELAYSERVICE'].methods_by_name['List']._serialized_options = b'\202\323\344\223\002\r\022\013/api/relays'
_globals['_RELAYSERVICE'].methods_by_name['AddDevice']._options = None
_globals['_RELAYSERVICE'].methods_by_name['AddDevice']._serialized_options = b'\202\323\344\223\002(\"#/api/relays/{relay_dev_eui}/devices:\001*'
_globals['_RELAYSERVICE'].methods_by_name['RemoveDevice']._options = None
_globals['_RELAYSERVICE'].methods_by_name['RemoveDevice']._serialized_options = b'\202\323\344\223\002/*-/api/relays/{relay_dev_eui}/devices/{dev_eui}'
_globals['_RELAYSERVICE'].methods_by_name['ListDevices']._options = None
_globals['_RELAYSERVICE'].methods_by_name['ListDevices']._serialized_options = b'\202\323\344\223\002%\022#/api/relays/{relay_dev_eui}/devices'
_globals['_RELAYLISTITEM']._serialized_start=131
_globals['_RELAYLISTITEM']._serialized_end=177
_globals['_LISTRELAYSREQUEST']._serialized_start=179

View File

@ -9,7 +9,7 @@ from typing import ClassVar as _ClassVar, Iterable as _Iterable, Mapping as _Map
DESCRIPTOR: _descriptor.FileDescriptor
class RelayListItem(_message.Message):
__slots__ = ["dev_eui", "name"]
__slots__ = ("dev_eui", "name")
DEV_EUI_FIELD_NUMBER: _ClassVar[int]
NAME_FIELD_NUMBER: _ClassVar[int]
dev_eui: str
@ -17,7 +17,7 @@ class RelayListItem(_message.Message):
def __init__(self, dev_eui: _Optional[str] = ..., name: _Optional[str] = ...) -> None: ...
class ListRelaysRequest(_message.Message):
__slots__ = ["limit", "offset", "application_id"]
__slots__ = ("limit", "offset", "application_id")
LIMIT_FIELD_NUMBER: _ClassVar[int]
OFFSET_FIELD_NUMBER: _ClassVar[int]
APPLICATION_ID_FIELD_NUMBER: _ClassVar[int]
@ -27,7 +27,7 @@ class ListRelaysRequest(_message.Message):
def __init__(self, limit: _Optional[int] = ..., offset: _Optional[int] = ..., application_id: _Optional[str] = ...) -> None: ...
class ListRelaysResponse(_message.Message):
__slots__ = ["total_count", "result"]
__slots__ = ("total_count", "result")
TOTAL_COUNT_FIELD_NUMBER: _ClassVar[int]
RESULT_FIELD_NUMBER: _ClassVar[int]
total_count: int
@ -35,7 +35,7 @@ class ListRelaysResponse(_message.Message):
def __init__(self, total_count: _Optional[int] = ..., result: _Optional[_Iterable[_Union[RelayListItem, _Mapping]]] = ...) -> None: ...
class AddRelayDeviceRequest(_message.Message):
__slots__ = ["relay_dev_eui", "device_dev_eui"]
__slots__ = ("relay_dev_eui", "device_dev_eui")
RELAY_DEV_EUI_FIELD_NUMBER: _ClassVar[int]
DEVICE_DEV_EUI_FIELD_NUMBER: _ClassVar[int]
relay_dev_eui: str
@ -43,7 +43,7 @@ class AddRelayDeviceRequest(_message.Message):
def __init__(self, relay_dev_eui: _Optional[str] = ..., device_dev_eui: _Optional[str] = ...) -> None: ...
class RemoveRelayDeviceRequest(_message.Message):
__slots__ = ["relay_dev_eui", "device_dev_eui"]
__slots__ = ("relay_dev_eui", "device_dev_eui")
RELAY_DEV_EUI_FIELD_NUMBER: _ClassVar[int]
DEVICE_DEV_EUI_FIELD_NUMBER: _ClassVar[int]
relay_dev_eui: str
@ -51,7 +51,7 @@ class RemoveRelayDeviceRequest(_message.Message):
def __init__(self, relay_dev_eui: _Optional[str] = ..., device_dev_eui: _Optional[str] = ...) -> None: ...
class ListRelayDevicesRequest(_message.Message):
__slots__ = ["limit", "offset", "relay_dev_eui"]
__slots__ = ("limit", "offset", "relay_dev_eui")
LIMIT_FIELD_NUMBER: _ClassVar[int]
OFFSET_FIELD_NUMBER: _ClassVar[int]
RELAY_DEV_EUI_FIELD_NUMBER: _ClassVar[int]
@ -61,7 +61,7 @@ class ListRelayDevicesRequest(_message.Message):
def __init__(self, limit: _Optional[int] = ..., offset: _Optional[int] = ..., relay_dev_eui: _Optional[str] = ...) -> None: ...
class RelayDeviceListItem(_message.Message):
__slots__ = ["dev_eui", "created_at", "name"]
__slots__ = ("dev_eui", "created_at", "name")
DEV_EUI_FIELD_NUMBER: _ClassVar[int]
CREATED_AT_FIELD_NUMBER: _ClassVar[int]
NAME_FIELD_NUMBER: _ClassVar[int]
@ -71,7 +71,7 @@ class RelayDeviceListItem(_message.Message):
def __init__(self, dev_eui: _Optional[str] = ..., created_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., name: _Optional[str] = ...) -> None: ...
class ListRelayDevicesResponse(_message.Message):
__slots__ = ["total_count", "result"]
__slots__ = ("total_count", "result")
TOTAL_COUNT_FIELD_NUMBER: _ClassVar[int]
RESULT_FIELD_NUMBER: _ClassVar[int]
total_count: int

View File

@ -1,6 +1,7 @@
# -*- coding: utf-8 -*-
# Generated by the protocol buffer compiler. DO NOT EDIT!
# source: chirpstack-api/api/tenant.proto
# Protobuf Python Version: 4.25.0
"""Generated protocol buffer code."""
from google.protobuf import descriptor as _descriptor
from google.protobuf import descriptor_pool as _descriptor_pool
@ -22,31 +23,30 @@ _globals = globals()
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'chirpstack_api.api.tenant_pb2', _globals)
if _descriptor._USE_C_DESCRIPTORS == False:
DESCRIPTOR._options = None
DESCRIPTOR._serialized_options = b'\n\021io.chirpstack.apiB\013TenantProtoP\001Z.github.com/chirpstack/chirpstack/api/go/v4/api\252\002\016Chirpstack.Api'
_TENANT_TAGSENTRY._options = None
_TENANT_TAGSENTRY._serialized_options = b'8\001'
_TENANTSERVICE.methods_by_name['Create']._options = None
_TENANTSERVICE.methods_by_name['Create']._serialized_options = b'\202\323\344\223\002\021\"\014/api/tenants:\001*'
_TENANTSERVICE.methods_by_name['Get']._options = None
_TENANTSERVICE.methods_by_name['Get']._serialized_options = b'\202\323\344\223\002\023\022\021/api/tenants/{id}'
_TENANTSERVICE.methods_by_name['Update']._options = None
_TENANTSERVICE.methods_by_name['Update']._serialized_options = b'\202\323\344\223\002\035\032\030/api/tenants/{tenant.id}:\001*'
_TENANTSERVICE.methods_by_name['Delete']._options = None
_TENANTSERVICE.methods_by_name['Delete']._serialized_options = b'\202\323\344\223\002\023*\021/api/tenants/{id}'
_TENANTSERVICE.methods_by_name['List']._options = None
_TENANTSERVICE.methods_by_name['List']._serialized_options = b'\202\323\344\223\002\016\022\014/api/tenants'
_TENANTSERVICE.methods_by_name['AddUser']._options = None
_TENANTSERVICE.methods_by_name['AddUser']._serialized_options = b'\202\323\344\223\002/\"*/api/tenants/{tenant_user.tenant_id}/users:\001*'
_TENANTSERVICE.methods_by_name['GetUser']._options = None
_TENANTSERVICE.methods_by_name['GetUser']._serialized_options = b'\202\323\344\223\002*\022(/api/tenants/{tenant_id}/users/{user_id}'
_TENANTSERVICE.methods_by_name['UpdateUser']._options = None
_TENANTSERVICE.methods_by_name['UpdateUser']._serialized_options = b'\202\323\344\223\002E\032@/api/tenants/{tenant_user.tenant_id}/users/{tenant_user.user_id}:\001*'
_TENANTSERVICE.methods_by_name['DeleteUser']._options = None
_TENANTSERVICE.methods_by_name['DeleteUser']._serialized_options = b'\202\323\344\223\002**(/api/tenants/{tenant_id}/users/{user_id}'
_TENANTSERVICE.methods_by_name['ListUsers']._options = None
_TENANTSERVICE.methods_by_name['ListUsers']._serialized_options = b'\202\323\344\223\002 \022\036/api/tenants/{tenant_id}/users'
_globals['DESCRIPTOR']._options = None
_globals['DESCRIPTOR']._serialized_options = b'\n\021io.chirpstack.apiB\013TenantProtoP\001Z.github.com/chirpstack/chirpstack/api/go/v4/api\252\002\016Chirpstack.Api'
_globals['_TENANT_TAGSENTRY']._options = None
_globals['_TENANT_TAGSENTRY']._serialized_options = b'8\001'
_globals['_TENANTSERVICE'].methods_by_name['Create']._options = None
_globals['_TENANTSERVICE'].methods_by_name['Create']._serialized_options = b'\202\323\344\223\002\021\"\014/api/tenants:\001*'
_globals['_TENANTSERVICE'].methods_by_name['Get']._options = None
_globals['_TENANTSERVICE'].methods_by_name['Get']._serialized_options = b'\202\323\344\223\002\023\022\021/api/tenants/{id}'
_globals['_TENANTSERVICE'].methods_by_name['Update']._options = None
_globals['_TENANTSERVICE'].methods_by_name['Update']._serialized_options = b'\202\323\344\223\002\035\032\030/api/tenants/{tenant.id}:\001*'
_globals['_TENANTSERVICE'].methods_by_name['Delete']._options = None
_globals['_TENANTSERVICE'].methods_by_name['Delete']._serialized_options = b'\202\323\344\223\002\023*\021/api/tenants/{id}'
_globals['_TENANTSERVICE'].methods_by_name['List']._options = None
_globals['_TENANTSERVICE'].methods_by_name['List']._serialized_options = b'\202\323\344\223\002\016\022\014/api/tenants'
_globals['_TENANTSERVICE'].methods_by_name['AddUser']._options = None
_globals['_TENANTSERVICE'].methods_by_name['AddUser']._serialized_options = b'\202\323\344\223\002/\"*/api/tenants/{tenant_user.tenant_id}/users:\001*'
_globals['_TENANTSERVICE'].methods_by_name['GetUser']._options = None
_globals['_TENANTSERVICE'].methods_by_name['GetUser']._serialized_options = b'\202\323\344\223\002*\022(/api/tenants/{tenant_id}/users/{user_id}'
_globals['_TENANTSERVICE'].methods_by_name['UpdateUser']._options = None
_globals['_TENANTSERVICE'].methods_by_name['UpdateUser']._serialized_options = b'\202\323\344\223\002E\032@/api/tenants/{tenant_user.tenant_id}/users/{tenant_user.user_id}:\001*'
_globals['_TENANTSERVICE'].methods_by_name['DeleteUser']._options = None
_globals['_TENANTSERVICE'].methods_by_name['DeleteUser']._serialized_options = b'\202\323\344\223\002**(/api/tenants/{tenant_id}/users/{user_id}'
_globals['_TENANTSERVICE'].methods_by_name['ListUsers']._options = None
_globals['_TENANTSERVICE'].methods_by_name['ListUsers']._serialized_options = b'\202\323\344\223\002 \022\036/api/tenants/{tenant_id}/users'
_globals['_TENANT']._serialized_start=133
_globals['_TENANT']._serialized_end=410
_globals['_TENANT_TAGSENTRY']._serialized_start=367

View File

@ -9,9 +9,9 @@ from typing import ClassVar as _ClassVar, Iterable as _Iterable, Mapping as _Map
DESCRIPTOR: _descriptor.FileDescriptor
class Tenant(_message.Message):
__slots__ = ["id", "name", "description", "can_have_gateways", "max_gateway_count", "max_device_count", "private_gateways_up", "private_gateways_down", "tags"]
__slots__ = ("id", "name", "description", "can_have_gateways", "max_gateway_count", "max_device_count", "private_gateways_up", "private_gateways_down", "tags")
class TagsEntry(_message.Message):
__slots__ = ["key", "value"]
__slots__ = ("key", "value")
KEY_FIELD_NUMBER: _ClassVar[int]
VALUE_FIELD_NUMBER: _ClassVar[int]
key: str
@ -38,7 +38,7 @@ class Tenant(_message.Message):
def __init__(self, id: _Optional[str] = ..., name: _Optional[str] = ..., description: _Optional[str] = ..., can_have_gateways: bool = ..., max_gateway_count: _Optional[int] = ..., max_device_count: _Optional[int] = ..., private_gateways_up: bool = ..., private_gateways_down: bool = ..., tags: _Optional[_Mapping[str, str]] = ...) -> None: ...
class TenantListItem(_message.Message):
__slots__ = ["id", "created_at", "updated_at", "name", "can_have_gateways", "private_gateways_up", "private_gateways_down", "max_gateway_count", "max_device_count"]
__slots__ = ("id", "created_at", "updated_at", "name", "can_have_gateways", "private_gateways_up", "private_gateways_down", "max_gateway_count", "max_device_count")
ID_FIELD_NUMBER: _ClassVar[int]
CREATED_AT_FIELD_NUMBER: _ClassVar[int]
UPDATED_AT_FIELD_NUMBER: _ClassVar[int]
@ -60,25 +60,25 @@ class TenantListItem(_message.Message):
def __init__(self, id: _Optional[str] = ..., created_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., updated_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., name: _Optional[str] = ..., can_have_gateways: bool = ..., private_gateways_up: bool = ..., private_gateways_down: bool = ..., max_gateway_count: _Optional[int] = ..., max_device_count: _Optional[int] = ...) -> None: ...
class CreateTenantRequest(_message.Message):
__slots__ = ["tenant"]
__slots__ = ("tenant",)
TENANT_FIELD_NUMBER: _ClassVar[int]
tenant: Tenant
def __init__(self, tenant: _Optional[_Union[Tenant, _Mapping]] = ...) -> None: ...
class CreateTenantResponse(_message.Message):
__slots__ = ["id"]
__slots__ = ("id",)
ID_FIELD_NUMBER: _ClassVar[int]
id: str
def __init__(self, id: _Optional[str] = ...) -> None: ...
class GetTenantRequest(_message.Message):
__slots__ = ["id"]
__slots__ = ("id",)
ID_FIELD_NUMBER: _ClassVar[int]
id: str
def __init__(self, id: _Optional[str] = ...) -> None: ...
class GetTenantResponse(_message.Message):
__slots__ = ["tenant", "created_at", "updated_at"]
__slots__ = ("tenant", "created_at", "updated_at")
TENANT_FIELD_NUMBER: _ClassVar[int]
CREATED_AT_FIELD_NUMBER: _ClassVar[int]
UPDATED_AT_FIELD_NUMBER: _ClassVar[int]
@ -88,19 +88,19 @@ class GetTenantResponse(_message.Message):
def __init__(self, tenant: _Optional[_Union[Tenant, _Mapping]] = ..., created_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., updated_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ...) -> None: ...
class UpdateTenantRequest(_message.Message):
__slots__ = ["tenant"]
__slots__ = ("tenant",)
TENANT_FIELD_NUMBER: _ClassVar[int]
tenant: Tenant
def __init__(self, tenant: _Optional[_Union[Tenant, _Mapping]] = ...) -> None: ...
class DeleteTenantRequest(_message.Message):
__slots__ = ["id"]
__slots__ = ("id",)
ID_FIELD_NUMBER: _ClassVar[int]
id: str
def __init__(self, id: _Optional[str] = ...) -> None: ...
class ListTenantsRequest(_message.Message):
__slots__ = ["limit", "offset", "search", "user_id"]
__slots__ = ("limit", "offset", "search", "user_id")
LIMIT_FIELD_NUMBER: _ClassVar[int]
OFFSET_FIELD_NUMBER: _ClassVar[int]
SEARCH_FIELD_NUMBER: _ClassVar[int]
@ -112,7 +112,7 @@ class ListTenantsRequest(_message.Message):
def __init__(self, limit: _Optional[int] = ..., offset: _Optional[int] = ..., search: _Optional[str] = ..., user_id: _Optional[str] = ...) -> None: ...
class ListTenantsResponse(_message.Message):
__slots__ = ["total_count", "result"]
__slots__ = ("total_count", "result")
TOTAL_COUNT_FIELD_NUMBER: _ClassVar[int]
RESULT_FIELD_NUMBER: _ClassVar[int]
total_count: int
@ -120,7 +120,7 @@ class ListTenantsResponse(_message.Message):
def __init__(self, total_count: _Optional[int] = ..., result: _Optional[_Iterable[_Union[TenantListItem, _Mapping]]] = ...) -> None: ...
class TenantUser(_message.Message):
__slots__ = ["tenant_id", "user_id", "is_admin", "is_device_admin", "is_gateway_admin", "email"]
__slots__ = ("tenant_id", "user_id", "is_admin", "is_device_admin", "is_gateway_admin", "email")
TENANT_ID_FIELD_NUMBER: _ClassVar[int]
USER_ID_FIELD_NUMBER: _ClassVar[int]
IS_ADMIN_FIELD_NUMBER: _ClassVar[int]
@ -136,7 +136,7 @@ class TenantUser(_message.Message):
def __init__(self, tenant_id: _Optional[str] = ..., user_id: _Optional[str] = ..., is_admin: bool = ..., is_device_admin: bool = ..., is_gateway_admin: bool = ..., email: _Optional[str] = ...) -> None: ...
class TenantUserListItem(_message.Message):
__slots__ = ["tenant_id", "user_id", "created_at", "updated_at", "email", "is_admin", "is_device_admin", "is_gateway_admin"]
__slots__ = ("tenant_id", "user_id", "created_at", "updated_at", "email", "is_admin", "is_device_admin", "is_gateway_admin")
TENANT_ID_FIELD_NUMBER: _ClassVar[int]
USER_ID_FIELD_NUMBER: _ClassVar[int]
CREATED_AT_FIELD_NUMBER: _ClassVar[int]
@ -156,13 +156,13 @@ class TenantUserListItem(_message.Message):
def __init__(self, tenant_id: _Optional[str] = ..., user_id: _Optional[str] = ..., created_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., updated_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., email: _Optional[str] = ..., is_admin: bool = ..., is_device_admin: bool = ..., is_gateway_admin: bool = ...) -> None: ...
class AddTenantUserRequest(_message.Message):
__slots__ = ["tenant_user"]
__slots__ = ("tenant_user",)
TENANT_USER_FIELD_NUMBER: _ClassVar[int]
tenant_user: TenantUser
def __init__(self, tenant_user: _Optional[_Union[TenantUser, _Mapping]] = ...) -> None: ...
class GetTenantUserRequest(_message.Message):
__slots__ = ["tenant_id", "user_id"]
__slots__ = ("tenant_id", "user_id")
TENANT_ID_FIELD_NUMBER: _ClassVar[int]
USER_ID_FIELD_NUMBER: _ClassVar[int]
tenant_id: str
@ -170,7 +170,7 @@ class GetTenantUserRequest(_message.Message):
def __init__(self, tenant_id: _Optional[str] = ..., user_id: _Optional[str] = ...) -> None: ...
class GetTenantUserResponse(_message.Message):
__slots__ = ["tenant_user", "created_at", "updated_at"]
__slots__ = ("tenant_user", "created_at", "updated_at")
TENANT_USER_FIELD_NUMBER: _ClassVar[int]
CREATED_AT_FIELD_NUMBER: _ClassVar[int]
UPDATED_AT_FIELD_NUMBER: _ClassVar[int]
@ -180,13 +180,13 @@ class GetTenantUserResponse(_message.Message):
def __init__(self, tenant_user: _Optional[_Union[TenantUser, _Mapping]] = ..., created_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., updated_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ...) -> None: ...
class UpdateTenantUserRequest(_message.Message):
__slots__ = ["tenant_user"]
__slots__ = ("tenant_user",)
TENANT_USER_FIELD_NUMBER: _ClassVar[int]
tenant_user: TenantUser
def __init__(self, tenant_user: _Optional[_Union[TenantUser, _Mapping]] = ...) -> None: ...
class DeleteTenantUserRequest(_message.Message):
__slots__ = ["tenant_id", "user_id"]
__slots__ = ("tenant_id", "user_id")
TENANT_ID_FIELD_NUMBER: _ClassVar[int]
USER_ID_FIELD_NUMBER: _ClassVar[int]
tenant_id: str
@ -194,7 +194,7 @@ class DeleteTenantUserRequest(_message.Message):
def __init__(self, tenant_id: _Optional[str] = ..., user_id: _Optional[str] = ...) -> None: ...
class ListTenantUsersRequest(_message.Message):
__slots__ = ["tenant_id", "limit", "offset"]
__slots__ = ("tenant_id", "limit", "offset")
TENANT_ID_FIELD_NUMBER: _ClassVar[int]
LIMIT_FIELD_NUMBER: _ClassVar[int]
OFFSET_FIELD_NUMBER: _ClassVar[int]
@ -204,7 +204,7 @@ class ListTenantUsersRequest(_message.Message):
def __init__(self, tenant_id: _Optional[str] = ..., limit: _Optional[int] = ..., offset: _Optional[int] = ...) -> None: ...
class ListTenantUsersResponse(_message.Message):
__slots__ = ["total_count", "result"]
__slots__ = ("total_count", "result")
TOTAL_COUNT_FIELD_NUMBER: _ClassVar[int]
RESULT_FIELD_NUMBER: _ClassVar[int]
total_count: int

View File

@ -1,6 +1,7 @@
# -*- coding: utf-8 -*-
# Generated by the protocol buffer compiler. DO NOT EDIT!
# source: chirpstack-api/api/user.proto
# Protobuf Python Version: 4.25.0
"""Generated protocol buffer code."""
from google.protobuf import descriptor as _descriptor
from google.protobuf import descriptor_pool as _descriptor_pool
@ -22,21 +23,20 @@ _globals = globals()
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'chirpstack_api.api.user_pb2', _globals)
if _descriptor._USE_C_DESCRIPTORS == False:
DESCRIPTOR._options = None
DESCRIPTOR._serialized_options = b'\n\021io.chirpstack.apiB\tUserProtoP\001Z.github.com/chirpstack/chirpstack/api/go/v4/api\252\002\016Chirpstack.Api'
_USERSERVICE.methods_by_name['Create']._options = None
_USERSERVICE.methods_by_name['Create']._serialized_options = b'\202\323\344\223\002\017\"\n/api/users:\001*'
_USERSERVICE.methods_by_name['Get']._options = None
_USERSERVICE.methods_by_name['Get']._serialized_options = b'\202\323\344\223\002\021\022\017/api/users/{id}'
_USERSERVICE.methods_by_name['Update']._options = None
_USERSERVICE.methods_by_name['Update']._serialized_options = b'\202\323\344\223\002\031\032\024/api/users/{user.id}:\001*'
_USERSERVICE.methods_by_name['Delete']._options = None
_USERSERVICE.methods_by_name['Delete']._serialized_options = b'\202\323\344\223\002\021*\017/api/users/{id}'
_USERSERVICE.methods_by_name['List']._options = None
_USERSERVICE.methods_by_name['List']._serialized_options = b'\202\323\344\223\002\014\022\n/api/users'
_USERSERVICE.methods_by_name['UpdatePassword']._options = None
_USERSERVICE.methods_by_name['UpdatePassword']._serialized_options = b'\202\323\344\223\002\"\"\035/api/users/{user_id}/password:\001*'
_globals['DESCRIPTOR']._options = None
_globals['DESCRIPTOR']._serialized_options = b'\n\021io.chirpstack.apiB\tUserProtoP\001Z.github.com/chirpstack/chirpstack/api/go/v4/api\252\002\016Chirpstack.Api'
_globals['_USERSERVICE'].methods_by_name['Create']._options = None
_globals['_USERSERVICE'].methods_by_name['Create']._serialized_options = b'\202\323\344\223\002\017\"\n/api/users:\001*'
_globals['_USERSERVICE'].methods_by_name['Get']._options = None
_globals['_USERSERVICE'].methods_by_name['Get']._serialized_options = b'\202\323\344\223\002\021\022\017/api/users/{id}'
_globals['_USERSERVICE'].methods_by_name['Update']._options = None
_globals['_USERSERVICE'].methods_by_name['Update']._serialized_options = b'\202\323\344\223\002\031\032\024/api/users/{user.id}:\001*'
_globals['_USERSERVICE'].methods_by_name['Delete']._options = None
_globals['_USERSERVICE'].methods_by_name['Delete']._serialized_options = b'\202\323\344\223\002\021*\017/api/users/{id}'
_globals['_USERSERVICE'].methods_by_name['List']._options = None
_globals['_USERSERVICE'].methods_by_name['List']._serialized_options = b'\202\323\344\223\002\014\022\n/api/users'
_globals['_USERSERVICE'].methods_by_name['UpdatePassword']._options = None
_globals['_USERSERVICE'].methods_by_name['UpdatePassword']._serialized_options = b'\202\323\344\223\002\"\"\035/api/users/{user_id}/password:\001*'
_globals['_USER']._serialized_start=130
_globals['_USER']._serialized_end=214
_globals['_USERLISTITEM']._serialized_start=217

View File

@ -9,7 +9,7 @@ from typing import ClassVar as _ClassVar, Iterable as _Iterable, Mapping as _Map
DESCRIPTOR: _descriptor.FileDescriptor
class User(_message.Message):
__slots__ = ["id", "is_admin", "is_active", "email", "note"]
__slots__ = ("id", "is_admin", "is_active", "email", "note")
ID_FIELD_NUMBER: _ClassVar[int]
IS_ADMIN_FIELD_NUMBER: _ClassVar[int]
IS_ACTIVE_FIELD_NUMBER: _ClassVar[int]
@ -23,7 +23,7 @@ class User(_message.Message):
def __init__(self, id: _Optional[str] = ..., is_admin: bool = ..., is_active: bool = ..., email: _Optional[str] = ..., note: _Optional[str] = ...) -> None: ...
class UserListItem(_message.Message):
__slots__ = ["id", "created_at", "updated_at", "email", "is_admin", "is_active"]
__slots__ = ("id", "created_at", "updated_at", "email", "is_admin", "is_active")
ID_FIELD_NUMBER: _ClassVar[int]
CREATED_AT_FIELD_NUMBER: _ClassVar[int]
UPDATED_AT_FIELD_NUMBER: _ClassVar[int]
@ -39,7 +39,7 @@ class UserListItem(_message.Message):
def __init__(self, id: _Optional[str] = ..., created_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., updated_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., email: _Optional[str] = ..., is_admin: bool = ..., is_active: bool = ...) -> None: ...
class UserTenant(_message.Message):
__slots__ = ["tenant_id", "is_admin", "is_device_admin", "is_gateway_admin"]
__slots__ = ("tenant_id", "is_admin", "is_device_admin", "is_gateway_admin")
TENANT_ID_FIELD_NUMBER: _ClassVar[int]
IS_ADMIN_FIELD_NUMBER: _ClassVar[int]
IS_DEVICE_ADMIN_FIELD_NUMBER: _ClassVar[int]
@ -51,7 +51,7 @@ class UserTenant(_message.Message):
def __init__(self, tenant_id: _Optional[str] = ..., is_admin: bool = ..., is_device_admin: bool = ..., is_gateway_admin: bool = ...) -> None: ...
class CreateUserRequest(_message.Message):
__slots__ = ["user", "password", "tenants"]
__slots__ = ("user", "password", "tenants")
USER_FIELD_NUMBER: _ClassVar[int]
PASSWORD_FIELD_NUMBER: _ClassVar[int]
TENANTS_FIELD_NUMBER: _ClassVar[int]
@ -61,19 +61,19 @@ class CreateUserRequest(_message.Message):
def __init__(self, user: _Optional[_Union[User, _Mapping]] = ..., password: _Optional[str] = ..., tenants: _Optional[_Iterable[_Union[UserTenant, _Mapping]]] = ...) -> None: ...
class CreateUserResponse(_message.Message):
__slots__ = ["id"]
__slots__ = ("id",)
ID_FIELD_NUMBER: _ClassVar[int]
id: str
def __init__(self, id: _Optional[str] = ...) -> None: ...
class GetUserRequest(_message.Message):
__slots__ = ["id"]
__slots__ = ("id",)
ID_FIELD_NUMBER: _ClassVar[int]
id: str
def __init__(self, id: _Optional[str] = ...) -> None: ...
class GetUserResponse(_message.Message):
__slots__ = ["user", "created_at", "updated_at"]
__slots__ = ("user", "created_at", "updated_at")
USER_FIELD_NUMBER: _ClassVar[int]
CREATED_AT_FIELD_NUMBER: _ClassVar[int]
UPDATED_AT_FIELD_NUMBER: _ClassVar[int]
@ -83,19 +83,19 @@ class GetUserResponse(_message.Message):
def __init__(self, user: _Optional[_Union[User, _Mapping]] = ..., created_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., updated_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ...) -> None: ...
class UpdateUserRequest(_message.Message):
__slots__ = ["user"]
__slots__ = ("user",)
USER_FIELD_NUMBER: _ClassVar[int]
user: User
def __init__(self, user: _Optional[_Union[User, _Mapping]] = ...) -> None: ...
class DeleteUserRequest(_message.Message):
__slots__ = ["id"]
__slots__ = ("id",)
ID_FIELD_NUMBER: _ClassVar[int]
id: str
def __init__(self, id: _Optional[str] = ...) -> None: ...
class ListUsersRequest(_message.Message):
__slots__ = ["limit", "offset"]
__slots__ = ("limit", "offset")
LIMIT_FIELD_NUMBER: _ClassVar[int]
OFFSET_FIELD_NUMBER: _ClassVar[int]
limit: int
@ -103,7 +103,7 @@ class ListUsersRequest(_message.Message):
def __init__(self, limit: _Optional[int] = ..., offset: _Optional[int] = ...) -> None: ...
class ListUsersResponse(_message.Message):
__slots__ = ["total_count", "result"]
__slots__ = ("total_count", "result")
TOTAL_COUNT_FIELD_NUMBER: _ClassVar[int]
RESULT_FIELD_NUMBER: _ClassVar[int]
total_count: int
@ -111,7 +111,7 @@ class ListUsersResponse(_message.Message):
def __init__(self, total_count: _Optional[int] = ..., result: _Optional[_Iterable[_Union[UserListItem, _Mapping]]] = ...) -> None: ...
class UpdateUserPasswordRequest(_message.Message):
__slots__ = ["user_id", "password"]
__slots__ = ("user_id", "password")
USER_ID_FIELD_NUMBER: _ClassVar[int]
PASSWORD_FIELD_NUMBER: _ClassVar[int]
user_id: str

View File

@ -1,6 +1,7 @@
# -*- coding: utf-8 -*-
# Generated by the protocol buffer compiler. DO NOT EDIT!
# source: chirpstack-api/common/common.proto
# Protobuf Python Version: 4.25.0
"""Generated protocol buffer code."""
from google.protobuf import descriptor as _descriptor
from google.protobuf import descriptor_pool as _descriptor_pool
@ -20,9 +21,8 @@ _globals = globals()
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'chirpstack_api.common.common_pb2', _globals)
if _descriptor._USE_C_DESCRIPTORS == False:
DESCRIPTOR._options = None
DESCRIPTOR._serialized_options = b'\n\021io.chirpstack.apiB\013CommonProtoP\001Z1github.com/chirpstack/chirpstack/api/go/v4/common\252\002\021Chirpstack.Common'
_globals['DESCRIPTOR']._options = None
_globals['DESCRIPTOR']._serialized_options = b'\n\021io.chirpstack.apiB\013CommonProtoP\001Z1github.com/chirpstack/chirpstack/api/go/v4/common\252\002\021Chirpstack.Common'
_globals['_MODULATION']._serialized_start=449
_globals['_MODULATION']._serialized_end=493
_globals['_REGION']._serialized_start=496

View File

@ -8,13 +8,13 @@ from typing import ClassVar as _ClassVar, Iterable as _Iterable, Mapping as _Map
DESCRIPTOR: _descriptor.FileDescriptor
class Modulation(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
__slots__ = []
__slots__ = ()
LORA: _ClassVar[Modulation]
FSK: _ClassVar[Modulation]
LR_FHSS: _ClassVar[Modulation]
class Region(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
__slots__ = []
__slots__ = ()
EU868: _ClassVar[Region]
US915: _ClassVar[Region]
CN779: _ClassVar[Region]
@ -31,7 +31,7 @@ class Region(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
ISM2400: _ClassVar[Region]
class MType(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
__slots__ = []
__slots__ = ()
JOIN_REQUEST: _ClassVar[MType]
JOIN_ACCEPT: _ClassVar[MType]
UNCONFIRMED_DATA_UP: _ClassVar[MType]
@ -42,7 +42,7 @@ class MType(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
PROPRIETARY: _ClassVar[MType]
class MacVersion(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
__slots__ = []
__slots__ = ()
LORAWAN_1_0_0: _ClassVar[MacVersion]
LORAWAN_1_0_1: _ClassVar[MacVersion]
LORAWAN_1_0_2: _ClassVar[MacVersion]
@ -51,7 +51,7 @@ class MacVersion(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
LORAWAN_1_1_0: _ClassVar[MacVersion]
class RegParamsRevision(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
__slots__ = []
__slots__ = ()
A: _ClassVar[RegParamsRevision]
B: _ClassVar[RegParamsRevision]
RP002_1_0_0: _ClassVar[RegParamsRevision]
@ -60,7 +60,7 @@ class RegParamsRevision(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
RP002_1_0_3: _ClassVar[RegParamsRevision]
class LocationSource(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
__slots__ = []
__slots__ = ()
UNKNOWN: _ClassVar[LocationSource]
GPS: _ClassVar[LocationSource]
CONFIG: _ClassVar[LocationSource]
@ -70,19 +70,19 @@ class LocationSource(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
GEO_RESOLVER_WIFI: _ClassVar[LocationSource]
class Aggregation(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
__slots__ = []
__slots__ = ()
HOUR: _ClassVar[Aggregation]
DAY: _ClassVar[Aggregation]
MONTH: _ClassVar[Aggregation]
class MetricKind(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
__slots__ = []
__slots__ = ()
COUNTER: _ClassVar[MetricKind]
ABSOLUTE: _ClassVar[MetricKind]
GAUGE: _ClassVar[MetricKind]
class DeviceClass(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
__slots__ = []
__slots__ = ()
CLASS_A: _ClassVar[DeviceClass]
CLASS_B: _ClassVar[DeviceClass]
CLASS_C: _ClassVar[DeviceClass]
@ -141,7 +141,7 @@ CLASS_B: DeviceClass
CLASS_C: DeviceClass
class Location(_message.Message):
__slots__ = ["latitude", "longitude", "altitude", "source", "accuracy"]
__slots__ = ("latitude", "longitude", "altitude", "source", "accuracy")
LATITUDE_FIELD_NUMBER: _ClassVar[int]
LONGITUDE_FIELD_NUMBER: _ClassVar[int]
ALTITUDE_FIELD_NUMBER: _ClassVar[int]
@ -155,7 +155,7 @@ class Location(_message.Message):
def __init__(self, latitude: _Optional[float] = ..., longitude: _Optional[float] = ..., altitude: _Optional[float] = ..., source: _Optional[_Union[LocationSource, str]] = ..., accuracy: _Optional[float] = ...) -> None: ...
class KeyEnvelope(_message.Message):
__slots__ = ["kek_label", "aes_key"]
__slots__ = ("kek_label", "aes_key")
KEK_LABEL_FIELD_NUMBER: _ClassVar[int]
AES_KEY_FIELD_NUMBER: _ClassVar[int]
kek_label: str
@ -163,7 +163,7 @@ class KeyEnvelope(_message.Message):
def __init__(self, kek_label: _Optional[str] = ..., aes_key: _Optional[bytes] = ...) -> None: ...
class Metric(_message.Message):
__slots__ = ["name", "timestamps", "datasets", "kind"]
__slots__ = ("name", "timestamps", "datasets", "kind")
NAME_FIELD_NUMBER: _ClassVar[int]
TIMESTAMPS_FIELD_NUMBER: _ClassVar[int]
DATASETS_FIELD_NUMBER: _ClassVar[int]
@ -175,7 +175,7 @@ class Metric(_message.Message):
def __init__(self, name: _Optional[str] = ..., timestamps: _Optional[_Iterable[_Union[_timestamp_pb2.Timestamp, _Mapping]]] = ..., datasets: _Optional[_Iterable[_Union[MetricDataset, _Mapping]]] = ..., kind: _Optional[_Union[MetricKind, str]] = ...) -> None: ...
class MetricDataset(_message.Message):
__slots__ = ["label", "data"]
__slots__ = ("label", "data")
LABEL_FIELD_NUMBER: _ClassVar[int]
DATA_FIELD_NUMBER: _ClassVar[int]
label: str

View File

@ -1,6 +1,7 @@
# -*- coding: utf-8 -*-
# Generated by the protocol buffer compiler. DO NOT EDIT!
# source: chirpstack-api/gw/gw.proto
# Protobuf Python Version: 4.25.0
"""Generated protocol buffer code."""
from google.protobuf import descriptor as _descriptor
from google.protobuf import descriptor_pool as _descriptor_pool
@ -23,23 +24,22 @@ _globals = globals()
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'chirpstack_api.gw.gw_pb2', _globals)
if _descriptor._USE_C_DESCRIPTORS == False:
DESCRIPTOR._options = None
DESCRIPTOR._serialized_options = b'\n\024io.chirpstack.api.gwB\014GatewayProtoP\001Z-github.com/chirpstack/chirpstack/api/go/v4/gw\252\002\022Chirpstack.Gateway'
_GATEWAYSTATS_METADATAENTRY._options = None
_GATEWAYSTATS_METADATAENTRY._serialized_options = b'8\001'
_GATEWAYSTATS_TXPACKETSPERFREQUENCYENTRY._options = None
_GATEWAYSTATS_TXPACKETSPERFREQUENCYENTRY._serialized_options = b'8\001'
_GATEWAYSTATS_RXPACKETSPERFREQUENCYENTRY._options = None
_GATEWAYSTATS_RXPACKETSPERFREQUENCYENTRY._serialized_options = b'8\001'
_GATEWAYSTATS_TXPACKETSPERSTATUSENTRY._options = None
_GATEWAYSTATS_TXPACKETSPERSTATUSENTRY._serialized_options = b'8\001'
_UPLINKRXINFOLEGACY_METADATAENTRY._options = None
_UPLINKRXINFOLEGACY_METADATAENTRY._serialized_options = b'8\001'
_UPLINKRXINFO_METADATAENTRY._options = None
_UPLINKRXINFO_METADATAENTRY._serialized_options = b'8\001'
_GATEWAYCOMMANDEXECREQUEST_ENVIRONMENTENTRY._options = None
_GATEWAYCOMMANDEXECREQUEST_ENVIRONMENTENTRY._serialized_options = b'8\001'
_globals['DESCRIPTOR']._options = None
_globals['DESCRIPTOR']._serialized_options = b'\n\024io.chirpstack.api.gwB\014GatewayProtoP\001Z-github.com/chirpstack/chirpstack/api/go/v4/gw\252\002\022Chirpstack.Gateway'
_globals['_GATEWAYSTATS_METADATAENTRY']._options = None
_globals['_GATEWAYSTATS_METADATAENTRY']._serialized_options = b'8\001'
_globals['_GATEWAYSTATS_TXPACKETSPERFREQUENCYENTRY']._options = None
_globals['_GATEWAYSTATS_TXPACKETSPERFREQUENCYENTRY']._serialized_options = b'8\001'
_globals['_GATEWAYSTATS_RXPACKETSPERFREQUENCYENTRY']._options = None
_globals['_GATEWAYSTATS_RXPACKETSPERFREQUENCYENTRY']._serialized_options = b'8\001'
_globals['_GATEWAYSTATS_TXPACKETSPERSTATUSENTRY']._options = None
_globals['_GATEWAYSTATS_TXPACKETSPERSTATUSENTRY']._serialized_options = b'8\001'
_globals['_UPLINKRXINFOLEGACY_METADATAENTRY']._options = None
_globals['_UPLINKRXINFOLEGACY_METADATAENTRY']._serialized_options = b'8\001'
_globals['_UPLINKRXINFO_METADATAENTRY']._options = None
_globals['_UPLINKRXINFO_METADATAENTRY']._serialized_options = b'8\001'
_globals['_GATEWAYCOMMANDEXECREQUEST_ENVIRONMENTENTRY']._options = None
_globals['_GATEWAYCOMMANDEXECREQUEST_ENVIRONMENTENTRY']._serialized_options = b'8\001'
_globals['_CODERATE']._serialized_start=6528
_globals['_CODERATE']._serialized_end=6709
_globals['_DOWNLINKTIMING']._serialized_start=6711

View File

@ -11,7 +11,7 @@ from typing import ClassVar as _ClassVar, Iterable as _Iterable, Mapping as _Map
DESCRIPTOR: _descriptor.FileDescriptor
class CodeRate(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
__slots__ = []
__slots__ = ()
CR_UNDEFINED: _ClassVar[CodeRate]
CR_4_5: _ClassVar[CodeRate]
CR_4_6: _ClassVar[CodeRate]
@ -27,25 +27,25 @@ class CodeRate(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
CR_LI_4_8: _ClassVar[CodeRate]
class DownlinkTiming(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
__slots__ = []
__slots__ = ()
IMMEDIATELY: _ClassVar[DownlinkTiming]
DELAY: _ClassVar[DownlinkTiming]
GPS_EPOCH: _ClassVar[DownlinkTiming]
class FineTimestampType(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
__slots__ = []
__slots__ = ()
NONE: _ClassVar[FineTimestampType]
ENCRYPTED: _ClassVar[FineTimestampType]
PLAIN: _ClassVar[FineTimestampType]
class CRCStatus(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
__slots__ = []
__slots__ = ()
NO_CRC: _ClassVar[CRCStatus]
BAD_CRC: _ClassVar[CRCStatus]
CRC_OK: _ClassVar[CRCStatus]
class TxAckStatus(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
__slots__ = []
__slots__ = ()
IGNORED: _ClassVar[TxAckStatus]
OK: _ClassVar[TxAckStatus]
TOO_LATE: _ClassVar[TxAckStatus]
@ -92,7 +92,7 @@ QUEUE_FULL: TxAckStatus
INTERNAL_ERROR: TxAckStatus
class Modulation(_message.Message):
__slots__ = ["lora", "fsk", "lr_fhss"]
__slots__ = ("lora", "fsk", "lr_fhss")
LORA_FIELD_NUMBER: _ClassVar[int]
FSK_FIELD_NUMBER: _ClassVar[int]
LR_FHSS_FIELD_NUMBER: _ClassVar[int]
@ -102,7 +102,7 @@ class Modulation(_message.Message):
def __init__(self, lora: _Optional[_Union[LoraModulationInfo, _Mapping]] = ..., fsk: _Optional[_Union[FskModulationInfo, _Mapping]] = ..., lr_fhss: _Optional[_Union[LrFhssModulationInfo, _Mapping]] = ...) -> None: ...
class UplinkTxInfoLegacy(_message.Message):
__slots__ = ["frequency", "modulation", "lora_modulation_info", "fsk_modulation_info", "lr_fhss_modulation_info"]
__slots__ = ("frequency", "modulation", "lora_modulation_info", "fsk_modulation_info", "lr_fhss_modulation_info")
FREQUENCY_FIELD_NUMBER: _ClassVar[int]
MODULATION_FIELD_NUMBER: _ClassVar[int]
LORA_MODULATION_INFO_FIELD_NUMBER: _ClassVar[int]
@ -116,7 +116,7 @@ class UplinkTxInfoLegacy(_message.Message):
def __init__(self, frequency: _Optional[int] = ..., modulation: _Optional[_Union[_common_pb2.Modulation, str]] = ..., lora_modulation_info: _Optional[_Union[LoraModulationInfo, _Mapping]] = ..., fsk_modulation_info: _Optional[_Union[FskModulationInfo, _Mapping]] = ..., lr_fhss_modulation_info: _Optional[_Union[LrFhssModulationInfo, _Mapping]] = ...) -> None: ...
class UplinkTxInfo(_message.Message):
__slots__ = ["frequency", "modulation"]
__slots__ = ("frequency", "modulation")
FREQUENCY_FIELD_NUMBER: _ClassVar[int]
MODULATION_FIELD_NUMBER: _ClassVar[int]
frequency: int
@ -124,7 +124,7 @@ class UplinkTxInfo(_message.Message):
def __init__(self, frequency: _Optional[int] = ..., modulation: _Optional[_Union[Modulation, _Mapping]] = ...) -> None: ...
class LoraModulationInfo(_message.Message):
__slots__ = ["bandwidth", "spreading_factor", "code_rate_legacy", "code_rate", "polarization_inversion", "preamble", "no_crc"]
__slots__ = ("bandwidth", "spreading_factor", "code_rate_legacy", "code_rate", "polarization_inversion", "preamble", "no_crc")
BANDWIDTH_FIELD_NUMBER: _ClassVar[int]
SPREADING_FACTOR_FIELD_NUMBER: _ClassVar[int]
CODE_RATE_LEGACY_FIELD_NUMBER: _ClassVar[int]
@ -142,7 +142,7 @@ class LoraModulationInfo(_message.Message):
def __init__(self, bandwidth: _Optional[int] = ..., spreading_factor: _Optional[int] = ..., code_rate_legacy: _Optional[str] = ..., code_rate: _Optional[_Union[CodeRate, str]] = ..., polarization_inversion: bool = ..., preamble: _Optional[int] = ..., no_crc: bool = ...) -> None: ...
class FskModulationInfo(_message.Message):
__slots__ = ["frequency_deviation", "datarate"]
__slots__ = ("frequency_deviation", "datarate")
FREQUENCY_DEVIATION_FIELD_NUMBER: _ClassVar[int]
DATARATE_FIELD_NUMBER: _ClassVar[int]
frequency_deviation: int
@ -150,7 +150,7 @@ class FskModulationInfo(_message.Message):
def __init__(self, frequency_deviation: _Optional[int] = ..., datarate: _Optional[int] = ...) -> None: ...
class LrFhssModulationInfo(_message.Message):
__slots__ = ["operating_channel_width", "code_rate_legacy", "code_rate", "grid_steps"]
__slots__ = ("operating_channel_width", "code_rate_legacy", "code_rate", "grid_steps")
OPERATING_CHANNEL_WIDTH_FIELD_NUMBER: _ClassVar[int]
CODE_RATE_LEGACY_FIELD_NUMBER: _ClassVar[int]
CODE_RATE_FIELD_NUMBER: _ClassVar[int]
@ -162,7 +162,7 @@ class LrFhssModulationInfo(_message.Message):
def __init__(self, operating_channel_width: _Optional[int] = ..., code_rate_legacy: _Optional[str] = ..., code_rate: _Optional[_Union[CodeRate, str]] = ..., grid_steps: _Optional[int] = ...) -> None: ...
class EncryptedFineTimestamp(_message.Message):
__slots__ = ["aes_key_index", "encrypted_ns", "fpga_id"]
__slots__ = ("aes_key_index", "encrypted_ns", "fpga_id")
AES_KEY_INDEX_FIELD_NUMBER: _ClassVar[int]
ENCRYPTED_NS_FIELD_NUMBER: _ClassVar[int]
FPGA_ID_FIELD_NUMBER: _ClassVar[int]
@ -172,36 +172,36 @@ class EncryptedFineTimestamp(_message.Message):
def __init__(self, aes_key_index: _Optional[int] = ..., encrypted_ns: _Optional[bytes] = ..., fpga_id: _Optional[bytes] = ...) -> None: ...
class PlainFineTimestamp(_message.Message):
__slots__ = ["time"]
__slots__ = ("time",)
TIME_FIELD_NUMBER: _ClassVar[int]
time: _timestamp_pb2.Timestamp
def __init__(self, time: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ...) -> None: ...
class GatewayStats(_message.Message):
__slots__ = ["gateway_id_legacy", "gateway_id", "time", "location", "config_version", "rx_packets_received", "rx_packets_received_ok", "tx_packets_received", "tx_packets_emitted", "metadata", "tx_packets_per_frequency", "rx_packets_per_frequency", "tx_packets_per_modulation", "rx_packets_per_modulation", "tx_packets_per_status"]
__slots__ = ("gateway_id_legacy", "gateway_id", "time", "location", "config_version", "rx_packets_received", "rx_packets_received_ok", "tx_packets_received", "tx_packets_emitted", "metadata", "tx_packets_per_frequency", "rx_packets_per_frequency", "tx_packets_per_modulation", "rx_packets_per_modulation", "tx_packets_per_status")
class MetadataEntry(_message.Message):
__slots__ = ["key", "value"]
__slots__ = ("key", "value")
KEY_FIELD_NUMBER: _ClassVar[int]
VALUE_FIELD_NUMBER: _ClassVar[int]
key: str
value: str
def __init__(self, key: _Optional[str] = ..., value: _Optional[str] = ...) -> None: ...
class TxPacketsPerFrequencyEntry(_message.Message):
__slots__ = ["key", "value"]
__slots__ = ("key", "value")
KEY_FIELD_NUMBER: _ClassVar[int]
VALUE_FIELD_NUMBER: _ClassVar[int]
key: int
value: int
def __init__(self, key: _Optional[int] = ..., value: _Optional[int] = ...) -> None: ...
class RxPacketsPerFrequencyEntry(_message.Message):
__slots__ = ["key", "value"]
__slots__ = ("key", "value")
KEY_FIELD_NUMBER: _ClassVar[int]
VALUE_FIELD_NUMBER: _ClassVar[int]
key: int
value: int
def __init__(self, key: _Optional[int] = ..., value: _Optional[int] = ...) -> None: ...
class TxPacketsPerStatusEntry(_message.Message):
__slots__ = ["key", "value"]
__slots__ = ("key", "value")
KEY_FIELD_NUMBER: _ClassVar[int]
VALUE_FIELD_NUMBER: _ClassVar[int]
key: str
@ -240,7 +240,7 @@ class GatewayStats(_message.Message):
def __init__(self, gateway_id_legacy: _Optional[bytes] = ..., gateway_id: _Optional[str] = ..., time: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., location: _Optional[_Union[_common_pb2.Location, _Mapping]] = ..., config_version: _Optional[str] = ..., rx_packets_received: _Optional[int] = ..., rx_packets_received_ok: _Optional[int] = ..., tx_packets_received: _Optional[int] = ..., tx_packets_emitted: _Optional[int] = ..., metadata: _Optional[_Mapping[str, str]] = ..., tx_packets_per_frequency: _Optional[_Mapping[int, int]] = ..., rx_packets_per_frequency: _Optional[_Mapping[int, int]] = ..., tx_packets_per_modulation: _Optional[_Iterable[_Union[PerModulationCount, _Mapping]]] = ..., rx_packets_per_modulation: _Optional[_Iterable[_Union[PerModulationCount, _Mapping]]] = ..., tx_packets_per_status: _Optional[_Mapping[str, int]] = ...) -> None: ...
class PerModulationCount(_message.Message):
__slots__ = ["modulation", "count"]
__slots__ = ("modulation", "count")
MODULATION_FIELD_NUMBER: _ClassVar[int]
COUNT_FIELD_NUMBER: _ClassVar[int]
modulation: Modulation
@ -248,9 +248,9 @@ class PerModulationCount(_message.Message):
def __init__(self, modulation: _Optional[_Union[Modulation, _Mapping]] = ..., count: _Optional[int] = ...) -> None: ...
class UplinkRxInfoLegacy(_message.Message):
__slots__ = ["gateway_id", "time", "time_since_gps_epoch", "rssi", "lora_snr", "channel", "rf_chain", "board", "antenna", "location", "fine_timestamp_type", "encrypted_fine_timestamp", "plain_fine_timestamp", "context", "uplink_id", "crc_status", "metadata"]
__slots__ = ("gateway_id", "time", "time_since_gps_epoch", "rssi", "lora_snr", "channel", "rf_chain", "board", "antenna", "location", "fine_timestamp_type", "encrypted_fine_timestamp", "plain_fine_timestamp", "context", "uplink_id", "crc_status", "metadata")
class MetadataEntry(_message.Message):
__slots__ = ["key", "value"]
__slots__ = ("key", "value")
KEY_FIELD_NUMBER: _ClassVar[int]
VALUE_FIELD_NUMBER: _ClassVar[int]
key: str
@ -293,9 +293,9 @@ class UplinkRxInfoLegacy(_message.Message):
def __init__(self, gateway_id: _Optional[bytes] = ..., time: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., time_since_gps_epoch: _Optional[_Union[_duration_pb2.Duration, _Mapping]] = ..., rssi: _Optional[int] = ..., lora_snr: _Optional[float] = ..., channel: _Optional[int] = ..., rf_chain: _Optional[int] = ..., board: _Optional[int] = ..., antenna: _Optional[int] = ..., location: _Optional[_Union[_common_pb2.Location, _Mapping]] = ..., fine_timestamp_type: _Optional[_Union[FineTimestampType, str]] = ..., encrypted_fine_timestamp: _Optional[_Union[EncryptedFineTimestamp, _Mapping]] = ..., plain_fine_timestamp: _Optional[_Union[PlainFineTimestamp, _Mapping]] = ..., context: _Optional[bytes] = ..., uplink_id: _Optional[bytes] = ..., crc_status: _Optional[_Union[CRCStatus, str]] = ..., metadata: _Optional[_Mapping[str, str]] = ...) -> None: ...
class UplinkRxInfo(_message.Message):
__slots__ = ["gateway_id", "uplink_id", "gw_time", "ns_time", "time_since_gps_epoch", "fine_time_since_gps_epoch", "rssi", "snr", "channel", "rf_chain", "board", "antenna", "location", "context", "metadata", "crc_status"]
__slots__ = ("gateway_id", "uplink_id", "gw_time", "ns_time", "time_since_gps_epoch", "fine_time_since_gps_epoch", "rssi", "snr", "channel", "rf_chain", "board", "antenna", "location", "context", "metadata", "crc_status")
class MetadataEntry(_message.Message):
__slots__ = ["key", "value"]
__slots__ = ("key", "value")
KEY_FIELD_NUMBER: _ClassVar[int]
VALUE_FIELD_NUMBER: _ClassVar[int]
key: str
@ -336,7 +336,7 @@ class UplinkRxInfo(_message.Message):
def __init__(self, gateway_id: _Optional[str] = ..., uplink_id: _Optional[int] = ..., gw_time: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., ns_time: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., time_since_gps_epoch: _Optional[_Union[_duration_pb2.Duration, _Mapping]] = ..., fine_time_since_gps_epoch: _Optional[_Union[_duration_pb2.Duration, _Mapping]] = ..., rssi: _Optional[int] = ..., snr: _Optional[float] = ..., channel: _Optional[int] = ..., rf_chain: _Optional[int] = ..., board: _Optional[int] = ..., antenna: _Optional[int] = ..., location: _Optional[_Union[_common_pb2.Location, _Mapping]] = ..., context: _Optional[bytes] = ..., metadata: _Optional[_Mapping[str, str]] = ..., crc_status: _Optional[_Union[CRCStatus, str]] = ...) -> None: ...
class DownlinkTxInfoLegacy(_message.Message):
__slots__ = ["gateway_id", "frequency", "power", "modulation", "lora_modulation_info", "fsk_modulation_info", "board", "antenna", "timing", "immediately_timing_info", "delay_timing_info", "gps_epoch_timing_info", "context"]
__slots__ = ("gateway_id", "frequency", "power", "modulation", "lora_modulation_info", "fsk_modulation_info", "board", "antenna", "timing", "immediately_timing_info", "delay_timing_info", "gps_epoch_timing_info", "context")
GATEWAY_ID_FIELD_NUMBER: _ClassVar[int]
FREQUENCY_FIELD_NUMBER: _ClassVar[int]
POWER_FIELD_NUMBER: _ClassVar[int]
@ -366,7 +366,7 @@ class DownlinkTxInfoLegacy(_message.Message):
def __init__(self, gateway_id: _Optional[bytes] = ..., frequency: _Optional[int] = ..., power: _Optional[int] = ..., modulation: _Optional[_Union[_common_pb2.Modulation, str]] = ..., lora_modulation_info: _Optional[_Union[LoraModulationInfo, _Mapping]] = ..., fsk_modulation_info: _Optional[_Union[FskModulationInfo, _Mapping]] = ..., board: _Optional[int] = ..., antenna: _Optional[int] = ..., timing: _Optional[_Union[DownlinkTiming, str]] = ..., immediately_timing_info: _Optional[_Union[ImmediatelyTimingInfo, _Mapping]] = ..., delay_timing_info: _Optional[_Union[DelayTimingInfo, _Mapping]] = ..., gps_epoch_timing_info: _Optional[_Union[GPSEpochTimingInfo, _Mapping]] = ..., context: _Optional[bytes] = ...) -> None: ...
class DownlinkTxInfo(_message.Message):
__slots__ = ["frequency", "power", "modulation", "board", "antenna", "timing", "context"]
__slots__ = ("frequency", "power", "modulation", "board", "antenna", "timing", "context")
FREQUENCY_FIELD_NUMBER: _ClassVar[int]
POWER_FIELD_NUMBER: _ClassVar[int]
MODULATION_FIELD_NUMBER: _ClassVar[int]
@ -384,7 +384,7 @@ class DownlinkTxInfo(_message.Message):
def __init__(self, frequency: _Optional[int] = ..., power: _Optional[int] = ..., modulation: _Optional[_Union[Modulation, _Mapping]] = ..., board: _Optional[int] = ..., antenna: _Optional[int] = ..., timing: _Optional[_Union[Timing, _Mapping]] = ..., context: _Optional[bytes] = ...) -> None: ...
class Timing(_message.Message):
__slots__ = ["immediately", "delay", "gps_epoch"]
__slots__ = ("immediately", "delay", "gps_epoch")
IMMEDIATELY_FIELD_NUMBER: _ClassVar[int]
DELAY_FIELD_NUMBER: _ClassVar[int]
GPS_EPOCH_FIELD_NUMBER: _ClassVar[int]
@ -394,23 +394,23 @@ class Timing(_message.Message):
def __init__(self, immediately: _Optional[_Union[ImmediatelyTimingInfo, _Mapping]] = ..., delay: _Optional[_Union[DelayTimingInfo, _Mapping]] = ..., gps_epoch: _Optional[_Union[GPSEpochTimingInfo, _Mapping]] = ...) -> None: ...
class ImmediatelyTimingInfo(_message.Message):
__slots__ = []
__slots__ = ()
def __init__(self) -> None: ...
class DelayTimingInfo(_message.Message):
__slots__ = ["delay"]
__slots__ = ("delay",)
DELAY_FIELD_NUMBER: _ClassVar[int]
delay: _duration_pb2.Duration
def __init__(self, delay: _Optional[_Union[_duration_pb2.Duration, _Mapping]] = ...) -> None: ...
class GPSEpochTimingInfo(_message.Message):
__slots__ = ["time_since_gps_epoch"]
__slots__ = ("time_since_gps_epoch",)
TIME_SINCE_GPS_EPOCH_FIELD_NUMBER: _ClassVar[int]
time_since_gps_epoch: _duration_pb2.Duration
def __init__(self, time_since_gps_epoch: _Optional[_Union[_duration_pb2.Duration, _Mapping]] = ...) -> None: ...
class UplinkFrame(_message.Message):
__slots__ = ["phy_payload", "tx_info_legacy", "rx_info_legacy", "tx_info", "rx_info"]
__slots__ = ("phy_payload", "tx_info_legacy", "rx_info_legacy", "tx_info", "rx_info")
PHY_PAYLOAD_FIELD_NUMBER: _ClassVar[int]
TX_INFO_LEGACY_FIELD_NUMBER: _ClassVar[int]
RX_INFO_LEGACY_FIELD_NUMBER: _ClassVar[int]
@ -424,7 +424,7 @@ class UplinkFrame(_message.Message):
def __init__(self, phy_payload: _Optional[bytes] = ..., tx_info_legacy: _Optional[_Union[UplinkTxInfoLegacy, _Mapping]] = ..., rx_info_legacy: _Optional[_Union[UplinkRxInfoLegacy, _Mapping]] = ..., tx_info: _Optional[_Union[UplinkTxInfo, _Mapping]] = ..., rx_info: _Optional[_Union[UplinkRxInfo, _Mapping]] = ...) -> None: ...
class UplinkFrameSet(_message.Message):
__slots__ = ["phy_payload", "tx_info", "rx_info"]
__slots__ = ("phy_payload", "tx_info", "rx_info")
PHY_PAYLOAD_FIELD_NUMBER: _ClassVar[int]
TX_INFO_FIELD_NUMBER: _ClassVar[int]
RX_INFO_FIELD_NUMBER: _ClassVar[int]
@ -434,7 +434,7 @@ class UplinkFrameSet(_message.Message):
def __init__(self, phy_payload: _Optional[bytes] = ..., tx_info: _Optional[_Union[UplinkTxInfo, _Mapping]] = ..., rx_info: _Optional[_Iterable[_Union[UplinkRxInfo, _Mapping]]] = ...) -> None: ...
class DownlinkFrame(_message.Message):
__slots__ = ["downlink_id", "downlink_id_legacy", "items", "gateway_id_legacy", "gateway_id"]
__slots__ = ("downlink_id", "downlink_id_legacy", "items", "gateway_id_legacy", "gateway_id")
DOWNLINK_ID_FIELD_NUMBER: _ClassVar[int]
DOWNLINK_ID_LEGACY_FIELD_NUMBER: _ClassVar[int]
ITEMS_FIELD_NUMBER: _ClassVar[int]
@ -448,7 +448,7 @@ class DownlinkFrame(_message.Message):
def __init__(self, downlink_id: _Optional[int] = ..., downlink_id_legacy: _Optional[bytes] = ..., items: _Optional[_Iterable[_Union[DownlinkFrameItem, _Mapping]]] = ..., gateway_id_legacy: _Optional[bytes] = ..., gateway_id: _Optional[str] = ...) -> None: ...
class DownlinkFrameItem(_message.Message):
__slots__ = ["phy_payload", "tx_info_legacy", "tx_info"]
__slots__ = ("phy_payload", "tx_info_legacy", "tx_info")
PHY_PAYLOAD_FIELD_NUMBER: _ClassVar[int]
TX_INFO_LEGACY_FIELD_NUMBER: _ClassVar[int]
TX_INFO_FIELD_NUMBER: _ClassVar[int]
@ -458,7 +458,7 @@ class DownlinkFrameItem(_message.Message):
def __init__(self, phy_payload: _Optional[bytes] = ..., tx_info_legacy: _Optional[_Union[DownlinkTxInfoLegacy, _Mapping]] = ..., tx_info: _Optional[_Union[DownlinkTxInfo, _Mapping]] = ...) -> None: ...
class DownlinkTxAck(_message.Message):
__slots__ = ["gateway_id_legacy", "gateway_id", "downlink_id", "downlink_id_legacy", "items"]
__slots__ = ("gateway_id_legacy", "gateway_id", "downlink_id", "downlink_id_legacy", "items")
GATEWAY_ID_LEGACY_FIELD_NUMBER: _ClassVar[int]
GATEWAY_ID_FIELD_NUMBER: _ClassVar[int]
DOWNLINK_ID_FIELD_NUMBER: _ClassVar[int]
@ -472,13 +472,13 @@ class DownlinkTxAck(_message.Message):
def __init__(self, gateway_id_legacy: _Optional[bytes] = ..., gateway_id: _Optional[str] = ..., downlink_id: _Optional[int] = ..., downlink_id_legacy: _Optional[bytes] = ..., items: _Optional[_Iterable[_Union[DownlinkTxAckItem, _Mapping]]] = ...) -> None: ...
class DownlinkTxAckItem(_message.Message):
__slots__ = ["status"]
__slots__ = ("status",)
STATUS_FIELD_NUMBER: _ClassVar[int]
status: TxAckStatus
def __init__(self, status: _Optional[_Union[TxAckStatus, str]] = ...) -> None: ...
class GatewayConfiguration(_message.Message):
__slots__ = ["gateway_id_legacy", "gateway_id", "version", "channels", "stats_interval"]
__slots__ = ("gateway_id_legacy", "gateway_id", "version", "channels", "stats_interval")
GATEWAY_ID_LEGACY_FIELD_NUMBER: _ClassVar[int]
GATEWAY_ID_FIELD_NUMBER: _ClassVar[int]
VERSION_FIELD_NUMBER: _ClassVar[int]
@ -492,7 +492,7 @@ class GatewayConfiguration(_message.Message):
def __init__(self, gateway_id_legacy: _Optional[bytes] = ..., gateway_id: _Optional[str] = ..., version: _Optional[str] = ..., channels: _Optional[_Iterable[_Union[ChannelConfiguration, _Mapping]]] = ..., stats_interval: _Optional[_Union[_duration_pb2.Duration, _Mapping]] = ...) -> None: ...
class ChannelConfiguration(_message.Message):
__slots__ = ["frequency", "modulation_legacy", "lora_modulation_config", "fsk_modulation_config", "board", "demodulator"]
__slots__ = ("frequency", "modulation_legacy", "lora_modulation_config", "fsk_modulation_config", "board", "demodulator")
FREQUENCY_FIELD_NUMBER: _ClassVar[int]
MODULATION_LEGACY_FIELD_NUMBER: _ClassVar[int]
LORA_MODULATION_CONFIG_FIELD_NUMBER: _ClassVar[int]
@ -508,7 +508,7 @@ class ChannelConfiguration(_message.Message):
def __init__(self, frequency: _Optional[int] = ..., modulation_legacy: _Optional[_Union[_common_pb2.Modulation, str]] = ..., lora_modulation_config: _Optional[_Union[LoraModulationConfig, _Mapping]] = ..., fsk_modulation_config: _Optional[_Union[FskModulationConfig, _Mapping]] = ..., board: _Optional[int] = ..., demodulator: _Optional[int] = ...) -> None: ...
class LoraModulationConfig(_message.Message):
__slots__ = ["bandwidth_legacy", "bandwidth", "spreading_factors"]
__slots__ = ("bandwidth_legacy", "bandwidth", "spreading_factors")
BANDWIDTH_LEGACY_FIELD_NUMBER: _ClassVar[int]
BANDWIDTH_FIELD_NUMBER: _ClassVar[int]
SPREADING_FACTORS_FIELD_NUMBER: _ClassVar[int]
@ -518,7 +518,7 @@ class LoraModulationConfig(_message.Message):
def __init__(self, bandwidth_legacy: _Optional[int] = ..., bandwidth: _Optional[int] = ..., spreading_factors: _Optional[_Iterable[int]] = ...) -> None: ...
class FskModulationConfig(_message.Message):
__slots__ = ["bandwidth_legacy", "bandwidth", "bitrate"]
__slots__ = ("bandwidth_legacy", "bandwidth", "bitrate")
BANDWIDTH_LEGACY_FIELD_NUMBER: _ClassVar[int]
BANDWIDTH_FIELD_NUMBER: _ClassVar[int]
BITRATE_FIELD_NUMBER: _ClassVar[int]
@ -528,9 +528,9 @@ class FskModulationConfig(_message.Message):
def __init__(self, bandwidth_legacy: _Optional[int] = ..., bandwidth: _Optional[int] = ..., bitrate: _Optional[int] = ...) -> None: ...
class GatewayCommandExecRequest(_message.Message):
__slots__ = ["gateway_id_legacy", "gateway_id", "command", "exec_id", "stdin", "environment"]
__slots__ = ("gateway_id_legacy", "gateway_id", "command", "exec_id", "stdin", "environment")
class EnvironmentEntry(_message.Message):
__slots__ = ["key", "value"]
__slots__ = ("key", "value")
KEY_FIELD_NUMBER: _ClassVar[int]
VALUE_FIELD_NUMBER: _ClassVar[int]
key: str
@ -551,7 +551,7 @@ class GatewayCommandExecRequest(_message.Message):
def __init__(self, gateway_id_legacy: _Optional[bytes] = ..., gateway_id: _Optional[str] = ..., command: _Optional[str] = ..., exec_id: _Optional[int] = ..., stdin: _Optional[bytes] = ..., environment: _Optional[_Mapping[str, str]] = ...) -> None: ...
class GatewayCommandExecResponse(_message.Message):
__slots__ = ["gateway_id_legacy", "gateway_id", "exec_id", "stdout", "stderr", "error"]
__slots__ = ("gateway_id_legacy", "gateway_id", "exec_id", "stdout", "stderr", "error")
GATEWAY_ID_LEGACY_FIELD_NUMBER: _ClassVar[int]
GATEWAY_ID_FIELD_NUMBER: _ClassVar[int]
EXEC_ID_FIELD_NUMBER: _ClassVar[int]
@ -567,7 +567,7 @@ class GatewayCommandExecResponse(_message.Message):
def __init__(self, gateway_id_legacy: _Optional[bytes] = ..., gateway_id: _Optional[str] = ..., exec_id: _Optional[int] = ..., stdout: _Optional[bytes] = ..., stderr: _Optional[bytes] = ..., error: _Optional[str] = ...) -> None: ...
class RawPacketForwarderEvent(_message.Message):
__slots__ = ["gateway_id_legacy", "gateway_id", "payload"]
__slots__ = ("gateway_id_legacy", "gateway_id", "payload")
GATEWAY_ID_LEGACY_FIELD_NUMBER: _ClassVar[int]
GATEWAY_ID_FIELD_NUMBER: _ClassVar[int]
PAYLOAD_FIELD_NUMBER: _ClassVar[int]
@ -577,7 +577,7 @@ class RawPacketForwarderEvent(_message.Message):
def __init__(self, gateway_id_legacy: _Optional[bytes] = ..., gateway_id: _Optional[str] = ..., payload: _Optional[bytes] = ...) -> None: ...
class RawPacketForwarderCommand(_message.Message):
__slots__ = ["gateway_id_legacy", "gateway_id", "payload"]
__slots__ = ("gateway_id_legacy", "gateway_id", "payload")
GATEWAY_ID_LEGACY_FIELD_NUMBER: _ClassVar[int]
GATEWAY_ID_FIELD_NUMBER: _ClassVar[int]
PAYLOAD_FIELD_NUMBER: _ClassVar[int]
@ -587,9 +587,9 @@ class RawPacketForwarderCommand(_message.Message):
def __init__(self, gateway_id_legacy: _Optional[bytes] = ..., gateway_id: _Optional[str] = ..., payload: _Optional[bytes] = ...) -> None: ...
class ConnState(_message.Message):
__slots__ = ["gateway_id_legacy", "gateway_id", "state"]
__slots__ = ("gateway_id_legacy", "gateway_id", "state")
class State(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
__slots__ = []
__slots__ = ()
OFFLINE: _ClassVar[ConnState.State]
ONLINE: _ClassVar[ConnState.State]
OFFLINE: ConnState.State

View File

@ -1,6 +1,7 @@
# -*- coding: utf-8 -*-
# Generated by the protocol buffer compiler. DO NOT EDIT!
# source: chirpstack-api/integration/integration.proto
# Protobuf Python Version: 4.25.0
"""Generated protocol buffer code."""
from google.protobuf import descriptor as _descriptor
from google.protobuf import descriptor_pool as _descriptor_pool
@ -23,13 +24,12 @@ _globals = globals()
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'chirpstack_api.integration.integration_pb2', _globals)
if _descriptor._USE_C_DESCRIPTORS == False:
DESCRIPTOR._options = None
DESCRIPTOR._serialized_options = b'\n\035io.chirpstack.api.integrationB\020IntegrationProtoP\001Z3github.com/brocaar/chirpstack/api/go/v4/integration\252\002\026Chirpstack.Integration'
_DEVICEINFO_TAGSENTRY._options = None
_DEVICEINFO_TAGSENTRY._serialized_options = b'8\001'
_LOGEVENT_CONTEXTENTRY._options = None
_LOGEVENT_CONTEXTENTRY._serialized_options = b'8\001'
_globals['DESCRIPTOR']._options = None
_globals['DESCRIPTOR']._serialized_options = b'\n\035io.chirpstack.api.integrationB\020IntegrationProtoP\001Z3github.com/brocaar/chirpstack/api/go/v4/integration\252\002\026Chirpstack.Integration'
_globals['_DEVICEINFO_TAGSENTRY']._options = None
_globals['_DEVICEINFO_TAGSENTRY']._serialized_options = b'8\001'
_globals['_LOGEVENT_CONTEXTENTRY']._options = None
_globals['_LOGEVENT_CONTEXTENTRY']._serialized_options = b'8\001'
_globals['_LOGLEVEL']._serialized_start=2937
_globals['_LOGLEVEL']._serialized_end=2981
_globals['_LOGCODE']._serialized_start=2984

View File

@ -11,13 +11,13 @@ from typing import ClassVar as _ClassVar, Iterable as _Iterable, Mapping as _Map
DESCRIPTOR: _descriptor.FileDescriptor
class LogLevel(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
__slots__ = []
__slots__ = ()
INFO: _ClassVar[LogLevel]
WARNING: _ClassVar[LogLevel]
ERROR: _ClassVar[LogLevel]
class LogCode(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
__slots__ = []
__slots__ = ()
UNKNOWN: _ClassVar[LogCode]
DOWNLINK_PAYLOAD_SIZE: _ClassVar[LogCode]
UPLINK_CODEC: _ClassVar[LogCode]
@ -45,9 +45,9 @@ RELAY_NEW_END_DEVICE: LogCode
F_CNT_DOWN: LogCode
class DeviceInfo(_message.Message):
__slots__ = ["tenant_id", "tenant_name", "application_id", "application_name", "device_profile_id", "device_profile_name", "device_name", "dev_eui", "device_class_enabled", "tags"]
__slots__ = ("tenant_id", "tenant_name", "application_id", "application_name", "device_profile_id", "device_profile_name", "device_name", "dev_eui", "device_class_enabled", "tags")
class TagsEntry(_message.Message):
__slots__ = ["key", "value"]
__slots__ = ("key", "value")
KEY_FIELD_NUMBER: _ClassVar[int]
VALUE_FIELD_NUMBER: _ClassVar[int]
key: str
@ -76,7 +76,7 @@ class DeviceInfo(_message.Message):
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 UplinkRelayRxInfo(_message.Message):
__slots__ = ["dev_eui", "frequency", "dr", "snr", "rssi", "wor_channel"]
__slots__ = ("dev_eui", "frequency", "dr", "snr", "rssi", "wor_channel")
DEV_EUI_FIELD_NUMBER: _ClassVar[int]
FREQUENCY_FIELD_NUMBER: _ClassVar[int]
DR_FIELD_NUMBER: _ClassVar[int]
@ -92,7 +92,7 @@ class UplinkRelayRxInfo(_message.Message):
def __init__(self, dev_eui: _Optional[str] = ..., frequency: _Optional[int] = ..., dr: _Optional[int] = ..., snr: _Optional[int] = ..., rssi: _Optional[int] = ..., wor_channel: _Optional[int] = ...) -> None: ...
class JoinServerContext(_message.Message):
__slots__ = ["session_key_id", "app_s_key"]
__slots__ = ("session_key_id", "app_s_key")
SESSION_KEY_ID_FIELD_NUMBER: _ClassVar[int]
APP_S_KEY_FIELD_NUMBER: _ClassVar[int]
session_key_id: str
@ -100,7 +100,7 @@ class JoinServerContext(_message.Message):
def __init__(self, session_key_id: _Optional[str] = ..., app_s_key: _Optional[_Union[_common_pb2.KeyEnvelope, _Mapping]] = ...) -> None: ...
class UplinkEvent(_message.Message):
__slots__ = ["deduplication_id", "time", "device_info", "dev_addr", "adr", "dr", "f_cnt", "f_port", "confirmed", "data", "object", "rx_info", "tx_info", "relay_rx_info", "join_server_context"]
__slots__ = ("deduplication_id", "time", "device_info", "dev_addr", "adr", "dr", "f_cnt", "f_port", "confirmed", "data", "object", "rx_info", "tx_info", "relay_rx_info", "join_server_context")
DEDUPLICATION_ID_FIELD_NUMBER: _ClassVar[int]
TIME_FIELD_NUMBER: _ClassVar[int]
DEVICE_INFO_FIELD_NUMBER: _ClassVar[int]
@ -134,7 +134,7 @@ class UplinkEvent(_message.Message):
def __init__(self, deduplication_id: _Optional[str] = ..., time: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., device_info: _Optional[_Union[DeviceInfo, _Mapping]] = ..., dev_addr: _Optional[str] = ..., adr: bool = ..., dr: _Optional[int] = ..., f_cnt: _Optional[int] = ..., f_port: _Optional[int] = ..., confirmed: bool = ..., data: _Optional[bytes] = ..., object: _Optional[_Union[_struct_pb2.Struct, _Mapping]] = ..., rx_info: _Optional[_Iterable[_Union[_gw_pb2.UplinkRxInfo, _Mapping]]] = ..., tx_info: _Optional[_Union[_gw_pb2.UplinkTxInfo, _Mapping]] = ..., relay_rx_info: _Optional[_Union[UplinkRelayRxInfo, _Mapping]] = ..., join_server_context: _Optional[_Union[JoinServerContext, _Mapping]] = ...) -> None: ...
class JoinEvent(_message.Message):
__slots__ = ["deduplication_id", "time", "device_info", "dev_addr", "relay_rx_info", "join_server_context"]
__slots__ = ("deduplication_id", "time", "device_info", "dev_addr", "relay_rx_info", "join_server_context")
DEDUPLICATION_ID_FIELD_NUMBER: _ClassVar[int]
TIME_FIELD_NUMBER: _ClassVar[int]
DEVICE_INFO_FIELD_NUMBER: _ClassVar[int]
@ -150,7 +150,7 @@ class JoinEvent(_message.Message):
def __init__(self, deduplication_id: _Optional[str] = ..., time: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., device_info: _Optional[_Union[DeviceInfo, _Mapping]] = ..., dev_addr: _Optional[str] = ..., relay_rx_info: _Optional[_Union[UplinkRelayRxInfo, _Mapping]] = ..., join_server_context: _Optional[_Union[JoinServerContext, _Mapping]] = ...) -> None: ...
class AckEvent(_message.Message):
__slots__ = ["deduplication_id", "time", "device_info", "queue_item_id", "acknowledged", "f_cnt_down"]
__slots__ = ("deduplication_id", "time", "device_info", "queue_item_id", "acknowledged", "f_cnt_down")
DEDUPLICATION_ID_FIELD_NUMBER: _ClassVar[int]
TIME_FIELD_NUMBER: _ClassVar[int]
DEVICE_INFO_FIELD_NUMBER: _ClassVar[int]
@ -166,7 +166,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 TxAckEvent(_message.Message):
__slots__ = ["downlink_id", "time", "device_info", "queue_item_id", "f_cnt_down", "gateway_id", "tx_info"]
__slots__ = ("downlink_id", "time", "device_info", "queue_item_id", "f_cnt_down", "gateway_id", "tx_info")
DOWNLINK_ID_FIELD_NUMBER: _ClassVar[int]
TIME_FIELD_NUMBER: _ClassVar[int]
DEVICE_INFO_FIELD_NUMBER: _ClassVar[int]
@ -184,9 +184,9 @@ class TxAckEvent(_message.Message):
def __init__(self, downlink_id: _Optional[int] = ..., time: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., device_info: _Optional[_Union[DeviceInfo, _Mapping]] = ..., queue_item_id: _Optional[str] = ..., f_cnt_down: _Optional[int] = ..., gateway_id: _Optional[str] = ..., tx_info: _Optional[_Union[_gw_pb2.DownlinkTxInfo, _Mapping]] = ...) -> None: ...
class LogEvent(_message.Message):
__slots__ = ["time", "device_info", "level", "code", "description", "context"]
__slots__ = ("time", "device_info", "level", "code", "description", "context")
class ContextEntry(_message.Message):
__slots__ = ["key", "value"]
__slots__ = ("key", "value")
KEY_FIELD_NUMBER: _ClassVar[int]
VALUE_FIELD_NUMBER: _ClassVar[int]
key: str
@ -207,7 +207,7 @@ class LogEvent(_message.Message):
def __init__(self, time: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., device_info: _Optional[_Union[DeviceInfo, _Mapping]] = ..., level: _Optional[_Union[LogLevel, str]] = ..., code: _Optional[_Union[LogCode, str]] = ..., description: _Optional[str] = ..., context: _Optional[_Mapping[str, str]] = ...) -> None: ...
class StatusEvent(_message.Message):
__slots__ = ["deduplication_id", "time", "device_info", "margin", "external_power_source", "battery_level_unavailable", "battery_level"]
__slots__ = ("deduplication_id", "time", "device_info", "margin", "external_power_source", "battery_level_unavailable", "battery_level")
DEDUPLICATION_ID_FIELD_NUMBER: _ClassVar[int]
TIME_FIELD_NUMBER: _ClassVar[int]
DEVICE_INFO_FIELD_NUMBER: _ClassVar[int]
@ -225,7 +225,7 @@ class StatusEvent(_message.Message):
def __init__(self, deduplication_id: _Optional[str] = ..., time: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., device_info: _Optional[_Union[DeviceInfo, _Mapping]] = ..., margin: _Optional[int] = ..., external_power_source: bool = ..., battery_level_unavailable: bool = ..., battery_level: _Optional[float] = ...) -> None: ...
class LocationEvent(_message.Message):
__slots__ = ["deduplication_id", "time", "device_info", "location"]
__slots__ = ("deduplication_id", "time", "device_info", "location")
DEDUPLICATION_ID_FIELD_NUMBER: _ClassVar[int]
TIME_FIELD_NUMBER: _ClassVar[int]
DEVICE_INFO_FIELD_NUMBER: _ClassVar[int]
@ -237,7 +237,7 @@ class LocationEvent(_message.Message):
def __init__(self, deduplication_id: _Optional[str] = ..., time: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., device_info: _Optional[_Union[DeviceInfo, _Mapping]] = ..., location: _Optional[_Union[_common_pb2.Location, _Mapping]] = ...) -> None: ...
class IntegrationEvent(_message.Message):
__slots__ = ["deduplication_id", "time", "device_info", "integration_name", "event_type", "object"]
__slots__ = ("deduplication_id", "time", "device_info", "integration_name", "event_type", "object")
DEDUPLICATION_ID_FIELD_NUMBER: _ClassVar[int]
TIME_FIELD_NUMBER: _ClassVar[int]
DEVICE_INFO_FIELD_NUMBER: _ClassVar[int]
@ -253,7 +253,7 @@ class IntegrationEvent(_message.Message):
def __init__(self, deduplication_id: _Optional[str] = ..., time: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., device_info: _Optional[_Union[DeviceInfo, _Mapping]] = ..., integration_name: _Optional[str] = ..., event_type: _Optional[str] = ..., object: _Optional[_Union[_struct_pb2.Struct, _Mapping]] = ...) -> None: ...
class DownlinkCommand(_message.Message):
__slots__ = ["id", "dev_eui", "confirmed", "f_port", "data", "object"]
__slots__ = ("id", "dev_eui", "confirmed", "f_port", "data", "object")
ID_FIELD_NUMBER: _ClassVar[int]
DEV_EUI_FIELD_NUMBER: _ClassVar[int]
CONFIRMED_FIELD_NUMBER: _ClassVar[int]

View File

@ -1,6 +1,7 @@
# -*- coding: utf-8 -*-
# Generated by the protocol buffer compiler. DO NOT EDIT!
# source: chirpstack-api/stream/api_request.proto
# Protobuf Python Version: 4.25.0
"""Generated protocol buffer code."""
from google.protobuf import descriptor as _descriptor
from google.protobuf import descriptor_pool as _descriptor_pool
@ -22,11 +23,10 @@ _globals = globals()
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'chirpstack_api.stream.api_request_pb2', _globals)
if _descriptor._USE_C_DESCRIPTORS == False:
DESCRIPTOR._options = None
DESCRIPTOR._serialized_options = b'\n\030io.chirpstack.api.streamB\017ApiRequestProtoP\001Z1github.com/chirpstack/chirpstack/api/go/v4/stream\252\002\021Chirpstack.Stream'
_APIREQUESTLOG_METADATAENTRY._options = None
_APIREQUESTLOG_METADATAENTRY._serialized_options = b'8\001'
_globals['DESCRIPTOR']._options = None
_globals['DESCRIPTOR']._serialized_options = b'\n\030io.chirpstack.api.streamB\017ApiRequestProtoP\001Z1github.com/chirpstack/chirpstack/api/go/v4/stream\252\002\021Chirpstack.Stream'
_globals['_APIREQUESTLOG_METADATAENTRY']._options = None
_globals['_APIREQUESTLOG_METADATAENTRY']._serialized_options = b'8\001'
_globals['_APIREQUESTLOG']._serialized_start=149
_globals['_APIREQUESTLOG']._serialized_end=301
_globals['_APIREQUESTLOG_METADATAENTRY']._serialized_start=254

View File

@ -9,9 +9,9 @@ from typing import ClassVar as _ClassVar, Mapping as _Mapping, Optional as _Opti
DESCRIPTOR: _descriptor.FileDescriptor
class ApiRequestLog(_message.Message):
__slots__ = ["service", "method", "metadata"]
__slots__ = ("service", "method", "metadata")
class MetadataEntry(_message.Message):
__slots__ = ["key", "value"]
__slots__ = ("key", "value")
KEY_FIELD_NUMBER: _ClassVar[int]
VALUE_FIELD_NUMBER: _ClassVar[int]
key: str

View File

@ -1,6 +1,7 @@
# -*- coding: utf-8 -*-
# Generated by the protocol buffer compiler. DO NOT EDIT!
# source: chirpstack-api/stream/backend_interfaces.proto
# Protobuf Python Version: 4.25.0
"""Generated protocol buffer code."""
from google.protobuf import descriptor as _descriptor
from google.protobuf import descriptor_pool as _descriptor_pool
@ -20,9 +21,8 @@ _globals = globals()
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'chirpstack_api.stream.backend_interfaces_pb2', _globals)
if _descriptor._USE_C_DESCRIPTORS == False:
DESCRIPTOR._options = None
DESCRIPTOR._serialized_options = b'\n\030io.chirpstack.api.streamB\026BackendInterfacesProtoP\001Z1github.com/chirpstack/chirpstack/api/go/v4/stream\252\002\021Chirpstack.Stream'
_globals['DESCRIPTOR']._options = None
_globals['DESCRIPTOR']._serialized_options = b'\n\030io.chirpstack.api.streamB\026BackendInterfacesProtoP\001Z1github.com/chirpstack/chirpstack/api/go/v4/stream\252\002\021Chirpstack.Stream'
_globals['_BACKENDINTERFACESREQUEST']._serialized_start=92
_globals['_BACKENDINTERFACESREQUEST']._serialized_end=335
# @@protoc_insertion_point(module_scope)

View File

@ -6,7 +6,7 @@ from typing import ClassVar as _ClassVar, Mapping as _Mapping, Optional as _Opti
DESCRIPTOR: _descriptor.FileDescriptor
class BackendInterfacesRequest(_message.Message):
__slots__ = ["sender_id", "receiver_id", "time", "transaction_id", "message_type", "result_code", "request_body", "request_error", "response_body"]
__slots__ = ("sender_id", "receiver_id", "time", "transaction_id", "message_type", "result_code", "request_body", "request_error", "response_body")
SENDER_ID_FIELD_NUMBER: _ClassVar[int]
RECEIVER_ID_FIELD_NUMBER: _ClassVar[int]
TIME_FIELD_NUMBER: _ClassVar[int]

View File

@ -1,6 +1,7 @@
# -*- coding: utf-8 -*-
# Generated by the protocol buffer compiler. DO NOT EDIT!
# source: chirpstack-api/stream/frame.proto
# Protobuf Python Version: 4.25.0
"""Generated protocol buffer code."""
from google.protobuf import descriptor as _descriptor
from google.protobuf import descriptor_pool as _descriptor_pool
@ -22,9 +23,8 @@ _globals = globals()
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'chirpstack_api.stream.frame_pb2', _globals)
if _descriptor._USE_C_DESCRIPTORS == False:
DESCRIPTOR._options = None
DESCRIPTOR._serialized_options = b'\n\030io.chirpstack.api.streamB\nFrameProtoP\001Z1github.com/chirpstack/chirpstack/api/go/v4/stream\252\002\021Chirpstack.Stream'
_globals['DESCRIPTOR']._options = None
_globals['DESCRIPTOR']._serialized_options = b'\n\030io.chirpstack.api.streamB\nFrameProtoP\001Z1github.com/chirpstack/chirpstack/api/go/v4/stream\252\002\021Chirpstack.Stream'
_globals['_UPLINKFRAMELOG']._serialized_start=143
_globals['_UPLINKFRAMELOG']._serialized_end=415
_globals['_DOWNLINKFRAMELOG']._serialized_start=418

View File

@ -9,7 +9,7 @@ from typing import ClassVar as _ClassVar, Iterable as _Iterable, Mapping as _Map
DESCRIPTOR: _descriptor.FileDescriptor
class UplinkFrameLog(_message.Message):
__slots__ = ["phy_payload", "tx_info", "rx_info", "m_type", "dev_addr", "dev_eui", "time", "plaintext_f_opts", "plaintext_frm_payload"]
__slots__ = ("phy_payload", "tx_info", "rx_info", "m_type", "dev_addr", "dev_eui", "time", "plaintext_f_opts", "plaintext_frm_payload")
PHY_PAYLOAD_FIELD_NUMBER: _ClassVar[int]
TX_INFO_FIELD_NUMBER: _ClassVar[int]
RX_INFO_FIELD_NUMBER: _ClassVar[int]
@ -31,7 +31,7 @@ class UplinkFrameLog(_message.Message):
def __init__(self, phy_payload: _Optional[bytes] = ..., tx_info: _Optional[_Union[_gw_pb2.UplinkTxInfo, _Mapping]] = ..., rx_info: _Optional[_Iterable[_Union[_gw_pb2.UplinkRxInfo, _Mapping]]] = ..., m_type: _Optional[_Union[_common_pb2.MType, str]] = ..., dev_addr: _Optional[str] = ..., dev_eui: _Optional[str] = ..., time: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., plaintext_f_opts: bool = ..., plaintext_frm_payload: bool = ...) -> None: ...
class DownlinkFrameLog(_message.Message):
__slots__ = ["time", "phy_payload", "tx_info", "downlink_id", "gateway_id", "m_type", "dev_addr", "dev_eui", "plaintext_f_opts", "plaintext_frm_payload"]
__slots__ = ("time", "phy_payload", "tx_info", "downlink_id", "gateway_id", "m_type", "dev_addr", "dev_eui", "plaintext_f_opts", "plaintext_frm_payload")
TIME_FIELD_NUMBER: _ClassVar[int]
PHY_PAYLOAD_FIELD_NUMBER: _ClassVar[int]
TX_INFO_FIELD_NUMBER: _ClassVar[int]

View File

@ -1,6 +1,7 @@
# -*- coding: utf-8 -*-
# Generated by the protocol buffer compiler. DO NOT EDIT!
# source: chirpstack-api/stream/meta.proto
# Protobuf Python Version: 4.25.0
"""Generated protocol buffer code."""
from google.protobuf import descriptor as _descriptor
from google.protobuf import descriptor_pool as _descriptor_pool
@ -21,9 +22,8 @@ _globals = globals()
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'chirpstack_api.stream.meta_pb2', _globals)
if _descriptor._USE_C_DESCRIPTORS == False:
DESCRIPTOR._options = None
DESCRIPTOR._serialized_options = b'\n\030io.chirpstack.api.streamB\tMetaProtoP\001Z1github.com/chirpstack/chirpstack/api/go/v4/stream\252\002\021Chirpstack.Stream'
_globals['DESCRIPTOR']._options = None
_globals['DESCRIPTOR']._serialized_options = b'\n\030io.chirpstack.api.streamB\tMetaProtoP\001Z1github.com/chirpstack/chirpstack/api/go/v4/stream\252\002\021Chirpstack.Stream'
_globals['_UPLINKMETA']._serialized_start=109
_globals['_UPLINKMETA']._serialized_end=349
_globals['_DOWNLINKMETA']._serialized_start=352

View File

@ -8,7 +8,7 @@ from typing import ClassVar as _ClassVar, Iterable as _Iterable, Mapping as _Map
DESCRIPTOR: _descriptor.FileDescriptor
class UplinkMeta(_message.Message):
__slots__ = ["dev_eui", "tx_info", "rx_info", "phy_payload_byte_count", "mac_command_byte_count", "application_payload_byte_count", "message_type"]
__slots__ = ("dev_eui", "tx_info", "rx_info", "phy_payload_byte_count", "mac_command_byte_count", "application_payload_byte_count", "message_type")
DEV_EUI_FIELD_NUMBER: _ClassVar[int]
TX_INFO_FIELD_NUMBER: _ClassVar[int]
RX_INFO_FIELD_NUMBER: _ClassVar[int]
@ -26,7 +26,7 @@ class UplinkMeta(_message.Message):
def __init__(self, dev_eui: _Optional[str] = ..., tx_info: _Optional[_Union[_gw_pb2.UplinkTxInfo, _Mapping]] = ..., rx_info: _Optional[_Iterable[_Union[_gw_pb2.UplinkRxInfo, _Mapping]]] = ..., phy_payload_byte_count: _Optional[int] = ..., mac_command_byte_count: _Optional[int] = ..., application_payload_byte_count: _Optional[int] = ..., message_type: _Optional[_Union[_common_pb2.MType, str]] = ...) -> None: ...
class DownlinkMeta(_message.Message):
__slots__ = ["dev_eui", "multicast_group_id", "tx_info", "phy_payload_byte_count", "mac_command_byte_count", "application_payload_byte_count", "message_type", "gateway_id"]
__slots__ = ("dev_eui", "multicast_group_id", "tx_info", "phy_payload_byte_count", "mac_command_byte_count", "application_payload_byte_count", "message_type", "gateway_id")
DEV_EUI_FIELD_NUMBER: _ClassVar[int]
MULTICAST_GROUP_ID_FIELD_NUMBER: _ClassVar[int]
TX_INFO_FIELD_NUMBER: _ClassVar[int]

View File

@ -18,7 +18,7 @@ CLASSIFIERS = [
setup(
name='chirpstack-api',
version = "4.6.0",
version = "4.7.0-test.1",
url='https://github.com/brocaar/chirpstack-api',
author='Orne Brocaar',
author_email='info@brocaar.com',

2
api/rust/Cargo.lock generated vendored
View File

@ -172,7 +172,7 @@ checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
[[package]]
name = "chirpstack_api"
version = "4.6.0"
version = "4.7.0-test.1"
dependencies = [
"hex",
"pbjson",

2
api/rust/Cargo.toml vendored
View File

@ -1,7 +1,7 @@
[package]
name = "chirpstack_api"
description = "ChirpStack Protobuf / gRPC API definitions."
version = "4.6.0"
version = "4.7.0-test.1"
authors = ["Orne Brocaar <info@brocaar.com>"]
license = "MIT"
homepage = "https://www.chirpstack.io"

View File

@ -1,6 +1,6 @@
[package]
name = "backend"
version = "4.6.0"
version = "4.7.0-test.1"
authors = ["Orne Brocaar <info@brocaar.com>"]
edition = "2018"
publish = false

View File

@ -9,7 +9,7 @@
repository = "https://github.com/chirpstack/chirpstack"
[dependencies]
chirpstack_api = { path = "../api/rust", version = "4.6.0" }
chirpstack_api = { path = "../api/rust", version = "4.7.0-test.1" }
redis = { version = "0.24", features = [
"cluster-async",
"tokio-rustls-comp",

View File

@ -3,7 +3,7 @@ name = "chirpstack"
description = "ChirpStack is an open-source LoRaWAN(TM) Network Server"
repository = "https://github.com/chirpstack/chirpstack"
homepage = "https://www.chirpstack.io/"
version = "4.6.0"
version = "4.7.0-test.1"
authors = ["Orne Brocaar <info@brocaar.com>"]
edition = "2021"
publish = false

View File

@ -3,7 +3,7 @@ name = "lrwn_filters"
description = "Library for filtering LoRaWAN payloads on DevAddr and JoinEUIs prefixes"
homepage = "https://www.chirpstack.io/"
license = "MIT"
version = "4.6.0"
version = "4.7.0-test.1"
authors = ["Orne Brocaar <info@brocaar.com>"]
edition = "2021"
repository = "https://github.com/chirpstack/chirpstack"

View File

@ -3,7 +3,7 @@ name = "lrwn"
description = "Library for encoding / decoding LoRaWAN frames."
homepage = "https://www.chirpstack.io"
license = "MIT"
version = "4.6.0"
version = "4.7.0-test.1"
authors = ["Orne Brocaar <info@brocaar.com>"]
edition = "2018"
repository = "https://github.com/chirpstack/chirpstack"

View File

@ -1,6 +1,6 @@
{
"name": "chirpstack-ui",
"version": "4.6.0",
"version": "4.7.0-test.1",
"private": true,
"dependencies": {
"@ant-design/colors": "^7.0.0",