# Generated by the protocol buffer compiler.  DO NOT EDIT!
# source: iot.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
# @@protoc_insertion_point(imports)

_sym_db = _symbol_database.Default()


from . import nullabletypes_pb2 as nullabletypes__pb2
from . import weather_station_pb2 as weather__station__pb2
from . import brick_pb2 as brick__pb2


DESCRIPTOR = _descriptor.FileDescriptor(
  name='iot.proto',
  package='xbospb',
  syntax='proto3',
  serialized_options=None,
  serialized_pb=_b('\n\tiot.proto\x12\x06xbospb\x1a\x13nullabletypes.proto\x1a\x15weather_station.proto\x1a\x0b\x62rick.proto\"\x14\n\x05\x45rror\x12\x0b\n\x03msg\x18\x01 \x01(\t\"\xca\x02\n\x12XBOSIoTDeviceState\x12\x0c\n\x04time\x18\x01 \x01(\x04\x12\x11\n\trequestid\x18\x02 \x01(\x03\x12\x1c\n\x05\x65rror\x18\x03 \x01(\x0b\x32\r.xbospb.Error\x12&\n\nthermostat\x18\x04 \x01(\x0b\x32\x12.xbospb.Thermostat\x12\x1c\n\x05meter\x18\x05 \x01(\x0b\x32\r.xbospb.Meter\x12\x1c\n\x05light\x18\x06 \x01(\x0b\x32\r.xbospb.Light\x12\x1a\n\x04\x65vse\x18\x07 \x01(\x0b\x32\x0c.xbospb.EVSE\x12/\n\x0fweather_station\x18\x08 \x01(\x0b\x32\x16.xbospb.WeatherStation\x12\x44\n\x1aweather_station_prediction\x18\t \x01(\x0b\x32 .xbospb.WeatherStationPrediction\"\xb9\x01\n\x16XBOSIoTDeviceActuation\x12\x0c\n\x04time\x18\x01 \x01(\x04\x12\x11\n\trequestid\x18\x02 \x01(\x03\x12&\n\nthermostat\x18\x03 \x01(\x0b\x32\x12.xbospb.Thermostat\x12\x1c\n\x05meter\x18\x04 \x01(\x0b\x32\r.xbospb.Meter\x12\x1c\n\x05light\x18\x05 \x01(\x0b\x32\r.xbospb.Light\x12\x1a\n\x04\x65vse\x18\x06 \x01(\x0b\x32\x0c.xbospb.EVSE\"?\n\x0eXBOSIoTContext\x12\x0c\n\x04time\x18\x01 \x01(\x04\x12\x1f\n\x07\x63ontext\x18\x02 \x03(\x0b\x32\x0e.xbospb.Triple\"\x8d\t\n\nThermostat\x12n\n\x0btemperature\x18\x01 \x01(\x0b\x32\x0e.xbospb.DoubleBI\x82\xb5\x18-\n+https://brickschema.org/schema/1.0.3/Brick#\x82\xb5\x18\x14\x12\x12Temperature_Sensor\x12q\n\x11relative_humidity\x18\x02 \x01(\x0b\x32\x0e.xbospb.DoubleBF\x82\xb5\x18-\n+https://brickschema.org/schema/1.0.3/Brick#\x82\xb5\x18\x11\x12\x0fHumidity_Sensor\x12g\n\x08override\x18\x03 \x01(\x0b\x32\x0c.xbospb.BoolBG\x82\xb5\x18-\n+https://brickschema.org/schema/1.0.3/Brick#\x82\xb5\x18\x12\x12\x10Override_Command\x12\x62\n\tfan_state\x18\x04 \x01(\x0b\x32\x0c.xbospb.BoolBA\x82\xb5\x18-\n+https://brickschema.org/schema/1.0.3/Brick#\x82\xb5\x18\x0c\x12\nFan_Status\x12\x65\n\x08\x66\x61n_mode\x18\x05 \x01(\x0b\x32\x0f.xbospb.FanModeBB\x82\xb5\x18-\n+https://brickschema.org/schema/1.0.3/Brick#\x82\xb5\x18\r\x12\x0b\x46\x61n_Command\x12\x63\n\x04mode\x18\x06 \x01(\x0b\x32\x10.xbospb.HVACModeBC\x82\xb5\x18-\n+https://brickschema.org/schema/1.0.3/Brick#\x82\xb5\x18\x0e\x12\x0cMode_Command\x12j\n\x05state\x18\x07 \x01(\x0b\x32\x11.xbospb.HVACStateBH\x82\xb5\x18-\n+https://brickschema.org/schema/1.0.3/Brick#\x82\xb5\x18\x13\x12\x11Thermostat_Status\x12*\n\x13\x65nabled_heat_stages\x18\x08 \x01(\x0b\x32\r.xbospb.Int32\x12*\n\x13\x65nabled_cool_stages\x18\t \x01(\x0b\x32\r.xbospb.Int32\x12}\n\x10heating_setpoint\x18\n \x01(\x0b\x32\x0e.xbospb.DoubleBS\x82\xb5\x18-\n+https://brickschema.org/schema/1.0.3/Brick#\x82\xb5\x18\x1e\x12\x1cHeating_Temperature_Setpoint\x12}\n\x10\x63ooling_setpoint\x18\x0b \x01(\x0b\x32\x0e.xbospb.DoubleBS\x82\xb5\x18-\n+https://brickschema.org/schema/1.0.3/Brick#\x82\xb5\x18\x1e\x12\x1c\x43ooling_Temperature_Setpoint:A\x82\xf1\x04-\n+https://brickschema.org/schema/1.0.3/Brick#\x82\xf1\x04\x0c\x12\nThermostat\"\xa9\x01\n\x12ThermostatSchedule\x12@\n\x0bscheduleMap\x18\x01 \x03(\x0b\x32+.xbospb.ThermostatSchedule.ScheduleMapEntry\x1aQ\n\x10ScheduleMapEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12,\n\x05value\x18\x02 \x01(\x0b\x32\x1d.xbospb.ThermostatScheduleDay:\x02\x38\x01\"H\n\x15ThermostatScheduleDay\x12/\n\x06\x62locks\x18\x01 \x03(\x0b\x32\x1f.xbospb.ThermostatScheduleBlock\"\x9b\x01\n\x17ThermostatScheduleBlock\x12(\n\x10heating_setpoint\x18\x01 \x01(\x0b\x32\x0e.xbospb.Double\x12(\n\x10\x63ooling_setpoint\x18\x02 \x01(\x0b\x32\x0e.xbospb.Double\x12\x1e\n\x04mode\x18\x03 \x01(\x0b\x32\x10.xbospb.HVACMode\x12\x0c\n\x04time\x18\x04 \x01(\t\"\xe3\x01\n\x13\x44\x65mandResponseEvent\x12 \n\tevent_end\x18\x01 \x01(\x0b\x32\r.xbospb.Int64\x12\"\n\x0b\x65vent_start\x18\x02 \x01(\x0b\x32\r.xbospb.Int64\x12\x33\n\nevent_type\x18\x03 \x01(\x0e\x32\x1f.xbospb.DemandResponseEventType\x12\x34\n\tdr_status\x18\x04 \x01(\x0e\x32!.xbospb.DemandResponseEventStatus\x12\x1b\n\x04time\x18\x05 \x01(\x0b\x32\r.xbospb.Int64\"\x80\x0c\n\x05Meter\x12\x62\n\x05power\x18\x01 \x01(\x0b\x32\x0e.xbospb.DoubleBC\x82\xb5\x18-\n+https://brickschema.org/schema/1.0.3/Brick#\x82\xb5\x18\x0e\x12\x0cPower_Sensor\x12\x66\n\x07voltage\x18\x02 \x01(\x0b\x32\x0e.xbospb.DoubleBE\x82\xb5\x18-\n+https://brickschema.org/schema/1.0.3/Brick#\x82\xb5\x18\x10\x12\x0eVoltage_Sensor\x12t\n\x0e\x61pparent_power\x18\x03 \x01(\x0b\x32\x0e.xbospb.DoubleBL\x82\xb5\x18-\n+https://brickschema.org/schema/1.0.3/Brick#\x82\xb5\x18\x17\x12\x15\x41pparent_Power_Sensor\x12\x64\n\x06\x65nergy\x18\x04 \x01(\x0b\x32\x0e.xbospb.DoubleBD\x82\xb5\x18-\n+https://brickschema.org/schema/1.0.3/Brick#\x82\xb5\x18\x0f\x12\rEnergy_Sensor\x12t\n\x0ereactive_power\x18\x05 \x01(\x0b\x32\x0e.xbospb.DoubleBL\x82\xb5\x18-\n+https://brickschema.org/schema/1.0.3/Brick#\x82\xb5\x18\x17\x12\x15Reactive_Power_Sensor\x12\x66\n\x07\x63urrent\x18\x06 \x01(\x0b\x32\x0e.xbospb.DoubleBE\x82\xb5\x18-\n+https://brickschema.org/schema/1.0.3/Brick#\x82\xb5\x18\x10\x12\x0e\x43urrent_Sensor\x12\x64\n\x06\x64\x65mand\x18\x07 \x01(\x0b\x32\x0e.xbospb.DoubleBD\x82\xb5\x18-\n+https://brickschema.org/schema/1.0.3/Brick#\x82\xb5\x18\x0f\x12\rDemand_Sensor\x12n\n\x0bwater_total\x18\x08 \x01(\x0b\x32\x0e.xbospb.DoubleBI\x82\xb5\x18-\n+https://brickschema.org/schema/1.0.3/Brick#\x82\xb5\x18\x14\x12\x12Water_Total_Sensor\x12l\n\nwater_rate\x18\t \x01(\x0b\x32\x0e.xbospb.DoubleBH\x82\xb5\x18-\n+https://brickschema.org/schema/1.0.3/Brick#\x82\xb5\x18\x13\x12\x11Water_Rate_Sensor\x12~\n\x13water_instantaneous\x18\n \x01(\x0b\x32\x0e.xbospb.DoubleBQ\x82\xb5\x18-\n+https://brickschema.org/schema/1.0.3/Brick#\x82\xb5\x18\x1c\x12\x1aWater_Instantaneous_Sensor\x12t\n\x0e\x63ondense_total\x18\x0b \x01(\x0b\x32\x0e.xbospb.DoubleBL\x82\xb5\x18-\n+https://brickschema.org/schema/1.0.3/Brick#\x82\xb5\x18\x17\x12\x15\x43ondense_Total_Sensor\x12r\n\rcondense_rate\x18\x0c \x01(\x0b\x32\x0e.xbospb.DoubleBK\x82\xb5\x18-\n+https://brickschema.org/schema/1.0.3/Brick#\x82\xb5\x18\x16\x12\x14\x43ondense_Rate_Sensor\x12\x84\x01\n\x16\x63ondense_instantaneous\x18\r \x01(\x0b\x32\x0e.xbospb.DoubleBT\x82\xb5\x18-\n+https://brickschema.org/schema/1.0.3/Brick#\x82\xb5\x18\x1f\x12\x1d\x43ondense_Instantaneous_Sensor:<\x82\xf1\x04-\n+https://brickschema.org/schema/1.0.3/Brick#\x82\xf1\x04\x07\x12\x05Meter\"\x9a\x02\n\x05Light\x12\x62\n\x05state\x18\x01 \x01(\x0b\x32\x0c.xbospb.BoolBE\x82\xb5\x18-\n+https://brickschema.org/schema/1.0.3/Brick#\x82\xb5\x18\x10\x12\x0eLighting_State\x12k\n\nbrightness\x18\x02 \x01(\x0b\x32\r.xbospb.Int64BH\x82\xb5\x18-\n+https://brickschema.org/schema/1.0.3/Brick#\x82\xb5\x18\x13\x12\x11Luminance_Command:@\x82\xf1\x04-\n+https://brickschema.org/schema/1.0.3/Brick#\x82\xf1\x04\x0b\x12\tLuminaire\"\xb7\x01\n\x04\x45VSE\x12%\n\rcurrent_limit\x18\x01 \x01(\x0b\x32\x0e.xbospb.Double\x12\x1f\n\x07\x63urrent\x18\x02 \x01(\x0b\x32\x0e.xbospb.Double\x12\x1f\n\x07voltage\x18\x03 \x01(\x0b\x32\x0e.xbospb.Double\x12)\n\x12\x63harging_time_left\x18\x04 \x01(\x0b\x32\r.xbospb.Int32\x12\x1b\n\x05state\x18\x05 \x01(\x0b\x32\x0c.xbospb.Bool*\xba\x01\n\x19\x44\x65mandResponseEventStatus\x12*\n&DemandResponseEventStatusNotConfigured\x10\x00\x12%\n!DemandResponseEventStatusUnusable\x10\x01\x12%\n!DemandResponseEventStatusInactive\x10\x02\x12#\n\x1f\x44\x65mandResponseEventStatusActive\x10\x03*\xca\x01\n\x17\x44\x65mandResponseEventType\x12\"\n\x1e\x44\x65mandResponseEventTypeNoEvent\x10\x00\x12!\n\x1d\x44\x65mandResponseEventTypeNormal\x10\x01\x12#\n\x1f\x44\x65mandResponseEventTypeModerate\x10\x02\x12\x1f\n\x1b\x44\x65mandResponseEventTypeHigh\x10\x03\x12\"\n\x1e\x44\x65mandResponseEventTypeSpecial\x10\x04\x62\x06proto3')
  ,
  dependencies=[nullabletypes__pb2.DESCRIPTOR,weather__station__pb2.DESCRIPTOR,brick__pb2.DESCRIPTOR,])

