AdWords এবং Merchant Center সাব-অ্যাকাউন্ট তৈরি এবং লিঙ্ক করা

1. ভূমিকা

এই কোডল্যাবে, আপনি কেনাকাটার জন্য সামগ্রী API এবং AdWords API- এর সাথে কাজ করার কিছু মৌলিক বিষয় শিখবেন এবং উভয়ই ব্যবহার করে এমন একটি অ্যাপ্লিকেশন তৈরি করবেন। বিশেষ করে, আপনি একটি কমান্ড-লাইন অ্যাপ্লিকেশন তৈরি করবেন যা একটি AdWords অ্যাকাউন্ট এবং একটি মার্চেন্ট সেন্টার অ্যাকাউন্ট তৈরি এবং লিঙ্ক করবে।

আপনি কি শিখবেন

  • কিভাবে একটি ম্যানেজার অ্যাকাউন্ট দ্বারা পরিচালিত AdWords অ্যাকাউন্ট তৈরি করবেন।
  • একটি মাল্টি-ক্লায়েন্ট অ্যাকাউন্ট দ্বারা পরিচালিত মার্চেন্ট সেন্টার অ্যাকাউন্টগুলি কীভাবে তৈরি করবেন।
  • কীভাবে একটি বণিক কেন্দ্র অ্যাকাউন্ট থেকে একটি অ্যাডওয়ার্ড অ্যাকাউন্টে একটি লিঙ্কের অনুরোধ করবেন৷
  • কিভাবে একটি AdWords অ্যাকাউন্টে একটি মুলতুবি বণিক কেন্দ্র লিঙ্ক গ্রহণ করবেন।

আপনি কি প্রয়োজন হবে

2. সেট আপ করা হচ্ছে

c ode ডাউনলোড করুন

এই কোডল্যাবের সমস্ত কোড ডাউনলোড করতে নিম্নলিখিত লিঙ্কে ক্লিক করুন:

ডাউনলোড করা জিপ ফাইলটি আনপ্যাক করুন। এটি একটি রুট ফোল্ডার ( shopping-account-linking-master ) আনপ্যাক করবে, যাতে আপনার প্রয়োজনীয় সমস্ত সংস্থান সহ একটি মাভেন প্রকল্প রয়েছে। নিম্নলিখিত সাবডিরেক্টরিগুলি বিশেষভাবে উল্লেখ্য:

  • src/main/java হল Maven প্রজেক্টের উৎস রুট এবং এতে আপনার কাজ করার জন্য একটি কোড কঙ্কাল রয়েছে।
  • src/main/java/solution সমাপ্ত সমাধান রয়েছে।

প্রয়োজনীয় প্যাকেজ ইনস্টল করুন এবং তৈরি করুন

আপনি যদি Eclipse বা IntelliJ এর মত একটি Maven-সচেতন IDE ব্যবহার করেন , তাহলে আপনি এক্সট্র্যাক্ট করা ফোল্ডারটিকে একটি Maven প্রোজেক্ট হিসেবে ইম্পোর্ট করতে পারেন এবং তারপরে সাধারণত প্রোজেক্টটি কম্পাইল করতে পারেন।

আপনি যদি কমান্ড লাইন থেকে Maven ব্যবহার করছেন , আপনি প্রয়োজনীয় প্যাকেজগুলি পুনরুদ্ধার করতে নিম্নলিখিত কমান্ডটি চালাতে পারেন এবং আনপ্যাক করা প্রকল্পের রুট ফোল্ডার থেকে প্রকল্পটি কম্পাইল করতে পারেন ( shopping-account-linking-master ):

mvn compile

3. প্রমাণীকরণ সেট আপ করুন৷

এই ধাপের জন্য, আমরা কোনো কোডিং করব না, কিন্তু শপিংয়ের জন্য AdWords API এবং Content API-এর জন্য উপযুক্ত প্রমাণীকরণ টোকেন ধারণ করে এমন ফাইল সেট আপ করব।

AdWords API একটি প্রমাণীকরণ সেট আপ করুন

এই কোডল্যাবটি ক্লায়েন্ট লাইব্রেরির মতো একই ক্রেডেনশিয়াল লোডিং ব্যবহার করে, তাই আপনি যদি ইতিমধ্যেই আপনার ম্যানেজার অ্যাকাউন্টের সাথে Java এর জন্য Google Ads APIs ক্লায়েন্ট লাইব্রেরি ব্যবহার করে থাকেন, তাহলে আপনাকে ইতিমধ্যেই সেট আপ করা উচিত। অন্যথায়, Java এর জন্য Google Ads APIs ক্লায়েন্ট লাইব্রেরি শুরু করার জন্য ধাপ 1-3 অনুসরণ করুন।

Content API একটি প্রমাণীকরণ সেট আপ করুন

আপনার যদি ইতিমধ্যে একটি পরিষেবা অ্যাকাউন্ট কী না থাকে:

  1. আপনার বহু-ক্লায়েন্ট অ্যাকাউন্টের জন্য বণিক কেন্দ্রে যান এবং ওভারফ্লো মেনু থেকে সামগ্রী API নির্বাচন করুন: 89507d635c51a3dc.png
  2. প্রমাণীকরণ নির্বাচন করুন, তারপর নীল + বোতামে ক্লিক করুন: c465d8dc314ec158.png
  3. Google ক্লাউড প্ল্যাটফর্ম এবং Google API-এর পরিষেবার শর্তাবলী স্বীকার করার পরে, আপনার ব্রাউজার স্বয়ংক্রিয়ভাবে আপনার নতুন পরিষেবা অ্যাকাউন্ট কী সহ একটি JSON ফাইল ডাউনলোড করবে।

এখন একটি পরিষেবা অ্যাকাউন্টের সাথে কেনাকাটার নমুনাগুলির জন্য প্রমাণীকরণ সেট আপ করার জন্য নির্দেশাবলী অনুসরণ করুন৷ অর্থাৎ, আপনার পরিষেবা অ্যাকাউন্ট কী-এর একটি অনুলিপি আপনার হোম ডিরেক্টরি থেকে নিম্নলিখিত পাথে অবস্থিত হওয়া উচিত: shopping-samples/content/service-account.json । আপনার নমুনা কনফিগারেশন সেট আপ করার দরকার নেই, যদি না আপনি এই কোডল্যাবটি শেষ করার পরে নমুনাগুলি চেষ্টা করতে আগ্রহী হন!

এটা পরীক্ষা করে দেখুন

এখন আপনার কাছে সঠিক জায়গায় প্রমাণীকরণ টোকেন আছে, নমুনা চালানোর চেষ্টা করুন। আপনি যদি কমান্ড লাইনে Maven ব্যবহার করেন তবে নিম্নলিখিত কমান্ডগুলি চালান:

mvn compile
mvn exec:java -Dexec.mainClass="SolutionRunner"

আপনি যদি সেশন অবজেক্টগুলি প্রদান না করার বিষয়ে একটি ত্রুটি বার্তা পান, তাহলে আপনার প্রমাণীকরণ টোকেনগুলি সঠিকভাবে কাজ করছে! অন্যথায়, আপনি যে ত্রুটির বার্তাটি পেয়েছেন তা আপনাকে জানাতে হবে কোন শংসাপত্রগুলি কাজ করতে ব্যর্থ হয়েছে এবং কোন ফাইলটি ঠিক করতে হবে৷

4. API-এর সাথে সংযোগ করুন৷

এখন আপনার কাছে বৈধ প্রমাণীকরণ টোকেন রয়েছে যে দুটি API আমরা ব্যবহার করব, আসুন আসল কোডটি পূরণ করা শুরু করি। আমরা আমাদের প্রমাণীকরণ টোকেন ব্যবহার করে সেশন অবজেক্ট তৈরি করে শুরু করব। পরবর্তী ধাপে, আমরা বিভিন্ন পরিষেবা এবং পদ্ধতি অ্যাক্সেস করব যা প্রতিটি API এই সেশন অবজেক্টগুলি ব্যবহার করে প্রদান করে।

একটি বিষয়বস্তু API সেশন অবজেক্ট তৈরি করুন

একটি বিষয়বস্তু API সেশন তৈরি করতে, আমরা একটি ShoppingContent.Builder অবজেক্ট তৈরি করব এবং তারপর উপযুক্ত ShoppingContent অবজেক্ট তৈরি করতে এটি ব্যবহার করব। সৌভাগ্যবশত, প্রাক্তনটি তৈরি করার জন্য আমাদের যা দরকার তা ইতিমধ্যেই কোড কঙ্কালে উপলব্ধ, তাই আমাদের এটিকে একসাথে টানতে হবে:

