Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Further Enhance Pollen Sensors #118

Open
brianjking opened this issue Sep 7, 2017 · 1 comment
Open

Further Enhance Pollen Sensors #118

brianjking opened this issue Sep 7, 2017 · 1 comment

Comments

@brianjking
Copy link
Owner

brianjking commented Sep 7, 2017

homeassistant:
  customize:
    sensor.pollen_index:
      icon: mdi:flower
    sensor.pollen_level:
      icon: mdi:flower
    sensor.top_allergen_1:
      icon: mdi:flower
    sensor.top_allergen_2:
      icon: mdi:flower
    sensor.top_allergen_3:
      icon: mdi:flower
    sensor.pollen_trend:
      icon: mdi:flower
    sensor.pollen_outlook:
      icon: mdi:flower
    sensor.pollen_season:
      icon: mdi:flower
    sensor.pollen_index_forecast:
      icon: mdi:flower
    sensor.pollen_level_forecast:
      icon: mdi:flower
    sensor.cold__flu_percentage:
      icon: mdi:snowflake
    sensor.cold_flu_risk:
      icon: mdi:snowflake

sensor:
  # Today's Pollen Index
  - platform: rest
    name: 'Pollen Index'
    resource: https://www.pollen.com/api/forecast/current/pollen/ZIPCODE
    value_template: "{{value_json.Location.periods[1].Index}}"
    scan_interval: 21600
    headers:
      Referer: "https://www.pollen.com"

  # Today's Pollen Level
  - platform: template
    sensors:
      pollen_level:
        friendly_name: 'Pollen Level'
        entity_id: sensor.pollen_index
        value_template: >-
          {%- if states.sensor.pollen_index.state|float <= 2.4 %}
              Low
          {%- elif states.sensor.pollen_index.state|float <= 4.8 %}
              Med/Low
          {%- elif states.sensor.pollen_index.state|float <= 7.2 %}
              Med
          {%- elif states.sensor.pollen_index.state|float <= 9.6 %}
              Med/High
          {%- elif states.sensor.pollen_index.state|float <= 12.0 %}
              High
          {% else %}
              Unknown
          {%- endif %}

  # Tomorrow's Pollen Index Forecast
  - platform: rest
    name: 'Pollen Index Forecast'
    resource: https://www.pollen.com/api/forecast/current/pollen/ZIPCODE
    value_template: "{{value_json.Location.periods[2].Index}}"
    scan_interval: 21600
    headers:
      Referer: "https://www.pollen.com"

  # Tomorrow's Pollen Level Forecast
  - platform: template
    sensors:
      pollen_level_forecast:
        friendly_name: 'Pollen Level Forecast'
        entity_id: sensor.pollen_index
        value_template: >-
          {%- if states.sensor.pollen_index_forecast.state|float <= 2.4 %}
              Low
          {%- elif states.sensor.pollen_index_forecast.state|float <= 4.8 %}
              Med/Low
          {%- elif states.sensor.pollen_index_forecast.state|float <= 7.2 %}
              Med
          {%- elif states.sensor.pollen_index_forecast.state|float <= 9.6 %}
              Med/High
          {%- elif states.sensor.pollen_index_forecast.state|float <= 12.0 %}
              High
          {% else %}
              Unknown
          {%- endif %}

  # Today's Top Allergen
  - platform: rest
    name: 'Top Allergen 1'
    resource: https://www.pollen.com/api/forecast/current/pollen/ZIPCODE
    value_template: >-
      {% if value_json.Location.periods[1].Triggers[0] %}
      {{ value_json.Location.periods[1].Triggers[0].PlantType }}
      {% else %}
      -
      {% endif %}
    scan_interval: 21600
    headers:
      Referer: "https://www.pollen.com"

  # Today's Second Allergen
  - platform: rest
    name: 'Top Allergen 2'
    resource: https://www.pollen.com/api/forecast/current/pollen/ZIPCODE
    value_template: >-
      {% if value_json.Location.periods[1].Triggers[1] %}
      {{ value_json.Location.periods[1].Triggers[1].PlantType }}
      {% else %}
      -
      {% endif %}
    scan_interval: 21600
    headers:
      Referer: "https://www.pollen.com"

  # Today's Third Allergen
  - platform: rest
    name: 'Top Allergen 3'
    resource: https://www.pollen.com/api/forecast/current/pollen/ZIPCODE
    value_template: >-
      {% if value_json.Location.periods[1].Triggers[2] %}
      {{ value_json.Location.periods[1].Triggers[2].PlantType }}
      {% else %}
      -
      {% endif %}
    scan_interval: 21600
    headers:
      Referer: "https://www.pollen.com"

  # Pollen Trend
  - platform: rest
    name: 'Pollen Trend'
    resource: https://www.pollen.com/api/forecast/outlook/ZIPCODE
    value_template: "{{value_json.Trend}}"
    scan_interval: 21600
    headers:
      Referer: "https://www.pollen.com"

  # Pollen Outlook
  - platform: rest
    name: 'Pollen Outlook'
    resource: https://www.pollen.com/api/forecast/outlook/ZIPCODE
    value_template: "{{value_json.Outlook}}"
    scan_interval: 21600
    headers:
      Referer: "https://www.pollen.com"

  # Pollen Season
  - platform: rest
    name: 'Pollen Season'
    resource: https://www.pollen.com/api/forecast/outlook/ZIPCODE
    value_template: "{{value_json.Season}}"
    scan_interval: 21600
    headers:
      Referer: "https://www.pollen.com"

  # Today's Cold/Flu Percentage
  - platform: rest
    name: 'Cold & Flu Percentage'
    resource: https://www.pollen.com/api/forecast/extended/cold/ZIPCODE
    value_template: "{{value_json.Location.periods[1].Index}}"
    scan_interval: 21600
    headers:
      Referer: "https://www.pollen.com"
    unit_of_measurement: "%"

  # Today's Cold/Flu Risk
  - platform: template
    sensors:
      cold_flu_risk:
        friendly_name: 'Cold & Flu Risk'
        entity_id: sensor.cold__flu_percentage
        value_template: >-
          {%- if states.sensor.cold__flu_percentage.state|float <= 2.4 %}
              Low
          {%- elif states.sensor.cold__flu_percentage.state|float <= 4.8 %}
              Med/Low
          {%- elif states.sensor.cold__flu_percentage.state|float <= 7.2 %}
              Med
          {%- elif states.sensor.cold__flu_percentage.state|float <= 9.6 %}
              Med/High
          {%- elif states.sensor.cold__flu_percentage.state|float <= 12.0 %}
              High
          {% else %}
              Unknown
          {%- endif %}

https://community.home-assistant.io/t/pollen-allergy-sensor/10033/11

brianjking added a commit that referenced this issue Sep 8, 2017
brianjking added a commit that referenced this issue Sep 8, 2017
brianjking added a commit that referenced this issue Sep 8, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant