ESPHome sterownik pompy

Mam problem z ustawieniem streowania pompa tak by kontrolowała stan wody. Jak jest woda (czujnik kontaktronu) pompa ma się dać załaczyć i jak wypompuje to kontaktron wyłącza pompę. Jak ustawić by nie dało się włączyć pompy gdy kontaktron wskazuje niski stan wody

binary_sensor:
  - platform: status
    name: "${device_name}_status"
  - platform: gpio
    name: "kontaktron_szambo"
    id: kontaktron_open
    pin:
      number: 5
      mode:
        input: true
        pullup: true
    device_class: window
    filters:
      - invert:
      - delayed_on: 120ms
    on_press:
      then:
        - switch.turn_off: pompa

output:
  - platform: gpio
    pin: 4
    id: 'pompa_SSR'

switch:
  - platform: output
    name: "Pompa SSR"
    output: 'pompa_SSR'
    id: 'pompa'

Jeśli dobrze rozumiem to pompę załączasz zewnętrznym trigger np. z HA, ale chcesz w tym module ESPHome mieć zabezpieczenie.
Taki suchy kod opakowujący Twój switch - możliwe, że da się to zrobić prościej, ale trzeba potestować:

binary_sensor:
  - platform: status
    name: "${device_name}_status"
  - platform: gpio
    name: "kontaktron_szambo"
    id: kontaktron_open
    pin:
      number: 5
      mode:
        input: true
        pullup: true
    device_class: window
    filters:
      - invert:
      - delayed_on: 120ms
    on_press:
      then:
        - switch.turn_off: pompa

switch:
  - platform: template
    name: "Pompa"
    id: "pompa"
    lambda: 'return id("pompa_internal").state;'
    turn_on_action:
      if:
        condition:
          binary_sensor.is_on: kontaktron_open
    then:
      - switch.turn_on: pompa_internal
switch:
  - platform: output
    name: "Pompa SSR"
    internal: true
    output: 'pompa_SSR'
    id: 'pompa_internal'