# Module `redvox.api900.lib.api900_pb2`

Expand source code

    # Generated by the protocol buffer compiler.  DO NOT EDIT!
    # source: api900.proto

    import sys
    _b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
    from google.protobuf.internal import enum_type_wrapper
    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()

    DESCRIPTOR = _descriptor.FileDescriptor(
      name='api900.proto',
      package='',
      syntax='proto3',
      serialized_pb=_b('\n\x0c\x61pi900.proto\"\xf5\x05\n\x0cRedvoxPacket\x12\x0b\n\x03\x61pi\x18\x01 \x01(\r\x12\x0c\n\x04uuid\x18\x02 \x01(\t\x12\x11\n\tredvox_id\x18\x03 \x01(\t\x12\x1b\n\x13\x61uthenticated_email\x18\x04 \x01(\t\x12\x1c\n\x14\x61uthentication_token\x18\x05 \x01(\t\x12\x16\n\x0e\x66irebase_token\x18\x17 \x01(\t\x12\x15\n\ris_backfilled\x18\x06 \x01(\x08\x12\x12\n\nis_private\x18\x07 \x01(\x08\x12\x14\n\x0cis_scrambled\x18\x08 \x01(\x08\x12\x13\n\x0b\x64\x65vice_make\x18\t \x01(\t\x12\x14\n\x0c\x64\x65vice_model\x18\n \x01(\t\x12\x11\n\tdevice_os\x18\x0b \x01(\t\x12\x19\n\x11\x64\x65vice_os_version\x18\x0c \x01(\t\x12\x13\n\x0b\x61pp_version\x18\r \x01(\t\x12\x1d\n\x15\x62\x61ttery_level_percent\x18\x18 \x01(\x02\x12\x1c\n\x14\x64\x65vice_temperature_c\x18\x19 \x01(\x02\x12\x1a\n\x12\x61\x63quisition_server\x18\x0e \x01(\t\x12#\n\x1btime_synchronization_server\x18\x0f \x01(\t\x12\x1d\n\x15\x61uthentication_server\x18\x10 \x01(\t\x12\x37\n/app_file_start_timestamp_epoch_microseconds_utc\x18\x11 \x01(\x03\x12(\n app_file_start_timestamp_machine\x18\x12 \x01(\x03\x12/\n\'server_timestamp_epoch_microseconds_utc\x18\x13 \x01(\x03\x12\x36\n\x17\x65venly_sampled_channels\x18\x14 \x03(\x0b\x32\x15.EvenlySampledChannel\x12:\n\x19unevenly_sampled_channels\x18\x15 \x03(\x0b\x32\x17.UnevenlySampledChannel\x12\x10\n\x08metadata\x18\x16 \x03(\t\"\x1f\n\x0cInt32Payload\x12\x0f\n\x07payload\x18\x01 \x03(\x05\" \n\rUInt32Payload\x12\x0f\n\x07payload\x18\x01 \x03(\r\"\x1f\n\x0cInt64Payload\x12\x0f\n\x07payload\x18\x01 \x03(\x03\" \n\rUInt64Payload\x12\x0f\n\x07payload\x18\x01 \x03(\x04\"!\n\x0e\x46loat32Payload\x12\x0f\n\x07payload\x18\x01 \x03(\x02\"!\n\x0e\x46loat64Payload\x12\x0f\n\x07payload\x18\x01 \x03(\x01\"\x8c\x02\n\x0b\x42ytePayload\x12\x35\n\x0f\x62ytePayloadType\x18\x01 \x01(\x0e\x32\x1c.BytePayload.BytePayloadType\x12\x0f\n\x07payload\x18\x02 \x01(\x0c\"\xb4\x01\n\x0f\x42ytePayloadType\x12\t\n\x05\x42YTES\x10\x00\x12\t\n\x05UINT8\x10\x01\x12\x0b\n\x07UNINT16\x10\x02\x12\x0b\n\x07UNINT24\x10\x03\x12\n\n\x06UINT32\x10\x04\x12\n\n\x06UINT64\x10\x05\x12\x08\n\x04INT8\x10\x06\x12\t\n\x05INT16\x10\x07\x12\t\n\x05INT24\x10\x08\x12\t\n\x05INT32\x10\t\x12\t\n\x05INT64\x10\n\x12\x0b\n\x07\x46LOAT32\x10\x0b\x12\x0b\n\x07\x46LOAT64\x10\x0c\x12\t\n\x05OTHER\x10\r\"\x9e\x04\n\x14\x45venlySampledChannel\x12#\n\rchannel_types\x18\x01 \x03(\x0e\x32\x0c.ChannelType\x12\x13\n\x0bsensor_name\x18\x02 \x01(\t\x12\x16\n\x0esample_rate_hz\x18\x03 \x01(\x01\x12\x35\n-first_sample_timestamp_epoch_microseconds_utc\x18\x04 \x01(\x03\x12$\n\x0c\x62yte_payload\x18\x05 \x01(\x0b\x32\x0c.BytePayloadH\x00\x12(\n\x0euint32_payload\x18\x06 \x01(\x0b\x32\x0e.UInt32PayloadH\x00\x12(\n\x0euint64_payload\x18\x07 \x01(\x0b\x32\x0e.UInt64PayloadH\x00\x12&\n\rint32_payload\x18\x08 \x01(\x0b\x32\r.Int32PayloadH\x00\x12&\n\rint64_payload\x18\t \x01(\x0b\x32\r.Int64PayloadH\x00\x12*\n\x0f\x66loat32_payload\x18\n \x01(\x0b\x32\x0f.Float32PayloadH\x00\x12*\n\x0f\x66loat64_payload\x18\x0b \x01(\x0b\x32\x0f.Float64PayloadH\x00\x12\x13\n\x0bvalue_means\x18\x0c \x03(\x01\x12\x12\n\nvalue_stds\x18\r \x03(\x01\x12\x15\n\rvalue_medians\x18\x0e \x03(\x01\x12\x10\n\x08metadata\x18\x0f \x03(\tB\t\n\x07payload\"\xd1\x04\n\x16UnevenlySampledChannel\x12#\n\rchannel_types\x18\x01 \x03(\x0e\x32\x0c.ChannelType\x12\x13\n\x0bsensor_name\x18\x02 \x01(\t\x12#\n\x1btimestamps_microseconds_utc\x18\x03 \x03(\x03\x12$\n\x0c\x62yte_payload\x18\x04 \x01(\x0b\x32\x0c.BytePayloadH\x00\x12(\n\x0euint32_payload\x18\x05 \x01(\x0b\x32\x0e.UInt32PayloadH\x00\x12(\n\x0euint64_payload\x18\x06 \x01(\x0b\x32\x0e.UInt64PayloadH\x00\x12&\n\rint32_payload\x18\x07 \x01(\x0b\x32\r.Int32PayloadH\x00\x12&\n\rint64_payload\x18\x08 \x01(\x0b\x32\r.Int64PayloadH\x00\x12*\n\x0f\x66loat32_payload\x18\t \x01(\x0b\x32\x0f.Float32PayloadH\x00\x12*\n\x0f\x66loat64_payload\x18\n \x01(\x0b\x32\x0f.Float64PayloadH\x00\x12\x1c\n\x14sample_interval_mean\x18\x0b \x01(\x01\x12\x1b\n\x13sample_interval_std\x18\x0c \x01(\x01\x12\x1e\n\x16sample_interval_median\x18\r \x01(\x01\x12\x13\n\x0bvalue_means\x18\x0e \x03(\x01\x12\x12\n\nvalue_stds\x18\x0f \x03(\x01\x12\x15\n\rvalue_medians\x18\x10 \x03(\x01\x12\x10\n\x08metadata\x18\x11 \x03(\tB\t\n\x07payload\"\xd7\x01\n\x14RedvoxPacketResponse\x12(\n\x04type\x18\x01 \x01(\x0e\x32\x1a.RedvoxPacketResponse.Type\x12\x10\n\x08\x63hecksum\x18\x02 \x01(\x03\x12+\n\x06\x65rrors\x18\x03 \x03(\x0e\x32\x1b.RedvoxPacketResponse.Error\x12\x10\n\x08metadata\x18\x04 \x03(\t\"\x19\n\x04Type\x12\x06\n\x02OK\x10\x00\x12\t\n\x05\x45RROR\x10\x01\")\n\x05\x45rror\x12\x15\n\x11NOT_AUTHENTICATED\x10\x00\x12\t\n\x05OTHER\x10\x01*\x97\x03\n\x0b\x43hannelType\x12\x0e\n\nMICROPHONE\x10\x00\x12\r\n\tBAROMETER\x10\x01\x12\x0c\n\x08LATITUDE\x10\x02\x12\r\n\tLONGITUDE\x10\x03\x12\t\n\x05SPEED\x10\x04\x12\x0c\n\x08\x41LTITUDE\x10\x05\x12\x0e\n\nRESERVED_0\x10\x06\x12\x0e\n\nRESERVED_1\x10\x07\x12\x0e\n\nRESERVED_2\x10\x08\x12\x18\n\x14TIME_SYNCHRONIZATION\x10\t\x12\x0c\n\x08\x41\x43\x43URACY\x10\n\x12\x13\n\x0f\x41\x43\x43\x45LEROMETER_X\x10\x0b\x12\x13\n\x0f\x41\x43\x43\x45LEROMETER_Y\x10\x0c\x12\x13\n\x0f\x41\x43\x43\x45LEROMETER_Z\x10\r\x12\x12\n\x0eMAGNETOMETER_X\x10\x0e\x12\x12\n\x0eMAGNETOMETER_Y\x10\x0f\x12\x12\n\x0eMAGNETOMETER_Z\x10\x10\x12\x0f\n\x0bGYROSCOPE_X\x10\x11\x12\x0f\n\x0bGYROSCOPE_Y\x10\x12\x12\x0f\n\x0bGYROSCOPE_Z\x10\x13\x12\t\n\x05OTHER\x10\x14\x12\t\n\x05LIGHT\x10\x15\x12\t\n\x05IMAGE\x10\x16\x12\x0c\n\x08INFRARED\x10\x17\x42\x10\n\x0eio.redvox.apisb\x06proto3')
    )

    _CHANNELTYPE = _descriptor.EnumDescriptor(
      name='ChannelType',
      full_name='ChannelType',
      filename=None,
      file=DESCRIPTOR,
      values=[
        _descriptor.EnumValueDescriptor(
          name='MICROPHONE', index=0, number=0,
          options=None,
          type=None),
        _descriptor.EnumValueDescriptor(
          name='BAROMETER', index=1, number=1,
          options=None,
          type=None),
        _descriptor.EnumValueDescriptor(
          name='LATITUDE', index=2, number=2,
          options=None,
          type=None),
        _descriptor.EnumValueDescriptor(
          name='LONGITUDE', index=3, number=3,
          options=None,
          type=None),
        _descriptor.EnumValueDescriptor(
          name='SPEED', index=4, number=4,
          options=None,
          type=None),
        _descriptor.EnumValueDescriptor(
          name='ALTITUDE', index=5, number=5,
          options=None,
          type=None),
        _descriptor.EnumValueDescriptor(
          name='RESERVED_0', index=6, number=6,
          options=None,
          type=None),
        _descriptor.EnumValueDescriptor(
          name='RESERVED_1', index=7, number=7,
          options=None,
          type=None),
        _descriptor.EnumValueDescriptor(
          name='RESERVED_2', index=8, number=8,
          options=None,
          type=None),
        _descriptor.EnumValueDescriptor(
          name='TIME_SYNCHRONIZATION', index=9, number=9,
          options=None,
          type=None),
        _descriptor.EnumValueDescriptor(
          name='ACCURACY', index=10, number=10,
          options=None,
          type=None),
        _descriptor.EnumValueDescriptor(
          name='ACCELEROMETER_X', index=11, number=11,
          options=None,
          type=None),
        _descriptor.EnumValueDescriptor(
          name='ACCELEROMETER_Y', index=12, number=12,
          options=None,
          type=None),
        _descriptor.EnumValueDescriptor(
          name='ACCELEROMETER_Z', index=13, number=13,
          options=None,
          type=None),
        _descriptor.EnumValueDescriptor(
          name='MAGNETOMETER_X', index=14, number=14,
          options=None,
          type=None),
        _descriptor.EnumValueDescriptor(
          name='MAGNETOMETER_Y', index=15, number=15,
          options=None,
          type=None),
        _descriptor.EnumValueDescriptor(
          name='MAGNETOMETER_Z', index=16, number=16,
          options=None,
          type=None),
        _descriptor.EnumValueDescriptor(
          name='GYROSCOPE_X', index=17, number=17,
          options=None,
          type=None),
        _descriptor.EnumValueDescriptor(
          name='GYROSCOPE_Y', index=18, number=18,
          options=None,
          type=None),
        _descriptor.EnumValueDescriptor(
          name='GYROSCOPE_Z', index=19, number=19,
          options=None,
          type=None),
        _descriptor.EnumValueDescriptor(
          name='OTHER', index=20, number=20,
          options=None,
          type=None),
        _descriptor.EnumValueDescriptor(
          name='LIGHT', index=21, number=21,
          options=None,
          type=None),
        _descriptor.EnumValueDescriptor(
          name='IMAGE', index=22, number=22,
          options=None,
          type=None),
        _descriptor.EnumValueDescriptor(
          name='INFRARED', index=23, number=23,
          options=None,
          type=None),
      ],
      containing_type=None,
      options=None,
      serialized_start=2611,
      serialized_end=3018,
    )
    _sym_db.RegisterEnumDescriptor(_CHANNELTYPE)

    ChannelType = enum_type_wrapper.EnumTypeWrapper(_CHANNELTYPE)
    MICROPHONE = 0
    BAROMETER = 1
    LATITUDE = 2
    LONGITUDE = 3
    SPEED = 4
    ALTITUDE = 5
    RESERVED_0 = 6
    RESERVED_1 = 7
    RESERVED_2 = 8
    TIME_SYNCHRONIZATION = 9
    ACCURACY = 10
    ACCELEROMETER_X = 11
    ACCELEROMETER_Y = 12
    ACCELEROMETER_Z = 13
    MAGNETOMETER_X = 14
    MAGNETOMETER_Y = 15
    MAGNETOMETER_Z = 16
    GYROSCOPE_X = 17
    GYROSCOPE_Y = 18
    GYROSCOPE_Z = 19
    OTHER = 20
    LIGHT = 21
    IMAGE = 22
    INFRARED = 23

    _BYTEPAYLOAD_BYTEPAYLOADTYPE = _descriptor.EnumDescriptor(
      name='BytePayloadType',
      full_name='BytePayload.BytePayloadType',
      filename=None,
      file=DESCRIPTOR,
      values=[
        _descriptor.EnumValueDescriptor(
          name='BYTES', index=0, number=0,
          options=None,
          type=None),
        _descriptor.EnumValueDescriptor(
          name='UINT8', index=1, number=1,
          options=None,
          type=None),
        _descriptor.EnumValueDescriptor(
          name='UNINT16', index=2, number=2,
          options=None,
          type=None),
        _descriptor.EnumValueDescriptor(
          name='UNINT24', index=3, number=3,
          options=None,
          type=None),
        _descriptor.EnumValueDescriptor(
          name='UINT32', index=4, number=4,
          options=None,
          type=None),
        _descriptor.EnumValueDescriptor(
          name='UINT64', index=5, number=5,
          options=None,
          type=None),
        _descriptor.EnumValueDescriptor(
          name='INT8', index=6, number=6,
          options=None,
          type=None),
        _descriptor.EnumValueDescriptor(
          name='INT16', index=7, number=7,
          options=None,
          type=None),
        _descriptor.EnumValueDescriptor(
          name='INT24', index=8, number=8,
          options=None,
          type=None),
        _descriptor.EnumValueDescriptor(
          name='INT32', index=9, number=9,
          options=None,
          type=None),
        _descriptor.EnumValueDescriptor(
          name='INT64', index=10, number=10,
          options=None,
          type=None),
        _descriptor.EnumValueDescriptor(
          name='FLOAT32', index=11, number=11,
          options=None,
          type=None),
        _descriptor.EnumValueDescriptor(
          name='FLOAT64', index=12, number=12,
          options=None,
          type=None),
        _descriptor.EnumValueDescriptor(
          name='OTHER', index=13, number=13,
          options=None,
          type=None),
      ],
      containing_type=None,
      options=None,
      serialized_start=1069,
      serialized_end=1249,
    )
    _sym_db.RegisterEnumDescriptor(_BYTEPAYLOAD_BYTEPAYLOADTYPE)

    _REDVOXPACKETRESPONSE_TYPE = _descriptor.EnumDescriptor(
      name='Type',
      full_name='RedvoxPacketResponse.Type',
      filename=None,
      file=DESCRIPTOR,
      values=[
        _descriptor.EnumValueDescriptor(
          name='OK', index=0, number=0,
          options=None,
          type=None),
        _descriptor.EnumValueDescriptor(
          name='ERROR', index=1, number=1,
          options=None,
          type=None),
      ],
      containing_type=None,
      options=None,
      serialized_start=2540,
      serialized_end=2565,
    )
    _sym_db.RegisterEnumDescriptor(_REDVOXPACKETRESPONSE_TYPE)

    _REDVOXPACKETRESPONSE_ERROR = _descriptor.EnumDescriptor(
      name='Error',
      full_name='RedvoxPacketResponse.Error',
      filename=None,
      file=DESCRIPTOR,
      values=[
        _descriptor.EnumValueDescriptor(
          name='NOT_AUTHENTICATED', index=0, number=0,
          options=None,
          type=None),
        _descriptor.EnumValueDescriptor(
          name='OTHER', index=1, number=1,
          options=None,
          type=None),
      ],
      containing_type=None,
      options=None,
      serialized_start=2567,
      serialized_end=2608,
    )
    _sym_db.RegisterEnumDescriptor(_REDVOXPACKETRESPONSE_ERROR)

    _REDVOXPACKET = _descriptor.Descriptor(
      name='RedvoxPacket',
      full_name='RedvoxPacket',
      filename=None,
      file=DESCRIPTOR,
      containing_type=None,
      fields=[
        _descriptor.FieldDescriptor(
          name='api', full_name='RedvoxPacket.api', 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='uuid', full_name='RedvoxPacket.uuid', index=1,
          number=2, 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='redvox_id', full_name='RedvoxPacket.redvox_id', index=2,
          number=3, 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='authenticated_email', full_name='RedvoxPacket.authenticated_email', index=3,
          number=4, 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='authentication_token', full_name='RedvoxPacket.authentication_token', index=4,
          number=5, 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='firebase_token', full_name='RedvoxPacket.firebase_token', index=5,
          number=23, 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='is_backfilled', full_name='RedvoxPacket.is_backfilled', index=6,
          number=6, 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='is_private', full_name='RedvoxPacket.is_private', index=7,
          number=7, 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='is_scrambled', full_name='RedvoxPacket.is_scrambled', index=8,
          number=8, 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='device_make', full_name='RedvoxPacket.device_make', index=9,
          number=9, 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='device_model', full_name='RedvoxPacket.device_model', index=10,
          number=10, 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='device_os', full_name='RedvoxPacket.device_os', index=11,
          number=11, 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='device_os_version', full_name='RedvoxPacket.device_os_version', index=12,
          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='app_version', full_name='RedvoxPacket.app_version', index=13,
          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='battery_level_percent', full_name='RedvoxPacket.battery_level_percent', index=14,
          number=24, 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='device_temperature_c', full_name='RedvoxPacket.device_temperature_c', index=15,
          number=25, 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='acquisition_server', full_name='RedvoxPacket.acquisition_server', index=16,
          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='time_synchronization_server', full_name='RedvoxPacket.time_synchronization_server', index=17,
          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='authentication_server', full_name='RedvoxPacket.authentication_server', index=18,
          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='app_file_start_timestamp_epoch_microseconds_utc', full_name='RedvoxPacket.app_file_start_timestamp_epoch_microseconds_utc', index=19,
          number=17, 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='app_file_start_timestamp_machine', full_name='RedvoxPacket.app_file_start_timestamp_machine', index=20,
          number=18, 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='server_timestamp_epoch_microseconds_utc', full_name='RedvoxPacket.server_timestamp_epoch_microseconds_utc', index=21,
          number=19, 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='evenly_sampled_channels', full_name='RedvoxPacket.evenly_sampled_channels', index=22,
          number=20, 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='unevenly_sampled_channels', full_name='RedvoxPacket.unevenly_sampled_channels', index=23,
          number=21, 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='metadata', full_name='RedvoxPacket.metadata', index=24,
          number=22, 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=[],
      enum_types=[
      ],
      options=None,
      is_extendable=False,
      syntax='proto3',
      extension_ranges=[],
      oneofs=[
      ],
      serialized_start=17,
      serialized_end=774,
    )

    _INT32PAYLOAD = _descriptor.Descriptor(
      name='Int32Payload',
      full_name='Int32Payload',
      filename=None,
      file=DESCRIPTOR,
      containing_type=None,
      fields=[
        _descriptor.FieldDescriptor(
          name='payload', full_name='Int32Payload.payload', index=0,
          number=1, type=5, cpp_type=1, 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=[],
      enum_types=[
      ],
      options=None,
      is_extendable=False,
      syntax='proto3',
      extension_ranges=[],
      oneofs=[
      ],
      serialized_start=776,
      serialized_end=807,
    )

    _UINT32PAYLOAD = _descriptor.Descriptor(
      name='UInt32Payload',
      full_name='UInt32Payload',
      filename=None,
      file=DESCRIPTOR,
      containing_type=None,
      fields=[
        _descriptor.FieldDescriptor(
          name='payload', full_name='UInt32Payload.payload', index=0,
          number=1, type=13, cpp_type=3, 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=[],
      enum_types=[
      ],
      options=None,
      is_extendable=False,
      syntax='proto3',
      extension_ranges=[],
      oneofs=[
      ],
      serialized_start=809,
      serialized_end=841,
    )

    _INT64PAYLOAD = _descriptor.Descriptor(
      name='Int64Payload',
      full_name='Int64Payload',
      filename=None,
      file=DESCRIPTOR,
      containing_type=None,
      fields=[
        _descriptor.FieldDescriptor(
          name='payload', full_name='Int64Payload.payload', index=0,
          number=1, type=3, cpp_type=2, 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=[],
      enum_types=[
      ],
      options=None,
      is_extendable=False,
      syntax='proto3',
      extension_ranges=[],
      oneofs=[
      ],
      serialized_start=843,
      serialized_end=874,
    )

    _UINT64PAYLOAD = _descriptor.Descriptor(
      name='UInt64Payload',
      full_name='UInt64Payload',
      filename=None,
      file=DESCRIPTOR,
      containing_type=None,
      fields=[
        _descriptor.FieldDescriptor(
          name='payload', full_name='UInt64Payload.payload', index=0,
          number=1, type=4, cpp_type=4, 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=[],
      enum_types=[
      ],
      options=None,
      is_extendable=False,
      syntax='proto3',
      extension_ranges=[],
      oneofs=[
      ],
      serialized_start=876,
      serialized_end=908,
    )

    _FLOAT32PAYLOAD = _descriptor.Descriptor(
      name='Float32Payload',
      full_name='Float32Payload',
      filename=None,
      file=DESCRIPTOR,
      containing_type=None,
      fields=[
        _descriptor.FieldDescriptor(
          name='payload', full_name='Float32Payload.payload', index=0,
          number=1, type=2, cpp_type=6, 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=[],
      enum_types=[
      ],
      options=None,
      is_extendable=False,
      syntax='proto3',
      extension_ranges=[],
      oneofs=[
      ],
      serialized_start=910,
      serialized_end=943,
    )

    _FLOAT64PAYLOAD = _descriptor.Descriptor(
      name='Float64Payload',
      full_name='Float64Payload',
      filename=None,
      file=DESCRIPTOR,
      containing_type=None,
      fields=[
        _descriptor.FieldDescriptor(
          name='payload', full_name='Float64Payload.payload', index=0,
          number=1, type=1, cpp_type=5, 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=[],
      enum_types=[
      ],
      options=None,
      is_extendable=False,
      syntax='proto3',
      extension_ranges=[],
      oneofs=[
      ],
      serialized_start=945,
      serialized_end=978,
    )

    _BYTEPAYLOAD = _descriptor.Descriptor(
      name='BytePayload',
      full_name='BytePayload',
      filename=None,
      file=DESCRIPTOR,
      containing_type=None,
      fields=[
        _descriptor.FieldDescriptor(
          name='bytePayloadType', full_name='BytePayload.bytePayloadType', index=0,
          number=1, 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),
        _descriptor.FieldDescriptor(
          name='payload', full_name='BytePayload.payload', index=1,
          number=2, 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),
      ],
      extensions=[
      ],
      nested_types=[],
      enum_types=[
        _BYTEPAYLOAD_BYTEPAYLOADTYPE,
      ],
      options=None,
      is_extendable=False,
      syntax='proto3',
      extension_ranges=[],
      oneofs=[
      ],
      serialized_start=981,
      serialized_end=1249,
    )

    _EVENLYSAMPLEDCHANNEL = _descriptor.Descriptor(
      name='EvenlySampledChannel',
      full_name='EvenlySampledChannel',
      filename=None,
      file=DESCRIPTOR,
      containing_type=None,
      fields=[
        _descriptor.FieldDescriptor(
          name='channel_types', full_name='EvenlySampledChannel.channel_types', index=0,
          number=1, type=14, cpp_type=8, 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='sensor_name', full_name='EvenlySampledChannel.sensor_name', index=1,
          number=2, 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='sample_rate_hz', full_name='EvenlySampledChannel.sample_rate_hz', index=2,
          number=3, type=1, cpp_type=5, 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='first_sample_timestamp_epoch_microseconds_utc', full_name='EvenlySampledChannel.first_sample_timestamp_epoch_microseconds_utc', 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='byte_payload', full_name='EvenlySampledChannel.byte_payload', index=4,
          number=5, 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='uint32_payload', full_name='EvenlySampledChannel.uint32_payload', index=5,
          number=6, 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='uint64_payload', full_name='EvenlySampledChannel.uint64_payload', index=6,
          number=7, 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='int32_payload', full_name='EvenlySampledChannel.int32_payload', index=7,
          number=8, 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='int64_payload', full_name='EvenlySampledChannel.int64_payload', index=8,
          number=9, 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='float32_payload', full_name='EvenlySampledChannel.float32_payload', index=9,
          number=10, 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='float64_payload', full_name='EvenlySampledChannel.float64_payload', index=10,
          number=11, 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='value_means', full_name='EvenlySampledChannel.value_means', index=11,
          number=12, type=1, cpp_type=5, 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='value_stds', full_name='EvenlySampledChannel.value_stds', index=12,
          number=13, type=1, cpp_type=5, 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='value_medians', full_name='EvenlySampledChannel.value_medians', index=13,
          number=14, type=1, cpp_type=5, 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='metadata', full_name='EvenlySampledChannel.metadata', index=14,
          number=15, 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=[],
      enum_types=[
      ],
      options=None,
      is_extendable=False,
      syntax='proto3',
      extension_ranges=[],
      oneofs=[
        _descriptor.OneofDescriptor(
          name='payload', full_name='EvenlySampledChannel.payload',
          index=0, containing_type=None, fields=[]),
      ],
      serialized_start=1252,
      serialized_end=1794,
    )

    _UNEVENLYSAMPLEDCHANNEL = _descriptor.Descriptor(
      name='UnevenlySampledChannel',
      full_name='UnevenlySampledChannel',
      filename=None,
      file=DESCRIPTOR,
      containing_type=None,
      fields=[
        _descriptor.FieldDescriptor(
          name='channel_types', full_name='UnevenlySampledChannel.channel_types', index=0,
          number=1, type=14, cpp_type=8, 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='sensor_name', full_name='UnevenlySampledChannel.sensor_name', index=1,
          number=2, 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='timestamps_microseconds_utc', full_name='UnevenlySampledChannel.timestamps_microseconds_utc', index=2,
          number=3, type=3, cpp_type=2, 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='byte_payload', full_name='UnevenlySampledChannel.byte_payload', index=3,
          number=4, 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='uint32_payload', full_name='UnevenlySampledChannel.uint32_payload', index=4,
          number=5, 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='uint64_payload', full_name='UnevenlySampledChannel.uint64_payload', index=5,
          number=6, 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='int32_payload', full_name='UnevenlySampledChannel.int32_payload', index=6,
          number=7, 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='int64_payload', full_name='UnevenlySampledChannel.int64_payload', index=7,
          number=8, 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='float32_payload', full_name='UnevenlySampledChannel.float32_payload', index=8,
          number=9, 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='float64_payload', full_name='UnevenlySampledChannel.float64_payload', index=9,
          number=10, 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='sample_interval_mean', full_name='UnevenlySampledChannel.sample_interval_mean', index=10,
          number=11, type=1, cpp_type=5, 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='sample_interval_std', full_name='UnevenlySampledChannel.sample_interval_std', index=11,
          number=12, type=1, cpp_type=5, 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='sample_interval_median', full_name='UnevenlySampledChannel.sample_interval_median', index=12,
          number=13, type=1, cpp_type=5, 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='value_means', full_name='UnevenlySampledChannel.value_means', index=13,
          number=14, type=1, cpp_type=5, 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='value_stds', full_name='UnevenlySampledChannel.value_stds', index=14,
          number=15, type=1, cpp_type=5, 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='value_medians', full_name='UnevenlySampledChannel.value_medians', index=15,
          number=16, type=1, cpp_type=5, 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='metadata', full_name='UnevenlySampledChannel.metadata', index=16,
          number=17, 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=[],
      enum_types=[
      ],
      options=None,
      is_extendable=False,
      syntax='proto3',
      extension_ranges=[],
      oneofs=[
        _descriptor.OneofDescriptor(
          name='payload', full_name='UnevenlySampledChannel.payload',
          index=0, containing_type=None, fields=[]),
      ],
      serialized_start=1797,
      serialized_end=2390,
    )

    _REDVOXPACKETRESPONSE = _descriptor.Descriptor(
      name='RedvoxPacketResponse',
      full_name='RedvoxPacketResponse',
      filename=None,
      file=DESCRIPTOR,
      containing_type=None,
      fields=[
        _descriptor.FieldDescriptor(
          name='type', full_name='RedvoxPacketResponse.type', index=0,
          number=1, 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),
        _descriptor.FieldDescriptor(
          name='checksum', full_name='RedvoxPacketResponse.checksum', 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='errors', full_name='RedvoxPacketResponse.errors', index=2,
          number=3, type=14, cpp_type=8, 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='metadata', full_name='RedvoxPacketResponse.metadata', index=3,
          number=4, 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=[],
      enum_types=[
        _REDVOXPACKETRESPONSE_TYPE,
        _REDVOXPACKETRESPONSE_ERROR,
      ],
      options=None,
      is_extendable=False,
      syntax='proto3',
      extension_ranges=[],
      oneofs=[
      ],
      serialized_start=2393,
      serialized_end=2608,
    )

    _REDVOXPACKET.fields_by_name['evenly_sampled_channels'].message_type = _EVENLYSAMPLEDCHANNEL
    _REDVOXPACKET.fields_by_name['unevenly_sampled_channels'].message_type = _UNEVENLYSAMPLEDCHANNEL
    _BYTEPAYLOAD.fields_by_name['bytePayloadType'].enum_type = _BYTEPAYLOAD_BYTEPAYLOADTYPE
    _BYTEPAYLOAD_BYTEPAYLOADTYPE.containing_type = _BYTEPAYLOAD
    _EVENLYSAMPLEDCHANNEL.fields_by_name['channel_types'].enum_type = _CHANNELTYPE
    _EVENLYSAMPLEDCHANNEL.fields_by_name['byte_payload'].message_type = _BYTEPAYLOAD
    _EVENLYSAMPLEDCHANNEL.fields_by_name['uint32_payload'].message_type = _UINT32PAYLOAD
    _EVENLYSAMPLEDCHANNEL.fields_by_name['uint64_payload'].message_type = _UINT64PAYLOAD
    _EVENLYSAMPLEDCHANNEL.fields_by_name['int32_payload'].message_type = _INT32PAYLOAD
    _EVENLYSAMPLEDCHANNEL.fields_by_name['int64_payload'].message_type = _INT64PAYLOAD
    _EVENLYSAMPLEDCHANNEL.fields_by_name['float32_payload'].message_type = _FLOAT32PAYLOAD
    _EVENLYSAMPLEDCHANNEL.fields_by_name['float64_payload'].message_type = _FLOAT64PAYLOAD
    _EVENLYSAMPLEDCHANNEL.oneofs_by_name['payload'].fields.append(
      _EVENLYSAMPLEDCHANNEL.fields_by_name['byte_payload'])
    _EVENLYSAMPLEDCHANNEL.fields_by_name['byte_payload'].containing_oneof = _EVENLYSAMPLEDCHANNEL.oneofs_by_name['payload']
    _EVENLYSAMPLEDCHANNEL.oneofs_by_name['payload'].fields.append(
      _EVENLYSAMPLEDCHANNEL.fields_by_name['uint32_payload'])
    _EVENLYSAMPLEDCHANNEL.fields_by_name['uint32_payload'].containing_oneof = _EVENLYSAMPLEDCHANNEL.oneofs_by_name['payload']
    _EVENLYSAMPLEDCHANNEL.oneofs_by_name['payload'].fields.append(
      _EVENLYSAMPLEDCHANNEL.fields_by_name['uint64_payload'])
    _EVENLYSAMPLEDCHANNEL.fields_by_name['uint64_payload'].containing_oneof = _EVENLYSAMPLEDCHANNEL.oneofs_by_name['payload']
    _EVENLYSAMPLEDCHANNEL.oneofs_by_name['payload'].fields.append(
      _EVENLYSAMPLEDCHANNEL.fields_by_name['int32_payload'])
    _EVENLYSAMPLEDCHANNEL.fields_by_name['int32_payload'].containing_oneof = _EVENLYSAMPLEDCHANNEL.oneofs_by_name['payload']
    _EVENLYSAMPLEDCHANNEL.oneofs_by_name['payload'].fields.append(
      _EVENLYSAMPLEDCHANNEL.fields_by_name['int64_payload'])
    _EVENLYSAMPLEDCHANNEL.fields_by_name['int64_payload'].containing_oneof = _EVENLYSAMPLEDCHANNEL.oneofs_by_name['payload']
    _EVENLYSAMPLEDCHANNEL.oneofs_by_name['payload'].fields.append(
      _EVENLYSAMPLEDCHANNEL.fields_by_name['float32_payload'])
    _EVENLYSAMPLEDCHANNEL.fields_by_name['float32_payload'].containing_oneof = _EVENLYSAMPLEDCHANNEL.oneofs_by_name['payload']
    _EVENLYSAMPLEDCHANNEL.oneofs_by_name['payload'].fields.append(
      _EVENLYSAMPLEDCHANNEL.fields_by_name['float64_payload'])
    _EVENLYSAMPLEDCHANNEL.fields_by_name['float64_payload'].containing_oneof = _EVENLYSAMPLEDCHANNEL.oneofs_by_name['payload']
    _UNEVENLYSAMPLEDCHANNEL.fields_by_name['channel_types'].enum_type = _CHANNELTYPE
    _UNEVENLYSAMPLEDCHANNEL.fields_by_name['byte_payload'].message_type = _BYTEPAYLOAD
    _UNEVENLYSAMPLEDCHANNEL.fields_by_name['uint32_payload'].message_type = _UINT32PAYLOAD
    _UNEVENLYSAMPLEDCHANNEL.fields_by_name['uint64_payload'].message_type = _UINT64PAYLOAD
    _UNEVENLYSAMPLEDCHANNEL.fields_by_name['int32_payload'].message_type = _INT32PAYLOAD
    _UNEVENLYSAMPLEDCHANNEL.fields_by_name['int64_payload'].message_type = _INT64PAYLOAD
    _UNEVENLYSAMPLEDCHANNEL.fields_by_name['float32_payload'].message_type = _FLOAT32PAYLOAD
    _UNEVENLYSAMPLEDCHANNEL.fields_by_name['float64_payload'].message_type = _FLOAT64PAYLOAD
    _UNEVENLYSAMPLEDCHANNEL.oneofs_by_name['payload'].fields.append(
      _UNEVENLYSAMPLEDCHANNEL.fields_by_name['byte_payload'])
    _UNEVENLYSAMPLEDCHANNEL.fields_by_name['byte_payload'].containing_oneof = _UNEVENLYSAMPLEDCHANNEL.oneofs_by_name['payload']
    _UNEVENLYSAMPLEDCHANNEL.oneofs_by_name['payload'].fields.append(
      _UNEVENLYSAMPLEDCHANNEL.fields_by_name['uint32_payload'])
    _UNEVENLYSAMPLEDCHANNEL.fields_by_name['uint32_payload'].containing_oneof = _UNEVENLYSAMPLEDCHANNEL.oneofs_by_name['payload']
    _UNEVENLYSAMPLEDCHANNEL.oneofs_by_name['payload'].fields.append(
      _UNEVENLYSAMPLEDCHANNEL.fields_by_name['uint64_payload'])
    _UNEVENLYSAMPLEDCHANNEL.fields_by_name['uint64_payload'].containing_oneof = _UNEVENLYSAMPLEDCHANNEL.oneofs_by_name['payload']
    _UNEVENLYSAMPLEDCHANNEL.oneofs_by_name['payload'].fields.append(
      _UNEVENLYSAMPLEDCHANNEL.fields_by_name['int32_payload'])
    _UNEVENLYSAMPLEDCHANNEL.fields_by_name['int32_payload'].containing_oneof = _UNEVENLYSAMPLEDCHANNEL.oneofs_by_name['payload']
    _UNEVENLYSAMPLEDCHANNEL.oneofs_by_name['payload'].fields.append(
      _UNEVENLYSAMPLEDCHANNEL.fields_by_name['int64_payload'])
    _UNEVENLYSAMPLEDCHANNEL.fields_by_name['int64_payload'].containing_oneof = _UNEVENLYSAMPLEDCHANNEL.oneofs_by_name['payload']
    _UNEVENLYSAMPLEDCHANNEL.oneofs_by_name['payload'].fields.append(
      _UNEVENLYSAMPLEDCHANNEL.fields_by_name['float32_payload'])
    _UNEVENLYSAMPLEDCHANNEL.fields_by_name['float32_payload'].containing_oneof = _UNEVENLYSAMPLEDCHANNEL.oneofs_by_name['payload']
    _UNEVENLYSAMPLEDCHANNEL.oneofs_by_name['payload'].fields.append(
      _UNEVENLYSAMPLEDCHANNEL.fields_by_name['float64_payload'])
    _UNEVENLYSAMPLEDCHANNEL.fields_by_name['float64_payload'].containing_oneof = _UNEVENLYSAMPLEDCHANNEL.oneofs_by_name['payload']
    _REDVOXPACKETRESPONSE.fields_by_name['type'].enum_type = _REDVOXPACKETRESPONSE_TYPE
    _REDVOXPACKETRESPONSE.fields_by_name['errors'].enum_type = _REDVOXPACKETRESPONSE_ERROR
    _REDVOXPACKETRESPONSE_TYPE.containing_type = _REDVOXPACKETRESPONSE
    _REDVOXPACKETRESPONSE_ERROR.containing_type = _REDVOXPACKETRESPONSE
    DESCRIPTOR.message_types_by_name['RedvoxPacket'] = _REDVOXPACKET
    DESCRIPTOR.message_types_by_name['Int32Payload'] = _INT32PAYLOAD
    DESCRIPTOR.message_types_by_name['UInt32Payload'] = _UINT32PAYLOAD
    DESCRIPTOR.message_types_by_name['Int64Payload'] = _INT64PAYLOAD
    DESCRIPTOR.message_types_by_name['UInt64Payload'] = _UINT64PAYLOAD
    DESCRIPTOR.message_types_by_name['Float32Payload'] = _FLOAT32PAYLOAD
    DESCRIPTOR.message_types_by_name['Float64Payload'] = _FLOAT64PAYLOAD
    DESCRIPTOR.message_types_by_name['BytePayload'] = _BYTEPAYLOAD
    DESCRIPTOR.message_types_by_name['EvenlySampledChannel'] = _EVENLYSAMPLEDCHANNEL
    DESCRIPTOR.message_types_by_name['UnevenlySampledChannel'] = _UNEVENLYSAMPLEDCHANNEL
    DESCRIPTOR.message_types_by_name['RedvoxPacketResponse'] = _REDVOXPACKETRESPONSE
    DESCRIPTOR.enum_types_by_name['ChannelType'] = _CHANNELTYPE
    _sym_db.RegisterFileDescriptor(DESCRIPTOR)

    RedvoxPacket = _reflection.GeneratedProtocolMessageType('RedvoxPacket', (_message.Message,), dict(
      DESCRIPTOR = _REDVOXPACKET,
      __module__ = 'api900_pb2'
      # @@protoc_insertion_point(class_scope:RedvoxPacket)
      ))
    _sym_db.RegisterMessage(RedvoxPacket)

    Int32Payload = _reflection.GeneratedProtocolMessageType('Int32Payload', (_message.Message,), dict(
      DESCRIPTOR = _INT32PAYLOAD,
      __module__ = 'api900_pb2'
      # @@protoc_insertion_point(class_scope:Int32Payload)
      ))
    _sym_db.RegisterMessage(Int32Payload)

    UInt32Payload = _reflection.GeneratedProtocolMessageType('UInt32Payload', (_message.Message,), dict(
      DESCRIPTOR = _UINT32PAYLOAD,
      __module__ = 'api900_pb2'
      # @@protoc_insertion_point(class_scope:UInt32Payload)
      ))
    _sym_db.RegisterMessage(UInt32Payload)

    Int64Payload = _reflection.GeneratedProtocolMessageType('Int64Payload', (_message.Message,), dict(
      DESCRIPTOR = _INT64PAYLOAD,
      __module__ = 'api900_pb2'
      # @@protoc_insertion_point(class_scope:Int64Payload)
      ))
    _sym_db.RegisterMessage(Int64Payload)

    UInt64Payload = _reflection.GeneratedProtocolMessageType('UInt64Payload', (_message.Message,), dict(
      DESCRIPTOR = _UINT64PAYLOAD,
      __module__ = 'api900_pb2'
      # @@protoc_insertion_point(class_scope:UInt64Payload)
      ))
    _sym_db.RegisterMessage(UInt64Payload)

    Float32Payload = _reflection.GeneratedProtocolMessageType('Float32Payload', (_message.Message,), dict(
      DESCRIPTOR = _FLOAT32PAYLOAD,
      __module__ = 'api900_pb2'
      # @@protoc_insertion_point(class_scope:Float32Payload)
      ))
    _sym_db.RegisterMessage(Float32Payload)

    Float64Payload = _reflection.GeneratedProtocolMessageType('Float64Payload', (_message.Message,), dict(
      DESCRIPTOR = _FLOAT64PAYLOAD,
      __module__ = 'api900_pb2'
      # @@protoc_insertion_point(class_scope:Float64Payload)
      ))
    _sym_db.RegisterMessage(Float64Payload)

    BytePayload = _reflection.GeneratedProtocolMessageType('BytePayload', (_message.Message,), dict(
      DESCRIPTOR = _BYTEPAYLOAD,
      __module__ = 'api900_pb2'
      # @@protoc_insertion_point(class_scope:BytePayload)
      ))
    _sym_db.RegisterMessage(BytePayload)

    EvenlySampledChannel = _reflection.GeneratedProtocolMessageType('EvenlySampledChannel', (_message.Message,), dict(
      DESCRIPTOR = _EVENLYSAMPLEDCHANNEL,
      __module__ = 'api900_pb2'
      # @@protoc_insertion_point(class_scope:EvenlySampledChannel)
      ))
    _sym_db.RegisterMessage(EvenlySampledChannel)

    UnevenlySampledChannel = _reflection.GeneratedProtocolMessageType('UnevenlySampledChannel', (_message.Message,), dict(
      DESCRIPTOR = _UNEVENLYSAMPLEDCHANNEL,
      __module__ = 'api900_pb2'
      # @@protoc_insertion_point(class_scope:UnevenlySampledChannel)
      ))
    _sym_db.RegisterMessage(UnevenlySampledChannel)

    RedvoxPacketResponse = _reflection.GeneratedProtocolMessageType('RedvoxPacketResponse', (_message.Message,), dict(
      DESCRIPTOR = _REDVOXPACKETRESPONSE,
      __module__ = 'api900_pb2'
      # @@protoc_insertion_point(class_scope:RedvoxPacketResponse)
      ))
    _sym_db.RegisterMessage(RedvoxPacketResponse)

    DESCRIPTOR.has_options = True
    DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n\016io.redvox.apis'))
    # @@protoc_insertion_point(module_scope)

## Classes

`class BytePayload (*args, **kwargs)`

  A ProtocolMessage

  ### Ancestors

  - google.protobuf.pyext._message.CMessage
  - google.protobuf.message.Message

  ### Class variables

  `var BYTES`
  `var BytePayloadType`
  `var DESCRIPTOR`
  `var FLOAT32`
  `var FLOAT64`
  `var INT16`
  `var INT24`
  `var INT32`
  `var INT64`
  `var INT8`
  `var OTHER`
  `var UINT32`
  `var UINT64`
  `var UINT8`
  `var UNINT16`
  `var UNINT24`

  ### Instance variables

  `var bytePayloadType`

    Field BytePayload.bytePayloadType

  `var payload`

    Field BytePayload.payload

`class EvenlySampledChannel (*args, **kwargs)`

  A ProtocolMessage

  ### Ancestors

  - google.protobuf.pyext._message.CMessage
  - google.protobuf.message.Message

  ### Class variables

  `var DESCRIPTOR`

  ### Instance variables

  `var byte_payload`

    Field EvenlySampledChannel.byte_payload

  `var channel_types`

    Field EvenlySampledChannel.channel_types

  `var first_sample_timestamp_epoch_microseconds_utc`

    Field EvenlySampledChannel.first_sample_timestamp_epoch_microseconds_utc

  `var float32_payload`

    Field EvenlySampledChannel.float32_payload

  `var float64_payload`

    Field EvenlySampledChannel.float64_payload

  `var int32_payload`

    Field EvenlySampledChannel.int32_payload

  `var int64_payload`

    Field EvenlySampledChannel.int64_payload

  `var metadata`

    Field EvenlySampledChannel.metadata

  `var sample_rate_hz`

    Field EvenlySampledChannel.sample_rate_hz

  `var sensor_name`

    Field EvenlySampledChannel.sensor_name

  `var uint32_payload`

    Field EvenlySampledChannel.uint32_payload

  `var uint64_payload`

    Field EvenlySampledChannel.uint64_payload

  `var value_means`

    Field EvenlySampledChannel.value_means

  `var value_medians`

    Field EvenlySampledChannel.value_medians

  `var value_stds`

    Field EvenlySampledChannel.value_stds

`class Float32Payload (*args, **kwargs)`

  A ProtocolMessage

  ### Ancestors

  - google.protobuf.pyext._message.CMessage
  - google.protobuf.message.Message

  ### Class variables

  `var DESCRIPTOR`

  ### Instance variables

  `var payload`

    Field Float32Payload.payload

`class Float64Payload (*args, **kwargs)`

  A ProtocolMessage

  ### Ancestors

  - google.protobuf.pyext._message.CMessage
  - google.protobuf.message.Message

  ### Class variables

  `var DESCRIPTOR`

  ### Instance variables

  `var payload`

    Field Float64Payload.payload

`class Int32Payload (*args, **kwargs)`

  A ProtocolMessage

  ### Ancestors

  - google.protobuf.pyext._message.CMessage
  - google.protobuf.message.Message

  ### Class variables

  `var DESCRIPTOR`

  ### Instance variables

  `var payload`

    Field Int32Payload.payload

`class Int64Payload (*args, **kwargs)`

  A ProtocolMessage

  ### Ancestors

  - google.protobuf.pyext._message.CMessage
  - google.protobuf.message.Message

  ### Class variables

  `var DESCRIPTOR`

  ### Instance variables

  `var payload`

    Field Int64Payload.payload

`class RedvoxPacket (*args, **kwargs)`

  A ProtocolMessage

  ### Ancestors

  - google.protobuf.pyext._message.CMessage
  - google.protobuf.message.Message

  ### Class variables

  `var DESCRIPTOR`

  ### Instance variables

  `var acquisition_server`

    Field RedvoxPacket.acquisition_server

  `var api`

    Field RedvoxPacket.api

  `var app_file_start_timestamp_epoch_microseconds_utc`

    Field RedvoxPacket.app_file_start_timestamp_epoch_microseconds_utc

  `var app_file_start_timestamp_machine`

    Field RedvoxPacket.app_file_start_timestamp_machine

  `var app_version`

    Field RedvoxPacket.app_version

  `var authenticated_email`

    Field RedvoxPacket.authenticated_email

  `var authentication_server`

    Field RedvoxPacket.authentication_server

  `var authentication_token`

    Field RedvoxPacket.authentication_token

  `var battery_level_percent`

    Field RedvoxPacket.battery_level_percent

  `var device_make`

    Field RedvoxPacket.device_make

  `var device_model`

    Field RedvoxPacket.device_model

  `var device_os`

    Field RedvoxPacket.device_os

  `var device_os_version`

    Field RedvoxPacket.device_os_version

  `var device_temperature_c`

    Field RedvoxPacket.device_temperature_c

  `var evenly_sampled_channels`

    Field RedvoxPacket.evenly_sampled_channels

  `var firebase_token`

    Field RedvoxPacket.firebase_token

  `var is_backfilled`

    Field RedvoxPacket.is_backfilled

  `var is_private`

    Field RedvoxPacket.is_private

  `var is_scrambled`

    Field RedvoxPacket.is_scrambled

  `var metadata`

    Field RedvoxPacket.metadata

  `var redvox_id`

    Field RedvoxPacket.redvox_id

  `var server_timestamp_epoch_microseconds_utc`

    Field RedvoxPacket.server_timestamp_epoch_microseconds_utc

  `var time_synchronization_server`

    Field RedvoxPacket.time_synchronization_server

  `var unevenly_sampled_channels`

    Field RedvoxPacket.unevenly_sampled_channels

  `var uuid`

    Field RedvoxPacket.uuid

`class RedvoxPacketResponse (*args, **kwargs)`

  A ProtocolMessage

  ### Ancestors

  - google.protobuf.pyext._message.CMessage
  - google.protobuf.message.Message

  ### Class variables

  `var DESCRIPTOR`
  `var ERROR`
  `var Error`
  `var NOT_AUTHENTICATED`
  `var OK`
  `var OTHER`
  `var Type`

  ### Instance variables

  `var checksum`

    Field RedvoxPacketResponse.checksum

  `var errors`

    Field RedvoxPacketResponse.errors

  `var metadata`

    Field RedvoxPacketResponse.metadata

  `var type`

    Field RedvoxPacketResponse.type

`class UInt32Payload (*args, **kwargs)`

  A ProtocolMessage

  ### Ancestors

  - google.protobuf.pyext._message.CMessage
  - google.protobuf.message.Message

  ### Class variables

  `var DESCRIPTOR`

  ### Instance variables

  `var payload`

    Field UInt32Payload.payload

`class UInt64Payload (*args, **kwargs)`

  A ProtocolMessage

  ### Ancestors

  - google.protobuf.pyext._message.CMessage
  - google.protobuf.message.Message

  ### Class variables

  `var DESCRIPTOR`

  ### Instance variables

  `var payload`

    Field UInt64Payload.payload

`class UnevenlySampledChannel (*args, **kwargs)`

  A ProtocolMessage

  ### Ancestors

  - google.protobuf.pyext._message.CMessage
  - google.protobuf.message.Message

  ### Class variables

  `var DESCRIPTOR`

  ### Instance variables

  `var byte_payload`

    Field UnevenlySampledChannel.byte_payload

  `var channel_types`

    Field UnevenlySampledChannel.channel_types

  `var float32_payload`

    Field UnevenlySampledChannel.float32_payload

  `var float64_payload`

    Field UnevenlySampledChannel.float64_payload

  `var int32_payload`

    Field UnevenlySampledChannel.int32_payload

  `var int64_payload`

    Field UnevenlySampledChannel.int64_payload

  `var metadata`

    Field UnevenlySampledChannel.metadata

  `var sample_interval_mean`

    Field UnevenlySampledChannel.sample_interval_mean

  `var sample_interval_median`

    Field UnevenlySampledChannel.sample_interval_median

  `var sample_interval_std`

    Field UnevenlySampledChannel.sample_interval_std

  `var sensor_name`

    Field UnevenlySampledChannel.sensor_name

  `var timestamps_microseconds_utc`

    Field UnevenlySampledChannel.timestamps_microseconds_utc

  `var uint32_payload`

    Field UnevenlySampledChannel.uint32_payload

  `var uint64_payload`

    Field UnevenlySampledChannel.uint64_payload

  `var value_means`

    Field UnevenlySampledChannel.value_means

  `var value_medians`

    Field UnevenlySampledChannel.value_medians

  `var value_stds`

    Field UnevenlySampledChannel.value_stds