সমাধানRunner.java

// TODO(sessions): Create a ShoppingContent object using ShoppingContent.Builder.
contentApiSession =
    new ShoppingContent.Builder(httpTransport, jsonFactory, contentApiCredential)
        .setApplicationName("Linking AdWords and Merchant Center Accounts Codelab")
        .build();

একটি অ্যাপ্লিকেশনের নাম সেট করা কঠোরভাবে প্রয়োজনীয় নয়, তবে এটি দেখায় কিভাবে build() পদ্ধতিতে কল করার আগে ShoppingContent.Builder অবজেক্টের মাধ্যমে যেকোনো পছন্দসই বিকল্প সেট করতে হয়।

একটি AdWords API সেশন অবজেক্ট তৈরি করুন

একইভাবে, AdWordsSession অবজেক্ট তৈরির জন্য একটি AdWordsSession.Builder ক্লাস রয়েছে। এখানে প্রধান পার্থক্য হল যে বিল্ডারের উপর সরাসরি কনফিগারেশন বিকল্পগুলি সেট করার পরিবর্তে, আমরা আগের ধাপে সেট আপ করা ads.properties ফাইল থেকে লোড করতে fromFile() পদ্ধতি ব্যবহার করব।

সমাধানRunner.java

// TODO(sessions): Create a AdWordsSession object using AdWordsSession.Builder.
adWordsSession =
    new AdWordsSession.Builder()
        .fromFile()
        .withOAuth2Credential(adwordsOAuth2Credential)
        .build();

এটা পরীক্ষা করে দেখুন

আপনি যদি কমান্ড লাইন থেকে এটি চালান তবে আমরা ম্যাভেন প্রকল্পটি পুনর্নির্মাণ এবং চালানোর জন্য শেষ বিভাগের মতো একই কমান্ডগুলি ব্যবহার করব:

mvn compile
mvn exec:java -Dexec.mainClass="SolutionRunner"

এই সময়, আপনি কোন ত্রুটি পাবেন না, যদিও আপনি কোন আকর্ষণীয় আউটপুট পাবেন না. আমরা যখন নতুন অ্যাকাউন্ট তৈরি এবং লিঙ্ক করতে API-কে কল করব তখন আমরা এটি যোগ করব।

5. একটি নতুন পরিচালিত AdWords অ্যাকাউন্ট তৈরি করুন৷

এখন যেহেতু আমরা আমাদের এপিআই সেশন অবজেক্ট তৈরি করেছি, আমরা যে অ্যাকাউন্টগুলি লিঙ্ক করতে চাই সেগুলির মাধ্যমে যাব এবং তৈরি করব। আমরা AdWords দিয়ে শুরু করব এবং আমাদের ম্যানেজার অ্যাকাউন্টের অধীনে একটি পরীক্ষামূলক অ্যাকাউন্ট তৈরি করব।

ManagedCustomerService অ্যাক্সেস করুন

AdWords API-এ, আমরা স্ট্যাটিক getInstance() পদ্ধতি ব্যবহার করে প্রথমে AdWordsServices ক্লাসের একটি উদাহরণ পুনরুদ্ধার করে বিভিন্ন উপলব্ধ পরিষেবা অ্যাক্সেস করি। এই উদাহরণটি ব্যবহার করে, আমরা তারপর get() পদ্ধতির মাধ্যমে সেই পরিষেবাগুলির জন্য ক্লায়েন্ট তৈরি করতে পারি, যা দুটি আর্গুমেন্ট নেয়: সেশন যার জন্য ক্লায়েন্ট তৈরি করতে হবে এবং পছন্দসই পরিষেবার জন্য ইন্টারফেস।

সমাধানRunner.java

// TODO(newAWaccount): Using the ManagedCustomerService, create a new testing AdWords account
// under the given manager account.

AdWordsServicesInterface adWordsServices = AdWordsServices.getInstance();

ManagedCustomerServiceInterface managedCustomerService =
    adWordsServices.get(adWordsSession, ManagedCustomerServiceInterface.class);

এখানে, আমরা ManagedCustomerService অ্যাক্সেস করি, যা আমাদেরকে একটি প্রদত্ত ম্যানেজার অ্যাকাউন্ট থেকে AdWords "গ্রাহক" (অ্যাকাউন্ট) পরিচালনা করতে দেয়।

