# Generated by the protocol buffer compiler.  DO NOT EDIT!
# source: github_com/TheThingsNetwork/api/gateway/gateway.proto

import sys
_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
from google.protobuf import descriptor as _descriptor
from google.protobuf import message as _message
from google.protobuf import reflection as _reflection
from google.protobuf import symbol_database as _symbol_database
from google.protobuf import descriptor_pb2
# @@protoc_insertion_point(imports)

_sym_db = _symbol_database.Default()


from ttn.github_com.gogo.protobuf.gogoproto import gogo_pb2 as github__com_dot_gogo_dot_protobuf_dot_gogoproto_dot_gogo__pb2


DESCRIPTOR = _descriptor.FileDescriptor(
  name='github_com/TheThingsNetwork/api/gateway/gateway.proto',
  package='gateway',
  syntax='proto3',
  serialized_pb=_b('\n5github_com/TheThingsNetwork/api/gateway/gateway.proto\x12\x07gateway\x1a-github_com/gogo/protobuf/gogoproto/gogo.proto\"\xf9\x01\n\x10LocationMetadata\x12\x0c\n\x04time\x18\x01 \x01(\x03\x12\x10\n\x08latitude\x18\x02 \x01(\x02\x12\x11\n\tlongitude\x18\x03 \x01(\x02\x12\x10\n\x08\x61ltitude\x18\x04 \x01(\x05\x12\x10\n\x08\x61\x63\x63uracy\x18\x05 \x01(\x05\x12\x38\n\x06source\x18\x06 \x01(\x0e\x32(.gateway.LocationMetadata.LocationSource\"T\n\x0eLocationSource\x12\x0b\n\x07UNKNOWN\x10\x00\x12\x07\n\x03GPS\x10\x01\x12\n\n\x06\x43ONFIG\x10\x02\x12\x0c\n\x08REGISTRY\x10\x03\x12\x12\n\x0eIP_GEOLOCATION\x10\x04\"\xc5\x04\n\nRxMetadata\x12!\n\ngateway_id\x18\x01 \x01(\tB\r\xe2\xde\x1f\tGatewayID\x12\x17\n\x0fgateway_trusted\x18\x02 \x01(\x08\x12\x11\n\ttimestamp\x18\x0b \x01(\r\x12\x0c\n\x04time\x18\x0c \x01(\x03\x12\x16\n\x0e\x65ncrypted_time\x18\r \x01(\x0c\x12\x10\n\x08rf_chain\x18\x15 \x01(\r\x12\x0f\n\x07\x63hannel\x18\x16 \x01(\r\x12-\n\x08\x61ntennas\x18\x1e \x03(\x0b\x32\x1b.gateway.RxMetadata.Antenna\x12\x11\n\tfrequency\x18\x1f \x01(\x04\x12\x16\n\x04rssi\x18  \x01(\x02\x42\x08\xe2\xde\x1f\x04RSSI\x12\x14\n\x03snr\x18! \x01(\x02\x42\x07\xe2\xde\x1f\x03SNR\x12+\n\x08location\x18) \x01(\x0b\x32\x19.gateway.LocationMetadata\x1a\x81\x02\n\x07\x41ntenna\x12\x0f\n\x07\x61ntenna\x18\x01 \x01(\r\x12\x0f\n\x07\x63hannel\x18\x02 \x01(\r\x12\x16\n\x04rssi\x18\x03 \x01(\x02\x42\x08\xe2\xde\x1f\x04RSSI\x12%\n\x0c\x63hannel_rssi\x18\x05 \x01(\x02\x42\x0f\xe2\xde\x1f\x0b\x43hannelRSSI\x12:\n\x17rssi_standard_deviation\x18\x06 \x01(\x02\x42\x19\xe2\xde\x1f\x15RSSIStandardDeviation\x12\x18\n\x10\x66requency_offset\x18\x07 \x01(\x03\x12\x14\n\x03snr\x18\x04 \x01(\x02\x42\x07\xe2\xde\x1f\x03SNR\x12\x16\n\x0e\x65ncrypted_time\x18\n \x01(\x0c\x12\x11\n\tfine_time\x18\x0b \x01(\x03\"\x95\x01\n\x0fTxConfiguration\x12\x11\n\ttimestamp\x18\x0b \x01(\r\x12\x10\n\x08rf_chain\x18\x15 \x01(\r\x12\x11\n\tfrequency\x18\x16 \x01(\x04\x12\r\n\x05power\x18\x17 \x01(\x05\x12\x1e\n\x16polarization_inversion\x18\x1f \x01(\x08\x12\x1b\n\x13\x66requency_deviation\x18  \x01(\r\"\xc3\x05\n\x06Status\x12\x11\n\ttimestamp\x18\x01 \x01(\r\x12\x0c\n\x04time\x18\x02 \x01(\x03\x12\x17\n\x0fgateway_trusted\x18\x03 \x01(\x08\x12\x11\n\tboot_time\x18\x04 \x01(\x03\x12\x12\n\x02ip\x18\x0b \x03(\tB\x06\xe2\xde\x1f\x02IP\x12\x10\n\x08platform\x18\x0c \x01(\t\x12\x15\n\rcontact_email\x18\r \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x0e \x01(\t\x12\x16\n\x0e\x66requency_plan\x18\x0f \x01(\t\x12\x0e\n\x06\x62ridge\x18\x10 \x01(\t\x12\x0e\n\x06router\x18\x11 \x01(\t\x12\x16\n\x04\x66pga\x18\x12 \x01(\rB\x08\xe2\xde\x1f\x04\x46PGA\x12\x14\n\x03\x64sp\x18\x13 \x01(\rB\x07\xe2\xde\x1f\x03\x44SP\x12\x14\n\x03hal\x18\x14 \x01(\tB\x07\xe2\xde\x1f\x03HAL\x12+\n\x08location\x18\x15 \x01(\x0b\x32\x19.gateway.LocationMetadata\x12\x14\n\x03rtt\x18\x1f \x01(\rB\x07\xe2\xde\x1f\x03RTT\x12\r\n\x05rx_in\x18) \x01(\r\x12\r\n\x05rx_ok\x18* \x01(\r\x12\r\n\x05tx_in\x18+ \x01(\r\x12\r\n\x05tx_ok\x18, \x01(\r\x12\r\n\x05lm_ok\x18- \x01(\r\x12\r\n\x05lm_st\x18. \x01(\r\x12\r\n\x05lm_nw\x18/ \x01(\r\x12\x17\n\x05l_pps\x18\x30 \x01(\rB\x08\xe2\xde\x1f\x04LPPS\x12-\n\x02os\x18\x33 \x01(\x0b\x32\x19.gateway.Status.OSMetricsB\x06\xe2\xde\x1f\x02OS\x12\x10\n\x08messages\x18\x34 \x03(\t\x1a\x97\x01\n\tOSMetrics\x12\x0e\n\x06load_1\x18\x01 \x01(\x02\x12\x0e\n\x06load_5\x18\x02 \x01(\x02\x12\x0f\n\x07load_15\x18\x03 \x01(\x02\x12)\n\x0e\x63pu_percentage\x18\x0b \x01(\x02\x42\x11\xe2\xde\x1f\rCPUPercentage\x12\x19\n\x11memory_percentage\x18\x15 \x01(\x02\x12\x13\n\x0btemperature\x18\x1f \x01(\x02\x42z\n org.thethingsnetwork.api.gatewayB\x0cGatewayProtoP\x01Z\'github_com/TheThingsNetwork/api/gateway\xaa\x02\x1cTheThingsNetwork.API.Gatewayb\x06proto3')
  ,
  dependencies=[github__com_dot_gogo_dot_protobuf_dot_gogoproto_dot_gogo__pb2.DESCRIPTOR,])



