- platform: darksky
  api_key: !secret FORCAST_API_KEY
  forecast:
    - 0
  monitored_conditions:
    - summary
    - icon
    - nearest_storm_distance
    - nearest_storm_bearing
    - precip_type
    - precip_intensity
    - precip_probability
    - temperature
    - temperature_high
    - temperature_low
    - apparent_temperature
    - dew_point
    - wind_speed
    - wind_bearing
    - cloud_cover
    - humidity
    - pressure
    - visibility
    - ozone
    - minutely_summary
    - hourly_summary
    - daily_summary
    - precip_intensity_max
  update_interval:
    # At least one of these must be specified:
    days: 0
    hours: 0
    minutes: 5
    seconds: 0
    milliseconds: 0
- platform: moon
- platform: pollen
  zip_code: "30017"
  monitored_conditions:
    - allergy_index_today
    - asthma_index_today
## Accurite 158 - Back Porch
- platform: mqtt
  name: "Accurite Back Porch Temperature"
  state_topic: "house/accurite-158/temperature"
- platform: mqtt
  name: "Accurite Back Porch Humidity"
  state_topic: "house/accurite-158/humidity"
# - platform: mqtt
#   name: "Accurite Back Porch Status"
#   state_topic: "house/accurite-158/status"
# - platform: mqtt
#   name: "Accurite Back Porch Battery"
#   state_topic: "house/accurite-158/battery"
- platform: mqtt
  name: "Accurite Back Porch Model"
  state_topic: "house/accurite-158/model"
- platform: mqtt
  name: "Accurite Back Porch lupdate"
  state_topic: "house/accurite-158/lastupdate"
- platform: mqtt
  name: "Accurite Garage Temperature"
  state_topic: "house/accurite-10968/temperature"
- platform: mqtt
  name: "Accurite Garage Humidity"
  state_topic: "house/accurite-10968/humidity"
- platform: mqtt
  name: "Accurite Garage Model"
  state_topic: "house/accurite-10968/model"
- platform: mqtt
  name: "Accurite Garage lupdate"
  state_topic: "house/accurite-10968/lastupdate"
- platform: nws_alerts
  zone_id: 'GAZ034'
# - platform: rest
#   resource: https://api.weather.gov/alerts/active/count
#   name: NWS Alert Count Raw
#   value_template: >
#    {% if value_json is defined and value_json.zones.GAZ034 is defined %}
#      {{ value_json.zones.GAZ034 }}
#    {% else %}
#      0
#    {% endif %}
#   headers:
#     User-Agent: Homeassistant
#     Accept: application/ld+json
#   scan_interval: 60

# - platform: template
#   sensors:
#   nws_alert_count_filtered:
#     friendly_name: NWS Alert Count
#     entity_id: sensor.nws_alert_count_raw
#     value_template: >
#      {% if is_state('sensor.nws_alert_count_raw', 'unavailable') or is_state('sensor.nws_alert_count_raw', 'unknown') %}
#        {{ states.sensor.nws_alert_count_filtered.state }}
#      {% else %}
#        {{ states.sensor.nws_alert_count_raw.state }}
#      {% endif %}

# - platform: rest
#   resource: https://api.weather.gov/alerts/active?zone=GAZ034
#   name: NWS Alert Event Raw
#   value_template: >
#    {% if value_json.features[0] is defined %}
#      {{ value_json['features'][0]['properties'].event }}
#    {% else %}
#      None
#    {% endif %}
#   json_attributes:
#   - features
#   headers:
#     User-Agent: Homeassistant
#     Accept: application/geo+json
#   scan_interval: 60

# - platform: template
#   sensors:
#   nws_alert_event_filtered:
#     friendly_name: NWS Alert Event
#     entity_id: sensor.nws_alert_event_raw
#     value_template: >
#      {% if is_state('sensor.nws_alert_event_raw', 'unavailable') or is_state('sensor.nws_alert_event_raw', 'unknown') %}
#        {{ states.sensor.nws_alert_event_filtered.state }}
#      {% else %}
#        {{ states.sensor.nws_alert_event_raw.state }}
#      {% endif %}

# - platform: template
#   sensors:
#     nws_alert_event_2:
#       friendly_name: NWS Alert Event 2
#       entity_id: sensor.nws_alert_event_raw
#       value_template: >
#        {% if state_attr('sensor.nws_alert_event_raw', 'features')[1] is defined %}
#          {{ state_attr('sensor.nws_alert_event_raw', 'features')[1]['properties'].event }}
#        {% else %}
#          None
#        {% endif %}
#     nws_alert_event_3:
#       friendly_name: NWS Alert Event 3
#       entity_id: sensor.nws_alert_event_raw
#       value_template: >
#        {% if state_attr('sensor.nws_alert_event_raw', 'features')[2] is defined %}
#          {{ state_attr('sensor.nws_alert_event_raw', 'features')[2]['properties'].event }}
#        {% else %}
#          None
#        {% endif %}

- platform: template
  sensors:
    clothing_forecast:
      friendly_name: "Clothing Forecast"
      unit_of_measurement: ''
      value_template: >-
          {%- if states('sensor.dark_sky_daytime_high_temperature_0')|float > 63 %}
            {%- if states('sensor.dark_sky_daytime_high_temperature_0')|float < 80 %}
              Nice
            {% elif states('sensor.dark_sky_daytime_high_temperature_0')|float > 95 %}
              Hot
            {% else %}
              Toasty
            {%- endif %}
          {% elif states('sensor.dark_sky_daytime_high_temperature_0')|float < 64 %}
            {%- if states('sensor.dark_sky_daytime_high_temperature_0')|float < 32 %}
              Freezing
            {% elif states('sensor.dark_sky_daytime_high_temperature_0')|float > 50 %}
              Chilly
            {% else %}
              Cold
            {%- endif %}
          {% else %}
           Unknown
          {%- endif %}