নতুন অ্যাকাউন্ট সেটিংস নির্দিষ্ট করুন

প্রথমে, আমরা একটি ManagedCustomer অবজেক্ট তৈরি করব যাতে আমাদের নতুন অ্যাকাউন্টের সেটিংস থাকবে। আমরা এই কোডল্যাবের জন্য একটি পরীক্ষামূলক অ্যাকাউন্ট তৈরি করব, এটির মুদ্রা USD এবং এর সময় অঞ্চল মার্কিন পশ্চিম উপকূলের মতোই সেট করব৷

সমাধানRunner.java

Random rand = new Random();
long run = rand.nextLong();

ManagedCustomer newAdWordsAccount = new ManagedCustomer();
newAdWordsAccount.setName(String.format("AdWords Account Created by Run %d", run));
newAdWordsAccount.setTestAccount(true);
newAdWordsAccount.setCurrencyCode("USD");
newAdWordsAccount.setDateTimeZone("America/Los_Angeles");

আমরা একটি এলোমেলো নম্বরও তৈরি করি যা আমরা অ্যাকাউন্টের নামে অন্তর্ভুক্ত করি। আমরা এখানে যে AdWords অ্যাকাউন্টটি তৈরি করব তা আমরা পরবর্তীতে তৈরি করব এমন Merchant Center অ্যাকাউন্টের সাথে মেলাতে পারি, যাতে আমাদের সমাধান সম্পূর্ণ হয়ে গেলে আমরা সেগুলিকে দৃশ্যত পরিদর্শন করতে পারি এবং নিশ্চিত করতে পারি যে এটি সত্যিই দুটিকে লিঙ্ক করেছে।

নতুন পরিচালিত অ্যাকাউন্ট তৈরি করুন

আসলে নতুন অ্যাকাউন্ট তৈরি করতে, আমরা একটি ADD অপারেশন নির্দিষ্ট করতে ManagedCustomerOperation ব্যবহার করব:

সমাধানRunner.java

ManagedCustomerOperation operation = new ManagedCustomerOperation();
operation.setOperand(newAdWordsAccount);
operation.setOperator(Operator.ADD);

তারপর আমরা ManagedCustomerService অবজেক্টের mutate() পদ্ধতি ব্যবহার করে অপারেশনটি সম্পাদন করব। এই পদ্ধতিটি সঞ্চালনের জন্য অপারেশনগুলির একটি বিন্যাস লাগে, কিন্তু এখানে আমরা শুধুমাত্র একটি একক অপারেশন করতে চাই। mutate() পদ্ধতির ফলাফল হল ManagedCustomer s-এর একটি তালিকা ধারণকারী একটি মান; এখানে, এটি একটি তালিকা হবে যার মধ্যে একজন গ্রাহক, আমরা তৈরি করা নতুন অ্যাকাউন্ট। আমরা ভবিষ্যতে ব্যবহারের জন্য সেই নতুন অ্যাকাউন্টের জন্য আইডি পুনরুদ্ধার করব, এবং আমরা এটিকে প্রিন্টও করব যাতে আমরা এটিকে আমাদের সমাধানের আউটপুটের অংশ হিসাবে দেখতে পারি।

সমাধানRunner.java

ManagedCustomerReturnValue result =
    managedCustomerService.mutate(new ManagedCustomerOperation[] {operation});
Long adWordsId = result.getValue()[0].getCustomerId();
System.out.printf("Created new AdWords account %d%n", adWordsId);

এটা পরীক্ষা করে দেখুন

আগের মত, সমাধান চালানোর চেষ্টা করুন। আপনি যদি কমান্ড লাইন থেকে Maven ব্যবহার করছেন:

mvn compile
mvn exec:java -Dexec.mainClass="SolutionRunner"

সবকিছু ঠিকঠাক থাকলে, আপনি এখনও কোন ত্রুটি দেখতে পাবেন না, এবং এবার আমরা আমাদের তৈরি করা নতুন AdWords অ্যাকাউন্টের ID দেখতে পাব। আপনার ম্যানেজার অ্যাকাউন্টের জন্য অ্যাডওয়ার্ড সাইটটি দেখুন এবং আপনি সেখানে তালিকাভুক্ত নতুন অ্যাকাউন্টটিও দেখতে পাবেন!

