iOS-এর জন্য অ্যাপ-পরিচালিত অটোমেশন, iOS-এর জন্য অ্যাপ-পরিচালিত অটোমেশন, iOS-এর জন্য অ্যাপ-পরিচালিত অটোমেশন

অ্যাপ-পরিচালিত অটোমেশন হলো এমন অটোমেশন যা কোনো পার্টনার অ্যাপ অটোমেশন এপিআই ব্যবহার করে প্রোগ্রামগতভাবে তৈরি করে।

এই ধরনের অটোমেশনগুলো Google Home app (GHA) অটোমেশন তালিকায় প্রদর্শিত হওয়া থেকে বিরত রাখা হয়।

যখন কোনো অ্যাপ-পরিচালিত অটোমেশন ট্রিগার হয়, তখন হোম এপিআই অ্যাক্টিভিটি ফিডে যে তথ্য লেখা হয়, তা কাস্টমাইজ করা যেতে পারে, অথবা সম্পূর্ণরূপে দমন করা যেতে পারে। উদাহরণস্বরূপ, যদি কোনো পার্টনার "আর্কটিক" নামে একটি ব্র্যান্ডেড পরিষেবা অফার করে যা অ্যাপ-পরিচালিত অটোমেশন ব্যবহার করে প্রয়োগ করা হয়, তাহলে সেই পার্টনার নির্দিষ্ট করে দিতে পারে যে, যখন তাদের অ্যাপ-পরিচালিত অটোমেশনগুলো চলবে, তখন অ্যাক্টিভিটি ফিডে আসল অটোমেশনের নামের পরিবর্তে আর্কটিক পরিষেবাটির উল্লেখ করা হবে।

একটি অ্যাপ-পরিচালিত অটোমেশন তৈরি করুন

অ্যাপ-পরিচালিত অটোমেশন তৈরি করতে নিম্নলিখিত পদ্ধতিটি ব্যবহার করুন।

  1. অটোমেশনটির লজিক গ্রাফ তৈরি করুন।

  2. ঐচ্ছিক: আপনি যদি চান আপনার অটোমেশনের কার্যকলাপ অ্যাক্টিভিটি ফিডে দেখা যাক, তাহলে আপনি অটোমেশনের নামের পরিবর্তে ফিডে যে স্থানীয় বার্তাটি দেখাতে চান, তা দিয়ে একটি AppManagedAutomationConfig ইনস্ট্যান্স পূরণ করতে পারেন। এটি কোনো অ্যাপ বা পরিষেবার স্থানীয় নাম, অথবা আপনার পছন্দের অন্য যেকোনো বার্তা হতে পারে। আপনি যদি কোনো স্থানীয় স্ট্রিং প্রদান না করেন, তাহলে অটোমেশন এক্সিকিউশনগুলো অন্য যেকোনো অটোমেশনের মতোই লগ করা হয়। সেরা ব্যবহারকারীর অভিজ্ঞতা নিশ্চিত করতে গুগল এই স্থানীয় স্ট্রিংগুলো সেট করার পরামর্শ দেয়।

    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. যদি আপনি GHA এর Activity ট্যাবে অটোমেশনটির এক্সিকিউশন হিস্ট্রি দেখাতে চান, তাহলে client_feature_group কে "APP_MANAGED_EXECUTION_REPORTED" এ সেট করুন, অথবা যদি আপনি অটোমেশনটির এক্সিকিউশন হিস্ট্রি দেখাতে না চান, তাহলে "APP_MANAGED_EXECUTION_UNREPORTED" এ সেট করুন।
    3. automationGraph সেট করুন।
    4. ঐচ্ছিক: অটোমেশনটির appManagedAutomationConfig সেট করুন (ধাপ ২ দেখুন)।
  4. সবশেষে, Automation ইনস্ট্যান্সটি তৈরি করতে build() কল করুন।

এই উদাহরণটি সম্পূর্ণ পদ্ধতিটি দেখায়:


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
,

অ্যাপ-পরিচালিত অটোমেশন হলো এমন অটোমেশন যা কোনো পার্টনার অ্যাপ অটোমেশন এপিআই ব্যবহার করে প্রোগ্রামগতভাবে তৈরি করে।

এই ধরনের অটোমেশনগুলো Google Home app (GHA) অটোমেশন তালিকায় প্রদর্শিত হওয়া থেকে বিরত রাখা হয়।

যখন কোনো অ্যাপ-পরিচালিত অটোমেশন ট্রিগার হয়, তখন হোম এপিআই অ্যাক্টিভিটি ফিডে যে তথ্য লেখা হয়, তা কাস্টমাইজ করা যেতে পারে, অথবা সম্পূর্ণরূপে দমন করা যেতে পারে। উদাহরণস্বরূপ, যদি কোনো পার্টনার "আর্কটিক" নামে একটি ব্র্যান্ডেড পরিষেবা অফার করে যা অ্যাপ-পরিচালিত অটোমেশন ব্যবহার করে প্রয়োগ করা হয়, তাহলে সেই পার্টনার নির্দিষ্ট করে দিতে পারে যে, যখন তাদের অ্যাপ-পরিচালিত অটোমেশনগুলো চলবে, তখন অ্যাক্টিভিটি ফিডে আসল অটোমেশনের নামের পরিবর্তে আর্কটিক পরিষেবাটির উল্লেখ করা হবে।

একটি অ্যাপ-পরিচালিত অটোমেশন তৈরি করুন

