ऐप्लिकेशन मैनेज किए गए ऑटोमेशन, ऐसे ऑटोमेशन होते हैं जिन्हें प्रोग्राम के हिसाब से बनाया जाता है. इन्हें Automation API का इस्तेमाल करके, पार्टनर ऐप्लिकेशन बनाता है.
ऐसे ऑटोमेशन को Google Home app (GHA)ऑटोमेशन की सूची में दिखने से रोक दिया जाता है.
ऐप्लिकेशन मैनेज किए जा रहे ऑटोमेशन के ट्रिगर होने पर, Home API के गतिविधि फ़ीड में लिखी गई जानकारी को पसंद के मुताबिक बनाया जा सकता है या पूरी तरह से छिपाया जा सकता है. उदाहरण के लिए, अगर कोई पार्टनर "Arctic" नाम की ब्रैंडेड सेवा देता है और इसे ऐप्लिकेशन मैनेज किए जाने वाले ऑटोमेशन का इस्तेमाल करके लागू किया जाता है, तो पार्टनर यह तय कर सकता है कि ऐप्लिकेशन मैनेज किए जाने वाले ऑटोमेशन के चलने पर, गतिविधि फ़ीड में ऑटोमेशन के असली नाम के बजाय Arctic सेवा का नाम दिखे.
ऐप्लिकेशन के ज़रिए मैनेज किया जाने वाला ऑटोमेशन बनाना
ऐप्लिकेशन के ज़रिए मैनेज किए जाने वाले ऑटोमेशन को बनाने के लिए, यह तरीका अपनाएं.
ऑटोमेशन का लॉजिक ग्राफ़ बनाएं.
ज़रूरी नहीं अगर आपको ऑटोमेशन की गतिविधि को गतिविधि फ़ीड में दिखाना है, तो
AppManagedAutomationConfigइंस्टेंस में, स्थानीय भाषा में लिखा गया वह मैसेज डालें जिसे आपको ऑटोमेशन के नाम की जगह फ़ीड में दिखाना है. यह किसी ऐप्लिकेशन या सेवा का स्थानीय नाम या आपकी पसंद का कोई अन्य मैसेज हो सकता है. स्थानीय भाषा में स्ट्रिंग उपलब्ध न कराने पर, ऑटोमेशन के एक्ज़ीक्यूशन को किसी अन्य ऑटोमेशन की तरह लॉग किया जाता है. Google का सुझाव है कि आप इन स्थानीय भाषाओं में उपलब्ध स्ट्रिंग को सेट करें, ताकि लोगों को बेहतर अनुभव मिल सके.val myAutomationConfig = AppManagedAutomationConfig( managingAppDisplayNames = listOf( LocalizedText(text = "My custom SmartApp", locale = "en-US"), LocalizedText(text = "Mi aplicación personalizada", locale = "es-MX") ) )Automation.Builderका इस्तेमाल करके, ऑटोमेशन इंस्टेंस बनाएं.- ऑटोमेशन की
nameसेट करें. - अगर आपको ऑटोमेशन के लागू होने
का इतिहास, GHA में मौजूद 'गतिविधि' टैब में दिखाना है, तो
client_feature_groupको"APP_MANAGED_EXECUTION_REPORTED"पर सेट करें. अगर आपको ऑटोमेशन के लागू होने का इतिहास नहीं दिखाना है, तो को"APP_MANAGED_EXECUTION_UNREPORTED"पर सेट करें. automationGraphसेट करें.- ज़रूरी नहीं ऑटोमेशन का
appManagedAutomationConfigसेट करें (दूसरा चरण देखें).
- ऑटोमेशन की
आखिर में,
Automationइंस्टेंस बनाने के लिएbuild()को कॉल करें.
इस उदाहरण में पूरी प्रोसेस दिखाई गई है:
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