Google Chat অ্যাপ আর্কিটেকচার বেছে নিন

এই পৃষ্ঠায়, Google Chat অ্যাপ তৈরি করতে ব্যবহৃত সাধারণ পরিষেবা আর্কিটেকচার সংক্রান্ত পদ্ধতির বিবরণ দেওয়া আছে। আপনার যদি আগে থেকেই এমন কোনও অ্যাপ থাকে যা আপনি Google Chat-এ ইন্টিগ্রেট করতে চান, তাহলে আপনার আগে থেকে থাকা ইমপ্লিমেন্টেশন ব্যবহার বা অ্যাডাপ্ট করতে পারবেন। আপনি নতুন কোনও চ্যাট অ্যাপ তৈরি করলে, এই পৃষ্ঠাটি আপনাকে আপনার ব্যবহারের ক্ষেত্রে সঠিক আর্কিটেকচার বেছে নিতে সাহায্য করার জন্য কয়েকটি আলাদা আলাদা উপায়ে একই ধরনের তথ্য উপস্থাপন করে:

ফিচার ও কেপেবিলিটি অনুযায়ী ওভারভিউ

নিচের সারণীতে চ্যাট অ্যাপের মূল ফিচার ও ক্ষমতা এবং সাজেস্ট করা () পরিষেবা আর্কিটেকচার স্টাইল হাইলাইট করা হয়েছে। কিছু ক্ষেত্রে, এইসব ফিচার ব্যবহার করে অন্য আর্কিটেকচার স্টাইল ডেভেলপ করা সম্ভব হতে পারে, কিন্তু তা অন্যান্য স্টাইলের () মতো এই ব্যবহারের ক্ষেত্রে উপযুক্ত নয়।

বৈশিষ্ট্য এবং ক্ষমতা

ওয়েব বা HTTP পরিষেবা

Pub/Sub

ওয়েবহুক

Apps Script

AppSheet

Dialogflow

স্ক্রিপ্ট

টার্গেট করা দর্শক

আপনার টিম

আপনার প্রতিষ্ঠান

সাধারণ জনগণ

ব্যবহারকারীর ইন্টার‍্যাক্টিভিটি

ন্যাচারাল ল্যাঙ্গুয়েজ প্রসেসিং ব্যবহার করা

মেসেজিং প্যাটার্ন

সিঙ্ক্রোনাস মেসেজ পাঠানো ও পাওয়া

সিঙ্ক্রোনাস মেসেজ পাঠানো ও পাওয়া এবং অ্যাসিঙ্ক্রোনাস মেসেজ পাঠানো

শুধুমাত্র অ্যাসিঙ্ক্রোনাস মেসেজ পাঠানো

এক্সটার্নাল সিস্টেম থেকে একটি Chat স্পেসে মেসেজ পাঠানো

অন্যান্য পরিষেবা ও সিস্টেম অ্যাক্সেস করা

অন্যান্য Google পরিষেবার সাথে ইন্টিগ্রেট করা

ফায়ারওয়ালের মাধ্যমে যোগাযোগ করা

চ্যাট ইভেন্ট কোয়েরি করা বা সাবস্ক্রাইব করা

কোডিং ও ডেপ্লয়মেন্ট স্টাইল

কোড ছাড়াই ডেভেলপমেন্ট

লো-কোড ব্যবহার করে ডেভেলপমেন্ট

আপনার পছন্দসই প্রোগ্রামিং ভাষায় ডেভেলপমেন্ট

সহজ DevOps

সম্পূর্ণ DevOps এবং CI/CD ম্যানেজমেন্ট

পরিষেবা আর্কিটেকচার স্টাইল

এই বিভাগে, Chat অ্যাপ তৈরি করতে ব্যবহৃত সবচেয়ে সাধারণ আর্কিটেকচারাল পদ্ধতিগুলির কিছু বর্ণনা করা হয়েছে।

ওয়েব বা HTTP পরিষেবা

ওয়েব বা HTTP পরিষেবা হল সবচেয়ে বেশি ব্যবহার করা আর্কিটেকচার কারণ এটি ডেভেলপারদের পাবলিক চ্যাট অ্যাপ তৈরি করার জন্য সবচেয়ে বেশি নমনীয়তা প্রদান করে। এই আর্কিটেকচার নিম্নলিখিত ব্যবহারের ক্ষেত্রে সাজেস্ট করা হয়:

  • Chat অ্যাপটি Google Workspace Marketplace-এ সর্বজনীনভাবে ডিপ্লয় করা হয়েছে।
  • Chat অ্যাপ সব মেসেজিং প্যাটার্ন পাঠাতে ও পেতে পারে: সিঙ্ক্রোনাস মেসেজ পাঠানো ও পাওয়া, অ্যাসিঙ্ক্রোনাস মেসেজ পাঠানো এবং এক্সটার্নাল সিস্টেম থেকে মেসেজ পাঠানো।
  • Chat অ্যাপ যেকোনও প্রোগ্রামিং ল্যাঙ্গুয়েজে ডেভেলপ করা হয়।
  • Chat অ্যাপে সম্পূর্ণ DevOps এবং CI/CD ম্যানেজমেন্ট প্রয়োজন।
  • Chat অ্যাপ পরিষেবা ক্লাউড বা অন-প্রিমিজেস সার্ভারে প্রয়োগ করা হয়।

