nap

joined 3 years ago
[–] nap@sh.itjust.works 1 points 3 weeks ago

That is a sexy loop. I need the heads up 6 days in advance so I am gonna leave it without the index. Gonna update the Post with my current solution.

[–] nap@sh.itjust.works 2 points 3 weeks ago

Hah, ty. Changed that for the Post cause my message is in German and I got problems enough with my dyslexia...

[–] nap@sh.itjust.works 1 points 3 weeks ago

Yes, my usw case just considers one Valve leading outwards that I need to shut and bleed. Don't need multiple freezing points for hight presure/isolated pipes. One fits all for me. The loop could be modified for those things. Now it is set to "2". Not even considering °C or °F (°C in my case). Home Assistenten takes care of that

[–] nap@sh.itjust.works 2 points 3 weeks ago

Thinking about it: i guess i should document my Automation a little more. It is checking the next 6 Days for freezing Temperatur not the current

[–] nap@sh.itjust.works 3 points 3 weeks ago

Yeah, half my research ended in system hang reports

48
submitted 3 weeks ago* (last edited 3 weeks ago) by nap@sh.itjust.works to c/selfhosted@lemmy.world
 

Hey Folks. I was wondering how to warn me before my whole water stuff outside freezes and bursts cause I forget to check the weather. The Solutions I found while searching the web did not click with me so here is what I came up with:

old solution:

alias: Freezing Warning
description: ''
triggers:
  - trigger: time
    at: '07:00:00'
conditions: []
actions:
  - variables:
      message: Your message to go out and close those Vales and empty the hoses
      mtittle: Freezing Alarm!
      minTemp: 2
  - action: weather.get_forecasts
    metadata: {}
    target:
      device_id: ChangeMe
    data:
      type: daily
    response_variable: daily
  - if:
      - condition: template
        value_template: |-
          {% set ns = namespace(freezing=false) %}
          {% for day in daily['weather.forecast_home'].forecast %}
            {% if day.templow < minTemp %}
              {% set ns.freezing = true %}
            {% endif %}
          {% endfor %}
          {{ ns.freezing }}
    then:
      - action: notify.send_message
        metadata: {}
        target:
          device_id: ChangeMe
        data:
          title: '{{ mtittle }}'
          message: '{{ message }}'
mode: single

Just a simple Automation. No editing template.yaml files. Could add a condition with a helper var like "I closed the vales etc" and don't remind me every day. Guess I'll do that... Be sure to change the ID of you location and ID of you mobile device for the message.

have fun, bye

Edit: here I am posting the new refined solution (now you have to suffer with my german stuff inside the vars and stuff):

You will need a helper like: input_boolean.wasser_bereit_fur_den_winter

Automation to check the Weather and create a Mobile-App warning with action item:

alias: Freezing Warning
description: ''
triggers:
  - trigger: time
    at: '07:00:05'
conditions: []
actions:
  - variables:
      messageCold: Es wird in den nächsten 6 Tagen Frieren!
      mtittleCold: Freezing Alarm!
      minTemp: 2
      maxTemp: 8
      messageWarm: Es ist wieder warm genug für Wasser draußen
      mtittleWarm: Wasser für draußen
  - action: weather.get_forecasts
    metadata: {}
    target:
      device_id: CHANGEME
    data:
      type: daily
    response_variable: daily
  - if:
      - condition: template
        value_template: |-
          {{ (daily['weather.forecast_home'].forecast
              | map(attribute='templow') | min) < minTemp }}
      - condition: switch.is_off
        target:
          entity_id: input_boolean.wasser_bereit_fur_den_winter
        options:
          behavior: any
          for: '00:00:00'
    then:
      - action: notify.mobile_app_handy_artur
        metadata: {}
        data:
          message: '{{ messageCold }}'
          title: '{{ mtittleCold }}'
          data:
            actions:
              - action: closed_outdoor_valve
                title: Dunezo!
    alias: check for freezing
  - if:
      - condition: template
        value_template: |-
          {{ (daily['weather.forecast_home'].forecast
              | map(attribute='templow') | min) > maxTemp }}
      - condition: switch.is_on
        target:
          entity_id: input_boolean.wasser_bereit_fur_den_winter
        options:
          behavior: any
          for: '00:00:00'
    then:
      - action: notify.mobile_app_CHANGEME
        metadata: {}
        data:
          message: '{{ messageWarm }}'
          title: '{{ mtittleWarm }}'
          data:
            actions:
              - action: opend_outdoor_valve
                title: Dunezo!
    alias: check for warm
mode: single

Automation for the Mobile action:

alias: Mobile Actions
mode: parallel
max: 10
triggers:
  - event_type: mobile_app_notification_action
    id: mobile_action_closed_outdoor_valve
    event_data:
      action: closed_outdoor_valve
    trigger: event
  - event_type: mobile_app_notification_action
    id: mobile_action_opend_outdoor_valve
    event_data:
      action: opend_outdoor_valve
    trigger: event
conditions: []
actions:
  - if:
      - condition: trigger
        id:
          - mobile_action_closed_outdoor_valve
    then:
      - action: input_boolean.turn_on
        metadata: {}
        target:
          entity_id: input_boolean.wasser_bereit_fur_den_winter
        data: {}
  - if:
      - condition: trigger
        id:
          - mobile_action_opend_outdoor_valve
    then:
      - action: input_boolean.turn_off
        metadata: {}
        target:
          entity_id: input_boolean.wasser_bereit_fur_den_winter
        data: {}

[–] nap@sh.itjust.works 1 points 1 year ago

Update: ditched the second OpnSense and figured out that MTU discovery with PVE and stuff needs some hard tweeking. Got it to work now. Hit me up for guidance 😅

 

Hey,

currently I am at a loss with my setup and can't figure out whats going wrong. I'm preparing a migration of my private root server to my @Home Setup. The idea was to create a DMZ for all those Server with Public Internet Access and put them into a DMZ.

Now I got a Public OPNsense, some Modem from my ISP, a Unifi Dream Machine (that manages LAN and stuff) and another OPNsense inside my DMZ.

There is a Wireguard Tunnel connecting the two OPNsense, the local one got a 0.0.0.0/0 route as Peer Network.

If I now try to access any Website, managed by the Nginx Proxy 192.168.1.1/24, it works fine as long as the Website is inside the DMZ.

My Problem now is to make the green path happen to access stuff inside my LAN over the Public OPNsense.

The proxy is able to curl the LAN Websites and i can Ping and Trace all the IPs but something is broken. I can see the Packages arrive at the LAN website and make it back to the public OPNsense but my browser will always get a "timed out" :'(