_DEMANDRESPONSEEVENTSTATUS = _descriptor.EnumDescriptor(
  name='DemandResponseEventStatus',
  full_name='xbospb.DemandResponseEventStatus',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='DemandResponseEventStatusNotConfigured', index=0, number=0,
      serialized_options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='DemandResponseEventStatusUnusable', index=1, number=1,
      serialized_options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='DemandResponseEventStatusInactive', index=2, number=2,
      serialized_options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='DemandResponseEventStatusActive', index=3, number=3,
      serialized_options=None,
      type=None),
  ],
  containing_type=None,
  serialized_options=None,
  serialized_start=4499,
  serialized_end=4685,
)
_sym_db.RegisterEnumDescriptor(_DEMANDRESPONSEEVENTSTATUS)

DemandResponseEventStatus = enum_type_wrapper.EnumTypeWrapper(_DEMANDRESPONSEEVENTSTATUS)
_DEMANDRESPONSEEVENTTYPE = _descriptor.EnumDescriptor(
  name='DemandResponseEventType',
  full_name='xbospb.DemandResponseEventType',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='DemandResponseEventTypeNoEvent', index=0, number=0,
      serialized_options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='DemandResponseEventTypeNormal', index=1, number=1,
      serialized_options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='DemandResponseEventTypeModerate', index=2, number=2,
      serialized_options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='DemandResponseEventTypeHigh', index=3, number=3,
      serialized_options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='DemandResponseEventTypeSpecial', index=4, number=4,
      serialized_options=None,
      type=None),
  ],
  containing_type=None,
  serialized_options=None,
  serialized_start=4688,
  serialized_end=4890,
)
_sym_db.RegisterEnumDescriptor(_DEMANDRESPONSEEVENTTYPE)

