การทำงานอัตโนมัติที่แอปจัดการสำหรับ iOS

การทำงานอัตโนมัติที่จัดการโดยแอปคือการทำงานอัตโนมัติที่สร้างขึ้นแบบเป็นโปรแกรมโดยแอปของพาร์ทเนอร์ที่ใช้ Automation API

ระบบจะระงับการทำงานอัตโนมัติดังกล่าวไม่ให้ปรากฏในรายการการทำงานอัตโนมัติของ Google Home app (GHA)

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

สร้างการทำงานอัตโนมัติที่จัดการโดยแอป

หากต้องการสร้างการทำงานอัตโนมัติที่จัดการโดยแอป ให้ทำตามขั้นตอนต่อไปนี้

  1. สร้างกราฟตรรกะของการทำงานอัตโนมัติ

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

    let automationConfig = AppManagedAutomationConfig(
        managingAppDisplayNames: [
          LocalizedText(text: "My Custom SmartApp", locale: "en-US"),
          LocalizedText(text: "Mi aplicación personalizada", locale: "es-MX")
        ]
    )
    
  3. สร้างอินสแตนซ์การทำงานอัตโนมัติโดยใช้ Automation.Builder

    1. ตั้งค่าnameของการทำงานอัตโนมัติ
    2. ตั้งค่า client_feature_group เป็น "APP_MANAGED_EXECUTION_REPORTED" หากต้องการให้ประวัติการดำเนินการของการทำงานอัตโนมัติปรากฏในแท็บกิจกรรมใน GHA หรือ "APP_MANAGED_EXECUTION_UNREPORTED" หากไม่ต้องการให้ประวัติการดำเนินการของการทำงานอัตโนมัติปรากฏ
    3. ตั้งค่า automationGraph
    4. ไม่บังคับ ตั้งค่า appManagedAutomationConfig ของการทำงานอัตโนมัติ (ดูขั้นตอนที่ 2)
  4. สุดท้าย ให้เรียก build() เพื่อสร้างอินสแตนซ์ Automation

ตัวอย่างนี้แสดงขั้นตอนทั้งหมด


import GoogleHomeSDK
import GoogleHomeTypes

let devices = try await home.devices().list()
let mySensor: HomeDevice = devices.first(where: {
    $0.types.contains(OccupancySensorDeviceType.self) &&
    $0.structureID == structure.id
})

let myLight: HomeDevice = devices.first(
  where: {
    $0.types.contains(OnOffLightDeviceType.self) &&
    $0.structureID == structure.id
  }
)

// 1. Create logic graph
let starterNode = StarterNode(
    device: mySensor,
    trait: Matter.OccupancySensingTrait.self
)

let actionNode = ActionNode(
    device: myLight,
    command: Matter.OnOffTrait.on()
)

// Bundle nodes into a sequential graph
let automationGraph = SequentialFlow(
    nodes: [starterNode, actionNode]
)

// 2. Build the AppManagedAutomationConfig with the localized app names
let automationConfig = AppManagedAutomationConfig(
    managingAppDisplayNames: [
      LocalizedText(text: "My Custom SmartApp", locale: "en-US"),
      LocalizedText(text: "Mi aplicación personalizada", locale: "es-MX")
    ]
)

// 3. Build the Automation with both configuration and the graph
let myFunctionalAutomation = try AutomationBuilder()
    .setName("Motion Activated Light")                         // a. Set the name
    .setClientFeatureGroup("APP_MANAGED_EXECUTION_UNREPORTED") // b. set the clientFeatureGroup
    .setAutomationGraph(automationGraph)                       // c. Attach the logic graph
    .setAppManagedAutomationConfig(automationConfig)           // d. Set the automationConfig
    .build() // 4. build the automation