এই ডিজাইনে, আপনি HTTP ব্যবহার করে Chat-কে কোনও রিমোট পরিষেবার সাথে ইন্টিগ্রেট করার জন্য কনফিগার করেন, যেমনটি নিম্নলিখিত ডায়াগ্রামে দেখানো হয়েছে:

অন-প্রিমিজেস সার্ভারে ওয়েব পরিষেবা ব্যবহার করে এমন চ্যাট অ্যাপের আর্কিটেকচার।

আগের ডায়াগ্রামে, HTTP চ্যাট অ্যাপের সাথে ইন্টার‍্যাক্ট করা কোনও ব্যবহারকারীর তথ্যের ফ্লো নিচে উল্লেখ করা হল:

  1. কোনও ব্যবহারকারী Chat অ্যাপে Chat স্পেস থেকে মেসেজ পাঠান।
  2. Chat অ্যাপ লজিক আছে এমন কোনও ক্লাউড বা অন-প্রিমিজেস সিস্টেমে HTTP অনুরোধ পাঠানো হয়।
  3. ঐচ্ছিকভাবে, Chat অ্যাপের লজিক প্রজেক্ট ম্যানেজমেন্ট সিস্টেম বা টিকিটিং টুলের মতো এক্সটার্নাল থার্ড-পার্টি পরিষেবার সাথে ইন্টার‍্যাক্ট করতে পারে।
  4. ওয়েব সার্ভার, Chat-এ থাকা Chat অ্যাপ পরিষেবায় একটি HTTP উত্তর ফেরত পাঠায়।
  5. উত্তরটি ব্যবহারকারীকে ডেলিভার করা হয়।
  6. বিকল্প হিসেবে, Chat অ্যাপ অ্যাসিঙ্ক্রোনাসভাবে মেসেজ পোস্ট করতে বা অন্যান্য অপারেশন পারফর্ম করতে Chat API-কে কল করতে পারে।

এই আর্কিটেকচার আপনাকে আগে থেকে থাকা লাইব্রেরি ও কম্পোনেন্ট ব্যবহার করার ব্যাপারে নমনীয়তা প্রদান করে, কারণ এই চ্যাট অ্যাপগুলি আলাদা আলাদা প্রোগ্রামিং ল্যাঙ্গুয়েজ ব্যবহার করে ডিজাইন করা যেতে পারে। এই আর্কিটেকচার প্রয়োগ করার বিভিন্ন উপায় আছে। Google Cloud-এ, আপনি Cloud Run ও App Engine ব্যবহার করতে পারবেন। শুরু করতে, Google Chat অ্যাপ তৈরি করুন।

Pub/Sub

ফায়ারওয়ালের পিছনে Chat অ্যাপ প্রয়োগ করা হলে, Chat সেটিতে HTTP কল করতে পারে না। একটি পদ্ধতি হল, Chat অ্যাপের প্রয়োগকে চালু করতে Pub/Sub ব্যবহার করা, যাতে এটি Chat থেকে মেসেজ বহনকারী কোনও বিষয়ে সাবস্ক্রাইব করতে পারে। Pub/Sub হল একটি অ্যাসিঙ্ক্রোনাস মেসেজিং পরিষেবা যা মেসেজ তৈরি করা পরিষেবাগুলিকে সেইসব পরিষেবা থেকে আলাদা করে দেয় যেগুলি সেইসব মেসেজ প্রসেস করে। এই আর্কিটেকচার নিম্নলিখিত ব্যবহারের ক্ষেত্রে সাজেস্ট করা হয়:

  • ফায়ারওয়ালের পিছনে Chat অ্যাপ তৈরি করা হয়েছে।
  • Chat অ্যাপ Chat স্পেস সম্পর্কে ইভেন্ট পায়।
  • আপনার প্রতিষ্ঠানে Chat অ্যাপ ডিপ্লয় করা হয়েছে।
  • Chat অ্যাপ সিঙ্ক্রোনাস মেসেজ পাঠাতে ও পেতে এবং অ্যাসিঙ্ক্রোনাস মেসেজ পাঠাতে পারে।
  • Chat অ্যাপ যেকোনও প্রোগ্রামিং ল্যাঙ্গুয়েজে ডেভেলপ করা হয়।
  • Chat অ্যাপে সম্পূর্ণ DevOps এবং CI/CD ম্যানেজমেন্ট প্রয়োজন।

নিচের ডায়াগ্রামে Pub/Sub-এর সাহায্যে তৈরি করা চ্যাট অ্যাপের আর্কিটেকচার দেখানো হয়েছে:

Pub/Sub-এর মাধ্যমে প্রয়োগ করা চ্যাট অ্যাপের আর্কিটেকচার।