DemandResponseEventType = enum_type_wrapper.EnumTypeWrapper(_DEMANDRESPONSEEVENTTYPE)
DemandResponseEventStatusNotConfigured = 0
DemandResponseEventStatusUnusable = 1
DemandResponseEventStatusInactive = 2
DemandResponseEventStatusActive = 3
DemandResponseEventTypeNoEvent = 0
DemandResponseEventTypeNormal = 1
DemandResponseEventTypeModerate = 2
DemandResponseEventTypeHigh = 3
DemandResponseEventTypeSpecial = 4



_ERROR = _descriptor.Descriptor(
  name='Error',
  full_name='xbospb.Error',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='msg', full_name='xbospb.Error.msg', 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,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=78,
  serialized_end=98,
)


_XBOSIOTDEVICESTATE = _descriptor.Descriptor(
  name='XBOSIoTDeviceState',
  full_name='xbospb.XBOSIoTDeviceState',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='time', full_name='xbospb.XBOSIoTDeviceState.time', index=0,
      number=1, 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,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='requestid', full_name='xbospb.XBOSIoTDeviceState.requestid', 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,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='error', full_name='xbospb.XBOSIoTDeviceState.error', index=2,
      number=3, 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,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='thermostat', full_name='xbospb.XBOSIoTDeviceState.thermostat', 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,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='meter', full_name='xbospb.XBOSIoTDeviceState.meter', 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,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='light', full_name='xbospb.XBOSIoTDeviceState.light', 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,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='evse', full_name='xbospb.XBOSIoTDeviceState.evse', 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,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='weather_station', full_name='xbospb.XBOSIoTDeviceState.weather_station', 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,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='weather_station_prediction', full_name='xbospb.XBOSIoTDeviceState.weather_station_prediction', 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,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=101,
  serialized_end=431,
)