অ্যাপ-পরিচালিত অটোমেশন তৈরি করতে নিম্নলিখিত পদ্ধতিটি ব্যবহার করুন।

  1. অটোমেশনটির লজিক গ্রাফ তৈরি করুন।

  2. ঐচ্ছিক: আপনি যদি চান আপনার অটোমেশনের কার্যকলাপ অ্যাক্টিভিটি ফিডে দেখা যাক, তাহলে আপনি অটোমেশনের নামের পরিবর্তে ফিডে যে স্থানীয় বার্তাটি দেখাতে চান, তা দিয়ে একটি AppManagedAutomationConfig ইনস্ট্যান্স পূরণ করতে পারেন। এটি কোনো অ্যাপ বা পরিষেবার স্থানীয় নাম, অথবা আপনার পছন্দের অন্য যেকোনো বার্তা হতে পারে। আপনি যদি কোনো স্থানীয় স্ট্রিং প্রদান না করেন, তাহলে অটোমেশন এক্সিকিউশনগুলো অন্য যেকোনো অটোমেশনের মতোই লগ করা হয়। সেরা ব্যবহারকারীর অভিজ্ঞতা নিশ্চিত করতে গুগল এই স্থানীয় স্ট্রিংগুলো সেট করার পরামর্শ দেয়।

    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. যদি আপনি GHA এর Activity ট্যাবে অটোমেশনটির এক্সিকিউশন হিস্ট্রি দেখাতে চান, তাহলে client_feature_group কে "APP_MANAGED_EXECUTION_REPORTED" এ সেট করুন, অথবা যদি আপনি অটোমেশনটির এক্সিকিউশন হিস্ট্রি দেখাতে না চান, তাহলে "APP_MANAGED_EXECUTION_UNREPORTED" এ সেট করুন।
    3. automationGraph সেট করুন।
    4. ঐচ্ছিক: অটোমেশনটির appManagedAutomationConfig সেট করুন (ধাপ ২ দেখুন)।
  4. সবশেষে, Automation ইনস্ট্যান্সটি তৈরি করতে build() কল করুন।

এই উদাহরণটি সম্পূর্ণ পদ্ধতিটি দেখায়:


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
,

অ্যাপ-পরিচালিত অটোমেশন হলো এমন অটোমেশন যা কোনো পার্টনার অ্যাপ অটোমেশন এপিআই ব্যবহার করে প্রোগ্রামগতভাবে তৈরি করে।

এই ধরনের অটোমেশনগুলো Google Home app (GHA) অটোমেশন তালিকায় প্রদর্শিত হওয়া থেকে বিরত রাখা হয়।

যখন কোনো অ্যাপ-পরিচালিত অটোমেশন ট্রিগার হয়, তখন হোম এপিআই অ্যাক্টিভিটি ফিডে যে তথ্য লেখা হয়, তা কাস্টমাইজ করা যেতে পারে, অথবা সম্পূর্ণরূপে দমন করা যেতে পারে। উদাহরণস্বরূপ, যদি কোনো পার্টনার "আর্কটিক" নামে একটি ব্র্যান্ডেড পরিষেবা অফার করে যা অ্যাপ-পরিচালিত অটোমেশন ব্যবহার করে প্রয়োগ করা হয়, তাহলে সেই পার্টনার নির্দিষ্ট করে দিতে পারে যে, যখন তাদের অ্যাপ-পরিচালিত অটোমেশনগুলো চলবে, তখন অ্যাক্টিভিটি ফিডে আসল অটোমেশনের নামের পরিবর্তে আর্কটিক পরিষেবাটির উল্লেখ করা হবে।

একটি অ্যাপ-পরিচালিত অটোমেশন তৈরি করুন

অ্যাপ-পরিচালিত অটোমেশন তৈরি করতে নিম্নলিখিত পদ্ধতিটি ব্যবহার করুন।

  1. অটোমেশনটির লজিক গ্রাফ তৈরি করুন।

  2. ঐচ্ছিক: আপনি যদি চান আপনার অটোমেশনের কার্যকলাপ অ্যাক্টিভিটি ফিডে দেখা যাক, তাহলে আপনি অটোমেশনের নামের পরিবর্তে ফিডে যে স্থানীয় বার্তাটি দেখাতে চান, তা দিয়ে একটি AppManagedAutomationConfig ইনস্ট্যান্স পূরণ করতে পারেন। এটি কোনো অ্যাপ বা পরিষেবার স্থানীয় নাম, অথবা আপনার পছন্দের অন্য যেকোনো বার্তা হতে পারে। আপনি যদি কোনো স্থানীয় স্ট্রিং প্রদান না করেন, তাহলে অটোমেশন এক্সিকিউশনগুলো অন্য যেকোনো অটোমেশনের মতোই লগ করা হয়। সেরা ব্যবহারকারীর অভিজ্ঞতা নিশ্চিত করতে গুগল এই স্থানীয় স্ট্রিংগুলো সেট করার পরামর্শ দেয়।

    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. যদি আপনি GHA এর Activity ট্যাবে অটোমেশনটির এক্সিকিউশন হিস্ট্রি দেখাতে চান, তাহলে client_feature_group কে "APP_MANAGED_EXECUTION_REPORTED" এ সেট করুন, অথবা যদি আপনি অটোমেশনটির এক্সিকিউশন হিস্ট্রি দেখাতে না চান, তাহলে "APP_MANAGED_EXECUTION_UNREPORTED" এ সেট করুন।
    3. automationGraph সেট করুন।
    4. ঐচ্ছিক: অটোমেশনটির appManagedAutomationConfig সেট করুন (ধাপ ২ দেখুন)।
  4. সবশেষে, Automation ইনস্ট্যান্সটি তৈরি করতে build() কল করুন।

এই উদাহরণটি সম্পূর্ণ পদ্ধতিটি দেখায়:


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