পূর্ববর্তী ডায়াগ্রামে, কোনও ব্যবহারকারী Pub/Sub চ্যাট অ্যাপের সাথে ইন্টার‍্যাক্ট করলে, তথ্যের নিম্নলিখিত ফ্লো থাকে:

  1. কোনও ব্যবহারকারী Chat অ্যাপকে সরাসরি মেসেজ বা Chat স্পেসে মেসেজ পাঠান অথবা Chat স্পেসে কোনও ইভেন্ট হয় যার জন্য Chat অ্যাপের অ্যাক্টিভ সাবস্ক্রিপশন আছে।

  2. Chat, Pub/Sub টপিকে মেসেজ পাঠায়।

  3. একটি অ্যাপ্লিকেশন সার্ভার, যা হল একটি ক্লাউড বা অন-প্রিমিজেস সিস্টেম যা চ্যাট অ্যাপের লজিক কন্টেন করে, ফায়ারওয়ালের মাধ্যমে মেসেজ পাওয়ার জন্য Pub/Sub টপিকে সাবস্ক্রাইব করে।

  4. বিকল্প হিসেবে, Chat অ্যাপ অ্যাসিঙ্ক্রোনাসভাবে মেসেজ পোস্ট করতে বা অন্যান্য অপারেশন পারফর্ম করতে Chat API-কে কল করতে পারে।

শুরু করতে, আপনার Chat অ্যাপের জন্য এন্ডপয়েন্ট হিসেবে Pub/Sub ব্যবহার করুন দেখুন।

ওয়েবহুক

আপনি এমন একটি Chat অ্যাপ তৈরি করতে পারেন যা শুধুমাত্র Chat ওয়েবহুক URL-এ কল করে নির্দিষ্ট Chat স্পেসে মেসেজ পাঠাতে পারে। নিম্নলিখিত ব্যবহারের ক্ষেত্রে এই আর্কিটেকচার সাজেস্ট করা হয়:

  • আপনার টিমের জন্য Chat অ্যাপ ডেপ্লয় করা হয়েছে।
  • Chat অ্যাপ একটি এক্সটার্নাল সিস্টেম থেকে একটি Chat স্পেসে মেসেজ পাঠায়।

এই আর্কিটেকচারের মাধ্যমে, Chat অ্যাপকে একটি নির্দিষ্ট Chat স্পেসের মধ্যে সীমাবদ্ধ রাখা হয় এবং ব্যবহারকারীর সাথে ইন্টার‍্যাক্ট করতে দেওয়া হয় না, যেমন নিচের ডায়াগ্রামে দেখানো হয়েছে:

Chat-এ সিঙ্ক না করা মেসেজ পাঠানোর জন্য ইনকামিং ওয়েবহুকের আর্কিটেকচার।

আগের ডায়াগ্রামে, একটি Chat অ্যাপের নিম্নলিখিত তথ্য প্রবাহ রয়েছে:

  1. চ্যাট অ্যাপের লজিক প্রজেক্ট ম্যানেজমেন্ট সিস্টেম বা টিকেটিং টুলের মতো এক্সটার্নাল থার্ড-পার্টি পরিষেবা থেকে তথ্য পায়।
  2. Chat অ্যাপের লজিক কোনও ক্লাউড বা অন-প্রিমিজেস সিস্টেমে হোস্ট করা হয় যা কোনও নির্দিষ্ট Chat স্পেসে ওয়েবহুক URL ব্যবহার করে মেসেজ পাঠাতে পারে।
  3. ব্যবহারকারীরা সেই নির্দিষ্ট Chat Space-এ Chat অ্যাপ থেকে মেসেজ পেতে পারেন, কিন্তু Chat অ্যাপের সাথে ইন্টার‍্যাক্ট করতে পারেন না।

এই ধরনের Chat অ্যাপ অন্য Chat স্পেসে বা অন্য টিমের সাথে শেয়ার করা যায় না এবং Google Workspace Marketplace-এ প্রকাশ করা যায় না। অ্যালার্ট বা স্ট্যাটাস রিপোর্ট করার জন্য অথবা কিছু ধরনের চ্যাট অ্যাপের প্রোটোটাইপিংয়ের জন্য ইনকামিং ওয়েব হুক সাজেস্ট করা হয়।

শুরু করতে, ওয়েব হুক ব্যবহার করে Chat-এ মেসেজ পাঠান দেখুন।

Apps Script

আপনি সম্পূর্ণভাবে JavaScript-এ Chat অ্যাপের লজিক তৈরি করতে পারবেন। Google Apps Script হল Chat অ্যাপের জন্য একটি লো-কোড ডেভেলপমেন্ট প্ল্যাটফর্ম। Apps Script ব্যবহারকারীকে যাচাই করার জন্য অনুমতি ফ্লো ও OAuth 2.0 টোকেন ম্যানেজ করে। আপনি পাবলিক চ্যাট অ্যাপ তৈরি করতে Apps Script ব্যবহার করতে পারেন, তবে দৈনিক কোটা ও সীমা থাকার কারণে এটি সাজেস্ট করা হয় না।