_XBOSIOTDEVICEACTUATION = _descriptor.Descriptor(
  name='XBOSIoTDeviceActuation',
  full_name='xbospb.XBOSIoTDeviceActuation',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='time', full_name='xbospb.XBOSIoTDeviceActuation.time', index=0,
      number=1, 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,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='requestid', full_name='xbospb.XBOSIoTDeviceActuation.requestid', 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,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='thermostat', full_name='xbospb.XBOSIoTDeviceActuation.thermostat', index=2,
      number=3, 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,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='meter', full_name='xbospb.XBOSIoTDeviceActuation.meter', 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,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='light', full_name='xbospb.XBOSIoTDeviceActuation.light', 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,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='evse', full_name='xbospb.XBOSIoTDeviceActuation.evse', 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,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=434,
  serialized_end=619,
)


_XBOSIOTCONTEXT = _descriptor.Descriptor(
  name='XBOSIoTContext',
  full_name='xbospb.XBOSIoTContext',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='time', full_name='xbospb.XBOSIoTContext.time', index=0,
      number=1, 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,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='context', full_name='xbospb.XBOSIoTContext.context', index=1,
      number=2, 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,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=621,
  serialized_end=684,
)


_THERMOSTAT = _descriptor.Descriptor(
  name='Thermostat',
  full_name='xbospb.Thermostat',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='temperature', full_name='xbospb.Thermostat.temperature', index=0,
      number=1, 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,
      serialized_options=_b('\202\265\030-\n+https://brickschema.org/schema/1.0.3/Brick#\202\265\030\024\022\022Temperature_Sensor'), file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='relative_humidity', full_name='xbospb.Thermostat.relative_humidity', index=1,
      number=2, 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,
      serialized_options=_b('\202\265\030-\n+https://brickschema.org/schema/1.0.3/Brick#\202\265\030\021\022\017Humidity_Sensor'), file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='override', full_name='xbospb.Thermostat.override', index=2,
      number=3, 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,
      serialized_options=_b('\202\265\030-\n+https://brickschema.org/schema/1.0.3/Brick#\202\265\030\022\022\020Override_Command'), file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='fan_state', full_name='xbospb.Thermostat.fan_state', 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,
      serialized_options=_b('\202\265\030-\n+https://brickschema.org/schema/1.0.3/Brick#\202\265\030\014\022\nFan_Status'), file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='fan_mode', full_name='xbospb.Thermostat.fan_mode', 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,
      serialized_options=_b('\202\265\030-\n+https://brickschema.org/schema/1.0.3/Brick#\202\265\030\r\022\013Fan_Command'), file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='mode', full_name='xbospb.Thermostat.mode', 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,
      serialized_options=_b('\202\265\030-\n+https://brickschema.org/schema/1.0.3/Brick#\202\265\030\016\022\014Mode_Command'), file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='state', full_name='xbospb.Thermostat.state', 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,
      serialized_options=_b('\202\265\030-\n+https://brickschema.org/schema/1.0.3/Brick#\202\265\030\023\022\021Thermostat_Status'), file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='enabled_heat_stages', full_name='xbospb.Thermostat.enabled_heat_stages', 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,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='enabled_cool_stages', full_name='xbospb.Thermostat.enabled_cool_stages', 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,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='heating_setpoint', full_name='xbospb.Thermostat.heating_setpoint', 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,
      serialized_options=_b('\202\265\030-\n+https://brickschema.org/schema/1.0.3/Brick#\202\265\030\036\022\034Heating_Temperature_Setpoint'), file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='cooling_setpoint', full_name='xbospb.Thermostat.cooling_setpoint', 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,
      serialized_options=_b('\202\265\030-\n+https://brickschema.org/schema/1.0.3/Brick#\202\265\030\036\022\034Cooling_Temperature_Setpoint'), file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=_b('\202\361\004-\n+https://brickschema.org/schema/1.0.3/Brick#\202\361\004\014\022\nThermostat'),
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=687,
  serialized_end=1852,
)