_LOCATIONMETADATA_LOCATIONSOURCE = _descriptor.EnumDescriptor(
  name='LocationSource',
  full_name='gateway.LocationMetadata.LocationSource',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='UNKNOWN', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='GPS', index=1, number=1,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='CONFIG', index=2, number=2,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='REGISTRY', index=3, number=3,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='IP_GEOLOCATION', index=4, number=4,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=279,
  serialized_end=363,
)
_sym_db.RegisterEnumDescriptor(_LOCATIONMETADATA_LOCATIONSOURCE)


_LOCATIONMETADATA = _descriptor.Descriptor(
  name='LocationMetadata',
  full_name='gateway.LocationMetadata',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='time', full_name='gateway.LocationMetadata.time', index=0,
      number=1, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='latitude', full_name='gateway.LocationMetadata.latitude', index=1,
      number=2, type=2, cpp_type=6, label=1,
      has_default_value=False, default_value=float(0),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='longitude', full_name='gateway.LocationMetadata.longitude', index=2,
      number=3, type=2, cpp_type=6, label=1,
      has_default_value=False, default_value=float(0),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='altitude', full_name='gateway.LocationMetadata.altitude', index=3,
      number=4, type=5, cpp_type=1, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='accuracy', full_name='gateway.LocationMetadata.accuracy', index=4,
      number=5, type=5, cpp_type=1, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='source', full_name='gateway.LocationMetadata.source', index=5,
      number=6, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
    _LOCATIONMETADATA_LOCATIONSOURCE,
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=114,
  serialized_end=363,
)


