অ্যাকশন অনুরোধ হ্যান্ডেল

‘অ্যাকশন ঘোষণা’ অংশে যেমন বর্ণনা করা হয়েছে, যখন কোনো ব্যবহারকারী একটি ইন-অ্যাপ অ্যাকশনের সাথে ইন্টারঅ্যাক্ট করেন, তখন গুগল সেই অ্যাকশনে ঘোষিত একটি URL-এ একটি HTTP রিকোয়েস্ট পাঠায়।

নিম্নলিখিত উদাহরণটি একটি ব্যয় প্রতিবেদন সম্পর্কিত ইমেইলে একটি ConfirmAction বাটন যোগ করে:

JSON-LD

<script type="application/ld+json">
{
  "@context": "http://schema.org",
  "@type": "EmailMessage",
  "potentialAction": {
    "@type": "ConfirmAction",
    "name": "Approve Expense",
    "handler": {
      "@type": "HttpActionHandler",
      "url": "https://myexpenses.com/approve?expenseId=abc123"
    }
  },
  "description": "Approval request for John's $10.13 expense for office supplies"
}
</script>

মাইক্রোডেটা

<div itemscope itemtype="http://schema.org/EmailMessage">
  <div itemprop="potentialAction" itemscope itemtype="http://schema.org/ConfirmAction">
    <meta itemprop="name" content="Approve Expense"/>
    <div itemprop="handler" itemscope itemtype="http://schema.org/HttpActionHandler">
      <link itemprop="url" href="https://myexpenses.com/approve?expenseId=abc123"/>
    </div>
  </div>
  <meta itemprop="description" content="Approval request for John's $10.13 expense for office supplies"/>
</div>

যখন ব্যবহারকারী বোতামটিতে ক্লিক করেন, তখন গুগল থেকে আপনার পরিষেবাতে একটি HTTP অনুরোধ পাঠানো হবে, যা নিশ্চিতকরণটি রেকর্ড করবে। আপনার পরিষেবা গুগল থেকে নিম্নলিখিত HTTP অনুরোধটি গ্রহণ করে:

POST /approve?expenseId=abc123 HTTP/1.1
Host: your-domain.com
Authorization: Bearer AbCdEf123456
Content-Type: application/x-www-form-urlencoded
User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/1.0 (KHTML, like Gecko; Gmail Actions)

confirmed=Approved

এই পৃষ্ঠার বাকি অংশে বর্ণনা করা হয়েছে যে, কাজটি সঠিকভাবে সম্পন্ন করার জন্য https://your-domain.com/approve?expenseId=abc123 এ থাকা পরিষেবাটিকে কী করতে হবে। এর মধ্যে রয়েছে:

  • অনুরোধ যাচাই করা হচ্ছে
  • পেলোড প্রক্রিয়াকরণ
  • একটি প্রতিক্রিয়া কোড ফেরত দেওয়া

ধাপ ১: অনুরোধটি যাচাই করুন

https://your-domain.com/approve?expenseId=abc123 এ থাকা পরিষেবাটি যাচাই করার জন্য উৎসাহিত করা হচ্ছে:

সকল অ্যাকশন অনুরোধের ইউজার এজেন্ট হলো Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/1.0 (KHTML, like Gecko; Gmail Actions)

সমস্ত যাচাই সফল হলে, পরিষেবাটি পরবর্তী ধাপে যেতে পারবে।

ধাপ ২: পদক্ষেপটি প্রক্রিয়া করুন

সার্ভিসটি ইউআরএল প্যারামিটারে উল্লেখিত অ্যাকশন এবং ব্যবহারকারীর কাছ থেকে সংগৃহীত অতিরিক্ত তথ্য উভয়ই প্রসেস করবে।

ব্যবহারকারীর অতিরিক্ত তথ্য রিকোয়েস্টের বডিতে থাকে এবং এটি x-www-form-urlecoded এনকোডিং ব্যবহার করে এনকোড করা হয়। এই তথ্যগুলো এমন সব প্রপার্টিতে সেট করা থাকে, যেগুলোর নাম অ্যাকশন-এর প্রপার্টিগুলোর নামের সাথে মিলে যায়। উদাহরণস্বরূপ, ConfirmAction-এর একটি confirmed প্রপার্টি রয়েছে।

ধাপ ৩: একটি প্রতিক্রিয়া কোড ফেরত দিন

সার্ভিসটি সফলভাবে অ্যাকশনটি প্রসেস ও রেকর্ড করার পর, এটির একটি রেসপন্স কোড 200 (OK) রিটার্ন করা উচিত। ত্রুটির ক্ষেত্রে নিম্নলিখিত রেসপন্স কোডগুলো ব্যবহার করা যেতে পারে:

প্রতিক্রিয়া কোড চিকিৎসা
৪০০ (ভুল অনুরোধ) গুগল কাজটি ব্যর্থ করে দেবে।
৪০১ (অননুমোদিত) গুগল কাজটি ব্যর্থ করে দেবে।
৪০৪ (খুঁজে পাওয়া যায়নি) গুগল কাজটি ব্যর্থ করে দেবে।
৪০৮ (অনুরোধের সময়সীমা অতিক্রান্ত) গুগল পরে আবার চেষ্টা করবে।

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

আরও পড়ুন