_THERMOSTATSCHEDULE_SCHEDULEMAPENTRY = _descriptor.Descriptor(
  name='ScheduleMapEntry',
  full_name='xbospb.ThermostatSchedule.ScheduleMapEntry',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='key', full_name='xbospb.ThermostatSchedule.ScheduleMapEntry.key', 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,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='value', full_name='xbospb.ThermostatSchedule.ScheduleMapEntry.value', index=1,
      number=2, 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,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=_b('8\001'),
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1943,
  serialized_end=2024,
)

_THERMOSTATSCHEDULE = _descriptor.Descriptor(
  name='ThermostatSchedule',
  full_name='xbospb.ThermostatSchedule',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='scheduleMap', full_name='xbospb.ThermostatSchedule.scheduleMap', index=0,
      number=1, 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,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[_THERMOSTATSCHEDULE_SCHEDULEMAPENTRY, ],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1855,
  serialized_end=2024,
)


_THERMOSTATSCHEDULEDAY = _descriptor.Descriptor(
  name='ThermostatScheduleDay',
  full_name='xbospb.ThermostatScheduleDay',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='blocks', full_name='xbospb.ThermostatScheduleDay.blocks', index=0,
      number=1, 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,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2026,
  serialized_end=2098,
)


_THERMOSTATSCHEDULEBLOCK = _descriptor.Descriptor(
  name='ThermostatScheduleBlock',
  full_name='xbospb.ThermostatScheduleBlock',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='heating_setpoint', full_name='xbospb.ThermostatScheduleBlock.heating_setpoint', index=0,
      number=1, 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,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='cooling_setpoint', full_name='xbospb.ThermostatScheduleBlock.cooling_setpoint', index=1,
      number=2, 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,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='mode', full_name='xbospb.ThermostatScheduleBlock.mode', index=2,
      number=3, 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,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='time', full_name='xbospb.ThermostatScheduleBlock.time', 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,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2101,
  serialized_end=2256,
)


_DEMANDRESPONSEEVENT = _descriptor.Descriptor(
  name='DemandResponseEvent',
  full_name='xbospb.DemandResponseEvent',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='event_end', full_name='xbospb.DemandResponseEvent.event_end', index=0,
      number=1, 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,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='event_start', full_name='xbospb.DemandResponseEvent.event_start', index=1,
      number=2, 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,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='event_type', full_name='xbospb.DemandResponseEvent.event_type', index=2,
      number=3, 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,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='dr_status', full_name='xbospb.DemandResponseEvent.dr_status', index=3,
      number=4, 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,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='time', full_name='xbospb.DemandResponseEvent.time', 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,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2259,
  serialized_end=2486,
)


_METER = _descriptor.Descriptor(
  name='Meter',
  full_name='xbospb.Meter',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='power', full_name='xbospb.Meter.power', index=0,
      number=1, 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,
      serialized_options=_b('\202\265\030-\n+https://brickschema.org/schema/1.0.3/Brick#\202\265\030\016\022\014Power_Sensor'), file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='voltage', full_name='xbospb.Meter.voltage', index=1,
      number=2, 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,
      serialized_options=_b('\202\265\030-\n+https://brickschema.org/schema/1.0.3/Brick#\202\265\030\020\022\016Voltage_Sensor'), file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='apparent_power', full_name='xbospb.Meter.apparent_power', index=2,
      number=3, 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,
      serialized_options=_b('\202\265\030-\n+https://brickschema.org/schema/1.0.3/Brick#\202\265\030\027\022\025Apparent_Power_Sensor'), file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='energy', full_name='xbospb.Meter.energy', 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,
      serialized_options=_b('\202\265\030-\n+https://brickschema.org/schema/1.0.3/Brick#\202\265\030\017\022\rEnergy_Sensor'), file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='reactive_power', full_name='xbospb.Meter.reactive_power', 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,
      serialized_options=_b('\202\265\030-\n+https://brickschema.org/schema/1.0.3/Brick#\202\265\030\027\022\025Reactive_Power_Sensor'), file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='current', full_name='xbospb.Meter.current', 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,
      serialized_options=_b('\202\265\030-\n+https://brickschema.org/schema/1.0.3/Brick#\202\265\030\020\022\016Current_Sensor'), file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='demand', full_name='xbospb.Meter.demand', 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,
      serialized_options=_b('\202\265\030-\n+https://brickschema.org/schema/1.0.3/Brick#\202\265\030\017\022\rDemand_Sensor'), file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='water_total', full_name='xbospb.Meter.water_total', 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,
      serialized_options=_b('\202\265\030-\n+https://brickschema.org/schema/1.0.3/Brick#\202\265\030\024\022\022Water_Total_Sensor'), file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='water_rate', full_name='xbospb.Meter.water_rate', 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,
      serialized_options=_b('\202\265\030-\n+https://brickschema.org/schema/1.0.3/Brick#\202\265\030\023\022\021Water_Rate_Sensor'), file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='water_instantaneous', full_name='xbospb.Meter.water_instantaneous', 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,
      serialized_options=_b('\202\265\030-\n+https://brickschema.org/schema/1.0.3/Brick#\202\265\030\034\022\032Water_Instantaneous_Sensor'), file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='condense_total', full_name='xbospb.Meter.condense_total', 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,
      serialized_options=_b('\202\265\030-\n+https://brickschema.org/schema/1.0.3/Brick#\202\265\030\027\022\025Condense_Total_Sensor'), file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='condense_rate', full_name='xbospb.Meter.condense_rate', index=11,
      number=12, 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,
      serialized_options=_b('\202\265\030-\n+https://brickschema.org/schema/1.0.3/Brick#\202\265\030\026\022\024Condense_Rate_Sensor'), file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='condense_instantaneous', full_name='xbospb.Meter.condense_instantaneous', index=12,
      number=13, 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,
      serialized_options=_b('\202\265\030-\n+https://brickschema.org/schema/1.0.3/Brick#\202\265\030\037\022\035Condense_Instantaneous_Sensor'), file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=_b('\202\361\004-\n+https://brickschema.org/schema/1.0.3/Brick#\202\361\004\007\022\005Meter'),
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2489,
  serialized_end=4025,
)


