@ginden/ha-mqtt-discoverable
    Preparing search index...

    Class ButtonInfo

    Button-specific information

    Hierarchy (View Summary)

    Index

    Properties

    component: "button" = 'button'

    Component type for a button

    device?: DeviceInfo

    Information about the device this sensor belongs to

    deviceClass?: string

    Sets the class of the device, changing the device state and icon that is displayed on the frontend.

    enabledByDefault?: boolean

    Flag which defines if the entity should be enabled when first added.

    entityCategory?: string

    Classification of a non-primary entity.

    expireAfter?: number

    If set, it defines the number of seconds after the sensor’s state expires, if it’s not updated. After expiry, the sensor’s state becomes unavailable. Default the sensors state never expires.

    forceUpdate?: boolean

    Sends update events even if the value hasn’t changed. Useful if you want to have meaningful value graphs in history.

    icon?: string

    Icon of the entity

    name: string

    Name of the sensor inside Home Assistant

    objectId?: string

    Set this to generate the entity_id in HA instead of using name

    payloadPress: string = ...

    The payload to send to trigger the button.

    qos?: number

    The maximum QoS level to be used when receiving messages.

    retain?: boolean

    If the published message should have the retain flag on or not

    uniqueId?: string

    Set this to enable editing sensor from the HA ui and to integrate with a device

    Methods

    • Generates a JSON object that can be used as an MQTT payload.

      Returns Record<string, unknown>

    • Mapping of class properties to MQTT payload keys.

      Returns {
          component: "component";
          device: "device";
          deviceClass: "device_class";
          enabledByDefault: "enabled_by_default";
          entityCategory: "entity_category";
          expireAfter: "expire_after";
          forceUpdate: "force_update";
          icon: "icon";
          name: "name";
          objectId: "object_id";
          payloadPress: "payload_press";
          qos: "qos";
          retain: "retain";
          uniqueId: "unique_id";
      }