---
read_when:
    - การเปิดใช้งานสรุป HealthKit บน Node ของ iPhone
    - การเรียกใช้ health.summary หรือการแก้ไขปัญหาเมตริกสุขภาพที่ขาดหายไป
    - การตรวจสอบว่าข้อมูลสุขภาพใดบ้างที่สามารถส่งออกจาก iPhone ได้
summary: เปิดใช้งานและเรียกใช้สรุป HealthKit ที่ควบคุมด้วยสิทธิ์ความเป็นส่วนตัวจาก Node บน iPhone
title: สรุปข้อมูล HealthKit
x-i18n:
    generated_at: "2026-07-16T19:24:35Z"
    model: gpt-5.6
    postprocess_version: locale-links-v1
    prompt_version: 32
    provider: openai
    source_hash: 2f074c715ee1ef805ec953c301c03940e664c161f7f14c4388c83c64e222b557
    source_path: platforms/ios-healthkit.md
    workflow: 16
---

# ข้อมูลสรุป HealthKit

OpenClaw สามารถขอข้อมูลสรุปแบบอ่านอย่างเดียวของวันปฏิทินปัจจุบันจาก Node ของ iPhone ที่เชื่อมต่ออยู่ได้ iPhone จะคำนวณข้อมูลรวมบนอุปกรณ์และส่งกลับเฉพาะจำนวนก้าว ระยะเวลานอนหลับ อัตราการเต้นของหัวใจขณะพักโดยเฉลี่ย และจำนวน/ระยะเวลาการออกกำลังกาย ไม่รองรับตัวอย่างข้อมูล HealthKit แต่ละรายการ แหล่งที่มา ข้อมูลเมตา เวชระเบียน การนำเข้าข้อมูลในเบื้องหลัง และการเขียนข้อมูล

ฟีเจอร์นี้ปิดอยู่โดยค่าเริ่มต้น โดยต้องได้รับความยินยอมแยกต่างหากบน iPhone และการอนุญาตบน Gateway

## ข้อกำหนด

- iPhone ที่ใช้งานแอป OpenClaw สำหรับ iOS ซึ่ง HealthKit รายงานว่ามีข้อมูลสุขภาพพร้อมใช้งาน
- Node ของ iPhone ที่เชื่อมต่อและได้รับการอนุมัติแล้ว ดู[การตั้งค่าแอป iOS](/th/platforms/ios)
- Gateway เวอร์ชันปัจจุบันที่สามารถเข้าถึง Node ของ iPhone ได้
- ข้อมูล Health ที่อ่านได้สำหรับเมตริกที่คาดว่าจะเห็น Apple Watch สามารถเพิ่มข้อมูลลงในคลัง Health ของ iPhone ได้ แต่ไม่จำเป็นต้องใช้แอป OpenClaw สำหรับ watchOS เพื่อดูข้อมูลสรุป HealthKit

## เปิดใช้งานการเข้าถึง

### 1. อนุญาตคำสั่ง Gateway

เพิ่ม `health.summary` ลงในอาร์เรย์ `gateway.nodes.allowCommands` ที่มีอยู่ใน
`openclaw.json` โดยคงคำสั่งทั้งหมดที่มีอยู่แล้วไว้:

```json5
{
  gateway: {
    nodes: {
      allowCommands: ["health.summary"],
    },
  },
}
```

