nl::Weave::Profiles::DeviceControl

เนมสเปซนี้มีอินเทอร์เฟซทั้งหมดภายใน Weave สำหรับโปรไฟล์ตัวควบคุมอุปกรณ์ Weave

สรุป

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

การแจงนับ

@172{
  kStatusCode_FailSafeAlreadyActive = 1,
  kStatusCode_NoFailSafeActive = 2,
  kStatusCode_NoMatchingFailSafeActive = 3,
  kStatusCode_UnsupportedFailSafeMode = 4,
  kStatusCode_RemotePassiveRendezvousTimedOut = 5,
  kStatusCode_UnsecuredListenPreempted = 6,
  kStatusCode_ResetSuccessCloseCon = 7,
  kStatusCode_ResetNotAllowed = 8,
  kStatusCode_NoSystemTestDelegate = 9
}
enum
รหัสสถานะการควบคุมอุปกรณ์
@173{
  kMsgType_ResetConfig = 1,
  kMsgType_ArmFailSafe = 2,
  kMsgType_DisarmFailSafe = 3,
  kMsgType_EnableConnectionMonitor = 4,
  kMsgType_DisableConnectionMonitor = 5,
  kMsgType_RemotePassiveRendezvous = 6,
  kMsgType_RemoteConnectionComplete = 7,
  kMsgType_StartSystemTest = 8,
  kMsgType_StopSystemTest = 9,
  kMsgType_LookingToRendezvous = 10
}
enum
ประเภทของข้อความการควบคุมอุปกรณ์
@174{
  kArmMode_New = 1,
  kArmMode_Reset = 2,
  kArmMode_ResumeExisting = 3
}
enum
ค่าของโหมด ArmFailSafe
@175{
  kResetConfigFlag_All = 0x00FF,
  kResetConfigFlag_NetworkConfig = 0x0001,
  kResetConfigFlag_FabricConfig = 0x0002,
  kResetConfigFlag_ServiceConfig = 0x0004,
  kResetConfigFlag_OperationalCredentials = 0x0008,
  kResetConfigFlag_FactoryDefaults = 0x8000
}
enum
SetConfig Flags
@176{
  kMessageLength_ResetConfig = 2,
  kMessageLength_ArmFailsafe = 5,
  kMessageLength_DisarmFailsafe = 0,
  kMessageLength_EnableConnectionMonitor = 4,
  kMessageLength_DisableConnectionMonitor = 0,
  kMessageLength_RemotePassiveRendezvous = 20,
  kMessageLength_StartSystemTest = 8,
  kMessageLength_StopSystemTest = 0
}
enum
ความยาวของข้อความ

ฟังก์ชัน

SendLookingToRendezvous(ExchangeContext *ec)
ส่งข้อความ LookToRendezvous ถึงแอปเทียบเท่า

ชั้นเรียน

nl::Weave::Profiles::DeviceControl::DeviceControlDelegate

มอบสิทธิ์คลาสสำหรับการใช้การดำเนินการควบคุมอุปกรณ์ขาเข้าในอุปกรณ์ของเซิร์ฟเวอร์

nl::Weave::Profiles::DeviceControl::DeviceControlServer

คลาสของเซิร์ฟเวอร์สำหรับการใช้โปรไฟล์การควบคุมอุปกรณ์

การแจงนับ

@172

 @172

รหัสสถานะการควบคุมอุปกรณ์

พร็อพเพอร์ตี้
kStatusCode_FailSafeAlreadyActive

ระบบเปิดใช้การจัดสรรที่ผิดพลาดแล้ว

kStatusCode_NoFailSafeActive

ไม่มีการจัดสรรที่ปลอดภัยสำหรับการใช้งานไม่ได้

kStatusCode_NoMatchingFailSafeActive

โทเค็น Fail-safe การจัดสรรไม่ตรงกับ Ful-safe ที่ใช้งานอยู่

kStatusCode_NoSystemTestDelegate

การทดสอบระบบจะทำงานไม่ได้หากไม่มีผู้รับมอบสิทธิ์

kStatusCode_RemotePassiveRendezvousTimedOut

ไม่มีอุปกรณ์ใดติดต่อกับเซิร์ฟเวอร์ระบบควบคุมอุปกรณ์ในระหว่างช่วงเวลาเริ่มต้นที่ระบุโดยไคลเอ็นต์

kStatusCode_ResetNotAllowed

อุปกรณ์ไม่อนุญาตให้รีเซ็ตตามที่ขอ

kStatusCode_ResetSuccessCloseCon

เมธอด SetupConfig จะสำเร็จ แต่จะปิดการเชื่อมต่อก่อน

kStatusCode_UnsecuredListenPreempted

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

kStatusCode_UnsupportedFailSafeMode

อุปกรณ์ไม่รองรับโหมดความปลอดภัยของระบบไม่สำเร็จที่ระบุ

@173

 @173

ประเภทของข้อความการควบคุมอุปกรณ์

พร็อพเพอร์ตี้
kMsgType_ArmFailSafe

เปิดระบบกลไกการป้องกันความล้มเหลวของการกำหนดค่าในอุปกรณ์

kMsgType_DisableConnectionMonitor

ปิดใช้การตรวจสอบความพร้อมใช้งานของการเชื่อมต่อ

kMsgType_DisarmFailSafe

ทั้งนี้ สามารถปิดระบบการกำหนดค่าที่ใช้งานอยู่เพื่อความปลอดภัย

kMsgType_EnableConnectionMonitor

เปิดใช้การตรวจสอบความพร้อมใช้งานของการเชื่อมต่อ

kMsgType_LookingToRendezvous

กำลังค้นหาข้อความ Rendezvouz

เพย์โหลดว่างเปล่า สัญญาณที่สำคัญเพียงอย่างเดียวภายในคือรหัสโหนดต้นทาง

kMsgType_RemoteConnectionComplete

แจ้งให้ไคลเอ็นต์ Device Control ทราบว่า Remote Passive Rendezvous ดำเนินการสำเร็จแล้วและอุโมงค์การเชื่อมต่อเปิดอยู่

kMsgType_RemotePassiveRendezvous

ขอ Rendezvous ระยะไกลด้วยเซิร์ฟเวอร์ Device Control

kMsgType_ResetConfig

รีเซ็ตสถานะการกำหนดค่าของอุปกรณ์

kMsgType_StartSystemTest

เริ่มการทดสอบระบบ

kMsgType_StopSystemTest

หยุดการทดสอบระบบ

@174

 @174

ค่าของโหมด ArmFailSafe

พร็อพเพอร์ตี้
kArmMode_New

เปิดระบบป้องกันความล้มเหลวใหม่ แสดงข้อผิดพลาดหากมีการใช้งานอยู่แล้ว

kArmMode_Reset

รีเซ็ตการกำหนดค่าอุปกรณ์ทั้งหมดและเปิดใช้งานการรักษาความปลอดภัยล้มเหลวใหม่

kArmMode_ResumeExisting

ใช้การป้องกันความล้มเหลวที่กำลังดำเนินการอยู่ต่อ แสดงผลข้อผิดพลาดในกรณีที่ไม่มี Ful-safe ที่กำลังดำเนินการอยู่ หรือหากโทเค็น In-safe ไม่ตรงกัน

@175

 @175

SetConfig Flags

พร็อพเพอร์ตี้
kResetConfigFlag_All

รีเซ็ตข้อมูลการกำหนดค่าอุปกรณ์ทั้งหมด

kResetConfigFlag_FabricConfig

รีเซ็ตข้อมูลการกำหนดค่า Fabric

kResetConfigFlag_FactoryDefaults

รีเซ็ตอุปกรณ์เป็นค่าเริ่มต้นจากโรงงานทั้งหมด

kResetConfigFlag_NetworkConfig

รีเซ็ตข้อมูลการกำหนดค่าเครือข่าย

kResetConfigFlag_OperationalCredentials

รีเซ็ตข้อมูลเข้าสู่ระบบการใช้งานของอุปกรณ์

kResetConfigFlag_ServiceConfig

รีเซ็ตข้อมูลการกำหนดค่าบริการ

@176

 @176

ความยาวของข้อความ

พร็อพเพอร์ตี้
kMessageLength_ArmFailsafe

ความยาวของข้อความการเปิดระบบเมื่อไม่ผ่านการตรวจสอบ

kMessageLength_DisableConnectionMonitor

ปิดใช้ความยาวของข้อความการตรวจสอบการเชื่อมต่อ

kMessageLength_DisarmFailsafe

ความยาวของข้อความ Failsafe สำหรับการปิดระบบ

kMessageLength_EnableConnectionMonitor

เปิดใช้ความยาวของข้อความการตรวจสอบการเชื่อมต่อ

kMessageLength_RemotePassiveRendezvous

ความยาวของข้อความ Rendezvous ระยะไกลระยะไกล

kMessageLength_ResetConfig

รีเซ็ตความยาวของข้อความการกำหนดค่า

kMessageLength_StartSystemTest

เริ่มความยาวของข้อความ System Test

kMessageLength_StopSystemTest

หยุดความยาวของข้อความ System Test

ฟังก์ชัน

SendLookingToRendezvous

WEAVE_ERROR SendLookingToRendezvous(
  ExchangeContext *ec
)

ส่งข้อความ LookToRendezvous ถึงแอปเทียบเท่า

รายละเอียด
พารามิเตอร์
[in] ec
ExchangeContext ที่ใช้ส่งข้อความ
ผลลัพธ์
WEAVE_NO_ERROR
สำเร็จแล้ว
WEAVE_ERROR_NO_MEMORY
หากเราไม่สามารถจัดสรรบัฟเฟอร์ให้ข้อความได้
other
ข้อผิดพลาดอื่นๆ ที่ nl::Weave::ExchangeContext::SendMessage แสดง