โมเดลข้อมูลอุปกรณ์

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

อุปกรณ์ใน Matter have a well-defined data model (DM), which is a hierarchical modeling of a Device's features. At the top level of this hierarchy there is a Device.

อุปกรณ์และปลายทาง

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

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

ลําดับชั้นของอุปกรณ์ โหนด และปลายทาง
รูปที่ 1: อุปกรณ์ โหนด และปลายทาง

คลัสเตอร์

ในปลายทาง โหนดมีคลัสเตอร์อย่างน้อย 1 รายการ ขั้นตอนเหล่านี้เป็นอีกขั้นตอนหนึ่งในลําดับชั้นของอุปกรณ์ เนื่องจากจัดกลุ่มฟังก์ชันที่เฉพาะเจาะจง เช่น คลัสเตอร์เปิด/ปิดบนปลั๊กอัจฉริยะ หรือคลัสเตอร์การควบคุมระดับในปลายทางที่หรี่แสงได้

โหนดอาจมีปลายทางหลายจุด โดยแต่ละโหนดจะสร้างอินสแตนซ์ของฟังก์ชันเดียวกัน เช่น โคมไฟอาจมีการควบคุมของไฟแต่ละดวงแบบอิสระ หรือปลั๊กไฟอาจแสดงการควบคุมของเต้ารับแต่ละแผง

แอตทริบิวต์

ที่ระดับสุดท้าย เราจะพบแอตทริบิวต์ ซึ่งเป็นสถานะที่โหนดครอบครอง เช่น แอตทริบิวต์ระดับปัจจุบันของคลัสเตอร์การควบคุมระดับ แอตทริบิวต์อาจกําหนดเป็นประเภทข้อมูลที่แตกต่างกัน เช่น uint8, สตริง หรืออาร์เรย์

ลําดับชั้นของโหนด จุดสิ้นสุด แอตทริบิวต์ และคําสั่ง
รูปที่ 2: โหนด, ปลายทาง, แอตทริบิวต์ และคําสั่ง

คำสั่ง

นอกจากแอตทริบิวต์แล้ว คลัสเตอร์ยังมีคําสั่ง ซึ่งเป็นการดําเนินการที่อาจใช้ด้วย ซึ่งเทียบเท่ากับ DM ของMatter ในการเรียกใช้กระบวนการระยะไกล คําสั่งต่างๆ มีลักษณะกริยา เช่น ประตูล็อก บนคลัสเตอร์ ประตูล็อก คําสั่งอาจสร้างการตอบกลับและผลลัพธ์ ใน Matter การตอบสนองดังกล่าวจะกําหนดเป็นคําสั่งด้วย ซึ่งจะไปในทิศทางย้อนกลับ

กิจกรรม

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

อุปกรณ์ตัวอย่างแบบเต็ม
รูปที่ 3: ตัวอย่างลําดับชั้นของMatter รูปแบบการโต้ตอบของอุปกรณ์

ปลายทาง 0 สงวนไว้สําหรับคลัสเตอร์ยูทิลิตี คลัสเตอร์ยูทิลิตีเป็นคลัสเตอร์เฉพาะที่ครอบคลุมฟังก์ชันการให้บริการในปลายทาง เช่น การค้นพบ การจัดการ การวินิจฉัย และการอัปเดตซอฟต์แวร์ ในทางกลับกัน คลัสเตอร์แอปพลิเคชันรองรับการดําเนินการหลัก เช่น เปิด/ปิด หรือการวัดอุณหภูมิ

ประเภทอุปกรณ์

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

แม้ว่าปลายทางจะมีข้อกําหนดที่ไม่รัดกุมว่าควรใช้ฟังก์ชันการทํางานที่สอดคล้องกัน แต่ประเภทอุปกรณ์เป็นข้อกําหนดที่มีประสิทธิภาพอย่างมาก หากโหนดใช้ประเภทอุปกรณ์ โดยต้องมีชุดคลัสเตอร์ในปลายทางอย่างน้อย 1 แห่งเพื่อกําหนดลักษณะการทํางานที่สอดคล้องกันและสอดคล้องกัน เช่น สวิตช์หรี่ไฟสีหรือเซ็นเซอร์แสง

เอกสารหลักสําหรับข้อมูลจําเพาะของ Matter ไม่ได้ระบุประเภทอุปกรณ์ แต่รวมเอกสารไลบรารีอุปกรณ์ด้วย ในทํานองเดียวกัน คลัสเตอร์แอปพลิเคชันทั้งหมดจะกําหนดอยู่ที่ไลบรารีแอปพลิเคชันแอปพลิเคชัน คุณสามารถดูเอกสารทั้ง 3 ฉบับนี้ได้ที่เว็บไซต์ของสมาชิก CSA

ไคลเอ็นต์และเซิร์ฟเวอร์

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

  • อ่านจากและเขียนไปยังแอตทริบิวต์ระยะไกล
  • อ่านเหตุการณ์ระยะไกลได้
  • การเรียกใช้คําสั่งระยะไกล

