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

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

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

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

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

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

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

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

    val myAutomationConfig = AppManagedAutomationConfig(
        managingAppDisplayNames = listOf(
            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
    3. ตั้งค่า automationGraph
    4. ไม่บังคับ ตั้งค่า appManagedAutomationConfig ของการทำงานอัตโนมัติ (ดูขั้นตอนที่ 2)
  4. สุดท้าย ให้เรียก build() เพื่อสร้างอินสแตนซ์ Automation

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

import com.google.home.automation.Automation
import com.google.home.automation.SequentialNode
import com.google.home.automation.StarterNode
import com.google.home.automation.ActionNode
import com.google.home.HomeDevice
import com.google.home.matter.standard.OnOff
import com.google.home.matter.standard.OnOffLightDevice
import com.google.home.matter.standard.MotionDetection
import com.google.home.matter.standard.OccupancySensorDevice

 HomeDevice mySensor = home.devices().list().first { device -> device.has(OccupancySensorDevice) }
 HomeDevice myLight = home.devices().list().first { device -> device.has(OnOffLightDevice) }

// 1. Create logic graph
val starterNode = StarterNode(
    device = mySensor,
    trait = OccupancySensing
)

val actionNode = ActionNode(
    device = myLight,
    command = OnOff.on()
)

// Bundle nodes into a sequential graph
val automationGraph = SequentialNode(
    nodes = listOf(starterNode, actionNode)
)

 // 2. Build the AppManagedAutomationConfig with the localized app names
val AppManagedAutomationConfig myAutomationConfig = 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
val myAutomation = Automation.Builder()
    .setName("Motion Activated Light")                         // a. Set the name
    .setClientFeatureGroup("APP_MANAGED_EXECUTION_REPORTED")   // b. set the clientFeatureGroup
    .setAutomationGraph(automationGraph)                       // c. Attach the logic graph
    .setAppManagedAutomationConfig(myCustomConfig)             // d. Set the automationConfig
    .build() // 4. build the automation