_LIGHT = _descriptor.Descriptor(
  name='Light',
  full_name='xbospb.Light',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='state', full_name='xbospb.Light.state', index=0,
      number=1, 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,
      serialized_options=_b('\202\265\030-\n+https://brickschema.org/schema/1.0.3/Brick#\202\265\030\020\022\016Lighting_State'), file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='brightness', full_name='xbospb.Light.brightness', index=1,
      number=2, 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,
      serialized_options=_b('\202\265\030-\n+https://brickschema.org/schema/1.0.3/Brick#\202\265\030\023\022\021Luminance_Command'), file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=_b('\202\361\004-\n+https://brickschema.org/schema/1.0.3/Brick#\202\361\004\013\022\tLuminaire'),
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=4028,
  serialized_end=4310,
)


_EVSE = _descriptor.Descriptor(
  name='EVSE',
  full_name='xbospb.EVSE',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='current_limit', full_name='xbospb.EVSE.current_limit', index=0,
      number=1, 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,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='current', full_name='xbospb.EVSE.current', index=1,
      number=2, 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,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='voltage', full_name='xbospb.EVSE.voltage', index=2,
      number=3, 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,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='charging_time_left', full_name='xbospb.EVSE.charging_time_left', 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,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='state', full_name='xbospb.EVSE.state', 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,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=4313,
  serialized_end=4496,
)