`health.summary` ถูกจัดประเภทว่าเกี่ยวข้องกับความเป็นส่วนตัวสูง และค่าเริ่มต้นของแพลตฟอร์ม iOS จะไม่อนุญาตคำสั่งนี้ รายการใน `gateway.nodes.denyCommands` จะมีผลเหนือกว่ารายการอนุญาต ดู[นโยบายคำสั่งของ Node](/th/nodes#command-policy)

### 2. เปิดใช้งานการแชร์บน iPhone

ในแอป iOS:

1. เปิด **Settings -> Permissions -> Privacy & Access -> Health Summaries**
2. แตะ **Enable & Share Summaries**
3. อ่านคำชี้แจง แล้วเลือกหมวดหมู่ Health ที่อนุญาตให้ OpenClaw อ่านได้ในหน้าสิทธิ์ของ Apple

สวิตช์นี้บันทึกตัวเลือกการแชร์กับ OpenClaw ที่ระบุไว้อย่างชัดแจ้ง ซึ่งไม่ได้หมายความว่า Apple ได้ให้สิทธิ์แก่ทุกหมวดหมู่ที่ร้องขอ

การเปิดใช้งานข้อมูลสรุป Health จะเพิ่ม `health.summary` ลงในชุดคำสั่งที่ Node ประกาศไว้ ให้อนุมัติการอัปเดตการจับคู่ Node ที่เกิดขึ้น:

```bash
openclaw nodes pending
openclaw nodes approve <requestId>
```

จากนั้นตรวจสอบว่า iPhone ที่เชื่อมต่ออยู่เปิดเผยคำสั่ง `health.summary` ที่มีผลอยู่:

```bash
openclaw nodes describe --node "<iPhone name>"
```

## ขอข้อมูลสรุปของวันนี้

รองรับเฉพาะ `today` โดยครอบคลุมตั้งแต่เที่ยงคืนตามเวลาท้องถิ่นจนถึงเวลาที่ส่งคำขอ และใช้ปฏิทินกับเขตเวลาปัจจุบันของ iPhone

```bash
openclaw nodes invoke \
  --node "<iPhone name>" \
  --command health.summary \
  --params '{"period":"today"}' \
  --json
```

Agent สามารถเรียกใช้คำสั่งเดียวกันด้วยเครื่องมือ `nodes`:

```json
{
  "action": "invoke",
  "node": "<iPhone name>",
  "invokeCommand": "health.summary",
  "invokeParamsJson": "{\"period\":\"today\"}"
}
```

เพย์โหลดข้อมูลสรุปประกอบด้วย:

| ฟิลด์                    | ความหมาย                                       |
| ------------------------ | --------------------------------------------- |
| `period`                 | เป็น `today` เสมอ                                |
| `startISO`               | เวลาเริ่มต้นของวันตามเวลาท้องถิ่น ซึ่งเข้ารหัสเป็นเวลาแบบ ISO |
| `endISO`                 | เวลาที่ส่งคำขอ ซึ่งเข้ารหัสเป็นเวลาแบบ ISO       |
| `timeZoneIdentifier`     | ตัวระบุเขตเวลาของ iPhone                   |
| `stepCount`              | จำนวนก้าวสะสมที่ปัดเศษแล้ว                      |
| `sleepDurationMinutes`   | เวลานอนหลับที่ตัดรายการซ้ำออกแล้วและจำกัดเฉพาะวันนี้    |
| `restingHeartRateBpm`    | อัตราการเต้นของหัวใจขณะพักโดยเฉลี่ย                    |
| `workoutCount`           | การออกกำลังกายที่เริ่มในวันนี้                   |
| `workoutDurationMinutes` | ระยะเวลารวมของการออกกำลังกายเหล่านั้น              |

ฟิลด์เมตริกเป็นฟิลด์ที่ไม่บังคับและจะไม่รวมไว้เมื่อ HealthKit ไม่ส่งค่าที่อ่านได้ ระบบจะรวมช่วงการนอนหลับและแหล่งข้อมูลที่ทับซ้อนกันก่อนคำนวณระยะเวลา จึงไม่นับนาทีเดียวกันซ้ำสองครั้ง

## ลักษณะการทำงานด้านความเป็นส่วนตัว

- การรวมข้อมูลเกิดขึ้นบน iPhone ตัวอย่างข้อมูลดิบจะไม่ออกจากอุปกรณ์
- ข้อมูลรวมที่ร้องขอจะออกจาก iPhone ผ่าน Gateway เมื่อ Agent ร้องขอ ข้อมูลรวมจะถูกส่งถึงผู้ให้บริการ AI ที่กำหนดค่าไว้และอาจคงอยู่ในประวัติการแชต การเรียกใช้โดยตรงผ่าน CLI จะส่งข้อมูลกลับไปยังผู้ดำเนินการ CLI
- OpenClaw ขอเฉพาะสิทธิ์อ่านเท่านั้น ไม่สามารถเพิ่มหรือแก้ไขข้อมูล Health ได้
- OpenClaw จะอ่าน HealthKit เฉพาะเมื่อมีการเรียกใช้ `health.summary` เท่านั้น ไม่มีการนำเข้าข้อมูลสุขภาพในเบื้องหลัง
- HealthKit ตั้งใจไม่เปิดเผยว่ามีการปฏิเสธสิทธิ์อ่านหรือไม่ เมตริกที่หายไปอาจหมายถึงถูกปฏิเสธการเข้าถึง ไม่มีตัวอย่างข้อมูลที่ตรงกัน หรือชนิดข้อมูลไม่พร้อมใช้งาน OpenClaw ไม่สามารถแยกแยะกรณีเหล่านี้ได้
- ข้อมูลสรุปนี้มีไว้เพื่อบริบทด้านสุขภาพและสมรรถภาพส่วนบุคคล ไม่ใช่เพื่อการวินิจฉัยหรือคำแนะนำทางการแพทย์

หากต้องการหยุดแชร์ ให้กลับไปที่ **Health Summaries** แล้วแตะ **Disable** จากนั้น iPhone จะนำความสามารถ Health และคำสั่ง `health.summary` ออกจากชุดคำสั่งของ Node นอกจากนี้ยังสามารถนำ `health.summary` ออกจาก
`gateway.nodes.allowCommands` เพื่อปิดการอนุญาตฝั่ง Gateway ได้

## การแก้ไขปัญหา

### Node ไม่ได้ประกาศคำสั่ง

ตรวจสอบว่าเปิดใช้งานข้อมูลสรุป Health ในแอป iOS แล้วและ iPhone เชื่อมต่ออยู่ เรียกใช้ `openclaw nodes pending` และอนุมัติการอัปเดตความสามารถทั้งหมด จากนั้นตรวจสอบ `openclaw nodes describe --node "<iPhone name>"` อีกครั้ง

### คำสั่งต้องเลือกเข้าร่วมอย่างชัดแจ้ง

เพิ่ม `health.summary` ลงใน `gateway.nodes.allowCommands` และตรวจสอบด้วยว่า `gateway.nodes.denyCommands` ไม่มีรายการดังกล่าว เพราะรายการปฏิเสธจะมีผลเหนือกว่า

### `HEALTH_ACCESS_DISABLED`

สวิตช์การแชร์ฝั่งแอปปิดอยู่ ให้เปิดใช้งาน **Health Summaries** ภายใต้
**Privacy & Access** บน iPhone

### ขอข้อมูลสรุปสำเร็จแต่ไม่มีเมตริกบางรายการ

เปิดแอป Health ของ Apple และตรวจสอบว่ามีข้อมูลของวันนี้ ตรวจสอบสิทธิ์การเข้าถึงของ OpenClaw ในการตั้งค่า Health ของ Apple แต่อย่าถือว่าผลลัพธ์ว่างเป็นหลักฐานว่าถูกปฏิเสธการเข้าถึง เพราะ HealthKit ตั้งใจซ่อนความแตกต่างดังกล่าว

### ช่วงเวลาก่อนหน้านี้ล้มเหลว

คำสั่งยอมรับเฉพาะ `{"period":"today"}` เท่านั้น ไม่รองรับข้อมูลสรุปหลายวันและข้อมูลย้อนหลัง

## ที่เกี่ยวข้อง

- [แอป iOS](/th/platforms/ios)
- [Node](/th/nodes)
- [ข้อมูลอ้างอิงการกำหนดค่า Gateway](/th/gateway/configuration-reference#gateway)
- [การตรวจสอบความปลอดภัย](/th/gateway/security)
