সমস্যা সমাধান

এই নথির তথ্য সাবস্ক্রিপশন লিঙ্কিং বাস্তবায়নের সময় আপনার সম্মুখীন হতে পারে এমন সমস্যা সমাধানে সাহায্য করতে পারে।

সাবস্ক্রিপশন লিঙ্কিং CTA লোডিং স্ক্রিনে আটকে আছে।

ত্রুটির উদাহরণ:

লোডিং প্রতীক

চিত্র ১. সাবস্ক্রিপশন লিঙ্কিং CTA লোড হচ্ছে না।

এই সমস্যাটি সমাধান করতে, নিম্নলিখিত বিষয়গুলো যাচাই করুন:

  • পাবলিশার সেন্টারের পাবলিকেশন সেটিংসে, টেস্টিং সাবডোমেন সহ পেজগুলোর অরিজিনকে অতিরিক্ত URL হিসেবে যোগ করা নিশ্চিত করুন।
    • নিশ্চিত করুন যে URL-এর স্ট্যাটাস 'Verify'-এর পরিবর্তে 'Verified' আছে।
  • এক্সটেন্ডেড অ্যাক্সেস বা রিডার রেভিনিউ ম্যানেজার এন্টারপ্রাইজ ইমপ্লিমেন্টেশনের ক্ষেত্রে, নিশ্চিত করুন যে আপনি টেস্টিং সাবডোমেন সহ পেজগুলোর অরিজিন, উক্ত ইমপ্লিমেন্টেশনের জন্য কনফিগার করা OAuth 2.0 ক্লায়েন্টের অনুমোদিত জাভাস্ক্রিপ্ট অরিজিনে যোগ করেছেন। এটি গুগল ক্লাউড কনসোলে করতে হবে।

অ্যাকাউন্ট লিঙ্ক করা যায়নি

ত্রুটির উদাহরণ:

অ্যাকাউন্ট লিঙ্ক করা যায়নি

চিত্র ২. অ্যাকাউন্ট লিঙ্ক করা যায়নি।

এই সমস্যাটি সমাধান করতে, নিম্নলিখিত বিষয়গুলো যাচাই করুন:

  • পাবলিশার সেন্টারে সাবস্ক্রিপশন লিঙ্কিং-এর জন্য পরিষেবার শর্তাবলী গ্রহণ করতে ভুলবেন না। এটি করার জন্য, সাবস্ক্রিপশন লিঙ্কিং সেটিংসে যান এবং সাবস্ক্রিপশন লিঙ্কিং পরিষেবার শর্তাবলীতে স্বাক্ষর করুন
  • যদি গুগল অ্যাকাউন্টটি আগে থেকেই লিঙ্ক করা থাকে, তাহলে সাবস্ক্রিপশনটি পুনরায় লিঙ্ক করার চেষ্টা করলে আপনি একটি ত্রুটির বার্তা পাবেন। ক্লায়েন্ট-সাইড ইন্টিগ্রেশন পরীক্ষাটি পুনরায় করার আগে, আপনাকে অবশ্যই গুগল অ্যাকাউন্টের সাবস্ক্রিপশন পৃষ্ঠা থেকে সাবস্ক্রিপশনটি আনলিঙ্ক করতে হবে।

সাবস্ক্রিপশন লিঙ্কিং এপিআই কল করার সময় অনুমতির ত্রুটি

ত্রুটির উদাহরণ:

কোড 403
বার্তা রিসোর্সে 'readerrevenuesubscriptionlinking.readerEntitlements.update' প্রত্যাখ্যান করা হয়েছে।
'//readerrevenuesubscriptionlinking.googleapis.com/publications/example.com/readers/10078823/entitlements'
(অথবা এটির অস্তিত্ব নাও থাকতে পারে)।