নিম্নলিখিত ব্যবহারের ক্ষেত্রে এই আর্কিটেকচার সাজেস্ট করা হয়:

  • আপনার টিম বা সংস্থায় Chat অ্যাপ ডেপ্লয় করা হয়েছে।
  • Chat অ্যাপ সব মেসেজিং প্যাটার্ন পাঠাতে ও পেতে পারে: সিঙ্ক্রোনাস মেসেজ পাঠানো ও পাওয়া, অ্যাসিঙ্ক্রোনাস মেসেজ পাঠানো এবং এক্সটার্নাল সিস্টেম থেকে মেসেজ পাঠানো।
  • Chat অ্যাপের জন্য সহজ DevOps ম্যানেজমেন্ট প্রয়োজন।

এই আর্কিটেকচার সেইসব চ্যাট অ্যাপের জন্য উপযোগী যেগুলি অন্যান্য Google Workspace এবং Google পরিষেবার সাথেও ইন্টিগ্রেট করে, যেমন Google Sheets, Google Slides, Google Calendar, Google Drive, Google Maps এবং YouTube, যা নিম্নলিখিত ডায়াগ্রামে দেখানো হয়েছে:

Apps Script-এর মাধ্যমে প্রয়োগ করা চ্যাট অ্যাপের আর্কিটেকচার।

পূর্ববর্তী ডায়াগ্রামে, কোনও ব্যবহারকারী Apps Script Chat অ্যাপের সাথে ইন্টার‍্যাক্ট করলে, তথ্যের ফ্লো নিম্নলিখিতভাবে হয়:

  1. কোনও ব্যবহারকারী Chat অ্যাপে মেসেজ পাঠান, সেটি সরাসরি মেসেজ বা Chat স্পেস হতে পারে।
  2. Apps Script-এ প্রয়োগ করা Chat অ্যাপের লজিক, যা Google Cloud-এ থাকে, সেটি মেসেজ পায়।
  3. ঐচ্ছিকভাবে, Chat অ্যাপের লজিক Google Workspace পরিষেবার সাথে ইন্টিগ্রেট করতে পারে, যেমন Calendar বা Sheets অথবা অন্যান্য Google পরিষেবা, যেমন Google Maps বা YouTube.
  4. Chat অ্যাপের লজিক Chat-এর Chat অ্যাপ পরিষেবায় একটি উত্তর পাঠায়।
  5. উত্তরটি ব্যবহারকারীকে ডেলিভার করা হয়।

শুরু করতে, Apps Script-এর মাধ্যমে চ্যাট অ্যাপ তৈরি করুন দেখুন।

AppSheet

আপনি AppSheet ব্যবহার করে কোড ছাড়াই ডোমেন-শেয়ার করা Chat অ্যাপ তৈরি করতে পারবেন। আপনি অটোমেটিক কনফিগারেশন মোড ব্যবহার করে এবং সাধারণ Chat অ্যাপ অ্যাকশন তৈরি করতে টেমপ্লেট অনুসরণ করে ডেভেলপমেন্ট প্রসেসকে সহজ করতে পারেন। তবে, কিছু AppSheet ওয়েব অ্যাপ ফিচার Chat অ্যাপে উপলভ্য নেই।

নিম্নলিখিত ব্যবহারের ক্ষেত্রে এই আর্কিটেকচার সাজেস্ট করা হয়:

  • Chat অ্যাপ আপনার ও আপনার টিমের জন্য ডেপ্লয় করা হয়েছে।
  • Chat অ্যাপ সিঙ্ক্রোনাস মেসেজ পাঠাতে ও পেতে এবং অ্যাসিঙ্ক্রোনাস মেসেজ পাঠাতে পারে।
  • Chat অ্যাপের জন্য সহজ DevOps ম্যানেজমেন্ট প্রয়োজন।

নিচের ডায়াগ্রামে AppSheet দিয়ে তৈরি করা চ্যাট অ্যাপের আর্কিটেকচার দেখানো হয়েছে:

AppSheet-এর মাধ্যমে প্রয়োগ করা চ্যাট অ্যাপের আর্কিটেকচার।

পূর্ববর্তী ডায়াগ্রামে, কোনও ব্যবহারকারী AppSheet Chat অ্যাপের সাথে ইন্টার‍্যাক্ট করলে, তথ্যের ফ্লো নিম্নলিখিতভাবে হয়:

  1. কোনও ব্যবহারকারী Chat অ্যাপকে সরাসরি মেসেজ বা Chat স্পেসে মেসেজ পাঠান।
  2. Google Cloud-এ থাকা AppSheet-এ প্রয়োগ করা Chat অ্যাপের লজিক মেসেজটি পায়।
  3. বিকল্প হিসেবে, Chat অ্যাপের লজিক Google Workspace পরিষেবার সাথে ইন্টিগ্রেট করা যেতে পারে, যেমন Apps Script বা Google Sheets.
  4. Chat অ্যাপের লজিক Chat-এর Chat অ্যাপ পরিষেবায় একটি উত্তর পাঠায়।
  5. উত্তরটি ব্যবহারকারীকে ডেলিভার করা হয়।

