Alexa Anrufer ansagen bei aktivierter Rufweiterleitung

Moin liebe Community,

mit folgender Automation werden Name oder Nummer eines Anrufers über Alexa angesagt wenn ich Zuhause bin, es zwischen 9 und 21 Uhr ist und nicht bestimmte Nummern angerufen werden.
Das funktioniert auch soweit :slight_smile:

Jetzt habe ich aber in der FritzBox einen Parallelruf eingerichtet, damit mein Handy automatisch mit klingelt. Dadurch funktioniert die Automation nicht mehr :frowning:

Ich denke das liegt daran, das sich der Typ im Anrufmonitor in sekundenschnelle von “incoming” in “outgoing” ändert.
Dadurch gibt es augenscheinlich kein “from_name” mehr. Stattdessen wird ein “to_name” angezeigt.

Leider konnte mir weder Google noch ChatGPT helfen eine Lösung zu finden.
Hat hier jemand eventuell eine zündende Idee?

alias: Anruf auf Alexa melden
description: >
  Anruf wird mit Name, Nummer oder als unbekannt über Alexa gemeldet. Inkl. Info
  an iPhone
triggers:
  - entity_id: sensor.fritz_box_7590_anrufmonitor_telefonbuch
    to:
      - ringing
      - dialing
    for:
      seconds: 2
    trigger: state
    enabled: true
conditions:
  - condition: state
    entity_id: person.<Person>
    state: home
  - condition: time
    after: "09:00:00"
    before: "21:00:00"
    enabled: true
  - condition: template
    value_template: >
      {% set to_number =
      state_attr("sensor.fritz_box_7590_anrufmonitor_telefonbuch", "to") %}

      {{ to_number not in ["<xxxxx>", "<xxxxx>", "<xxxxx>", "<xxxxx>", "<xxxxx>"] }}
    enabled: true
actions:
  - variables:
      caller_name: >
        {% set name =
        state_attr("sensor.fritz_box_7590_anrufmonitor_telefonbuch",
        "from_name") %} {% if name == "unknown" or name == none %}
          Anruf von Unbekannt
        {% elif name %}
          Anruf von {{ name | trim }}
        {% else %}
          Anruf von {{ state_attr("sensor.fritz_box_7590_anrufmonitor_telefonbuch", "from") }}
        {% endif %}
  - target:
      entity_id: media_player.ganzem_haus
    data:
      volume_level: 0.5
    action: media_player.volume_set
  - repeat:
      while:
        - condition: or
          conditions:
            - condition: state
              entity_id: sensor.fritz_box_7590_anrufmonitor_telefonbuch
              state: ringing
            - condition: state
              entity_id: sensor.fritz_box_7590_anrufmonitor_telefonbuch
              state: dialing
      sequence:
        - data:
            message: "{{ caller_name }}"
            data:
              type: announce
              method: speak
            target:
              - media_player.ganzem_haus
          action: notify.alexa_media
        - delay:
            seconds: 5
  - choose:
      - conditions:
          - condition: state
            entity_id: media_player.lg_webos_tv_un85006la
            state: "on"
        sequence:
          - action: notify.lg_webos_tv_un85006la
            metadata: {}
            data:
              message: "Anruf: {{ caller_name }}"
  - target:
      entity_id: media_player.ganzem_haus
    data:
      volume_level: 0.3
    action: media_player.volume_set
  - data:
      title: Anruf Zuhause von
      message: "{{ caller_name }}"
      data:
        push:
          sound: Minuet.caf
    action: notify.mobile_app_<Telefon>
mode: single

Also ich habe hier auch eine ähnliche Automation und Anrufe Zuhause werden mir aufs Handy durchgereicht über die App “FRITZ!Fon”. Das klappt prima, die DECT-Telefone klingeln, Alexa liest den Anrufernamen vor und das Handy klingelt auch.

Das klappt bei mir auch alles, solange die Rufweiterleitung in der Fritz Box nicht aktiviert ist.
Wenn ich die aktiviere, funktioniert die Ansage durch Alexa nicht mehr. Da kommt dann immer nur “Anruf von unbekannt”.
Die App “Fritz!Fon” funktioniert ja nur, wenn ich auch Zuhause im WLAN bin. Die klingelt nicht mit, wenn ich unterwegs bin. Deswegen die Rufweiterleitung.

Ja, du hast recht, mit FritzFon außerhalb des eigenen WLAN geht es so nicht. Hab das lange so nicht mehr versucht, deshalb vergessen, sorry. Es geht aber bei eingeschaltetem VPN zur Fritte. Aber das will man ja evtl. auch nicht immer aktiv haben.

zumal mein iPhone eine VPN Verbindung immer nach kurzer Zeit der Nichtbenutzung kappt.
Aber vielleicht hat ja noch jemand eine Idee, wie die Automation angepasst werden kann :slight_smile:

Ich habe es mal ausprobiert, es verhält sich hier ähnlich wie bei dir: In der Fritzbox Parallelruf für die Handynummer eingestellt → Es wird zunächst 1x der Name vorgelesen von den gewünschten Echos, dann aber, bei der gewünschten einmaligen Wiederholung des Namens kommt “Anruf von None”. Mehrmals versucht, immer gleiches Verhalten.

Es funktioniert aber korrekt bei mir, wenn ich den Parallelruf in der Fritzbox wieder deaktiviere und am Handy die App meines Providers (easybell) nutze: Handy klingelt (über die App), Name wird Zuhause wie gewünscht 2x vorgelesen. Ich kann dann am Handy den Anruf auch ablehnen, es klingelt Zuhause trotzdem weiter (bei uns bis der AB einspringt).

Möglich wäre vielleicht auch das die Rufumleitung der Fritz Box automatisiert aktiviert / deaktiviert wird. Je nachdem, ob ich Zuhause bin oder nicht.
Google und Konsorten haben mir den Servicebefehl “fritzbox.redirect_call_forwarding” vorgeschlagen. Leider kennt meine Kombo aus HA und Fritz Tools das nicht.
Aber ich gebe nicht auf. Es muss doch eine Lösung geben :slight_smile: :slight_smile:

Lösung gefunden
Bei mir gibt es die Entität “switch.meine.Fritz.Box_call_deflection_0”, womit ich die Rufumleitung ein- bzw. ausschalten kann.
Das nutze ich nun in einer zweiten Automation, damit die Rufumleitung deaktiviert ist, während ich Zuhause bin. Dadurch klappt die Alexa Ansage wieder fehlerfrei.