6. একটি নতুন বণিক কেন্দ্র উপ-অ্যাকাউন্ট তৈরি করুন৷

এই ধাপে, আমরা মার্চেন্ট সেন্টার সাব-অ্যাকাউন্ট তৈরি করব যা আমরা শেষ ধাপে তৈরি করা AdWords অ্যাকাউন্টের সাথে লিঙ্ক করব। সাব-অ্যাকাউন্ট তৈরি করার পরে আলাদাভাবে একটি লিঙ্কের অনুরোধ করার পরিবর্তে, আমরা তৈরির সময় লিঙ্কটির জন্য অনুরোধ করতে পারি কারণ আমাদের কাছে ইতিমধ্যেই সংশ্লিষ্ট AdWords অ্যাকাউন্টের জন্য আইডি রয়েছে।

নতুন সাব-অ্যাকাউন্টের জন্য সেটিংস নির্দিষ্ট করুন

AdWords API-এর বিপরীতে, Account মডেল ক্লাসের সেটারগুলি বস্তুটি ফেরত দেয়, তাই আমরা নতুন Account অবজেক্টে তাদের সাথে আমাদের কলগুলি চেইন করতে পারি। আমরা নতুন বণিক কেন্দ্র অ্যাকাউন্টের নামেও AdWords অ্যাকাউন্ট তৈরির সময় তৈরি করা র্যান্ডম নম্বর ব্যবহার করব।

সমাধানRunner.java

Account newMcAccount = new Account()
    .setName(String.format("Merchant Center Account Created by Run %d", run))
    .setAdwordsLinks(
        ImmutableList.of(
            new AccountAdwordsLink()
                .setAdwordsId(BigInteger.valueOf(adWordsId))
                .setStatus("active")));

এই পদক্ষেপের ভূমিকায় উল্লিখিত হিসাবে, যেহেতু আমাদের কাছে ইতিমধ্যেই নতুন পরিচালিত অ্যাকাউন্টের জন্য AdWords ID আছে, আমরা এখন নতুন উপ-অ্যাকাউন্টের জন্য AdwordsLinks এর তালিকায় সেই IDটিকে যোগ করতে পারি। নতুন উপ-অ্যাকাউন্ট তৈরি হলে, এই লিঙ্কটি স্বয়ংক্রিয়ভাবে অনুরোধ করা হবে এবং AdWords API-এ উপলব্ধ হবে৷

নতুন সাব-অ্যাকাউন্ট তৈরি করুন

Content API-এ, আমরা Accounts পরিষেবা অ্যাক্সেস করতে সেশন অবজেক্টের accounts() পদ্ধতিকে কল করি এবং তারপরে একটি অপারেশন অবজেক্ট সেট আপ করার পরিবর্তে সরাসরি insert() পদ্ধতিতে কল করি। এই পদ্ধতিতে দুটি আর্গুমেন্ট লাগে: মাল্টি-ক্লায়েন্ট অ্যাকাউন্টের আইডি যার অধীনে নতুন সাব-অ্যাকাউন্ট তৈরি করতে হবে, এবং Account অবজেক্ট যা পছন্দসই সেটিংস ধারণ করে:

সমাধানRunner.java

newMcAccount = contentApiSession.accounts().insert(mcaId, newMcAccount).execute();

System.out.printf("Created new Merchant Center account %s%n", newMcAccount.getId());

insert() পদ্ধতি একটি Account অবজেক্ট প্রদান করে যাতে নতুন উপ-অ্যাকাউন্টের সেটিংস রয়েছে। আমরা আমাদের আসল Account অবজেক্ট ওভাররাইট করি কারণ প্রত্যাবর্তিত সংস্করণে তথ্যের একটি গুরুত্বপূর্ণ অংশ রয়েছে: নতুন উপ-অ্যাকাউন্টের আইডি। আমরা এটিকে আমাদের সমাধান থেকে আউটপুটে প্রিন্ট করি, যাতে আমরা আমাদের সমাধান চালাতে পারি এবং তারপরে মার্চেন্ট সেন্টারে নতুন উপ-অ্যাকাউন্ট বিদ্যমান রয়েছে তা যাচাই করতে পারি।

এটা পরীক্ষা করে দেখুন

আগের মত, সমাধান চালানোর চেষ্টা করুন। আপনি যদি কমান্ড লাইন থেকে Maven ব্যবহার করছেন:

mvn compile
mvn exec:java -Dexec.mainClass="SolutionRunner"

সবকিছু ঠিকঠাক থাকলে, আপনি এখনও কোনও ত্রুটি দেখতে পাবেন না এবং এবার আমরা নতুন AdWords অ্যাকাউন্ট এবং নতুন বণিক কেন্দ্র অ্যাকাউন্ট উভয়ের জন্য আইডি দেখতে পাব। নতুন উপ-অ্যাকাউন্ট দেখতে আপনার বহু-ক্লায়েন্ট অ্যাকাউন্টের জন্য বণিক কেন্দ্র চেক করুন।

7. AdWords অ্যাকাউন্ট থেকে লিঙ্কটি গ্রহণ করুন৷

শেষ ধাপে, আমরা একটি নতুন বণিক কেন্দ্র উপ-অ্যাকাউন্ট তৈরি করেছি, একই সময়ে আমাদের নতুন অ্যাডওয়ার্ড অ্যাকাউন্টের লিঙ্কের অনুরোধ করে। এই ধাপে, আমরা অনুরোধ করা লিঙ্কটি গ্রহণ করার জন্য AdWords API ব্যবহার করে প্রক্রিয়াটি শেষ করব।

গ্রাহকসেবা অ্যাক্সেস করুন

আগের মত, আমরা CustomerService জন্য ক্লায়েন্ট পেতে AdWordsServices ক্লাস ব্যবহার করব। যাইহোক, আমরা ক্লায়েন্ট তৈরি করার আগে, আমরা প্রথমে আমাদের AdWords সেশন অবজেক্ট পরিবর্তন করি যাতে ভবিষ্যতের ব্যবহারগুলি ম্যানেজার অ্যাকাউন্টের পরিবর্তে নতুন পরিচালিত অ্যাকাউন্টে কাজ করে। সর্বোপরি, বণিক কেন্দ্রের অ্যাকাউন্টটি পরিচালিত অ্যাকাউন্টের সাথে একটি লিঙ্কের অনুরোধ করেছে, পরিচালকের অ্যাকাউন্ট নয়

সমাধানRunner.java

// TODO(acceptLink): Using the mutateServiceLinks method in CustomerService, accept the
// proposed link between the new AdWords account and the new Merchant Center account.

adWordsSession.setClientCustomerId(adWordsId.toString());

CustomerServiceInterface customerService =
    adWordsServices.get(adWordsSession, CustomerServiceInterface.class);

যেমন আমরা যখন একটি নতুন AdWords অ্যাকাউন্ট তৈরি করি, তখন আমরা একটি ServiceLink অবজেক্ট তৈরি করব যাতে লিঙ্ক সেটিংস থাকে, এবং তারপর একটি ServiceLinkOperation অবজেক্ট যা পছন্দসই ক্রিয়াকলাপকে বর্ণনা করে। এখানে, আমরা একটি MERCHANT_CENTER অ্যাকাউন্টে মুলতুবি পরিষেবা লিঙ্কটি নিয়ে যেতে চাই এবং এটিকে ACTIVESET চাই। serviceLinkId সেটিংসের জন্য, আমরা এইমাত্র তৈরি করা Merchant Center অ্যাকাউন্টের ID ব্যবহার করব, যেমনটি AdWords-এ পরিষেবা লিঙ্কের ID-এর জন্য ব্যবহৃত হয়৷

সমাধানRunner.java

ServiceLink serviceLink = new ServiceLink();
serviceLink.setServiceLinkId(newMcAccount.getId().longValue());
serviceLink.setLinkStatus(ServiceLinkLinkStatus.ACTIVE);
serviceLink.setServiceType(ServiceType.MERCHANT_CENTER);

ServiceLinkOperation op = new ServiceLinkOperation();
op.setOperator(Operator.SET);
op.setOperand(serviceLink);