শুরু করতে, AppSheet-এর মাধ্যমে চ্যাট অ্যাপ তৈরি করুন দেখুন।

Dialogflow

আপনি Dialogflow-এর সাহায্যে চ্যাট অ্যাপ তৈরি করতে পারেন, এটি অটোমেটিক কথোপকথন ও ডায়নামিক উত্তরের জন্য একটি প্রাকৃতিক ভাষা প্ল্যাটফর্ম। নিম্নলিখিত ব্যবহারের ক্ষেত্রে এই আর্কিটেকচার সাজেস্ট করা হয়:

  • Chat অ্যাপ সিঙ্ক্রোনাস মেসেজ পাঠাতে ও পেতে পারে।
  • ব্যবহারকারীদের সাথে উত্তর দেওয়া ও ইন্টার‍্যাক্ট করার জন্য Chat অ্যাপ ন্যাচারাল ল্যাঙ্গুয়েজ প্রসেসিং ব্যবহার করে।

নিচের ডায়াগ্রামে Dialogflow-এর সাহায্যে তৈরি করা চ্যাট অ্যাপের আর্কিটেকচার দেখানো হয়েছে:

Dialogflow-এর মাধ্যমে প্রয়োগ করা চ্যাট অ্যাপের আর্কিটেকচার।

আগের ডায়াগ্রামে, Dialogflow Chat অ্যাপের সাথে ইন্টার‍্যাক্ট করা ব্যবহারকারীর ক্ষেত্রে তথ্যের ফ্লো নিচে দেওয়া হল:

  1. কোনও ব্যবহারকারী Chat অ্যাপকে সরাসরি মেসেজ বা Chat স্পেসে মেসেজ পাঠান।
  2. Google Cloud-এ থাকা Dialogflow ভার্চুয়াল এজেন্ট, উত্তর তৈরি করার জন্য মেসেজ পায় ও প্রসেস করে।
  3. বিকল্প হিসেবে, একটি Dialogflow ওয়েবহুক ব্যবহার করে, Dialogflow এজেন্ট এক্সটার্নাল থার্ড-পার্টি পরিষেবার সাথে ইন্টার‍্যাক্ট করতে পারে, যেমন প্রজেক্ট ম্যানেজমেন্ট সিস্টেম বা টিকিটিং টুল।
  4. Dialogflow এজেন্ট Chat-এ Chat অ্যাপ পরিষেবায় উত্তর পাঠায়।
  5. উত্তরটি Chat স্পেসে ডেলিভার করা হয়।

শুরু করতে, Dialogflow Google Chat অ্যাপ তৈরি করুন দেখুন।

কমান্ড-লাইন অ্যাপ্লিকেশন বা স্ক্রিপ্ট

আপনি এমন কমান্ড-লাইন অ্যাপ্লিকেশন বা স্ক্রিপ্ট তৈরি করতে পারেন যা Chat-এ মেসেজ পাঠায় বা অন্যান্য অপারেশন পারফর্ম করে, যেমন স্পেস তৈরি করা বা স্পেসের মেম্বারদের ম্যানেজ করা। এর ফলে ব্যবহারকারীরা সরাসরি Chat-এ Chat অ্যাপকে ইনভোক বা উত্তর দিতে পারেন না। নিম্নলিখিত ব্যবহারের ক্ষেত্রে এই আর্কিটেকচার সাজেস্ট করা হয়:

  • Chat অ্যাপ যেকোনও প্রোগ্রামিং ল্যাঙ্গুয়েজে ডেভেলপ করা হয়।
  • Chat অ্যাপ শুধুমাত্র অ্যাসিঙ্ক্রোনাস মেসেজ পাঠাতে পারে।

নিচের ডায়াগ্রামে আর্কিটেকচার দেখানো হয়েছে:

কমান্ড-লাইন অ্যাপ্লিকেশন বা স্ক্রিপ্টের মাধ্যমে প্রয়োগ করা Chat অ্যাপের আর্কিটেকচার।

আগের ডায়াগ্রামে, Chat অ্যাপে নিম্নলিখিত তথ্য প্রবাহ রয়েছে:

  1. Chat অ্যাপ, মেসেজ পাঠাতে বা অন্য কোনও অপারেশন পারফর্ম করতে Chat API-কে কল করে।
  2. চ্যাট অনুরোধ করা অপারেশনটি এক্সিকিউট করে।
  3. বিকল্প হিসেবে, Chat অ্যাপ CLI-তে একটি কনফার্মেশন প্রিন্ট করে।

Chat অ্যাপ লজিক প্রয়োগ করা

Chat অ্যাপের লজিক প্রয়োগ করার ক্ষেত্রে Chat কোনও বিধিনিষেধ আরোপ করে না। আপনি একটি নির্দিষ্ট সিনট্যাক্স কমান্ড পার্সার তৈরি করতে, উন্নত AI এবং ভাষা প্রসেসিং লাইব্রেরি বা পরিষেবা ব্যবহার করতে, সাবস্ক্রাইব করতে এবং ইভেন্টে উত্তর দিতে অথবা আপনার নির্দিষ্ট লক্ষ্যের জন্য উপযুক্ত অন্য কিছু করতে পারেন।

