Problem understanding HA integration

I have a NodeMCU with OMG 1.0.0 and a SRX882 receiver. I have HA discovery enabled.
When I press one of my buttons, I see a device trigger XXX–YYY-RF. (XXX and YYY are hexadecimal numbers) Press another butten, get a device trigger XXX–ZZZ-RF. So far, so good.

In HomeAssistant I try to use these buttons as follows:

alias: button pressed
description: ""
trigger:
  - platform: device
    domain: mqtt
    device_id: xxxxxxxxxxxxxxx
    type: button_short_press
    subtype: turn_on
    discovery_id: XXX-YYY-RF
    id: Button0
  - platform: device
    domain: mqtt
    device_id: xxxxxxxxxxxxxxx
    type: button_short_press
    subtype: turn_on
    discovery_id: XXX-ZZZ-RF
    id: ButtonA
condition: []
action:
  - service: telegram_bot.send_message
    data:
      message: "{{ trigger.id }} pressed"
mode: queued
max: 10

However, when I press either button, HA tells me that both triggers are fired.
Do I misunderstand the function of discovery_id?

Hello,

Maybe @odyno could jump in and help

I did not use the automation trigger, why? Because I sometimes get echoed signals and also because in my case the code quickly became a spaghetti code

In my case, I created an entity via YAML representing my devices. In this case, all events and device statuses are handled by the internal HA stuff.
Triggers (if needed) manage that special entity just like all other entities.

Anyway, this is an example of my sensor (in my case it is a Pir that sends the message when someone triggers it)

mqtt:
  binary_sensor:
    - unique_id: pir.15484294
      name: "Pir.Mansarda"
      device_class: motion
      state_topic: "home/+/433toMQTT/15484294"
      value_template: "{{ value_json.value }}"
      payload_on: "15484294"
      off_delay: 3

In a somewhat broader context, e.g. sending messages (my LED strip remote control), I emulated the discovery of the remote control with simple automation that creates it. So once again I use the HA Entity on HA like the others.

Here is the code that emulates the creation of the discovery:

automation:
  - id: '166887267157423009'
    alias: 00 - Configure MQTT Led Sala
    description: Questa automazione Riconfigura il led_sala
    trigger:
    - platform: homeassistant
      event: start
    condition: []
    action:
    - service: mqtt.publish
      data:
        topic: homeassistant/button/led_sala/caldo/config
        payload: "{\n  \"automation_type\": \"button\",\n  \"unique_id\": 23091979215300,\n
          \ \"name\": \"Caldo\",\n  \"command_topic\": \"home/OMG_BTRF_OMG1/commands/MQTTto433\",\n
          \ \"payload_press\": \"{\\\"value\\\":215300,\\\"protocol\\\":1,\\\"delay\\\":388}\",\n
          \ \"device\": {\n    \"identifiers\": [\n      \"Lampadario_led_sala\"\n    ],\n
          \   \"name\": \"led_sala\",\n    \"sw_version\": \"0.0.0\",\n    \"model\":
          \"Led RF control\",\n    \"manufacturer\": \"Staniscia\"\n  }\n}"
        retain: true
        qos: '0'
    - service: mqtt.publish
      data:
        topic: homeassistant/button/led_sala/freddo/config
        payload: "{\n  \"automation_type\": \"button\",\n  \"unique_id\": 23091979215302,\n
          \ \"name\": \"Freddo\",\n  \"command_topic\": \"home/OMG_BTRF_OMG1/commands/MQTTto433\",\n
          \ \"payload_press\": \"{\\\"value\\\":215302,\\\"protocol\\\":1,\\\"delay\\\":388}\",\n
          \ \"device\": {\n    \"identifiers\": [\n      \"Lampadario_led_sala\"\n    ],\n
          \   \"name\": \"led_sala\",\n    \"sw_version\": \"0.0.0\",\n    \"model\":
          \"Led RF control\",\n    \"manufacturer\": \"Staniscia\"\n  }\n}"
        retain: true
        qos: '0'
    - service: mqtt.publish
      data:
        topic: homeassistant/button/led_sala/up/config
        payload: "{\n  \"automation_type\": \"button\",\n  \"unique_id\": 23091979215299,\n
          \ \"name\": \"Up\",\n  \"command_topic\": \"home/OMG_BTRF_OMG1/commands/MQTTto433\",\n
          \ \"payload_press\": \"{\\\"value\\\":215299,\\\"protocol\\\":1,\\\"delay\\\":388}\",\n
          \ \"device\": {\n    \"identifiers\": [\n      \"Lampadario_led_sala\"\n    ],\n
          \   \"name\": \"led_sala\",\n    \"sw_version\": \"0.0.0\",\n    \"model\":
          \"Led RF control\",\n    \"manufacturer\": \"Staniscia\"\n  }\n}"
        retain: true
        qos: '0'
    - service: mqtt.publish
      data:
        topic: homeassistant/button/led_sala/down/config
        payload: "{\n  \"automation_type\": \"button\",\n  \"unique_id\": 23091979215303,\n
          \ \"name\": \"Down\",\n  \"command_topic\": \"home/OMG_BTRF_OMG1/commands/MQTTto433\",\n
          \ \"payload_press\": \"{\\\"value\\\":215303,\\\"protocol\\\":1,\\\"delay\\\":388}\",\n
          \ \"device\": {\n    \"identifiers\": [\n      \"Lampadario_led_sala\"\n    ],\n
          \   \"name\": \"led_sala\",\n    \"sw_version\": \"0.0.0\",\n    \"model\":
          \"Led RF control\",\n    \"manufacturer\": \"Staniscia\"\n  }\n}"
        retain: true
        qos: '0'
    - service: mqtt.publish
      data:
        topic: homeassistant/button/led_sala/soffuso/config
        payload: "{\n  \"automation_type\": \"button\",\n  \"unique_id\": 23091979215306,\n
          \ \"name\": \"Soffuso\",\n  \"command_topic\": \"home/OMG_BTRF_OMG1/commands/MQTTto433\",\n
          \ \"payload_press\": \"{\\\"value\\\":215306,\\\"protocol\\\":1,\\\"delay\\\":388}\",\n
          \ \"device\": {\n    \"identifiers\": [\n      \"Lampadario_led_sala\"\n    ],\n
          \   \"name\": \"led_sala\",\n    \"sw_version\": \"0.0.0\",\n    \"model\":
          \"Led RF control\",\n    \"manufacturer\": \"Staniscia\"\n  }\n}"
        retain: true
        qos: '0'
    - service: mqtt.publish
      data:
        topic: homeassistant/button/led_sala/max_caldo/config
        payload: "{\n  \"automation_type\": \"button\",\n  \"unique_id\": 23091979215307,\n
          \ \"name\": \"Caldo Massimo\",\n  \"command_topic\": \"home/OMG_BTRF_OMG1/commands/MQTTto433\",\n
          \ \"payload_press\": \"{\\\"value\\\":215307,\\\"protocol\\\":1,\\\"delay\\\":388}\",\n
          \ \"device\": {\n    \"identifiers\": [\n      \"Lampadario_led_sala\"\n    ],\n
          \   \"name\": \"led_sala\",\n    \"sw_version\": \"0.0.0\",\n    \"model\":
          \"Led RF control\",\n    \"manufacturer\": \"Staniscia\"\n  }\n}"
        retain: true
        qos: '0'
    - service: mqtt.publish
      data:
        topic: homeassistant/button/led_sala/max_freddo/config
        payload: "{\n  \"automation_type\": \"button\",\n  \"unique_id\": 23091979215308,\n
          \ \"name\": \"Freddo Massimo\",\n  \"command_topic\": \"home/OMG_BTRF_OMG1/commands/MQTTto433\",\n
          \ \"payload_press\": \"{\\\"value\\\":215308,\\\"protocol\\\":1,\\\"delay\\\":388}\",\n
          \ \"device\": {\n    \"identifiers\": [\n      \"Lampadario_led_sala\"\n    ],\n
          \   \"name\": \"led_sala\",\n    \"sw_version\": \"0.0.0\",\n    \"model\":
          \"Led RF control\",\n    \"manufacturer\": \"Staniscia\"\n  }\n}"
        retain: true
        qos: '0'
    mode: single

maybe there is a smarter way to do it, but I end up using this one and it feels good and solid