_XBOSIOTDEVICESTATE.fields_by_name['error'].message_type = _ERROR
_XBOSIOTDEVICESTATE.fields_by_name['thermostat'].message_type = _THERMOSTAT
_XBOSIOTDEVICESTATE.fields_by_name['meter'].message_type = _METER
_XBOSIOTDEVICESTATE.fields_by_name['light'].message_type = _LIGHT
_XBOSIOTDEVICESTATE.fields_by_name['evse'].message_type = _EVSE
_XBOSIOTDEVICESTATE.fields_by_name['weather_station'].message_type = weather__station__pb2._WEATHERSTATION
_XBOSIOTDEVICESTATE.fields_by_name['weather_station_prediction'].message_type = weather__station__pb2._WEATHERSTATIONPREDICTION
_XBOSIOTDEVICEACTUATION.fields_by_name['thermostat'].message_type = _THERMOSTAT
_XBOSIOTDEVICEACTUATION.fields_by_name['meter'].message_type = _METER
_XBOSIOTDEVICEACTUATION.fields_by_name['light'].message_type = _LIGHT
_XBOSIOTDEVICEACTUATION.fields_by_name['evse'].message_type = _EVSE
_XBOSIOTCONTEXT.fields_by_name['context'].message_type = brick__pb2._TRIPLE
_THERMOSTAT.fields_by_name['temperature'].message_type = nullabletypes__pb2._DOUBLE
_THERMOSTAT.fields_by_name['relative_humidity'].message_type = nullabletypes__pb2._DOUBLE
_THERMOSTAT.fields_by_name['override'].message_type = nullabletypes__pb2._BOOL
_THERMOSTAT.fields_by_name['fan_state'].message_type = nullabletypes__pb2._BOOL
_THERMOSTAT.fields_by_name['fan_mode'].message_type = nullabletypes__pb2._FANMODE
_THERMOSTAT.fields_by_name['mode'].message_type = nullabletypes__pb2._HVACMODE
_THERMOSTAT.fields_by_name['state'].message_type = nullabletypes__pb2._HVACSTATE
_THERMOSTAT.fields_by_name['enabled_heat_stages'].message_type = nullabletypes__pb2._INT32
_THERMOSTAT.fields_by_name['enabled_cool_stages'].message_type = nullabletypes__pb2._INT32
_THERMOSTAT.fields_by_name['heating_setpoint'].message_type = nullabletypes__pb2._DOUBLE
_THERMOSTAT.fields_by_name['cooling_setpoint'].message_type = nullabletypes__pb2._DOUBLE
_THERMOSTATSCHEDULE_SCHEDULEMAPENTRY.fields_by_name['value'].message_type = _THERMOSTATSCHEDULEDAY
_THERMOSTATSCHEDULE_SCHEDULEMAPENTRY.containing_type = _THERMOSTATSCHEDULE
_THERMOSTATSCHEDULE.fields_by_name['scheduleMap'].message_type = _THERMOSTATSCHEDULE_SCHEDULEMAPENTRY
_THERMOSTATSCHEDULEDAY.fields_by_name['blocks'].message_type = _THERMOSTATSCHEDULEBLOCK
_THERMOSTATSCHEDULEBLOCK.fields_by_name['heating_setpoint'].message_type = nullabletypes__pb2._DOUBLE
_THERMOSTATSCHEDULEBLOCK.fields_by_name['cooling_setpoint'].message_type = nullabletypes__pb2._DOUBLE
_THERMOSTATSCHEDULEBLOCK.fields_by_name['mode'].message_type = nullabletypes__pb2._HVACMODE
_DEMANDRESPONSEEVENT.fields_by_name['event_end'].message_type = nullabletypes__pb2._INT64
_DEMANDRESPONSEEVENT.fields_by_name['event_start'].message_type = nullabletypes__pb2._INT64
_DEMANDRESPONSEEVENT.fields_by_name['event_type'].enum_type = _DEMANDRESPONSEEVENTTYPE
_DEMANDRESPONSEEVENT.fields_by_name['dr_status'].enum_type = _DEMANDRESPONSEEVENTSTATUS
_DEMANDRESPONSEEVENT.fields_by_name['time'].message_type = nullabletypes__pb2._INT64
_METER.fields_by_name['power'].message_type = nullabletypes__pb2._DOUBLE
_METER.fields_by_name['voltage'].message_type = nullabletypes__pb2._DOUBLE
_METER.fields_by_name['apparent_power'].message_type = nullabletypes__pb2._DOUBLE
_METER.fields_by_name['energy'].message_type = nullabletypes__pb2._DOUBLE
_METER.fields_by_name['reactive_power'].message_type = nullabletypes__pb2._DOUBLE
_METER.fields_by_name['current'].message_type = nullabletypes__pb2._DOUBLE
_METER.fields_by_name['demand'].message_type = nullabletypes__pb2._DOUBLE
_METER.fields_by_name['water_total'].message_type = nullabletypes__pb2._DOUBLE
_METER.fields_by_name['water_rate'].message_type = nullabletypes__pb2._DOUBLE
_METER.fields_by_name['water_instantaneous'].message_type = nullabletypes__pb2._DOUBLE
_METER.fields_by_name['condense_total'].message_type = nullabletypes__pb2._DOUBLE
_METER.fields_by_name['condense_rate'].message_type = nullabletypes__pb2._DOUBLE
_METER.fields_by_name['condense_instantaneous'].message_type = nullabletypes__pb2._DOUBLE
_LIGHT.fields_by_name['state'].message_type = nullabletypes__pb2._BOOL
_LIGHT.fields_by_name['brightness'].message_type = nullabletypes__pb2._INT64
_EVSE.fields_by_name['current_limit'].message_type = nullabletypes__pb2._DOUBLE
_EVSE.fields_by_name['current'].message_type = nullabletypes__pb2._DOUBLE
_EVSE.fields_by_name['voltage'].message_type = nullabletypes__pb2._DOUBLE
_EVSE.fields_by_name['charging_time_left'].message_type = nullabletypes__pb2._INT32
_EVSE.fields_by_name['state'].message_type = nullabletypes__pb2._BOOL
DESCRIPTOR.message_types_by_name['Error'] = _ERROR
DESCRIPTOR.message_types_by_name['XBOSIoTDeviceState'] = _XBOSIOTDEVICESTATE
DESCRIPTOR.message_types_by_name['XBOSIoTDeviceActuation'] = _XBOSIOTDEVICEACTUATION
DESCRIPTOR.message_types_by_name['XBOSIoTContext'] = _XBOSIOTCONTEXT
DESCRIPTOR.message_types_by_name['Thermostat'] = _THERMOSTAT
DESCRIPTOR.message_types_by_name['ThermostatSchedule'] = _THERMOSTATSCHEDULE
DESCRIPTOR.message_types_by_name['ThermostatScheduleDay'] = _THERMOSTATSCHEDULEDAY
DESCRIPTOR.message_types_by_name['ThermostatScheduleBlock'] = _THERMOSTATSCHEDULEBLOCK
DESCRIPTOR.message_types_by_name['DemandResponseEvent'] = _DEMANDRESPONSEEVENT
DESCRIPTOR.message_types_by_name['Meter'] = _METER
DESCRIPTOR.message_types_by_name['Light'] = _LIGHT
DESCRIPTOR.message_types_by_name['EVSE'] = _EVSE
DESCRIPTOR.enum_types_by_name['DemandResponseEventStatus'] = _DEMANDRESPONSEEVENTSTATUS
DESCRIPTOR.enum_types_by_name['DemandResponseEventType'] = _DEMANDRESPONSEEVENTTYPE
_sym_db.RegisterFileDescriptor(DESCRIPTOR)

Error = _reflection.GeneratedProtocolMessageType('Error', (_message.Message,), dict(
  DESCRIPTOR = _ERROR,
  __module__ = 'iot_pb2'
  # @@protoc_insertion_point(class_scope:xbospb.Error)
  ))
_sym_db.RegisterMessage(Error)

XBOSIoTDeviceState = _reflection.GeneratedProtocolMessageType('XBOSIoTDeviceState', (_message.Message,), dict(
  DESCRIPTOR = _XBOSIOTDEVICESTATE,
  __module__ = 'iot_pb2'
  # @@protoc_insertion_point(class_scope:xbospb.XBOSIoTDeviceState)
  ))
_sym_db.RegisterMessage(XBOSIoTDeviceState)

XBOSIoTDeviceActuation = _reflection.GeneratedProtocolMessageType('XBOSIoTDeviceActuation', (_message.Message,), dict(
  DESCRIPTOR = _XBOSIOTDEVICEACTUATION,
  __module__ = 'iot_pb2'
  # @@protoc_insertion_point(class_scope:xbospb.XBOSIoTDeviceActuation)
  ))