ব্যবহারকারীর ইন্টার‍্যাকশন ম্যানেজ করা

চ্যাট অ্যাপ ব্যবহারকারীদের সাথে ইন্টার‍্যাক্ট করতে পারে। ব্যবহারকারীর ইন্টার‍্যাকশন হল এমন কোনও অ্যাকশন যা ব্যবহারকারী Chat অ্যাপকে ইনভোক বা সেটির সাথে ইন্টার‍্যাক্ট করার জন্য নেন।

কমান্ড পার্সার

কমান্ড-পরিচালিত চ্যাট অ্যাপ চ্যাট অ্যাপ ব্যবহারকারীর ইন্টার‍্যাকশন-এর পে-লোড পরীক্ষা করে, তারপর এই কন্টেন্ট থেকে কমান্ড ও প্যারামিটার এক্সট্র্যাক্ট করে। যেমন, Google Chat অ্যাপ কমান্ডের উত্তর দেওয়া দেখুন।

আরেকটি পদ্ধতি হল মেসেজকে টোকেনাইজ করা, কমান্ড এক্সট্র্যাক্ট করা এবং তারপরে প্রতিটি কমান্ডের জন্য হ্যান্ডলার ফাংশনে কমান্ড ম্যাপ করে এমন একটি অভিধান রেফারেন্স করা।

ডায়ালগ-ভিত্তিক ইউজার ইন্টারফেস

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

ব্যবহারকারী যখনই কোনও ডায়ালগে কোনও অ্যাকশন এক্সিকিউট করেন, তখন Chat অ্যাপে একটি নতুন ইভেন্ট পাঠানো হয়, যা ডায়ালগ আপডেট করে বা মেসেজ পাঠিয়ে উত্তর দিতে পারে।

ন্যাচারাল ল্যাঙ্গুয়েজ প্রসেসিং

অনেক Chat অ্যাপ প্রয়োগে, ব্যবহারকারী কী জানতে চাইছেন তা নির্ধারণ করতে ন্যাচারাল ল্যাঙ্গুয়েজ প্রসেসিং (NLP) ব্যবহার করা হয়। NLP প্রয়োগ করার অনেক উপায় আছে এবং আপনি যেভাবে পছন্দ করেন সেভাবে NLP প্রয়োগ করার বিকল্প বেছে নিতে পারেন।

আপনি নিজের চ্যাট অ্যাপ ইমপ্লিমেন্টেশনে Dialogflow ES অথবা Dialogflow CX-এর সাথে NLP ব্যবহার করতে পারবেন, যা আপনাকে অটোমেটিক কথোপকথন ও ডায়নামিক উত্তরের জন্য ভার্চুয়াল এজেন্ট তৈরি করতে দেয়।

Chat-কে সক্রিয়ভাবে অনুরোধ করা

এছাড়াও, চ্যাট অ্যাপগুলি Chat-এ মেসেজ বা অন্যান্য অনুরোধ পাঠাতে পারে, যা Chat-এ ব্যবহারকারীর সরাসরি ইন্টার‍্যাকশনের মাধ্যমে ট্রিগার করা হয় না। পরিবর্তে, এইসব Chat অ্যাপকে ট্রিগার করা যেতে পারে—যেমন, থার্ড-পার্টি অ্যাপ্লিকেশন বা ব্যবহারকারীর থেকে পাওয়া কমান্ড-লাইন ইনভোকেশন ব্যবহার করে, কিন্তু ব্যবহারকারীরা Chat-এ এইসব Chat অ্যাপের সাথে সরাসরি ইন্টার‍্যাক্ট করতে পারবেন না।

নন-ইন্টার‍্যাক্টিভ চ্যাট অ্যাপ, Chat API ব্যবহার করে Chat-এ মেসেজ বা অন্যান্য ধরনের অনুরোধ পাঠায়।

কথোপকথন সংক্রান্ত প্যাটার্ন

আপনি কীভাবে চান যে আপনার Chat অ্যাপ ব্যবহারকারীদের সাথে ইন্টার‍্যাক্ট করুক, তা বিবেচনা করে দেখা উচিত। নিম্নলিখিত বিভাগে কথোপকথনের প্যাটার্ন বর্ণনা করা হয়েছে যা আপনার Chat অ্যাপ প্রয়োগ করতে পারে।

কল ও উত্তর (সিনক্রোনাস)

সিঙ্ক্রোনাস কল ও উত্তর প্যাটার্নে, Chat অ্যাপ ব্যবহারকারীর মেসেজের উত্তর এক-এক করে দেয়। ব্যবহারকারীর পাঠানো একটি মেসেজের উত্তরে Chat অ্যাপ একটি উত্তর দেয়, যা নিচের ডায়াগ্রামে দেখানো হয়েছে:

সিঙ্ক্রোনাস মেসেজের আর্কিটেকচার।

