Journal

Push Notification อัจฉริยะจาก HA Companion App: ออกแบบแจ้งเตือนที่ช่วยได้จริง ไม่รบกวนชีวิต

Designing Actionable Push Notifications from HA Companion App: Alerts That Help, Not Annoy

13 พฤษภาคม 2569 · 1 นาที

Push Notification สมาร์ทโฮมที่ดีควรเป็นอย่างไร

ปัญหาที่พบบ่อยที่สุดของผู้ใช้สมาร์ทโฮมคือ Notification Fatigue หรืออาการเบื่อการแจ้งเตือน เพราะระบบส่งการแจ้งเตือนมากเกินไปจนคนเริ่มเพิกเฉยหรือปิดทั้งหมด ผลคือแจ้งเตือนด่วนจริงๆ ก็ถูกมองข้ามไปด้วย

หลัก Good Notification Design มี 3 ข้อ:

  1. Actionable: กดแล้วทำอะไรได้เลย ไม่ต้องเปิด App
  2. Timely: ส่งตอนที่ข้อมูลยังมีประโยชน์
  3. Contextual: รู้ว่าคุณอยู่ที่ไหน ทำอะไร และส่งเฉพาะสิ่งที่เกี่ยวข้อง

Home Assistant Companion App Notification Features

HA Companion App รองรับ Notification ขั้นสูงที่คนส่วนใหญ่ไม่ได้ใช้:

Action Buttons — ปุ่มกดตอบสนองโดยตรงจากการแจ้งเตือน

yaml
service: notify.mobile_app_tony_iphone
data:
  title: "ประตูหน้าเปิดอยู่"
  message: "บ้านว่าง 30 นาทีแล้ว ต้องการล็อคไหม?"
  data:
    actions:
      - action: "LOCK_DOOR"
        title: "ล็อคเดี๋ยวนี้"
      - action: "IGNORE_DOOR"
        title: "ไม่ต้องการ"

Priority Levels — iOS Critical Alert ข้ามโหมด Do Not Disturb:

yaml
data:
  push:
    sound:
      name: default
      critical: 1
      volume: 1.0

ใช้เฉพาะกรณีฉุกเฉินจริง: ควันไฟ, น้ำรั่ว, แก๊สรั่ว

Tag และ Replace — แทนที่การแจ้งเตือนเก่าแทนที่จะซ้อนใหม่:

yaml
data:
  tag: "front_door_alert"
  message: "ประตูหน้าล็อคแล้ว"

ออกแบบ Notification Matrix

แบ่งประเภทการแจ้งเตือนเป็น 4 Tier:

Tier 1 — Critical (Critical Alert, ทุกเวลา)

  • ควันไฟ / CO สูง
  • น้ำรั่วรุนแรง
  • แก๊สรั่ว
  • บุกรุก Alarm

Tier 2 — Urgent (Normal + Sound, ทุกเวลา)

  • ประตูหน้าเปิดนานกว่า 5 นาทีขณะไม่มีคน
  • กล้องตรวจจับคนแปลกหน้าตอนกลางคืน
  • แบตเตอรี่ UPS ต่ำ < 20%

Tier 3 — Informational (Normal, ปิด DND)

  • พัสดุถูกวางหน้าบ้าน (Doorbell Detection)
  • เด็กกลับถึงบ้านแล้ว (Phone Arrives Home)
  • ซักผ้าเสร็จแล้ว (Power Monitoring)

Tier 4 — Daily Digest (กำหนดเวลา เช่น 20:00)

  • สรุปการใช้ไฟฟ้าวันนี้
  • อุปกรณ์ที่แบตเตอรี่ต่ำ
  • Automation ที่ทำงานผิดปกติ

Context-Aware Delivery: ส่งแจ้งเตือนฉลาดขึ้น

Location-Based:

yaml
condition:
  - condition: state
    entity_id: person.tony
    state: "not_home"

ส่ง Tier 1-2 เสมอ แต่ Tier 3 เฉพาะเมื่ออยู่นอกบ้าน

Time-Based:

yaml
condition:
  - condition: time
    after: "07:00:00"
    before: "22:00:00"

การแจ้งเตือนที่ไม่ฉุกเฉิน ส่งเฉพาะช่วงเวลากลางวัน

Repeat Suppression:

yaml
mode: single
max_exceeded: silent

ป้องกันการแจ้งเตือนซ้ำภายใน 15 นาทีสำหรับ Event เดิม

ตัวอย่าง Automation จริง: กล้องตรวจจับคนกดออก

yaml
alias: "Doorbell Action Handler"
trigger:
  - platform: event
    event_type: mobile_app_notification_action
    event_data:
      action: "UNLOCK_DOOR"
action:
  - service: lock.unlock
    target:
      entity_id: lock.front_door
  - service: notify.mobile_app_tony_iphone
    data:
      message: "ปลดล็อคแล้ว จะล็อคอีกครั้งใน 2 นาที"
      tag: "door_unlock_confirm"
  - delay:
      minutes: 2
  - service: lock.lock
    target:
      entity_id: lock.front_door

KPI วัดผล Notification System

  • Dismiss Rate < 20%: ถ้าสูงกว่านี้แสดงว่าแจ้งเตือนไม่เกี่ยวข้อง
  • Action Rate > 40%: ผู้ใช้กด Action Button แทนที่จะแค่อ่าน
  • Critical Miss Rate = 0%: ไม่มีการพลาดการแจ้งเตือนฉุกเฉินแม้แต่ครั้งเดียว
  • Daily Volume < 15 Notifications: มากกว่านี้คือสัญญาณ Notification Fatigue

ทบทวน Notification System ทุก 3 เดือน และปิดการแจ้งเตือนที่ Dismiss Rate สูงกว่า 50% ทันที

คำถามที่พบบ่อย

Home Assistant ส่ง Push Notification ที่มีปุ่มกดตอบสนองได้ไหม?
ได้ ผ่าน HA Companion App รองรับ Action Buttons ที่กดแล้วส่ง Event กลับมา Trigger Automation ได้โดยตรง เช่น ปุ่ม Lock Now ที่ล็อคประตูทันที
จะส่ง Notification ข้าม Do Not Disturb ได้อย่างไร?
ใช้ Critical Alert ใน iOS Companion App โดยตั้ง critical: 1 ใน payload เหมาะสำหรับเหตุฉุกเฉินเท่านั้น เช่น ควันไฟ, น้ำรั่ว, หรือแก๊สรั่ว
จะป้องกันการแจ้งเตือนซ้ำๆ ในเวลาสั้นๆ ได้อย่างไร?
ใช้ mode: single และ max_exceeded: silent ใน Automation และใส่ Tag เดียวกันใน Notification เพื่อให้แทนที่การแจ้งเตือนเก่าแทนซ้อน
ควรส่งการแจ้งเตือนกี่ครั้งต่อวันเพื่อไม่ให้เบื่อ?
ไม่ควรเกิน 15 ครั้งต่อวัน ถ้าเกินนี้ควรรวม Tier 4 เป็น Daily Digest แทน และตรวจสอบ Automation ที่ Trigger ซ้ำบ่อย
Push Notification อัจฉริยะจาก HA Companion App: ออกแบบแจ้งเตือนที่ช่วยได้จริง ไม่รบกวนชีวิต · HappySmart