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

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

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

คุณปรับแต่งหรือระงับข้อมูลที่เขียนลงในฟีดกิจกรรมของ Home APIs เมื่อมีการเรียกใช้การทำงานอัตโนมัติที่แอปจัดการ ได้ทั้งหมด ตัวอย่างเช่น หากพาร์ทเนอร์มีบริการที่มีการสร้างแบรนด์ชื่อ "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 หรือ "APP_MANAGED_EXECUTION_UNREPORTED" หากไม่ต้องการให้ประวัติการดำเนินการ ของการทำงานอัตโนมัติปรากฏ
    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_UNREPORTED") // b. set the clientFeatureGroup
    .setAutomationGraph(automationGraph)                       // c. Attach the logic graph
    .setAppManagedAutomationConfig(myCustomConfig)             // d. Set the automationConfig
    .build() // 4. build the automation