আগের ডায়াগ্রামে, একজন ব্যবহারকারী চ্যাট অ্যাপের সাথে ইন্টার‍্যাক্ট করলে, তথ্যের ফ্লো নিম্নলিখিতভাবে হয়:

  1. কোনও ব্যবহারকারী Chat অ্যাপে সিনক্রোনাস মেসেজ পাঠান—যেমন, "আমার পরবর্তী মিটিং কখন?"।
  2. Chat অ্যাপ ব্যবহারকারীকে সিঙ্ক্রোনাস মেসেজ পাঠায়—যেমন, "ডঃ সিলভার সাথে ২:৩০"।

এই ধরনের কনভারসেশনাল প্যাটার্নের জন্য, আপনি ওয়েব পরিষেবা, Pub/Sub, Apps স্ক্রিপ্ট, AppSheet বা Dialogflow ব্যবহার করে চ্যাট অ্যাপ আর্কিটেকচার ইমপ্লিমেন্ট করতে পারেন।

একাধিক উত্তর (অ্যাসিঙ্ক্রোনাস)

একাধিক উত্তরের প্যাটার্নে সিঙ্ক্রোনাস ও অ্যাসিঙ্ক্রোনাস মেসেজ থাকতে পারে। এই প্যাটার্নে ব্যবহারকারী ও Chat অ্যাপের মধ্যে দ্বিমুখী যোগাযোগ হয়। Chat অ্যাপ যত খুশি অতিরিক্ত মেসেজ তৈরি করতে পারে, যেমনটি নিম্নলিখিত ডায়াগ্রামে দেখানো হয়েছে:

অ্যাসিঙ্ক্রোনাস মেসেজের আর্কিটেকচার।

আগের ডায়াগ্রামে, একজন ব্যবহারকারী চ্যাট অ্যাপের সাথে ইন্টার‍্যাক্ট করলে, তথ্যের ফ্লো নিম্নলিখিতভাবে হয়:

  1. একজন ব্যবহারকারী Chat অ্যাপে সিঙ্ক্রোনাস মেসেজ পাঠান—যেমন, "ট্রাফিক মনিটর করো"।
  2. Chat অ্যাপ ব্যবহারকারীকে অনুরোধ প্রাপ্তির স্বীকৃতি হিসেবে একটি সিঙ্ক্রোনাস মেসেজ পাঠায়—যেমন, "মনিটরিং চালু করা হয়েছে"।
  3. পরে, Chat অ্যাপ REST API-কে কল করে ব্যবহারকারীকে এক বা একাধিক অ্যাসিঙ্ক্রোনাস মেসেজ পাঠায়—যেমন, "নতুন ট্রাফিক"।
  4. ব্যবহারকারী Chat অ্যাপে একটি অতিরিক্ত সিঙ্ক্রোনাস মেসেজ পাঠান—যেমন, "ট্রাফিক উপেক্ষা করো"।
  5. Chat অ্যাপ ব্যবহারকারীকে অনুরোধ প্রাপ্তির ব্যাপারে নিশ্চিত করতে সিঙ্ক্রোনাস মেসেজ পাঠায়—যেমন, "মনিটরিং বন্ধ করা হয়েছে"।

এই ধরনের কথোপকথনের প্যাটার্নের জন্য, আপনি ওয়েব পরিষেবা, Pub/Sub, Apps স্ক্রিপ্ট বা AppSheet ব্যবহার করে চ্যাট অ্যাপ আর্কিটেকচার প্রয়োগ করতে পারেন।

ইভেন্ট কোয়েরি করা বা সাবস্ক্রাইব করা (অ্যাসিঙ্ক্রোনাস)

অ্যাসিঙ্ক্রোনাস ইভেন্ট-ড্রিভেন প্যাটার্নে, Chat API-তে কোয়েরি করে অথবা Google Workspace Events API ব্যবহার করে Chat স্পেস বা ব্যবহারকারীর সাবস্ক্রিপশন তৈরি করে Chat অ্যাপ ইভেন্ট পায়। নতুন মেসেজ পোস্ট করা হলে বা কোনও ব্যবহারকারী স্পেসে যোগ দিলে, Chat রিসোর্সে হওয়া পরিবর্তনগুলি ইভেন্ট হিসেবে দেখানো হয়। ইভেন্ট-চালিত Chat অ্যাপ পরিবর্তিত Chat সম্পদ সম্পর্কে ডেটা পেতে ইভেন্ট পেলোড পরীক্ষা করে, তারপর সেই অনুযায়ী উত্তর দেয়।

চ্যাট অ্যাপ বিভিন্ন ধরনের ইভেন্ট পেতে পারে, যার মধ্যে স্পেস, মেম্বারশিপ, মেসেজ ও প্রতিক্রিয়া সম্পর্কিত ইভেন্ট অন্তর্ভুক্ত। কোনও চ্যাট অ্যাপ, চ্যাট API কোয়েরি করে অথবা অ্যাক্টিভ সাবস্ক্রিপশনের মাধ্যমে কোনও ইভেন্ট পেলে, চ্যাট API ব্যবহার করে চ্যাট অ্যাপটি যেকোনও সংখ্যক অ্যাসিঙ্ক্রোনাস উত্তর জেনারেট করে চ্যাটে ফেরত পাঠাতে পারে।

