OpenClaw Node App 系統通知(System)指令完全攻略|發送通知、優先級設定、靜音

OpenClaw Node App 系統通知(System)指令完全攻略

這篇文章會介紹 OpenClaw Node App 的「系統通知」功能,讓你能夠從指令到手機上發送通知。

>

實驗日期:2026-04-19
實驗設備:Vivo V2514(Android 16)
OpenClaw 版本:2026.4.19.10ver(ThirdParty)

一、什麼是 System.notify?

想像一下

當你安裝 OpenClaw Node App 並連線到你的手機後,你可以透過指令發送通知到手機的狀態列

實用場景

  • 🔔 重要提醒:發送鬧鐘、會議提醒
  • 📢 狀態通知:告知系統狀態變化
  • 🤖 自動化觸發:配合其他指令做自動化通知
  • 📱 遠端通知:不在手機旁也能發送通知

二、System 指令家族

根據官方文件和原始碼分析,System 只有 1 個指令

指令功能
system.notify發送系統通知

三、指令詳細說明

system.notify - 發送系統通知

用途: 在手機狀態列顯示一個系統通知

指令格式:

openclaw nodes invoke --node "V2514" --command system.notify --params '{
  "title": "標題",
  "body": "內容",
  "sound": "none",
  "priority": "active"
}'

參數說明

參數類型必填說明
titlestring通知標題
bodystring通知內容
soundstring聲音設定(none = 安靜)
prioritystring優先級設定

四、優先級設定(priority)

可選值

說明頻道名稱
passive被動通知(低優先)OpenClaw Passive
active一般通知OpenClaw Active
timesensitive時間敏感(高優先)OpenClaw Time Sensitive

使用情境

情境建議設定
一般資訊active(預設)
需要立即注意timesensitive
後台更新、低優先資訊passive

五、靜音設定(sound)

可選值

如果 sound 設為以下任一值,通知會靜音(不會發出聲音):

說明
none無聲
silent無聲
off關閉
false關閉
0關閉

六、實際測試結果

測試 1:基本通知

openclaw nodes invoke --node "V2514" --command system.notify --params '{
  "title": "測試通知",
  "body": "這是來自 OpenClaw 的測試訊息"
}'

結果: ✅ 成功!通知出現在手機狀態列

{
  "ok": true,
  "payloadJSON": null
}

測試 2:靜音通知

openclaw nodes invoke --node "V2514" --command system.notify --params '{
  "title": "安靜的通知",
  "body": "這是一個靜音通知",
  "sound": "none"
}'

結果: ✅ 成功!通知無聲出現


測試 3:高優先級通知

openclaw nodes invoke --node "V2514" --command system.notify --params '{
  "title": "緊急通知",
  "body": "這是一個高優先級通知",
  "priority": "timesensitive"
}'

結果: ✅ 成功!通知以高優先級出現


測試 4:空內容錯誤處理

openclaw nodes invoke --node "V2514" --command system.notify --params '{
  "title": "",
  "body": ""
}'

結果: ✅ 正確的錯誤處理

INVALID_REQUEST: empty notification

七、使用範例

範例 1:發送會議提醒

openclaw nodes invoke --node "V2514" --command system.notify --params '{
  "title": "📅 會議提醒",
  "body": "下午 3 點有團隊會議"
}'

範例 2:發送靜音後台通知

openclaw nodes invoke --node "V2514" --command system.notify --params '{
  "title": "📥 檔案下載完成",
  "body": "report.pdf 已下載完成",
  "sound": "none"
}'

範例 3:發送緊急警報

openclaw nodes invoke --node "V2514" --command system.notify --params '{
  "title": "⚠️ 系統警告",
  "body": "CPU 使用率過高!",
  "priority": "timesensitive"
}'

範例 4:配合自動化腳本

假設你想在特定條件滿足時發送通知:

#!/bin/bash

# 檢查系統狀態
BATTERY=$(openclaw nodes invoke --node "V2514" --command device.status --params '{}' | grep -o '"battery":[0-9]*' | grep -o '[0-9]*')

if [ "$BATTERY" -lt 20 ]; then
  openclaw nodes invoke --node "V2514" --command system.notify --params '{
    "title": "🔋 低電量警告",
    "body": "電池電量低於 20%!",
    "priority": "timesensitive"
  }'
fi

八、注意事項

1. 需要通知權限

system.notify 需要 POST_NOTIFICATIONS 權限(Android 13+)。

檢查方式:

在 Android 設定中確認「OpenClaw Node」已授權「通知」權限。


2. 優先級頻道

Android 會為不同優先級建立不同的通知頻道:

頻道 ID頻道名稱
openclaw.system.notify.passiveOpenClaw Passive
openclaw.system.notify.activeOpenClaw Active
openclaw.system.notify.timesensitiveOpenClaw Time Sensitive

這些頻道在第一次發送對應優先級的通知時自動建立。


3. 通知會自動消失

通知會在點擊後或滑掉後消失,這是 Android 的預設行為。


九、與其他功能的比較

System.notify vs Notifications.actions

功能用途方向
System.notify發送通知從指令 → 手機
Notifications.actions讀取/操作通知手機 → 指令

System.notify 是「主動發送」通知,而 Notifications 是「被動讀取」通知。


十、常見問題

Q1:為什麼通知沒有聲音?

A:檢查是否設定了 "sound": "none"。如果需要聲音,不要加這個參數。


Q2:通知會一直停留在狀態列嗎?

A:不會。通知會在點擊或滑掉後消失,這是 Android 的預設行為。


Q3:可以發送圖片或附件嗎?

A:目前不支援。system.notify 只能發送純文字通知(標題 + 內容)。


Q4:通知有字數限制嗎?

A:有的。標題建議在 50 字以內,內容建議在 200 字以內。過長的內容可能會被截斷。


十一、結語

System.notify 功能是 OpenClaw Node App 中非常實用的功能之一。它讓你能夠:

  • 🔔 發送通知:從指令發送通知到手機
  • 📢 設定優先級:選擇一般、高優先或被動通知
  • 🔇 靜音選項:選擇是否發出聲音
  • 🤖 自動化:配合其他指令做自動化觸發

這個功能完全運行在你的本地裝置上,不會將任何資料上傳到雲端伺服器,隱私安全有保障。


文章更新:2026-04-19

感謝微風提供測試設備和建議!

留言