แม้ว่า DM จะเรียงตามลําดับชั้นภายในโหนด แต่ความสัมพันธ์ระหว่างโหนดไม่ได้ โหนดใน Matter ไม่มีความสัมพันธ์ระหว่างผู้ควบคุมข้อมูล/อุปกรณ์ต่อพ่วงหรือผู้นํา/ผู้ติดตาม ความสัมพันธ์เป็นแบบแนวนอน: คลัสเตอร์จะเป็นเซิร์ฟเวอร์หรือไคลเอ็นต์ก็ได้ ดังนั้นโหนดอาจเป็นทั้งเซิร์ฟเวอร์และไคลเอ็นต์เกี่ยวกับคลัสเตอร์และฟังก์ชันการทํางานต่างๆ

ตัวอย่างเช่น เราอาจมีโคมไฟตั้งโต๊ะ 2 ดวง ได้แก่ โหนด A และโหนด B โหนดทั้งสองใช้ประเภทอุปกรณ์เปิด/ปิด อุปกรณ์ประเภทนี้มีคลัสเตอร์เปิด/ปิด เซิร์ฟเวอร์ที่ควบคุมเอาต์พุตแสงทางกายภาพที่เกี่ยวข้อง

แต่เช่นเดียวกับโคมไฟตั้งโต๊ะ อุปกรณ์จริงของเราจะมีประเภทอุปกรณ์เปิด/ปิดไฟสําหรับสวิตช์เปิด/ปิดในเครื่องด้วย ประเภทอุปกรณ์นี้ต้องใช้คลัสเตอร์ On/OFF Client เพื่อให้ควบคุมคลัสเตอร์ Server ได้

โคมไฟที่ใช้ทั้งเปิด/ปิดไฟและสวิตช์ไฟ
รูปที่ 4: คลัสเตอร์ไคลเอ็นต์และเซิร์ฟเวอร์

ในตัวอย่างนี้ คลัสเตอร์ไคลเอ็นต์เปิด/ปิดในโหนด A จะเปลี่ยนแอตทริบิวต์ของคลัสเตอร์ On/OFF Server ในโหนด A และ Node B ในขณะที่คลัสเตอร์ Client ของ Node B จะเปลี่ยนเฉพาะคลัสเตอร์เซิร์ฟเวอร์ในโหนด B เท่านั้น

ในส่วนถัดไป เราจะอธิบายวิธีการโต้ตอบของกลุ่มไคลเอ็นต์และเซิร์ฟเวอร์ ซึ่งได้แก่ โมเดลการโต้ตอบ

คลัสเตอร์ข้อบ่งชี้

เหมือนกับชื่อโดยนัย เซิร์ฟเวอร์คลัสเตอร์ Descriptor จะให้ข้อมูลการตรวจสอบ ซึ่งอธิบายปลายทางที่อธิบายถึงสิ่งต่อไปนี้

  • คลัสเตอร์เซิร์ฟเวอร์
  • คลัสเตอร์ไคลเอ็นต์
  • ประเภทอุปกรณ์
  • ปลายทางเพิ่มเติมหรือที่เรียกว่าชิ้นส่วน

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

ค่าคอมมิชชันหรืออุปกรณ์ควบคุม เช่น โทรศัพท์หรือฮับ สามารถใช้ข้อมูลที่พบในคลัสเตอร์ข้อบ่งชี้เพื่อสร้างโมเดลอุปกรณ์ (สว่าง สวิตช์ ปั๊ม ตัวควบคุมอุณหภูมิ) และฟีเจอร์บางอย่างที่อินสแตนซ์ดังกล่าวของอุปกรณ์นํามาใช้ โดยแสดง UI ที่ถูกต้องแก่ผู้ใช้

คลัสเตอร์เซิร์ฟเวอร์

แอตทริบิวต์ ServerList จะแสดงรายการเซิร์ฟเวอร์คลัสเตอร์ในปลายทาง

คลัสเตอร์ไคลเอ็นต์

แอตทริบิวต์ ClientList จะแสดงรายการไคลเอ็นต์คลัสเตอร์ในปลายทาง

รายการประเภทอุปกรณ์

แอตทริบิวต์ DeviceTypeList เป็นรายการประเภทอุปกรณ์ที่ปลายทางรองรับ รวมถึงการแก้ไขที่เกี่ยวข้อง และต้องมีอุปกรณ์อย่างน้อย 1 ประเภท

รายการชิ้นส่วน

PartsList มีรายการปลายทางที่ใช้สําหรับการใช้อุปกรณ์ประเภทนี้

PartsList ของปลายทาง 0 (โหนดราก) มีปลายทางทั้งหมดของอุปกรณ์นอกเหนือจากตัวเอง (ปลายทาง 0)

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

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


  1. ข้อมูลจําเพาะของ Matter กําหนดว่าอุปกรณ์อาจมีโหนดหลายรายการได้ เช่น สมาร์ทโฟนอาจมีหลายแอป แต่ละแอปมีโหนดต่างกัน วัตถุประสงค์ของ Primer นี้ อุปกรณ์ทั้งหมดจะมีโหนดเดียว อุปกรณ์จริงส่วนใหญ่จะใช้รูปแบบนี้