_sym_db.RegisterMessage(XBOSIoTDeviceActuation)

XBOSIoTContext = _reflection.GeneratedProtocolMessageType('XBOSIoTContext', (_message.Message,), dict(
  DESCRIPTOR = _XBOSIOTCONTEXT,
  __module__ = 'iot_pb2'
  # @@protoc_insertion_point(class_scope:xbospb.XBOSIoTContext)
  ))
_sym_db.RegisterMessage(XBOSIoTContext)

Thermostat = _reflection.GeneratedProtocolMessageType('Thermostat', (_message.Message,), dict(
  DESCRIPTOR = _THERMOSTAT,
  __module__ = 'iot_pb2'
  # @@protoc_insertion_point(class_scope:xbospb.Thermostat)
  ))
_sym_db.RegisterMessage(Thermostat)

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

  ScheduleMapEntry = _reflection.GeneratedProtocolMessageType('ScheduleMapEntry', (_message.Message,), dict(
    DESCRIPTOR = _THERMOSTATSCHEDULE_SCHEDULEMAPENTRY,
    __module__ = 'iot_pb2'
    # @@protoc_insertion_point(class_scope:xbospb.ThermostatSchedule.ScheduleMapEntry)
    ))
  ,
  DESCRIPTOR = _THERMOSTATSCHEDULE,
  __module__ = 'iot_pb2'
  # @@protoc_insertion_point(class_scope:xbospb.ThermostatSchedule)
  ))
_sym_db.RegisterMessage(ThermostatSchedule)
_sym_db.RegisterMessage(ThermostatSchedule.ScheduleMapEntry)

ThermostatScheduleDay = _reflection.GeneratedProtocolMessageType('ThermostatScheduleDay', (_message.Message,), dict(
  DESCRIPTOR = _THERMOSTATSCHEDULEDAY,
  __module__ = 'iot_pb2'
  # @@protoc_insertion_point(class_scope:xbospb.ThermostatScheduleDay)
  ))
_sym_db.RegisterMessage(ThermostatScheduleDay)

ThermostatScheduleBlock = _reflection.GeneratedProtocolMessageType('ThermostatScheduleBlock', (_message.Message,), dict(
  DESCRIPTOR = _THERMOSTATSCHEDULEBLOCK,
  __module__ = 'iot_pb2'
  # @@protoc_insertion_point(class_scope:xbospb.ThermostatScheduleBlock)
  ))
_sym_db.RegisterMessage(ThermostatScheduleBlock)

DemandResponseEvent = _reflection.GeneratedProtocolMessageType('DemandResponseEvent', (_message.Message,), dict(
  DESCRIPTOR = _DEMANDRESPONSEEVENT,
  __module__ = 'iot_pb2'
  # @@protoc_insertion_point(class_scope:xbospb.DemandResponseEvent)
  ))
_sym_db.RegisterMessage(DemandResponseEvent)

Meter = _reflection.GeneratedProtocolMessageType('Meter', (_message.Message,), dict(
  DESCRIPTOR = _METER,
  __module__ = 'iot_pb2'
  # @@protoc_insertion_point(class_scope:xbospb.Meter)
  ))
_sym_db.RegisterMessage(Meter)

Light = _reflection.GeneratedProtocolMessageType('Light', (_message.Message,), dict(
  DESCRIPTOR = _LIGHT,
  __module__ = 'iot_pb2'
  # @@protoc_insertion_point(class_scope:xbospb.Light)
  ))
_sym_db.RegisterMessage(Light)

EVSE = _reflection.GeneratedProtocolMessageType('EVSE', (_message.Message,), dict(
  DESCRIPTOR = _EVSE,
  __module__ = 'iot_pb2'
  # @@protoc_insertion_point(class_scope:xbospb.EVSE)
  ))
_sym_db.RegisterMessage(EVSE)


_THERMOSTAT.fields_by_name['temperature']._options = None
_THERMOSTAT.fields_by_name['relative_humidity']._options = None
_THERMOSTAT.fields_by_name['override']._options = None
_THERMOSTAT.fields_by_name['fan_state']._options = None
_THERMOSTAT.fields_by_name['fan_mode']._options = None
_THERMOSTAT.fields_by_name['mode']._options = None
_THERMOSTAT.fields_by_name['state']._options = None
_THERMOSTAT.fields_by_name['heating_setpoint']._options = None
_THERMOSTAT.fields_by_name['cooling_setpoint']._options = None
_THERMOSTAT._options = None
_THERMOSTATSCHEDULE_SCHEDULEMAPENTRY._options = None
_METER.fields_by_name['power']._options = None
_METER.fields_by_name['voltage']._options = None
_METER.fields_by_name['apparent_power']._options = None
_METER.fields_by_name['energy']._options = None
_METER.fields_by_name['reactive_power']._options = None
_METER.fields_by_name['current']._options = None
_METER.fields_by_name['demand']._options = None
_METER.fields_by_name['water_total']._options = None
_METER.fields_by_name['water_rate']._options = None
_METER.fields_by_name['water_instantaneous']._options = None
_METER.fields_by_name['condense_total']._options = None
_METER.fields_by_name['condense_rate']._options = None
_METER.fields_by_name['condense_instantaneous']._options = None
_METER._options = None
_LIGHT.fields_by_name['state']._options = None
_LIGHT.fields_by_name['brightness']._options = None
_LIGHT._options = None
# @@protoc_insertion_point(module_scope)