এই সমস্যাটি সমাধান করতে, নিম্নলিখিত বিষয়গুলো যাচাই করুন:

  • সাবস্ক্রিপশন লিঙ্কিং সেটআপে উল্লেখিত প্রজেক্টটিই ব্যবহার করছেন কিনা, তা নিশ্চিত করুন। পাবলিশার সেন্টারে সাবস্ক্রিপশন লিঙ্কিং সেটআপ করার সময় প্রজেক্ট নম্বরটি ব্যবহার করুন। আপনি আপনার প্রজেক্ট ড্যাশবোর্ড থেকে প্রজেক্ট নম্বরটি খুঁজে নিতে পারেন।
  • আপনার প্রজেক্টে সাবস্ক্রিপশন লিঙ্কিং এপিআই (Subscription Linking API) সক্রিয় করা আছে কিনা, তা নিশ্চিত করুন।
  • আইডেন্টিটি অ্যান্ড অ্যাক্সেস ম্যানেজমেন্ট (IAM) প্রোজেক্টে, নিশ্চিত করুন যে সার্ভিস অ্যাকাউন্টটিকে 'সাবস্ক্রিপশন লিঙ্কিং অ্যাডমিন' রোলটি প্রদান করা হয়েছে । মনে রাখবেন যে, সিস্টেমের মাধ্যমে রোল পরিবর্তনের প্রক্রিয়াটি সম্পন্ন হতে সময় লাগতে পারে। আপনার সার্ভিস অ্যাকাউন্টের সঠিক IAM রোল আছে তা নিশ্চিত করার পরেও যদি API কল করার সময় 403 এরর পান, তবে কয়েক মুহূর্ত অপেক্ষা করুন এবং তারপর আবার আপনার অনুরোধটি চেষ্টা করুন।
  • কোন সার্ভিস অ্যাকাউন্ট ব্যবহার করতে হবে বা সেগুলোর প্রয়োজনীয় IAM রোল আছে কিনা, সে বিষয়ে আপনি অনিশ্চিত থাকলে, সাবস্ক্রিপশন লিঙ্কিং-এর জন্য সেট আপ করা প্রজেক্ট থেকে পলিসি অ্যানালাইজার ব্যবহার করুন। নিম্নলিখিত কোয়েরি প্যারামিটারগুলো দিয়ে একটি কাস্টম কোয়েরি তৈরি করে চালান:

    প্যারামিটার ১ ভূমিকা
    ভূমিকা সাবস্ক্রিপশন লিঙ্কিং অ্যাডমিন
  • সাবস্ক্রিপশন লিঙ্কিং এপিআই (Subscription Linking API) কল করার সময় আপনি যেন সঠিক সার্ভিস অ্যাকাউন্ট কী (service account key) ব্যবহার করেন, তা নিশ্চিত করুন। আপনার সার্ভিস অ্যাকাউন্ট কী-এর (JSON ফাইল) নিম্নলিখিত প্রোপার্টিগুলো পরীক্ষা করুন:

    • ধরণ: এটি অবশ্যই সার্ভিস_অ্যাকাউন্ট হতে হবে।
    • project_id: এটি অবশ্যই সাবস্ক্রিপশন লিঙ্কিং সেটআপে নির্দিষ্ট করা প্রজেক্ট নম্বরের প্রজেক্ট আইডি হতে হবে।
    • ক্লায়েন্ট ইমেল: এটি অবশ্যই প্রজেক্ট IAM-এর সেই একই সার্ভিস অ্যাকাউন্ট হতে হবে, যেটিকে 'সাবস্ক্রিপশন লিঙ্কিং অ্যাডমিন' ভূমিকাটি বরাদ্দ করা হয়েছে।
  • যদি আপনি গুগল OAuth 2.0 টোকেন এন্ডপয়েন্ট (https://oauth2.googleapis.com/token) থেকে অ্যাক্সেস টোকেনটি পেয়ে থাকেন, তাহলে সাবস্ক্রিপশন লিঙ্কিং এপিআই কল করার সময় নিশ্চিত করুন যে টোকেনটি বৈধ এবং মেয়াদোত্তীর্ণ নয়। টোকেনের মেয়াদ শেষ হয়ে গেলে, আপনাকে একটি নতুন টোকেন সংগ্রহ করতে হবে।

  • আপনি যদি REST API ব্যবহার করেন, তাহলে নিশ্চিত করুন যে আপনি সাবস্ক্রিপশন লিঙ্কিং সেটআপের সময় দেওয়া পাবলিকেশন আইডিটিই ব্যবহার করছেন। উদাহরণস্বরূপ, যদি আপনার পাবলিকেশন আইডি example.com হয়, তাহলে রিকোয়েস্ট URL-এ অবশ্যই সেটি থাকতে হবে।

    • ✅ শুধুমাত্র কনফিগার করা পাবলিকেশন আইডি ব্যবহার করুন: publications/example.com/readers/10078823/entitlements
    • সাবস্ক্রিপশন লিঙ্কিং কনফিগারেশনে নির্দিষ্ট করা Publication ID ( publications/example-staging.com/readers/10078823/entitlements ছাড়া অন্য কোনো Publication ID ব্যবহার করবেন না।
    • ❌ অনুরোধে প্রকাশনা পণ্যটি অন্তর্ভুক্ত করবেন না: publications/example.com:premium/readers/10078823/entitlements

এনটাইটেলমেন্ট আপডেট করার সময় অবৈধ আর্গুমেন্ট ত্রুটি।

ত্রুটির উদাহরণ:

বার্তা ত্রুটি: অনুরোধে একটি অবৈধ আর্গুমেন্ট রয়েছে

এই সমস্যাটি সমাধান করতে, নিম্নলিখিত বিষয়গুলো যাচাই করুন:

  • নিশ্চিত করুন যে আপনি entitlements অবজেক্টটি সঠিক ফরম্যাটে প্রদান করেছেন। এই উদাহরণটি দেখুন।
  • নিশ্চিত করুন যে product_id publication_id:product ফরম্যাটে আছে।
    • ✅ বৈধ উদাহরণ: "product_id":"example.com:basic"
    • ❌ ভুল উদাহরণ: "product_id":"example.com"

অনুসন্ধানের ফলাফলে নিবন্ধগুলি হাইলাইট করা দেখা যাচ্ছে না

এই সমস্যাটি সমাধান করতে, নিম্নলিখিত বিষয়গুলো যাচাই করুন:

সাবস্ক্রিপশন লিঙ্কিং কল টু অ্যাকশন মেসেজের ভাষা পরিবর্তন করা যাবে না।

সাবস্ক্রিপশন লিঙ্কিং কল টু অ্যাকশন

সাবস্ক্রিপশন লিঙ্কিং কল টু অ্যাকশন-এর ভাষা ব্যবহারকারীর সেটিংস দ্বারা নির্ধারিত হয়। এটি বিশ্বব্যাপী পরিবর্তন করা যায় না।

ভাষাটি নিম্নরূপভাবে নির্ধারিত হয়:

  1. যদি ব্যবহারকারী তাঁর গুগল অ্যাকাউন্ট দিয়ে লগ ইন করে থাকেন, তাহলে তাঁর গুগল অ্যাকাউন্ট সেটিংসে ( https://myaccount.google.com/language ) সেট করা প্রাথমিক ভাষাটি ব্যবহৃত হয়।

  2. যদি ব্যবহারকারী লগ ইন করা না থাকেন, তাহলে ভাষাটি তার ব্রাউজার বা অপারেটিং সিস্টেমের প্রাথমিক ভাষা সেটিংসের উপর ভিত্তি করে নির্ধারিত হয়।

সাবস্ক্রিপশন লিঙ্কিং কল টু অ্যাকশন সব ভাষা সমর্থন করে না। যদি কোনো ব্যবহারকারীর প্রধান ভাষা সমর্থিত না হয়, তাহলে কল টু অ্যাকশনটি ডিফল্টভাবে ইংরেজিতে পরিবর্তিত হতে পারে।