عمليات التشغيل الآلي التي يديرها التطبيق هي عمليات يتم إنشاؤها آليًا من خلال تطبيق شريك باستخدام Automation API.
يتم منع ظهور عمليات التشغيل الآلي هذه في Google Home app (GHA) قائمة عمليات التشغيل الآلي.
يمكن تخصيص المعلومات التي يتم تسجيلها في خلاصة الأنشطة الخاصة بواجهات برمجة التطبيقات Home عند تشغيل عملية تشغيل آلي يديرها تطبيق، أو يمكن إيقافها بالكامل. على سبيل المثال، إذا كان أحد الشركاء يقدّم خدمة تحمل علامة تجارية باسم "Arctic" ويتم تنفيذها باستخدام عمليات التشغيل الآلي التي يديرها التطبيق، يمكن للشريك تحديد أنّه عند تشغيل عمليات التشغيل الآلي التي يديرها التطبيق، تتم الإشارة إلى خدمة Arctic في خلاصة الأنشطة بدلاً من اسم عملية التشغيل الآلي الفعلي.
إنشاء عملية تشغيل آلي يديرها التطبيق
لإنشاء التشغيل الآلي الذي يديره التطبيق، اتّبِع الإجراء التالي.
أنشئ الرسم البياني المنطقي لعملية التشغيل الآلي.
اختياري إذا كنت تريد أن يظهر نشاط التشغيل الآلي في خلاصة الأنشطة، يمكنك ملء مثيل
AppManagedAutomationConfigبالرسالة المترجمة التي تريد أن تظهر في الخلاصة بدلاً من اسم التشغيل الآلي. يمكن أن تكون هذه الأسماء المترجَمة لتطبيق أو خدمة، أو أي رسالة أخرى تريدها. في حال عدم تقديم أي سلاسل مترجمة، سيتم تسجيل عمليات تنفيذ التشغيل الآلي كما هو الحال مع أي عملية تشغيل آلي أخرى. تنصحك Google بضبط هذه السلاسل المترجمة لضمان تقديم أفضل تجربة للمستخدم.let automationConfig = AppManagedAutomationConfig( managingAppDisplayNames: [ LocalizedText(text: "My Custom SmartApp", locale: "en-US"), LocalizedText(text: "Mi aplicación personalizada", locale: "es-MX") ] )أنشئ مثيل عملية التشغيل الآلي باستخدام
Automation.Builder.- اضبط
nameلعملية التشغيل الآلي. - اضبط
client_feature_groupعلى"APP_MANAGED_EXECUTION_REPORTED"إذا كنت تريد أن يظهر سجلّ تنفيذ عملية التشغيل الآلي في علامة التبويب "النشاط" في GHA، أو"APP_MANAGED_EXECUTION_UNREPORTED"إذا كنت لا تريد أن يظهر سجلّ تنفيذ عملية التشغيل الآلي. - اضبط
automationGraph. - اختياري: اضبط
appManagedAutomationConfigعملية التشغيل الآلي (راجِع الخطوة 2).
- اضبط
أخيرًا، استدعِ الدالة
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