diff --git a/Cargo.lock b/Cargo.lock index b34d9ae9..4a663b2c 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -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", diff --git a/api/grpc-web/package.json b/api/grpc-web/package.json index f5e5a6c8..d4dc9c25 100644 --- a/api/grpc-web/package.json +++ b/api/grpc-web/package.json @@ -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": { diff --git a/api/java/build.gradle.kts b/api/java/build.gradle.kts index ad17a3a7..6cc8ab9b 100644 --- a/api/java/build.gradle.kts +++ b/api/java/build.gradle.kts @@ -8,7 +8,7 @@ plugins { } group = "io.chirpstack" -version = "4.6.0" +version = "4.7.0-test.1" repositories { mavenCentral() diff --git a/api/js/package.json b/api/js/package.json index dab9d523..beda6f68 100644 --- a/api/js/package.json +++ b/api/js/package.json @@ -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": { diff --git a/api/kotlin/build.gradle.kts b/api/kotlin/build.gradle.kts index 0d46f34a..d98f5962 100644 --- a/api/kotlin/build.gradle.kts +++ b/api/kotlin/build.gradle.kts @@ -9,7 +9,7 @@ plugins { } group = "io.chirpstack" -version = "4.6.0" +version = "4.7.0-test.1" repositories { mavenCentral() diff --git a/api/python/src/chirpstack_api/api/application_pb2.py b/api/python/src/chirpstack_api/api/application_pb2.py index f15333cb..cda27adf 100644 --- a/api/python/src/chirpstack_api/api/application_pb2.py +++ b/api/python/src/chirpstack_api/api/application_pb2.py @@ -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*\022* 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] diff --git a/api/python/src/chirpstack_api/api/device_pb2.py b/api/python/src/chirpstack_api/api/device_pb2.py index 617b074d..ba5d72ee 100644 --- a/api/python/src/chirpstack_api/api/device_pb2.py +++ b/api/python/src/chirpstack_api/api/device_pb2.py @@ -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 diff --git a/api/python/src/chirpstack_api/api/device_pb2.pyi b/api/python/src/chirpstack_api/api/device_pb2.pyi index 181ba02c..29fda188 100644 --- a/api/python/src/chirpstack_api/api/device_pb2.pyi +++ b/api/python/src/chirpstack_api/api/device_pb2.pyi @@ -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: ... diff --git a/api/python/src/chirpstack_api/api/device_profile_pb2.py b/api/python/src/chirpstack_api/api/device_profile_pb2.py index 36dac16d..7101f0ea 100644 --- a/api/python/src/chirpstack_api/api/device_profile_pb2.py +++ b/api/python/src/chirpstack_api/api/device_profile_pb2.py @@ -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 diff --git a/api/python/src/chirpstack_api/api/device_profile_pb2.pyi b/api/python/src/chirpstack_api/api/device_profile_pb2.pyi index 74b4f07c..25f62cd1 100644 --- a/api/python/src/chirpstack_api/api/device_profile_pb2.pyi +++ b/api/python/src/chirpstack_api/api/device_profile_pb2.pyi @@ -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 diff --git a/api/python/src/chirpstack_api/api/device_profile_template_pb2.py b/api/python/src/chirpstack_api/api/device_profile_template_pb2.py index acd8cd6f..4e28cd6c 100644 --- a/api/python/src/chirpstack_api/api/device_profile_template_pb2.py +++ b/api/python/src/chirpstack_api/api/device_profile_template_pb2.py @@ -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 diff --git a/api/python/src/chirpstack_api/api/device_profile_template_pb2.pyi b/api/python/src/chirpstack_api/api/device_profile_template_pb2.pyi index 360321de..fdb6d05e 100644 --- a/api/python/src/chirpstack_api/api/device_profile_template_pb2.pyi +++ b/api/python/src/chirpstack_api/api/device_profile_template_pb2.pyi @@ -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 diff --git a/api/python/src/chirpstack_api/api/gateway_pb2.py b/api/python/src/chirpstack_api/api/gateway_pb2.py index 40fd81dc..6bab4ef5 100644 --- a/api/python/src/chirpstack_api/api/gateway_pb2.py +++ b/api/python/src/chirpstack_api/api/gateway_pb2.py @@ -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 diff --git a/api/python/src/chirpstack_api/api/gateway_pb2.pyi b/api/python/src/chirpstack_api/api/gateway_pb2.pyi index e3dfc137..f36b13db 100644 --- a/api/python/src/chirpstack_api/api/gateway_pb2.pyi +++ b/api/python/src/chirpstack_api/api/gateway_pb2.pyi @@ -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] diff --git a/api/python/src/chirpstack_api/api/internal_pb2.py b/api/python/src/chirpstack_api/api/internal_pb2.py index 3aa8e91a..077ca322 100644 --- a/api/python/src/chirpstack_api/api/internal_pb2.py +++ b/api/python/src/chirpstack_api/api/internal_pb2.py @@ -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 diff --git a/api/python/src/chirpstack_api/api/internal_pb2.pyi b/api/python/src/chirpstack_api/api/internal_pb2.pyi index 850373bd..7cebd6ca 100644 --- a/api/python/src/chirpstack_api/api/internal_pb2.pyi +++ b/api/python/src/chirpstack_api/api/internal_pb2.pyi @@ -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] diff --git a/api/python/src/chirpstack_api/api/multicast_group_pb2.py b/api/python/src/chirpstack_api/api/multicast_group_pb2.py index eddaf7dc..81a02f4e 100644 --- a/api/python/src/chirpstack_api/api/multicast_group_pb2.py +++ b/api/python/src/chirpstack_api/api/multicast_group_pb2.py @@ -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>** 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: ... diff --git a/api/python/src/chirpstack_api/api/relay_pb2.py b/api/python/src/chirpstack_api/api/relay_pb2.py index effc21a5..c92daffb 100644 --- a/api/python/src/chirpstack_api/api/relay_pb2.py +++ b/api/python/src/chirpstack_api/api/relay_pb2.py @@ -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 diff --git a/api/python/src/chirpstack_api/api/relay_pb2.pyi b/api/python/src/chirpstack_api/api/relay_pb2.pyi index aaee73f2..e3248b80 100644 --- a/api/python/src/chirpstack_api/api/relay_pb2.pyi +++ b/api/python/src/chirpstack_api/api/relay_pb2.pyi @@ -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 diff --git a/api/python/src/chirpstack_api/api/tenant_pb2.py b/api/python/src/chirpstack_api/api/tenant_pb2.py index 4ada9fb2..f354f506 100644 --- a/api/python/src/chirpstack_api/api/tenant_pb2.py +++ b/api/python/src/chirpstack_api/api/tenant_pb2.py @@ -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 diff --git a/api/python/src/chirpstack_api/api/tenant_pb2.pyi b/api/python/src/chirpstack_api/api/tenant_pb2.pyi index dd6a49b8..7b9adb06 100644 --- a/api/python/src/chirpstack_api/api/tenant_pb2.pyi +++ b/api/python/src/chirpstack_api/api/tenant_pb2.pyi @@ -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 diff --git a/api/python/src/chirpstack_api/api/user_pb2.py b/api/python/src/chirpstack_api/api/user_pb2.py index 8303b192..a9d1a5bf 100644 --- a/api/python/src/chirpstack_api/api/user_pb2.py +++ b/api/python/src/chirpstack_api/api/user_pb2.py @@ -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 diff --git a/api/python/src/chirpstack_api/api/user_pb2.pyi b/api/python/src/chirpstack_api/api/user_pb2.pyi index 9d9db228..1648828f 100644 --- a/api/python/src/chirpstack_api/api/user_pb2.pyi +++ b/api/python/src/chirpstack_api/api/user_pb2.pyi @@ -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 diff --git a/api/python/src/chirpstack_api/common/common_pb2.py b/api/python/src/chirpstack_api/common/common_pb2.py index 17012bbb..e7d29a79 100644 --- a/api/python/src/chirpstack_api/common/common_pb2.py +++ b/api/python/src/chirpstack_api/common/common_pb2.py @@ -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 diff --git a/api/python/src/chirpstack_api/common/common_pb2.pyi b/api/python/src/chirpstack_api/common/common_pb2.pyi index d3a6b2ae..9f01fa2e 100644 --- a/api/python/src/chirpstack_api/common/common_pb2.pyi +++ b/api/python/src/chirpstack_api/common/common_pb2.pyi @@ -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 diff --git a/api/python/src/chirpstack_api/gw/gw_pb2.py b/api/python/src/chirpstack_api/gw/gw_pb2.py index aa5a5618..9be173b7 100644 --- a/api/python/src/chirpstack_api/gw/gw_pb2.py +++ b/api/python/src/chirpstack_api/gw/gw_pb2.py @@ -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 diff --git a/api/python/src/chirpstack_api/gw/gw_pb2.pyi b/api/python/src/chirpstack_api/gw/gw_pb2.pyi index abc70e31..7a7084c9 100644 --- a/api/python/src/chirpstack_api/gw/gw_pb2.pyi +++ b/api/python/src/chirpstack_api/gw/gw_pb2.pyi @@ -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 diff --git a/api/python/src/chirpstack_api/integration/integration_pb2.py b/api/python/src/chirpstack_api/integration/integration_pb2.py index 95d11014..a244b16c 100644 --- a/api/python/src/chirpstack_api/integration/integration_pb2.py +++ b/api/python/src/chirpstack_api/integration/integration_pb2.py @@ -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 diff --git a/api/python/src/chirpstack_api/integration/integration_pb2.pyi b/api/python/src/chirpstack_api/integration/integration_pb2.pyi index 77954bb2..c782ab12 100644 --- a/api/python/src/chirpstack_api/integration/integration_pb2.pyi +++ b/api/python/src/chirpstack_api/integration/integration_pb2.pyi @@ -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] diff --git a/api/python/src/chirpstack_api/stream/api_request_pb2.py b/api/python/src/chirpstack_api/stream/api_request_pb2.py index 33a921f2..90dd3369 100644 --- a/api/python/src/chirpstack_api/stream/api_request_pb2.py +++ b/api/python/src/chirpstack_api/stream/api_request_pb2.py @@ -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 diff --git a/api/python/src/chirpstack_api/stream/api_request_pb2.pyi b/api/python/src/chirpstack_api/stream/api_request_pb2.pyi index 34e6db39..67fc3ff0 100644 --- a/api/python/src/chirpstack_api/stream/api_request_pb2.pyi +++ b/api/python/src/chirpstack_api/stream/api_request_pb2.pyi @@ -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 diff --git a/api/python/src/chirpstack_api/stream/backend_interfaces_pb2.py b/api/python/src/chirpstack_api/stream/backend_interfaces_pb2.py index 88fd95ed..783eb8ef 100644 --- a/api/python/src/chirpstack_api/stream/backend_interfaces_pb2.py +++ b/api/python/src/chirpstack_api/stream/backend_interfaces_pb2.py @@ -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) diff --git a/api/python/src/chirpstack_api/stream/backend_interfaces_pb2.pyi b/api/python/src/chirpstack_api/stream/backend_interfaces_pb2.pyi index 348e457c..b524ce6a 100644 --- a/api/python/src/chirpstack_api/stream/backend_interfaces_pb2.pyi +++ b/api/python/src/chirpstack_api/stream/backend_interfaces_pb2.pyi @@ -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] diff --git a/api/python/src/chirpstack_api/stream/frame_pb2.py b/api/python/src/chirpstack_api/stream/frame_pb2.py index 1994d391..73287e5b 100644 --- a/api/python/src/chirpstack_api/stream/frame_pb2.py +++ b/api/python/src/chirpstack_api/stream/frame_pb2.py @@ -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 diff --git a/api/python/src/chirpstack_api/stream/frame_pb2.pyi b/api/python/src/chirpstack_api/stream/frame_pb2.pyi index 02dbdefa..888fa91d 100644 --- a/api/python/src/chirpstack_api/stream/frame_pb2.pyi +++ b/api/python/src/chirpstack_api/stream/frame_pb2.pyi @@ -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] diff --git a/api/python/src/chirpstack_api/stream/meta_pb2.py b/api/python/src/chirpstack_api/stream/meta_pb2.py index 47602ba0..09beffca 100644 --- a/api/python/src/chirpstack_api/stream/meta_pb2.py +++ b/api/python/src/chirpstack_api/stream/meta_pb2.py @@ -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 diff --git a/api/python/src/chirpstack_api/stream/meta_pb2.pyi b/api/python/src/chirpstack_api/stream/meta_pb2.pyi index 4e83c46d..b042fef6 100644 --- a/api/python/src/chirpstack_api/stream/meta_pb2.pyi +++ b/api/python/src/chirpstack_api/stream/meta_pb2.pyi @@ -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] diff --git a/api/python/src/setup.py b/api/python/src/setup.py index 3a65c70f..e433d841 100644 --- a/api/python/src/setup.py +++ b/api/python/src/setup.py @@ -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', diff --git a/api/rust/Cargo.lock b/api/rust/Cargo.lock index 2b385976..a3f03fae 100644 --- a/api/rust/Cargo.lock +++ b/api/rust/Cargo.lock @@ -172,7 +172,7 @@ checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" [[package]] name = "chirpstack_api" -version = "4.6.0" +version = "4.7.0-test.1" dependencies = [ "hex", "pbjson", diff --git a/api/rust/Cargo.toml b/api/rust/Cargo.toml index 011a25ae..b73095a5 100644 --- a/api/rust/Cargo.toml +++ b/api/rust/Cargo.toml @@ -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 "] license = "MIT" homepage = "https://www.chirpstack.io" diff --git a/backend/Cargo.toml b/backend/Cargo.toml index 97a3b573..7e43508a 100644 --- a/backend/Cargo.toml +++ b/backend/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "backend" -version = "4.6.0" +version = "4.7.0-test.1" authors = ["Orne Brocaar "] edition = "2018" publish = false diff --git a/chirpstack-integration/Cargo.toml b/chirpstack-integration/Cargo.toml index eba72caf..7a96088f 100644 --- a/chirpstack-integration/Cargo.toml +++ b/chirpstack-integration/Cargo.toml @@ -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", diff --git a/chirpstack/Cargo.toml b/chirpstack/Cargo.toml index 4cff4621..aa87ea08 100644 --- a/chirpstack/Cargo.toml +++ b/chirpstack/Cargo.toml @@ -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 "] edition = "2021" publish = false diff --git a/lrwn-filters/Cargo.toml b/lrwn-filters/Cargo.toml index aa108621..9fe8cb8c 100644 --- a/lrwn-filters/Cargo.toml +++ b/lrwn-filters/Cargo.toml @@ -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 "] edition = "2021" repository = "https://github.com/chirpstack/chirpstack" diff --git a/lrwn/Cargo.toml b/lrwn/Cargo.toml index 588712fe..964aa05a 100644 --- a/lrwn/Cargo.toml +++ b/lrwn/Cargo.toml @@ -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 "] edition = "2018" repository = "https://github.com/chirpstack/chirpstack" diff --git a/ui/package.json b/ui/package.json index 9e1c5b5c..5d7d8590 100644 --- a/ui/package.json +++ b/ui/package.json @@ -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",