สถาปัตยกรรมของ Nest API

เกี่ยวกับบริการ Nest

แอปพลิเคชัน Nest ช่วยให้ผู้ใช้เชื่อมต่อกับบ้านได้จากทุกที่ อุปกรณ์ Nest (ตัวควบคุมอุณหภูมิ, Protect และกล้อง) และแอปพลิเคชัน (iOS, Android และเว็บแอป) ทั้งหมดเชื่อมต่อกับบริการ Nest

ตัวอย่างระบบคลาวด์ต่อระบบคลาวด์

บริการ Nest มีรูปแบบโมเดลของบ้าน อุปกรณ์และแอปพลิเคชันอ่านจากรูปแบบข้อมูลนี้เพื่อดําเนินการอย่างเหมาะสม โดยจะอัปเดตโมเดลข้อมูล เพื่อให้สอดคล้องกับการเปลี่ยนแปลงในระบบ

ตัวอย่างเช่น ตัวควบคุมอุณหภูมิอ่านอุณหภูมิเป้าหมายจากโมเดลข้อมูล โดยจะตั้งค่าอุณหภูมิแวดล้อมเป็นการวัดค่าปัจจุบันและส่งข้อมูลเซ็นเซอร์ไปยังตัวช่วยเปลี่ยนโหมดอยู่บ้าน/ไม่อยู่บ้าน ซึ่งจะปรับโหมดของโครงสร้างให้สอดคล้องกัน

อุปกรณ์ Nest ทํางานในสภาพแวดล้อมที่จํากัด พลังงานมีจํากัดและการเชื่อมต่อเครือข่ายในบ้านอาจไม่น่าเชื่อถือ ผลิตภัณฑ์และบริการของคุณใช้ประโยชน์จากอัลกอริทึมของอุปกรณ์ของเราเพื่อมอบประสบการณ์การใช้งานบ้านที่เรียบง่ายและใช้งานง่ายแก่ผู้ใช้ได้

โมเดลข้อมูล

Nest API จะแสดงเป็นเอกสาร JSON ที่มีแอตทริบิวต์ระดับบนสุดของ metadata, devices และ structures ผลิตภัณฑ์ Works with Nest ใช้เอกสาร JSON นี้เพื่อโต้ตอบกับและโต้ตอบกับอุปกรณ์ Nest และการเปลี่ยนแปลงสถานะที่เกี่ยวข้อง

Nest structures เป็นตัวแทนของโครงสร้างจริงในโลกจริง ซึ่งทําหน้าที่เป็นจุดจัดระเบียบสําหรับ devices และจัดเก็บข้อมูลสําหรับอาคารทั้งหมด โดยปกติ structure จะเป็นหน้าแรกของผู้ใช้

Nest devices แสดงถึงอุปกรณ์จริง (ตัวควบคุมอุณหภูมิ, Protect และกล้อง) ภายในโครงสร้าง

องค์ประกอบข้อมูลทั้งหมดในเอกสาร JSON จะระบุได้ด้วย URL (หรือที่เรียกว่า&&tt;ตําแหน่งข้อมูล") ผลิตภัณฑ์ Works with Nest สามารถอ่านและเขียนส่วนต่างๆ ในเอกสารนี้ แล้วสมัครรับการเปลี่ยนแปลงได้ ความสามารถในการสมัครใช้บริการนี้อนุญาตให้ผลิตภัณฑ์ Works with Nest โต้ตอบกับการเปลี่ยนแปลงที่เกิดขึ้นกับระบบได้แบบเรียลไทม์ เช่น การปิดไฟเมื่อผู้ใช้ตั้งค่าโครงสร้างเป็น "ไม่อยู่บ้าน"

ออบเจ็กต์ยังทํางานภายใต้ข้อจํากัดในชีวิตจริงด้วย โมเดลข้อมูลจะป้องกันอุปกรณ์และบ้านของผู้ใช้ด้วยการป้องกันการดําเนินการที่น่าประหลาดใจและเป็นอันตราย เช่น ตัวควบคุมอุณหภูมิจะไม่เรียกใช้เครื่องปรับอากาศเมื่อเปิดใช้เครื่องทําความร้อนฉุกเฉิน

สํารวจโมเดลข้อมูลด้วยเอกสารอ้างอิง API แบบอินเทอร์แอกทีฟนี้

สถานะที่ต้องการ

บริการ Nest จะจัดเก็บสถานะที่เชื่อถือได้ของระบบ และผลิตภัณฑ์ของ Works with Nest จะสมัครรับการเปลี่ยนแปลง การแก้ไขสถานะนี้ (เช่น เพื่อเปลี่ยนอุณหภูมิเป้าหมาย ของอุณหภูมิสูงสุด) จะทําให้บริการพุชการแจ้งเตือนการเปลี่ยนแปลงไปยังผู้ติดตามทุกคน

เนื่องจากการเผยแพร่ดังกล่าวมีความล่าช้าและเครือข่ายอาจไม่น่าเชื่อถือ รัฐที่ผลิตภัณฑ์สังเกตการณ์จึงอาจไม่ใช่รัฐที่ผลิตภัณฑ์หรือบริการอื่นสังเกตเห็นในขณะนี้ สถานะนี้จะซิงค์ในที่สุดเมื่อมีการส่งข้อความระหว่างผลิตภัณฑ์ต่างๆ

โมเดลการเผยแพร่/สมัครใช้บริการที่เน้นเอกสารนี้จะมีการโต้ตอบของแอปพลิเคชันที่ปรับเปลี่ยนตามอุปกรณ์

การใช้บริการ Nest

หากต้องการเข้าถึงปลายทาง REST ในบริการ Nest ให้ใช้ HTTPS ในผลิตภัณฑ์ ไลบรารีของไคลเอ็นต์ของบุคคลที่สามจํานวนมากที่ใช้เพื่อวัตถุประสงค์นี้ได้

สิทธิ์และการให้สิทธิ์

เราอยากให้นักพัฒนาแอปสร้างผลิตภัณฑ์และบริการที่ทําให้บ้านดีขึ้น โดยไม่ส่งผลกระทบต่อความเป็นส่วนตัวและความปลอดภัยของผู้ใช้ การสื่อสารทั้งหมดของเรามีความปลอดภัย และให้สิทธิ์การเข้าถึงข้อมูลแก่ผู้ใช้อย่างชัดเจนเสมอ ดูข้อมูลเพิ่มเติมได้ที่ภาพรวมสิทธิ์

โปรโตคอล OAuth 2.0 จะจัดการการให้สิทธิ์ เมื่อผู้ใช้ตกลงที่จะเข้าถึงระดับสิทธิ์ที่ขอ Nest จะตรวจสอบสิทธิ์คําขอและมอบโทเค็นเพื่อการเข้าถึงให้แก่ผู้ขอ โทเค็นเพื่อการเข้าถึงดังกล่าวจะใช้เพื่อเข้าถึง Nest API และโต้ตอบกับโครงสร้างและอุปกรณ์ของผู้ใช้ได้

การให้สิทธิ์โทเค็นจะสร้างความสัมพันธ์ความน่าเชื่อถือระหว่างผู้ใช้ผลิตภัณฑ์ Works with Nest และ Nest ผู้ใช้จะเพิกถอนสิทธิ์เข้าถึงได้ทุกเมื่อ

ดูวิธีให้สิทธิ์การเชื่อมต่อกับ Nest API ได้ในภาพรวมของการให้สิทธิ์