Ring Intercom Automation - Ding event

Hello everyone,

I’ve been gradually becoming more comfortable with HA over the last 6 months and am quite happy with the setup I have. Most of it I managed to find through tutorials, forum postings etc which helped get some understanding of how things work.

There is however one device which I don’t get along with very well - the Ring Intercom.

The Ring Intercom is working fine, both through the Ring app as well as through HA (in terms of unlocking the building’s door). All events are properly registered in HA as you can see below.

However I’ve been trying to set up a basic automation in which I want to activate a Ring Chime when someone rings the doorbell, and if it’s early/late, skip the Ring Chime and only notify through an notification through the app.

If I manually activate the automation everything works fine, notification arrives, Ring Chimes makes a sound. However If someone rings the intercom, nothing happens. Hence i suspect something is wrong with the event detection. What I got from the states page is that the event type is ‘ding’, but somehow I can’t get it to trigger even after several days of trying to adjust.

Below the automation yaml.

alias: Intercom ring
description: Rings the Chime when intercom is rang
triggers:
  - trigger: event
    event_type: ding
    event_data:
      entity_id: event.front_entrance_ding
conditions: []
actions:
  - if:
      - condition: time
        after: "07:00:00"
        before: "22:00:00"
        weekday:
          - mon
          - tue
          - wed
          - thu
          - fri
          - sat
          - sun
    then:
      - action: siren.turn_on
        metadata: {}
        data: {}
        target:
          entity_id: siren.door_bell_siren
      - action: notify.mobile_app_iphone_lau
        metadata: {}
        data:
          message: Ring Intercom - Someone is at the front door
          title: M78 - Intercom
    else:
      - action: notify.mobile_app_iphone_lau
        metadata: {}
        data:
          message: Ring Intercom - Someone is at the front door
          title: M78 - Intercom
mode: single

Can anyone point me in the right direction? I’ve read all the post about issues with the ring integration/API, but it seems to me that HA is actually registering events fine (also timely), so I guess that shouldn’t be the issue.

Thanks.

Edit: for completeness sake, HA is running on HA Green, version is 2025.1.2

I don’t have a lot of experience with the event trigger. I use the sensor that changes when the bell was last activated.

triggers:
  - entity_id:
      - sensor.front_entrance_last_ding
    trigger: state

In order to make sure that it doesnt activate when the state changes to “unavailable” or “unknown”, I added this condition:

- condition: not
  conditions:
      - condition: state
        entity_id: sensor.front_entrance_last_ding
        state: unavailable
      - condition: state
        entity_id: sensor.front_entrance_last_ding
        state: unknown

Thanks for your reply.

Changing it from an event trigger to an state trigger works, unfortunately the ring integration doesn’t expose ‘last_ding’ in my case, not sure yet why. I used last_activity and it all works as it should with the only caveat that the automation is triggered around 15-20 seconds after someone rings the doorbell.

This seems to rather have something to do with how often this state is updated - The ding event seems to be much quicker (below from the logs)

Last activity update: 14:39:11
Ding Event: 14:38:55

I’m really lost why the Ding event doesn’t trigger the automation - especially since it’s logged and working very well at first glance.

I will explore the Ring MQTT integration in parallel to see if I have more luck there.

— Edit —

Since I just got a few parcel deliveries it allowed for some quick testing.

The below state trigger works well (around 1 sec delay compared to actual doorbell).
It works with the ‘binary_sensor’ exposed through the Ring MQTT integration

  - trigger: state
    entity_id: binary_sensor.front_entrance_ding
    not_from:
      - unknown
      - unavailable
    not_to:
      - unknown
      - unavailable
      - "off"

I guess since it should only ring when the Binary sensor state switches to ‘on’, this could be simplified to:

  - trigger: state
    entity_id: binary_sensor.front_entrance_ding
    to:
      - "on"

One further observation that might help others.

The above solution works well - however it relies on Binary Sensor which will be depreciated in 2025.4 (!) if I understood correctly.

I did come across the following post.

Here the difference between an event trigger and event entity is highlighted - currently testing this by listening to the state of the ‘event entity’ that is exposed by the standard Ring integration.

The same as in the previous work around, just exchanging the binary sensor for the event entity.

entity_id: event.front_entrance_ding

Final update on this topic for anyone also struggling with the Ring Intercom and any automation of the device.

Below works and avoids using the Binary Sensor that will be depreciated.

triggers:
  - trigger: state
    entity_id: event.front_entrance_ding