আপনি এই ধরনের লজিক ব্যবহার করে এক্সটার্নাল সিস্টেম আপডেট করতে পারেন, যেমন টিকিট ম্যানেজমেন্ট সিস্টেম অথবা Chat স্পেসে অ্যাসিঙ্ক্রোনাস মেসেজ পাঠাতে পারেন—যেমন, কোনও নতুন ব্যবহারকারী Chat স্পেসে যোগ দিলে তাকে স্বাগত জানানোর মেসেজ পাঠানো।

নিচের ডায়াগ্রামে ইভেন্ট-ড্রিভেন কথোপকথনের একটি উদাহরণ দেখানো হয়েছে:

চ্যাট ইভেন্টের সাবস্ক্রিপশনের আর্কিটেকচার

আগের ডায়াগ্রামে, Chat ও Chat অ্যাপের মধ্যে ইন্টার‍্যাকশনের তথ্য প্রবাহ নিচে দেওয়া হল:

  1. Chat অ্যাপ Google Chat স্পেসে সাবস্ক্রাইব করে।
  2. Chat অ্যাপ যে স্পেসে সাবস্ক্রাইব করেছে সেটি পরিবর্তিত হয়।
  3. Chat অ্যাপটি Pub/Sub-এ একটি টপিকে ইভেন্ট ডেলিভার করে, যা সাবস্ক্রিপশনের জন্য বিজ্ঞপ্তি এন্ডপয়েন্ট হিসেবে কাজ করে। রিসোর্সে কী পরিবর্তন হয়েছে সেই ডেটা ইভেন্টে থাকে।
  4. Chat অ্যাপ, ইভেন্ট থাকা Pub/Sub মেসেজ প্রসেস করে এবং প্রয়োজন হলে ব্যবস্থা নেয়।

এই ধরনের কথোপকথনের প্যাটার্নের জন্য, আপনি Pub/Sub, একটি ওয়েব পরিষেবা বা Apps স্ক্রিপ্ট ব্যবহার করে চ্যাট অ্যাপ আর্কিটেকচার প্রয়োগ করতে পারেন।

ইভেন্ট পাওয়া ও সেগুলির উত্তর দেওয়া সম্পর্কে আরও জানতে, Google Chat ইভেন্ট থেকে ইভেন্ট নিয়ে কাজ করা দেখুন।

Chat অ্যাপ থেকে একমুখী মেসেজ

Chat অ্যাপ প্যাটার্ন থেকে একমুখী মেসেজ, Chat অ্যাপকে Chat স্পেসে সিঙ্ক না করা মেসেজ পাঠাতে দেয়, কিন্তু Chat অ্যাপের সাথে সরাসরি ইন্টার‍্যাক্ট করতে দেয় না। এই প্যাটার্নটি কথোপকথনমূলক বা ইন্টার‍্যাক্টিভ নয়, তবে নিম্নলিখিত ডায়াগ্রামে দেখানো অ্যালার্ম রিপোর্টিংয়ের মতো জিনিসের জন্য এটি উপযোগী হতে পারে:

একমুখী মেসেজের আর্কিটেকচার।

পূর্ববর্তী ডায়াগ্রামে, Chat অ্যাপের মতো একই স্পেসে থাকা কোনও ব্যবহারকারীর তথ্য প্রবাহ নিচে উল্লেখ করা হল:

  • Chat API-কে কল করে বা ওয়েবহুক URL-এ পোস্ট করে Chat অ্যাপ ব্যবহারকারীকে সিঙ্ক না করা মেসেজ পাঠায়—যেমন, "কিউ ওভারফ্লো অ্যালার্ট"।
  • ঐচ্ছিকভাবে, Chat অ্যাপ অতিরিক্ত অ্যাসিঙ্ক্রোনাস মেসেজ পাঠায়।

এই ধরনের কথোপকথনের প্যাটার্নের জন্য, আপনি ওয়েব পরিষেবা, ওয়েব হুক, Apps স্ক্রিপ্ট, AppSheet, কমান্ড-লাইন অ্যাপ্লিকেশন বা স্ক্রিপ্ট ব্যবহার করে চ্যাট অ্যাপ আর্কিটেকচার প্রয়োগ করতে পারেন।

Chat অ্যাপে একমুখী মেসেজ

Chat অ্যাপ প্যাটার্নে একমুখী মেসেজ ব্যবহারকারীকে Chat অ্যাপকে মেসেজ করতে দেয়, যেখানে Chat অ্যাপটি অনুরোধ প্রসেস করা চালিয়ে গেলেও কোনও উত্তর দেয় না। এই ধরনের আর্কিটেকচার টেকনিক্যালি সম্ভব হলেও, এর ফলে ব্যবহারকারীর অভিজ্ঞতা খারাপ হয় এবং আমরা এই ধরনের প্যাটার্ন ব্যবহার না করার জন্য সাজেস্ট করি।