অবশেষে, আমরা অপারেশন সম্পাদনের জন্য কাস্টমার সার্ভিস অবজেক্টের mutateServiceLinks() পদ্ধতিতে কল করব। আগের মতো, এটি পরিষেবা লিঙ্ক অপারেশনগুলির একটি অ্যারে নেয়। এই সময়, পদ্ধতিটি সরাসরি (সম্ভবত পরিবর্তিত) পরিষেবা লিঙ্কগুলির একটি তালিকা প্রদান করে, তাই আমরা সেই তালিকাটি লুপ করে আমাদের সমাধানের ফলাফলটি মুদ্রণ করব। অবশ্যই, যেহেতু আমরা শুধুমাত্র একটি একক ক্রিয়াকলাপ নির্দিষ্ট করেছি, আপনি আশা করেন যে আউটপুটে একটি একক লিঙ্ক প্রিন্ট করা হবে।

সমাধানRunner.java

ServiceLink[] mutatedServiceLinks =
    customerService.mutateServiceLinks(new ServiceLinkOperation[] {op});
for (ServiceLink mutatedServiceLink : mutatedServiceLinks) {
  System.out.printf(
      "Service link with service link ID %d, type '%s' updated to status: %s.%n",
      mutatedServiceLink.getServiceLinkId(),
      mutatedServiceLink.getServiceType(),
      mutatedServiceLink.getLinkStatus());
}

এটা পরীক্ষা করে দেখুন

আগের মত, সমাধান চালানোর চেষ্টা করুন। আপনি যদি কমান্ড লাইন থেকে Maven ব্যবহার করছেন:

mvn compile
mvn exec:java -Dexec.mainClass="SolutionRunner"

সবকিছু ঠিকঠাক থাকলে, আপনি এখনও কোনও ত্রুটি দেখতে পাবেন না, এবং এইবার আমরা একটি নোটও দেখব যে পরিষেবা লিঙ্কটি সক্রিয় হওয়ার জন্য আপডেট করা হয়েছে৷ AdWords এবং Merchant Center চেক করুন এবং দুবার চেক করুন যে অ্যাকাউন্টগুলি সত্যিই এখন লিঙ্ক করা হয়েছে৷

8. একটি থিমে বৈচিত্র

কোডল্যাবের মাধ্যমে এটি তৈরি করার জন্য অভিনন্দন! এখন যেহেতু আপনার কাছে একটি সম্পূর্ণ কার্যকরী সমাধান রয়েছে, আসুন এই কোডল্যাবে আপনি যে APIগুলি দেখেছেন তার বেশি ব্যবহার করার জন্য আপনি কীভাবে এটিকে সংশোধন বা প্রসারিত করতে পারেন তার কিছু উদাহরণ দেখি৷

কোডল্যাবে, আমরা চতুরতার সাথে প্রথমে AdWords অ্যাকাউন্ট তৈরি করেছি যাতে আমরা মার্চেন্ট সেন্টার অ্যাকাউন্ট তৈরি করার সময় লিঙ্কের জন্য অনুরোধ করতে এর তথ্য ব্যবহার করতে পারি। যাইহোক, যদি বণিক কেন্দ্রের অ্যাকাউন্টটি আগে থেকেই থাকে, তাহলে এর পরিবর্তে আপনাকে এর কনফিগারেশন আপডেট করতে হবে। প্রথমে বণিক কেন্দ্র অ্যাকাউন্ট তৈরি করতে আপনার কোড পরিবর্তন করার চেষ্টা করুন এবং তারপরে AdWords অ্যাকাউন্ট তৈরি করার পরে ফিরে যান এবং লিঙ্কের অনুরোধ করার জন্য এটির কনফিগারেশন আপডেট করুন।

বর্তমানে, অ্যাপ্লিকেশনটি শুধুমাত্র API কল থেকে ত্রুটির অনুপস্থিতিকে সাফল্যের চিহ্ন হিসাবে বিবেচনা করে। নতুন মার্চেন্ট সেন্টার এবং অ্যাডওয়ার্ডস অ্যাকাউন্টগুলির জন্য লিঙ্কের তথ্য পরীক্ষা করতে উদাহরণটি প্রসারিত করার চেষ্টা করুন এবং দেখুন যে লিঙ্কটি আসলেই সক্রিয়।

পৃথিবী তোমার ঝিনুক

আপনি যদি অন্য পরিবর্তনের কথা ভাবেন যা আপনি করতে পারেন, তাদের চেষ্টা করে দেখুন! আপনার ধারণার জন্য রেফারেন্স কোডের প্রয়োজন হলে, Google বিজ্ঞাপন জাভা ক্লায়েন্ট লাইব্রেরি উত্সে Google শপিং নমুনা এবং examples ডিরেক্টরি দেখুন।