_RXMETADATA_ANTENNA = _descriptor.Descriptor(
  name='Antenna',
  full_name='gateway.RxMetadata.Antenna',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='antenna', full_name='gateway.RxMetadata.Antenna.antenna', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='channel', full_name='gateway.RxMetadata.Antenna.channel', index=1,
      number=2, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='rssi', full_name='gateway.RxMetadata.Antenna.rssi', index=2,
      number=3, type=2, cpp_type=6, label=1,
      has_default_value=False, default_value=float(0),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\336\037\004RSSI'))),
    _descriptor.FieldDescriptor(
      name='channel_rssi', full_name='gateway.RxMetadata.Antenna.channel_rssi', index=3,
      number=5, type=2, cpp_type=6, label=1,
      has_default_value=False, default_value=float(0),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\336\037\013ChannelRSSI'))),
    _descriptor.FieldDescriptor(
      name='rssi_standard_deviation', full_name='gateway.RxMetadata.Antenna.rssi_standard_deviation', index=4,
      number=6, type=2, cpp_type=6, label=1,
      has_default_value=False, default_value=float(0),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\336\037\025RSSIStandardDeviation'))),
    _descriptor.FieldDescriptor(
      name='frequency_offset', full_name='gateway.RxMetadata.Antenna.frequency_offset', index=5,
      number=7, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='snr', full_name='gateway.RxMetadata.Antenna.snr', index=6,
      number=4, type=2, cpp_type=6, label=1,
      has_default_value=False, default_value=float(0),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\336\037\003SNR'))),
    _descriptor.FieldDescriptor(
      name='encrypted_time', full_name='gateway.RxMetadata.Antenna.encrypted_time', index=7,
      number=10, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='fine_time', full_name='gateway.RxMetadata.Antenna.fine_time', index=8,
      number=11, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=690,
  serialized_end=947,
)

_RXMETADATA = _descriptor.Descriptor(
  name='RxMetadata',
  full_name='gateway.RxMetadata',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='gateway_id', full_name='gateway.RxMetadata.gateway_id', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\336\037\tGatewayID'))),
    _descriptor.FieldDescriptor(
      name='gateway_trusted', full_name='gateway.RxMetadata.gateway_trusted', index=1,
      number=2, type=8, cpp_type=7, label=1,
      has_default_value=False, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='timestamp', full_name='gateway.RxMetadata.timestamp', index=2,
      number=11, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='time', full_name='gateway.RxMetadata.time', index=3,
      number=12, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='encrypted_time', full_name='gateway.RxMetadata.encrypted_time', index=4,
      number=13, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='rf_chain', full_name='gateway.RxMetadata.rf_chain', index=5,
      number=21, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='channel', full_name='gateway.RxMetadata.channel', index=6,
      number=22, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='antennas', full_name='gateway.RxMetadata.antennas', index=7,
      number=30, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='frequency', full_name='gateway.RxMetadata.frequency', index=8,
      number=31, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='rssi', full_name='gateway.RxMetadata.rssi', index=9,
      number=32, type=2, cpp_type=6, label=1,
      has_default_value=False, default_value=float(0),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\336\037\004RSSI'))),
    _descriptor.FieldDescriptor(
      name='snr', full_name='gateway.RxMetadata.snr', index=10,
      number=33, type=2, cpp_type=6, label=1,
      has_default_value=False, default_value=float(0),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\336\037\003SNR'))),
    _descriptor.FieldDescriptor(
      name='location', full_name='gateway.RxMetadata.location', index=11,
      number=41, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[_RXMETADATA_ANTENNA, ],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=366,
  serialized_end=947,
)


_TXCONFIGURATION = _descriptor.Descriptor(
  name='TxConfiguration',
  full_name='gateway.TxConfiguration',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='timestamp', full_name='gateway.TxConfiguration.timestamp', index=0,
      number=11, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='rf_chain', full_name='gateway.TxConfiguration.rf_chain', index=1,
      number=21, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='frequency', full_name='gateway.TxConfiguration.frequency', index=2,
      number=22, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='power', full_name='gateway.TxConfiguration.power', index=3,
      number=23, type=5, cpp_type=1, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='polarization_inversion', full_name='gateway.TxConfiguration.polarization_inversion', index=4,
      number=31, type=8, cpp_type=7, label=1,
      has_default_value=False, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='frequency_deviation', full_name='gateway.TxConfiguration.frequency_deviation', index=5,
      number=32, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=950,
  serialized_end=1099,
)


_STATUS_OSMETRICS = _descriptor.Descriptor(
  name='OSMetrics',
  full_name='gateway.Status.OSMetrics',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='load_1', full_name='gateway.Status.OSMetrics.load_1', index=0,
      number=1, type=2, cpp_type=6, label=1,
      has_default_value=False, default_value=float(0),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='load_5', full_name='gateway.Status.OSMetrics.load_5', index=1,
      number=2, type=2, cpp_type=6, label=1,
      has_default_value=False, default_value=float(0),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='load_15', full_name='gateway.Status.OSMetrics.load_15', index=2,
      number=3, type=2, cpp_type=6, label=1,
      has_default_value=False, default_value=float(0),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='cpu_percentage', full_name='gateway.Status.OSMetrics.cpu_percentage', index=3,
      number=11, type=2, cpp_type=6, label=1,
      has_default_value=False, default_value=float(0),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\336\037\rCPUPercentage'))),
    _descriptor.FieldDescriptor(
      name='memory_percentage', full_name='gateway.Status.OSMetrics.memory_percentage', index=4,
      number=21, type=2, cpp_type=6, label=1,
      has_default_value=False, default_value=float(0),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='temperature', full_name='gateway.Status.OSMetrics.temperature', index=5,
      number=31, type=2, cpp_type=6, label=1,
      has_default_value=False, default_value=float(0),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1658,
  serialized_end=1809,
)

_STATUS = _descriptor.Descriptor(
  name='Status',
  full_name='gateway.Status',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='timestamp', full_name='gateway.Status.timestamp', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='time', full_name='gateway.Status.time', index=1,
      number=2, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='gateway_trusted', full_name='gateway.Status.gateway_trusted', index=2,
      number=3, type=8, cpp_type=7, label=1,
      has_default_value=False, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='boot_time', full_name='gateway.Status.boot_time', index=3,
      number=4, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='ip', full_name='gateway.Status.ip', index=4,
      number=11, type=9, cpp_type=9, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\336\037\002IP'))),
    _descriptor.FieldDescriptor(
      name='platform', full_name='gateway.Status.platform', index=5,
      number=12, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='contact_email', full_name='gateway.Status.contact_email', index=6,
      number=13, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='description', full_name='gateway.Status.description', index=7,
      number=14, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='frequency_plan', full_name='gateway.Status.frequency_plan', index=8,
      number=15, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='bridge', full_name='gateway.Status.bridge', index=9,
      number=16, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='router', full_name='gateway.Status.router', index=10,
      number=17, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='fpga', full_name='gateway.Status.fpga', index=11,
      number=18, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\336\037\004FPGA'))),
    _descriptor.FieldDescriptor(
      name='dsp', full_name='gateway.Status.dsp', index=12,
      number=19, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\336\037\003DSP'))),
    _descriptor.FieldDescriptor(
      name='hal', full_name='gateway.Status.hal', index=13,
      number=20, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\336\037\003HAL'))),
    _descriptor.FieldDescriptor(
      name='location', full_name='gateway.Status.location', index=14,
      number=21, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='rtt', full_name='gateway.Status.rtt', index=15,
      number=31, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\336\037\003RTT'))),
    _descriptor.FieldDescriptor(
      name='rx_in', full_name='gateway.Status.rx_in', index=16,
      number=41, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='rx_ok', full_name='gateway.Status.rx_ok', index=17,
      number=42, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='tx_in', full_name='gateway.Status.tx_in', index=18,
      number=43, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='tx_ok', full_name='gateway.Status.tx_ok', index=19,
      number=44, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='lm_ok', full_name='gateway.Status.lm_ok', index=20,
      number=45, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='lm_st', full_name='gateway.Status.lm_st', index=21,
      number=46, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='lm_nw', full_name='gateway.Status.lm_nw', index=22,
      number=47, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='l_pps', full_name='gateway.Status.l_pps', index=23,
      number=48, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\336\037\004LPPS'))),
    _descriptor.FieldDescriptor(
      name='os', full_name='gateway.Status.os', index=24,
      number=51, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\336\037\002OS'))),
    _descriptor.FieldDescriptor(
      name='messages', full_name='gateway.Status.messages', index=25,
      number=52, type=9, cpp_type=9, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[_STATUS_OSMETRICS, ],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1102,
  serialized_end=1809,
)

_LOCATIONMETADATA.fields_by_name['source'].enum_type = _LOCATIONMETADATA_LOCATIONSOURCE
_LOCATIONMETADATA_LOCATIONSOURCE.containing_type = _LOCATIONMETADATA
_RXMETADATA_ANTENNA.containing_type = _RXMETADATA
_RXMETADATA.fields_by_name['antennas'].message_type = _RXMETADATA_ANTENNA
_RXMETADATA.fields_by_name['location'].message_type = _LOCATIONMETADATA
_STATUS_OSMETRICS.containing_type = _STATUS
_STATUS.fields_by_name['location'].message_type = _LOCATIONMETADATA
_STATUS.fields_by_name['os'].message_type = _STATUS_OSMETRICS
DESCRIPTOR.message_types_by_name['LocationMetadata'] = _LOCATIONMETADATA
DESCRIPTOR.message_types_by_name['RxMetadata'] = _RXMETADATA
DESCRIPTOR.message_types_by_name['TxConfiguration'] = _TXCONFIGURATION
DESCRIPTOR.message_types_by_name['Status'] = _STATUS
_sym_db.RegisterFileDescriptor(DESCRIPTOR)

LocationMetadata = _reflection.GeneratedProtocolMessageType('LocationMetadata', (_message.Message,), dict(
  DESCRIPTOR = _LOCATIONMETADATA,
  __module__ = 'github_com.TheThingsNetwork.api.gateway.gateway_pb2'
  # @@protoc_insertion_point(class_scope:gateway.LocationMetadata)
  ))
_sym_db.RegisterMessage(LocationMetadata)

RxMetadata = _reflection.GeneratedProtocolMessageType('RxMetadata', (_message.Message,), dict(

  Antenna = _reflection.GeneratedProtocolMessageType('Antenna', (_message.Message,), dict(
    DESCRIPTOR = _RXMETADATA_ANTENNA,
    __module__ = 'github_com.TheThingsNetwork.api.gateway.gateway_pb2'
    # @@protoc_insertion_point(class_scope:gateway.RxMetadata.Antenna)
    ))
  ,
  DESCRIPTOR = _RXMETADATA,
  __module__ = 'github_com.TheThingsNetwork.api.gateway.gateway_pb2'
  # @@protoc_insertion_point(class_scope:gateway.RxMetadata)
  ))
_sym_db.RegisterMessage(RxMetadata)
_sym_db.RegisterMessage(RxMetadata.Antenna)

TxConfiguration = _reflection.GeneratedProtocolMessageType('TxConfiguration', (_message.Message,), dict(
  DESCRIPTOR = _TXCONFIGURATION,
  __module__ = 'github_com.TheThingsNetwork.api.gateway.gateway_pb2'
  # @@protoc_insertion_point(class_scope:gateway.TxConfiguration)
  ))
_sym_db.RegisterMessage(TxConfiguration)

Status = _reflection.GeneratedProtocolMessageType('Status', (_message.Message,), dict(

  OSMetrics = _reflection.GeneratedProtocolMessageType('OSMetrics', (_message.Message,), dict(
    DESCRIPTOR = _STATUS_OSMETRICS,
    __module__ = 'github_com.TheThingsNetwork.api.gateway.gateway_pb2'
    # @@protoc_insertion_point(class_scope:gateway.Status.OSMetrics)
    ))
  ,
  DESCRIPTOR = _STATUS,
  __module__ = 'github_com.TheThingsNetwork.api.gateway.gateway_pb2'
  # @@protoc_insertion_point(class_scope:gateway.Status)
  ))
_sym_db.RegisterMessage(Status)
_sym_db.RegisterMessage(Status.OSMetrics)


DESCRIPTOR.has_options = True
DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n org.thethingsnetwork.api.gatewayB\014GatewayProtoP\001Z\'github_com/TheThingsNetwork/api/gateway\252\002\034TheThingsNetwork.API.Gateway'))
_RXMETADATA_ANTENNA.fields_by_name['rssi'].has_options = True
_RXMETADATA_ANTENNA.fields_by_name['rssi']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\336\037\004RSSI'))
_RXMETADATA_ANTENNA.fields_by_name['channel_rssi'].has_options = True
_RXMETADATA_ANTENNA.fields_by_name['channel_rssi']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\336\037\013ChannelRSSI'))
_RXMETADATA_ANTENNA.fields_by_name['rssi_standard_deviation'].has_options = True
_RXMETADATA_ANTENNA.fields_by_name['rssi_standard_deviation']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\336\037\025RSSIStandardDeviation'))
_RXMETADATA_ANTENNA.fields_by_name['snr'].has_options = True
_RXMETADATA_ANTENNA.fields_by_name['snr']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\336\037\003SNR'))
_RXMETADATA.fields_by_name['gateway_id'].has_options = True
_RXMETADATA.fields_by_name['gateway_id']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\336\037\tGatewayID'))
_RXMETADATA.fields_by_name['rssi'].has_options = True
_RXMETADATA.fields_by_name['rssi']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\336\037\004RSSI'))
_RXMETADATA.fields_by_name['snr'].has_options = True
_RXMETADATA.fields_by_name['snr']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\336\037\003SNR'))
_STATUS_OSMETRICS.fields_by_name['cpu_percentage'].has_options = True
_STATUS_OSMETRICS.fields_by_name['cpu_percentage']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\336\037\rCPUPercentage'))
_STATUS.fields_by_name['ip'].has_options = True
_STATUS.fields_by_name['ip']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\336\037\002IP'))
_STATUS.fields_by_name['fpga'].has_options = True
_STATUS.fields_by_name['fpga']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\336\037\004FPGA'))
_STATUS.fields_by_name['dsp'].has_options = True
_STATUS.fields_by_name['dsp']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\336\037\003DSP'))
_STATUS.fields_by_name['hal'].has_options = True
_STATUS.fields_by_name['hal']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\336\037\003HAL'))
_STATUS.fields_by_name['rtt'].has_options = True
_STATUS.fields_by_name['rtt']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\336\037\003RTT'))
_STATUS.fields_by_name['l_pps'].has_options = True
_STATUS.fields_by_name['l_pps']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\336\037\004LPPS'))
_STATUS.fields_by_name['os'].has_options = True
_STATUS.fields_by_name['os']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\336\037\002OS'))
try:
  # THESE ELEMENTS WILL BE DEPRECATED.
  # Please use the generated *_pb2_grpc.py files instead.
  import grpc
  from grpc.beta import implementations as beta_implementations
  from grpc.beta import interfaces as beta_interfaces
  from grpc.framework.common import cardinality
  from grpc.framework.interfaces.face import utilities as face_utilities
except ImportError:
  pass
# @@protoc_insertion_point(module_scope)
