معماری برنامه Google Chat را انتخاب کنید

این صفحه رویکردهای رایج معماری سرویس را که برای ایجاد برنامه‌های گپ Google استفاده می‌شوند، توضیح می‌دهد. اگر یک برنامه موجود دارید که می‌خواهید آن را در Google Chat ادغام کنید، می‌توانید از پیاده‌سازی موجود خود استفاده کنید یا آن را تطبیق دهید. اگر در حال ساختن یک برنامه چت جدید هستید، این صفحه اطلاعات مشابهی را به چند روش مختلف ارائه می‌کند تا به شما کمک کند معماری مناسب برای مورد استفاده خود را انتخاب کنید:

بررسی اجمالی بر اساس ویژگی ها و قابلیت ها

جدول زیر ویژگی‌ها و قابلیت‌های کلیدی برنامه‌های چت و سبک معماری سرویس پیشنهادی ( ) را نشان می‌دهد. در برخی موارد، سبک معماری دیگری ممکن است با این ویژگی‌ها ایجاد شود، اما به اندازه سبک‌های دیگر برای کاربرد مناسب نیست ( ).

ویژگی ها و قابلیت ها

وب یا سرویس HTTP

میخانه / فرعی

وب هوک ها

اسکریپت برنامه ها

AppSheet

جریان گفتگو

اسکریپت

مخاطب مورد نظر

تیم شما

سازمان شما

عموم مردم

تعامل با کاربر

از پردازش زبان طبیعی استفاده کنید

الگوهای پیام رسانی

ارسال و دریافت پیام های همزمان

ارسال و دریافت پیام های همزمان و ارسال پیام های ناهمزمان

فقط پیام های ناهمزمان ارسال کنید

از یک سیستم خارجی به یک فضای چت پیام ارسال کنید

به سایر خدمات و سیستم ها دسترسی داشته باشید

ادغام با سایر خدمات گوگل

پشت فایروال ارتباط برقرار کنید

پرس و جو کنید یا در رویدادهای چت مشترک شوید

سبک های کدنویسی و استقرار

توسعه بدون کد

توسعه با کد کم

توسعه به زبان برنامه نویسی دلخواه شما

DevOps ساده شده

مدیریت کامل DevOps و CI/CD

سبک های معماری خدمات

این بخش برخی از رایج ترین رویکردهای معماری مورد استفاده برای ایجاد برنامه های چت را توضیح می دهد.

وب یا سرویس HTTP

وب یا سرویس HTTP متداول ترین معماری است که به این دلیل است که بیشترین انعطاف را برای توسعه دهندگان برای ایجاد برنامه های چت عمومی فراهم می کند. این معماری برای موارد استفاده زیر توصیه می شود:

  • برنامه Chat برای عموم در Google Workspace Marketplace مستقر شده است.
  • برنامه چت می‌تواند همه الگوهای پیام‌رسانی را ارسال و دریافت کند: ارسال و دریافت پیام‌های همزمان، ارسال پیام‌های ناهمزمان، و ارسال پیام از یک سیستم خارجی.
  • برنامه چت به هر زبان برنامه نویسی توسعه یافته است.
  • برنامه چت به مدیریت کامل DevOps و CI/CD نیاز دارد.
  • سرویس برنامه چت در سرورهای ابری یا درون محل اجرا می شود.

در این طراحی، همانطور که در نمودار زیر نشان داده شده است، Chat را برای ادغام با یک سرویس راه دور با استفاده از HTTP پیکربندی می‌کنید:

معماری یک برنامه چت با استفاده از یک سرویس وب در یک سرور داخلی.

در نمودار قبل، کاربر در حال تعامل با برنامه چت HTTP دارای جریان اطلاعات زیر است:

  1. کاربر پیامی را در فضای چت به یک برنامه چت ارسال می کند.
  2. یک درخواست HTTP به یک سرور وب ارسال می‌شود که یک سیستم ابری یا درون محل است که حاوی منطق برنامه چت است.
  3. به صورت اختیاری، منطق برنامه چت می‌تواند با سرویس‌های شخص ثالث خارجی، مانند سیستم مدیریت پروژه یا ابزار فروش بلیط، تعامل داشته باشد.
  4. وب سرور یک پاسخ HTTP را به سرویس برنامه Chat در Chat برمی گرداند.
  5. پاسخ به کاربر تحویل داده می شود.
  6. به صورت اختیاری، برنامه چت می‌تواند با Chat API تماس بگیرد تا پیام‌ها را به صورت ناهمزمان ارسال کند یا عملیات دیگری را انجام دهد.

این معماری به شما انعطاف پذیری را برای استفاده از کتابخانه ها و اجزای موجود در سیستم شما ارائه می دهد زیرا این برنامه های چت را می توان با استفاده از زبان های برنامه نویسی مختلف طراحی کرد. راه های مختلفی برای پیاده سازی این معماری وجود دارد. در Google Cloud، می‌توانید از Cloud Functions، Cloud Run و App Engine استفاده کنید. برای شروع، به ساخت برنامه Google Chat مراجعه کنید.

میخانه / فرعی

اگر برنامه چت پشت فایروال اجرا شود، Chat قادر به برقراری تماس HTTP با آن نیست. یکی از روش‌ها استفاده از Pub/Sub برای فعال کردن اجرای برنامه Chat برای اشتراک در موضوعی است که پیام‌هایی از Chat دارد. Pub/Sub یک سرویس پیام رسانی ناهمزمان است که سرویس های تولید کننده پیام را از سرویس هایی که آن پیام ها را پردازش می کنند جدا می کند. این معماری برای موارد استفاده زیر توصیه می شود:

  • برنامه چت پشت یک فایروال ساخته شده است.
  • برنامه چت رویدادهای مربوط به فضای گپ را دریافت می کند .
  • برنامه چت در سازمان شما مستقر شده است.
  • برنامه چت می تواند پیام های همزمان ارسال و دریافت کند و می تواند پیام های ناهمزمان ارسال کند.
  • برنامه چت به هر زبان برنامه نویسی توسعه یافته است.
  • برنامه چت به مدیریت کامل DevOps و CI/CD نیاز دارد.

نمودار زیر معماری یک برنامه چت ساخته شده با Pub/Sub را نشان می دهد:

معماری یک برنامه چت اجرا شده با Pub/Sub.

در نمودار قبل، کاربر در حال تعامل با برنامه Pub/Sub Chat دارای جریان اطلاعات زیر است:

  1. یک کاربر پیامی را در Chat به یک برنامه Chat ارسال می‌کند، یا در یک پیام مستقیم یا در فضای Chat، یا رویدادی در فضای Chat رخ می‌دهد که برنامه Chat اشتراک فعالی برای آن دارد.

  2. چت پیام را به یک موضوع Pub/Sub ارسال می کند.

  3. یک سرور برنامه، که یا یک سیستم ابری یا درون محل است که حاوی منطق برنامه چت است، در موضوع Pub/Sub مشترک می شود تا پیام را از طریق فایروال دریافت کند.

  4. به صورت اختیاری، برنامه چت می‌تواند با Chat API تماس بگیرد تا پیام‌ها را به صورت ناهمزمان ارسال کند یا عملیات دیگری را انجام دهد.

برای شروع، به استفاده از Pub/Sub به عنوان نقطه پایانی برای برنامه چت خود مراجعه کنید.

وب هوک ها

می‌توانید یک برنامه چت ایجاد کنید که فقط می‌تواند پیام‌ها را به یک فضای چت خاص با استفاده از تماس‌ها به آدرس اینترنتی چت وب هوک ارسال کند. این معماری برای موارد استفاده زیر توصیه می شود:

  • برنامه چت در تیم شما مستقر شده است.
  • برنامه چت پیام ها را از یک سیستم خارجی به یک فضای چت می فرستد.

با این معماری، برنامه Chat به یک فضای چت خاص محدود شده است و اجازه تعامل با کاربر را نمی دهد، همانطور که در نمودار زیر نشان داده شده است:

معماری برای وب هوک های ورودی برای ارسال پیام های ناهمزمان به چت.

در نمودار قبلی، یک برنامه چت دارای جریان اطلاعات زیر است:

  1. منطق برنامه چت اطلاعاتی را از خدمات شخص ثالث خارجی مانند سیستم مدیریت پروژه یا ابزار فروش بلیط دریافت می کند.
  2. منطق برنامه چت در یک سیستم ابری یا درون محل میزبانی می‌شود که می‌تواند پیام‌ها را با استفاده از یک URL webhook به یک فضای چت خاص ارسال کند.
  3. کاربران می توانند پیام هایی را از برنامه چت در آن فضای چت خاص دریافت کنند، اما نمی توانند با برنامه چت تعامل داشته باشند.

این نوع برنامه چت را نمی‌توان در فضاهای گپ دیگر یا با تیم‌های دیگر به اشتراک گذاشت، و نمی‌توان آن را در Google Workspace Marketplace منتشر کرد. وب‌قلاب‌های ورودی برای برنامه‌های چت برای گزارش هشدارها یا وضعیت، یا برای برخی از انواع نمونه‌سازی برنامه‌های چت توصیه می‌شود.

برای شروع، به ارسال پیام به گپ با هوک‌ها مراجعه کنید.

اسکریپت برنامه ها

می توانید منطق برنامه چت خود را به طور کامل در جاوا اسکریپت ایجاد کنید. Google Apps Script یک پلت فرم توسعه کم کد برای برنامه های چت است. Apps Script جریان مجوز و توکن های OAuth 2.0 را برای احراز هویت کاربر کنترل می کند. می‌توانید از Apps Script برای ایجاد برنامه‌های چت عمومی استفاده کنید، اما به دلیل سهمیه‌ها و محدودیت‌های روزانه توصیه نمی‌شود.

این معماری برای موارد استفاده زیر توصیه می شود:

  • برنامه چت در تیم یا سازمان شما مستقر شده است.
  • برنامه چت می‌تواند همه الگوهای پیام‌رسانی را ارسال و دریافت کند: ارسال و دریافت پیام‌های همزمان، ارسال پیام‌های ناهمزمان، و ارسال پیام از یک سیستم خارجی.
  • برنامه Chat به مدیریت DevOps ساده نیاز دارد.

این معماری برای برنامه‌های چت که با سایر سرویس‌های Google Workspace و Google نیز ادغام می‌شوند، مانند Google Sheets، Google Slides، Google Calendar، Google Drive، Google Maps و YouTube مفید است، همانطور که در نمودار زیر نشان داده شده است:

معماری یک برنامه چت اجرا شده با Apps Script.

در نمودار قبلی، کاربر در حال تعامل با برنامه Apps Script Chat دارای جریان اطلاعات زیر است:

  1. کاربر پیامی را به یک برنامه چت ارسال می کند، چه در یک پیام مستقیم یا در فضای چت.
  2. منطق برنامه Chat که در Apps Script که در Google Cloud قرار دارد پیاده سازی شده است، پیام را دریافت می کند.
  3. به صورت اختیاری، منطق برنامه Chat می‌تواند با سرویس‌های Google Workspace، مانند تقویم یا برگه‌ها، یا سایر خدمات Google، مانند Google Maps یا YouTube، ادغام شود.
  4. منطق برنامه Chat پاسخی را به سرویس برنامه Chat در Chat برمی‌گرداند.
  5. پاسخ به کاربر تحویل داده می شود.

برای شروع، به ساخت برنامه چت با اسکریپت برنامه ها مراجعه کنید.

AppSheet

می‌توانید با استفاده از AppSheet یک برنامه چت اشتراک‌گذاری شده با دامنه بدون کد ایجاد کنید. می‌توانید فرآیند توسعه را با استفاده از حالت پیکربندی خودکار و الگوهای زیر برای ایجاد اقدامات رایج برنامه چت ساده کنید. با این حال، برخی از ویژگی‌های برنامه وب AppSheet در برنامه‌های گپ در دسترس نیستند .

این معماری برای موارد استفاده زیر توصیه می شود:

  • برنامه چت برای شما و تیمتان مستقر شده است.
  • برنامه چت می تواند پیام های همزمان ارسال و دریافت کند و می تواند پیام های ناهمزمان ارسال کند.
  • برنامه Chat به مدیریت DevOps ساده نیاز دارد.

نمودار زیر معماری یک برنامه چت ساخته شده با AppSheet را نشان می دهد:

معماری یک برنامه چت اجرا شده با AppSheet.

در نمودار قبل، کاربر در حال تعامل با برنامه AppSheet Chat دارای جریان اطلاعات زیر است:

  1. کاربر پیامی را در چت به یک برنامه چت، چه در یک پیام مستقیم یا در فضای چت، ارسال می کند.
  2. منطق برنامه Chat که در AppSheet که در Google Cloud قرار دارد پیاده سازی شده است، پیام را دریافت می کند.
  3. به صورت اختیاری، منطق برنامه Chat می‌تواند با سرویس‌های Google Workspace، مانند برنامه‌های اسکریپت یا Google Sheets، یکپارچه شود.
  4. منطق برنامه Chat پاسخی را به سرویس برنامه Chat در Chat برمی‌گرداند.
  5. پاسخ به کاربر تحویل داده می شود.

برای شروع، به ساخت برنامه چت با AppSheet مراجعه کنید.

جریان گفتگو

می‌توانید یک برنامه چت با Dialogflow ایجاد کنید، یک پلتفرم زبان طبیعی برای مکالمات خودکار و پاسخ‌های پویا. این معماری برای موارد استفاده زیر توصیه می شود:

  • برنامه چت می تواند پیام های همزمان ارسال و دریافت کند.
  • برنامه چت از پردازش زبان طبیعی برای پاسخگویی و تعامل با کاربران استفاده می کند.

نمودار زیر معماری یک برنامه چت ساخته شده با Dialogflow را نشان می دهد:

معماری یک برنامه چت پیاده سازی شده با Dialogflow.

در نمودار قبلی، کاربری که با یک برنامه گفتگوی گفتگو در حال تعامل است، جریان اطلاعات زیر را دارد:

  1. کاربر پیامی را در چت به یک برنامه چت، چه در یک پیام مستقیم یا در فضای چت، ارسال می کند.
  2. یک عامل مجازی Dialogflow که در Google Cloud قرار دارد، پیام را دریافت و پردازش می‌کند تا پاسخی ایجاد کند.
  3. به صورت اختیاری، با استفاده از یک هوک Dialogflow ، عامل Dialogflow می‌تواند با سرویس‌های شخص ثالث خارجی، مانند سیستم مدیریت پروژه یا ابزار فروش بلیط، تعامل داشته باشد.
  4. عامل Dialogflow پاسخی را به سرویس برنامه Chat در Chat ارسال می کند.
  5. پاسخ به فضای چت تحویل داده می شود.

برای شروع، به ساخت برنامه گفتگوی Google Chat مراجعه کنید.

برنامه یا اسکریپت خط فرمان

می‌توانید یک برنامه خط فرمان یا یک اسکریپت ایجاد کنید که پیام‌ها را به چت ارسال می‌کند یا عملیات دیگری مانند ایجاد یک فضا یا مدیریت اعضای یک فضا را انجام می‌دهد، بدون اینکه به کاربران اجازه دهید مستقیماً برنامه چت را فراخوانی کنند یا به آن پاسخ دهند. این معماری برای موارد استفاده زیر توصیه می شود:

  • برنامه چت به هر زبان برنامه نویسی توسعه یافته است.
  • برنامه چت فقط می‌تواند پیام‌های ناهمزمان ارسال کند.

نمودار زیر معماری را نشان می دهد:

معماری یک برنامه چت که با یک برنامه خط فرمان یا یک اسکریپت پیاده سازی شده است.

در نمودار قبلی، برنامه چت دارای جریان اطلاعات زیر است:

  1. برنامه Chat برای ارسال پیام یا انجام عملیات دیگری با Chat API تماس می گیرد.
  2. Chat عملیات درخواستی را اجرا می کند.
  3. در صورت تمایل، برنامه چت تأییدیه را در CLI چاپ می کند.

اجرای منطق برنامه چت

Chat روش اجرای منطق برنامه Chat را محدود نمی کند. می‌توانید یک تجزیه‌کننده دستوری با نحو ثابت ایجاد کنید، از کتابخانه‌ها یا خدمات پردازش زبان و هوش مصنوعی پیشرفته استفاده کنید، مشترک شوید و به رویدادها پاسخ دهید، یا هر چیز دیگری که برای اهداف خاص شما مناسب است.

تعاملات کاربر را مدیریت کنید

برنامه چت می تواند تعاملات کاربر را از طرق مختلفی دریافت و به آنها پاسخ دهد . تعامل کاربر هر اقدامی است که کاربر برای فراخوانی یا تعامل با یک برنامه چت انجام می دهد.

تجزیه کننده فرمان

برنامه‌های Chat مبتنی بر فرمان، بار رویدادهای تعامل برنامه Chat را بررسی می‌کنند، سپس دستورات و پارامترها را از این محتوا استخراج می‌کنند. برای مثال، به تنظیم دستورات اسلش برای تعامل با کاربران گپ مراجعه کنید.

روش دیگر این است که پیام را نشانه گذاری کنید، دستور را استخراج کنید، و سپس به فرهنگ لغتی ارجاع دهید که دستورات را به توابع کنترل کننده برای هر دستور نگاشت می کند.

رابط کاربری مبتنی بر گفتگو

برنامه‌های مبتنی بر گفتگو با نمایش گفتگوهای مبتنی بر کارت که در آن کاربر می‌تواند با برنامه گپ تعامل داشته باشد، مانند پر کردن فرم‌ها یا درخواست اقدامات، به رویدادهای تعامل برنامه Chat پاسخ می‌دهند.

هر بار که کاربر اقدامی را در یک گفتگو انجام می دهد، یک رویداد تعاملی جدید به برنامه چت ارسال می شود که می تواند با به روز رسانی گفتگو یا ارسال پیام پاسخ دهد.

پردازش زبان طبیعی

بسیاری از برنامه‌های چت از پردازش زبان طبیعی (NLP) برای تعیین درخواست کاربر استفاده می‌کنند. راه‌های زیادی برای پیاده‌سازی NLP وجود دارد، و شما می‌توانید NLP را هر طور که ترجیح می‌دهید پیاده‌سازی کنید.

می‌توانید از NLP در اجرای برنامه چت خود با Dialogflow ES یا Dialogflow CX Chat استفاده کنید، که به شما امکان می‌دهد عوامل مجازی برای مکالمات خودکار و پاسخ‌های پویا ایجاد کنید.

به طور فعال درخواست هایی را برای چت صادر کنید

برنامه‌های چت همچنین می‌توانند پیام‌ها یا درخواست‌های دیگری را به Chat ارسال کنند، که این درخواست‌ها با تعامل مستقیم کاربر در Chat ایجاد نمی‌شوند. درعوض، این برنامه‌های چت می‌توانند فعال شوند—مثلاً توسط برنامه‌های شخص ثالث، یا با استفاده از فراخوانی خط فرمان از سوی کاربر، اما کاربران نمی‌توانند مستقیماً در چت با این برنامه‌های چت تعامل داشته باشند.

برنامه‌های چت غیرتعاملی از Chat API برای ارسال پیام یا انواع دیگر درخواست‌ها به چت استفاده می‌کنند.

الگوهای گفتگو

باید در نظر بگیرید که می‌خواهید برنامه چت شما چگونه با کاربران تعامل داشته باشد. بخش‌های زیر الگوهای مکالمه‌ای را توضیح می‌دهند که برنامه چت شما ممکن است پیاده‌سازی کند.

تماس و پاسخ (همزمان)

در یک الگوی تماس و پاسخ همزمان، برنامه چت به پیام های کاربران به صورت یک به یک پاسخ می دهد. همانطور که در نمودار زیر نشان داده شده است، یک پیام به برنامه Chat توسط یک کاربر منجر به یک پاسخ از برنامه Chat می شود:

معماری یک پیام همزمان

در نمودار قبل، کاربر در حال تعامل با یک برنامه چت دارای جریان اطلاعات زیر است:

  1. کاربر یک پیام همزمان به یک برنامه چت ارسال می کند - به عنوان مثال، "جلسه بعدی من چیست؟".
  2. برنامه چت یک پیام همزمان برای کاربر ارسال می کند - به عنوان مثال، "دکتر سیلوا در ساعت 2:30".

برای این نوع الگوی مکالمه، می توانید معماری برنامه چت را با استفاده از سرویس وب، Pub/Sub، Apps Script، AppSheet یا Dialogflow پیاده سازی کنید.

پاسخ های چندگانه (ناهمزمان)

الگوی پاسخ های چندگانه می تواند شامل پیام های همزمان و ناهمزمان باشد. این الگو با ارتباط دو طرفه بین کاربران و برنامه چت مشخص می شود، با برنامه چت که هر تعداد پیام اضافی تولید می کند، همانطور که در نمودار زیر نشان داده شده است:

معماری یک پیام ناهمزمان

در نمودار قبل، کاربر در حال تعامل با یک برنامه چت دارای جریان اطلاعات زیر است:

  1. یک کاربر یک پیام همزمان به یک برنامه چت ارسال می کند - به عنوان مثال، "مانیتور ترافیک".
  2. برنامه چت یک پیام همزمان برای تایید درخواست به کاربر ارسال می کند - به عنوان مثال، "مانیتورینگ روشن".
  3. بعداً، برنامه Chat یک یا چند پیام ناهمزمان را با فراخوانی REST API برای کاربر ارسال می‌کند - به عنوان مثال، «ترافیک جدید».
  4. کاربر یک پیام همزمان اضافی به برنامه چت ارسال می کند - به عنوان مثال، "نادیده گرفتن ترافیک".
  5. برنامه چت یک پیام همزمان برای تایید درخواست به کاربر ارسال می کند - به عنوان مثال، "مانیتورینگ خاموش".

برای این نوع الگوی مکالمه، می توانید معماری برنامه چت را با استفاده از وب سرویس، Pub/Sub، Apps Script یا AppSheet پیاده سازی کنید.

درخواست یا اشتراک در رویدادها (ناهمزمان)

در یک الگوی رویداد محور ناهمزمان، برنامه Chat رویدادها را با جستجو در Chat API یا ایجاد اشتراک در فضای گپ یا کاربر با استفاده از Google Workspace Events API دریافت می‌کند. رویدادها تغییراتی را در منابع چت نشان می‌دهند، مانند زمانی که یک پیام جدید پست می‌شود یا زمانی که کاربر به یک فضا می‌پیوندد. برنامه‌های چت مبتنی بر رویداد، بار رویداد را بررسی می‌کنند تا داده‌های مربوط به منبع گپ تغییر یافته را دریافت کنند، سپس بر اساس آن پاسخ دهند.

برنامه‌های چت می‌توانند انواع مختلفی از رویدادها، از جمله رویدادهای مربوط به فضاها، عضویت‌ها، پیام‌ها و واکنش‌ها را دریافت کنند. هنگامی که یک برنامه گپ رویدادی را با جستجو در Chat API یا از طریق یک اشتراک فعال دریافت می‌کند، برنامه Chat می‌تواند به صورت اختیاری هر تعداد پاسخ ناهمزمان را ایجاد کند که با استفاده از Chat API به Chat برمی‌گردد.

می‌توانید از این نوع منطق برای به‌روزرسانی سیستم‌های خارجی، مانند سیستم مدیریت بلیط، یا ارسال پیام‌ها به فضای چت به صورت ناهمزمان استفاده کنید—مثلاً با ارسال پیام خوشامدگویی زمانی که کاربر جدیدی به فضای چت می‌پیوندد.

نمودار زیر نمونه ای از یک الگوی گفتگوی رویداد محور را نشان می دهد:

معماری اشتراک در رویدادهای چت

در نمودار قبلی، تعامل بین چت و برنامه چت دارای جریان اطلاعات زیر است:

  1. برنامه چت در فضای گپ Google مشترک می شود.
  2. فضایی که برنامه چت در آن مشترک است تغییر می کند.
  3. برنامه چت رویدادی را به موضوعی در Pub/Sub ارائه می‌کند، که به عنوان نقطه پایانی اعلان برای اشتراک عمل می‌کند. این رویداد حاوی داده هایی در مورد آنچه در منبع تغییر کرده است.
  4. برنامه چت پیام Pub/Sub را که حاوی رویداد است پردازش می کند و در صورت لزوم اقدام می کند.

برای این نوع الگوی مکالمه، می‌توانید یک معماری برنامه چت را با استفاده از Pub/Sub، یک وب سرویس یا Apps Script پیاده‌سازی کنید.

برای کسب اطلاعات بیشتر در مورد دریافت و پاسخ به رویدادها، به کار با رویدادها از رویدادهای Google Chat مراجعه کنید.

پیام یک طرفه از یک برنامه چت

یک پیام یک طرفه از الگوی برنامه Chat به برنامه Chat اجازه می‌دهد پیام‌های ناهمزمان را به فضای Chat ارسال کند اما به کاربران اجازه نمی‌دهد مستقیماً با برنامه Chat تعامل داشته باشند. این الگو محاوره ای یا تعاملی نیست، اما می تواند برای مواردی مانند گزارش هشدار، همانطور که در نمودار زیر نشان داده شده است مفید باشد:

معماری یک پیام یک طرفه

در نمودار قبل، کاربر در همان فضای برنامه چت دارای جریان اطلاعات زیر است:

  • برنامه Chat با تماس با Chat API یا پست کردن در یک URL webhook - به عنوان مثال، "Queue overflow alert" یک پیام ناهمزمان برای کاربر ارسال می کند.
  • در صورت تمایل، برنامه چت پیام‌های ناهمزمان بیشتری ارسال می‌کند.

برای این نوع الگوی مکالمه، می‌توانید معماری برنامه چت را با استفاده از وب سرویس، یک هوک، برنامه‌های اسکریپت، AppSheet، یک برنامه خط فرمان یا یک اسکریپت پیاده‌سازی کنید.

پیام یک طرفه به برنامه چت

یک پیام یک طرفه به الگوی برنامه Chat به کاربر اجازه می‌دهد بدون اینکه برنامه Chat پاسخ دهد در حالی که درخواست را پردازش می‌کند، به یک برنامه Chat پیام ارسال کند. در حالی که این معماری از نظر فنی امکان پذیر است، این منجر به تجربه کاربری ضعیف می شود و ما به شدت از این الگو جلوگیری می کنیم.

،

این صفحه رویکردهای رایج معماری سرویس را که برای ایجاد برنامه‌های گپ Google استفاده می‌شوند، توضیح می‌دهد. اگر یک برنامه موجود دارید که می‌خواهید آن را در Google Chat ادغام کنید، می‌توانید از پیاده‌سازی موجود خود استفاده کنید یا آن را تطبیق دهید. اگر در حال ساختن یک برنامه چت جدید هستید، این صفحه اطلاعات مشابهی را به چند روش مختلف ارائه می‌کند تا به شما کمک کند معماری مناسب برای مورد استفاده خود را انتخاب کنید:

بررسی اجمالی بر اساس ویژگی ها و قابلیت ها

جدول زیر ویژگی‌ها و قابلیت‌های کلیدی برنامه‌های چت و سبک معماری سرویس پیشنهادی ( ) را نشان می‌دهد. در برخی موارد، سبک معماری دیگری ممکن است با این ویژگی‌ها ایجاد شود، اما به اندازه سبک‌های دیگر برای کاربرد مناسب نیست ( ).

ویژگی ها و قابلیت ها

وب یا سرویس HTTP

میخانه / فرعی

وب هوک ها

اسکریپت برنامه ها

AppSheet

جریان گفتگو

اسکریپت

مخاطب مورد نظر

تیم شما

سازمان شما

عموم مردم

تعامل با کاربر

از پردازش زبان طبیعی استفاده کنید

الگوهای پیام رسانی

ارسال و دریافت پیام های همزمان

ارسال و دریافت پیام های همزمان و ارسال پیام های ناهمزمان

فقط پیام های ناهمزمان ارسال کنید

از یک سیستم خارجی به یک فضای چت پیام ارسال کنید

به سایر خدمات و سیستم ها دسترسی داشته باشید

ادغام با سایر خدمات گوگل

پشت فایروال ارتباط برقرار کنید

پرس و جو کنید یا در رویدادهای چت مشترک شوید

سبک های کدنویسی و استقرار

توسعه بدون کد

توسعه با کد کم

توسعه به زبان برنامه نویسی دلخواه شما

DevOps ساده شده

مدیریت کامل DevOps و CI/CD

سبک های معماری خدمات

این بخش برخی از رایج ترین رویکردهای معماری مورد استفاده برای ایجاد برنامه های چت را توضیح می دهد.

وب یا سرویس HTTP

وب یا سرویس HTTP متداول ترین معماری است که به این دلیل است که بیشترین انعطاف را برای توسعه دهندگان برای ایجاد برنامه های چت عمومی فراهم می کند. این معماری برای موارد استفاده زیر توصیه می شود:

  • برنامه Chat برای عموم در Google Workspace Marketplace مستقر شده است.
  • برنامه چت می‌تواند همه الگوهای پیام‌رسانی را ارسال و دریافت کند: ارسال و دریافت پیام‌های همزمان، ارسال پیام‌های ناهمزمان، و ارسال پیام از یک سیستم خارجی.
  • برنامه چت به هر زبان برنامه نویسی توسعه یافته است.
  • برنامه چت به مدیریت کامل DevOps و CI/CD نیاز دارد.
  • سرویس برنامه چت در سرورهای ابری یا درون محل اجرا می شود.

در این طراحی، همانطور که در نمودار زیر نشان داده شده است، Chat را برای ادغام با یک سرویس راه دور با استفاده از HTTP پیکربندی می‌کنید:

معماری یک برنامه چت با استفاده از یک سرویس وب در یک سرور داخلی.

در نمودار قبل، کاربر در حال تعامل با برنامه چت HTTP دارای جریان اطلاعات زیر است:

  1. کاربر پیامی را در فضای چت به یک برنامه چت ارسال می کند.
  2. یک درخواست HTTP به یک سرور وب ارسال می‌شود که یک سیستم ابری یا درون محل است که حاوی منطق برنامه چت است.
  3. به صورت اختیاری، منطق برنامه چت می‌تواند با سرویس‌های شخص ثالث خارجی، مانند سیستم مدیریت پروژه یا ابزار فروش بلیط، تعامل داشته باشد.
  4. وب سرور یک پاسخ HTTP را به سرویس برنامه Chat در Chat برمی گرداند.
  5. پاسخ به کاربر تحویل داده می شود.
  6. به صورت اختیاری، برنامه چت می‌تواند با Chat API تماس بگیرد تا پیام‌ها را به صورت ناهمزمان ارسال کند یا عملیات دیگری را انجام دهد.

این معماری به شما انعطاف پذیری را برای استفاده از کتابخانه ها و اجزای موجود در سیستم شما ارائه می دهد زیرا این برنامه های چت را می توان با استفاده از زبان های برنامه نویسی مختلف طراحی کرد. راه های مختلفی برای پیاده سازی این معماری وجود دارد. در Google Cloud، می‌توانید از Cloud Functions، Cloud Run و App Engine استفاده کنید. برای شروع، به ساخت برنامه Google Chat مراجعه کنید.

میخانه / فرعی

اگر برنامه چت پشت فایروال اجرا شود، Chat قادر به برقراری تماس HTTP با آن نیست. یکی از روش‌ها استفاده از Pub/Sub برای فعال کردن اجرای برنامه Chat برای اشتراک در موضوعی است که پیام‌هایی از Chat دارد. Pub/Sub یک سرویس پیام رسانی ناهمزمان است که سرویس های تولید کننده پیام را از سرویس هایی که آن پیام ها را پردازش می کنند جدا می کند. این معماری برای موارد استفاده زیر توصیه می شود:

  • برنامه چت پشت یک فایروال ساخته شده است.
  • برنامه چت رویدادهای مربوط به فضای گپ را دریافت می کند .
  • برنامه چت در سازمان شما مستقر شده است.
  • برنامه چت می تواند پیام های همزمان ارسال و دریافت کند و می تواند پیام های ناهمزمان ارسال کند.
  • برنامه چت به هر زبان برنامه نویسی توسعه یافته است.
  • برنامه چت به مدیریت کامل DevOps و CI/CD نیاز دارد.

نمودار زیر معماری یک برنامه چت ساخته شده با Pub/Sub را نشان می دهد:

معماری یک برنامه چت اجرا شده با Pub/Sub.

در نمودار قبل، کاربر در حال تعامل با برنامه Pub/Sub Chat دارای جریان اطلاعات زیر است:

  1. یک کاربر پیامی را در Chat به یک برنامه Chat ارسال می‌کند، یا در یک پیام مستقیم یا در فضای Chat، یا رویدادی در فضای Chat رخ می‌دهد که برنامه Chat اشتراک فعالی برای آن دارد.

  2. چت پیام را به یک موضوع Pub/Sub ارسال می کند.

  3. یک سرور برنامه، که یا یک سیستم ابری یا درون محل است که حاوی منطق برنامه چت است، در موضوع Pub/Sub مشترک می شود تا پیام را از طریق فایروال دریافت کند.

  4. به صورت اختیاری، برنامه چت می‌تواند با Chat API تماس بگیرد تا پیام‌ها را به صورت ناهمزمان ارسال کند یا عملیات دیگری را انجام دهد.

برای شروع، به استفاده از Pub/Sub به عنوان نقطه پایانی برای برنامه چت خود مراجعه کنید.

وب هوک ها

می‌توانید یک برنامه چت ایجاد کنید که فقط می‌تواند پیام‌ها را به یک فضای چت خاص با استفاده از تماس‌ها به آدرس اینترنتی چت وب هوک ارسال کند. این معماری برای موارد استفاده زیر توصیه می شود:

  • برنامه چت در تیم شما مستقر شده است.
  • برنامه چت پیام ها را از یک سیستم خارجی به یک فضای چت می فرستد.

با این معماری، برنامه Chat به یک فضای چت خاص محدود شده است و اجازه تعامل با کاربر را نمی دهد، همانطور که در نمودار زیر نشان داده شده است:

معماری برای وب هوک های ورودی برای ارسال پیام های ناهمزمان به چت.

در نمودار قبلی، یک برنامه چت دارای جریان اطلاعات زیر است:

  1. منطق برنامه چت اطلاعاتی را از خدمات شخص ثالث خارجی مانند سیستم مدیریت پروژه یا ابزار فروش بلیط دریافت می کند.
  2. منطق برنامه چت در یک سیستم ابری یا درون محل میزبانی می‌شود که می‌تواند پیام‌ها را با استفاده از یک URL webhook به یک فضای چت خاص ارسال کند.
  3. کاربران می توانند پیام هایی را از برنامه چت در آن فضای چت خاص دریافت کنند، اما نمی توانند با برنامه چت تعامل داشته باشند.

این نوع برنامه چت را نمی‌توان در فضاهای گپ دیگر یا با تیم‌های دیگر به اشتراک گذاشت، و نمی‌توان آن را در Google Workspace Marketplace منتشر کرد. وب‌قلاب‌های ورودی برای برنامه‌های چت برای گزارش هشدارها یا وضعیت، یا برای برخی از انواع نمونه‌سازی برنامه‌های چت توصیه می‌شود.

برای شروع، به ارسال پیام به گپ با هوک‌ها مراجعه کنید.

اسکریپت برنامه ها

می توانید منطق برنامه چت خود را به طور کامل در جاوا اسکریپت ایجاد کنید. Google Apps Script یک پلت فرم توسعه کم کد برای برنامه های چت است. Apps Script جریان مجوز و توکن های OAuth 2.0 را برای احراز هویت کاربر کنترل می کند. می‌توانید از Apps Script برای ایجاد برنامه‌های چت عمومی استفاده کنید، اما به دلیل سهمیه‌ها و محدودیت‌های روزانه توصیه نمی‌شود.

این معماری برای موارد استفاده زیر توصیه می شود:

  • برنامه چت در تیم یا سازمان شما مستقر شده است.
  • برنامه چت می‌تواند همه الگوهای پیام‌رسانی را ارسال و دریافت کند: ارسال و دریافت پیام‌های همزمان، ارسال پیام‌های ناهمزمان، و ارسال پیام از یک سیستم خارجی.
  • برنامه Chat به مدیریت DevOps ساده نیاز دارد.

این معماری برای برنامه‌های چت که با سایر سرویس‌های Google Workspace و Google نیز ادغام می‌شوند، مانند Google Sheets، Google Slides، Google Calendar، Google Drive، Google Maps و YouTube مفید است، همانطور که در نمودار زیر نشان داده شده است:

معماری یک برنامه چت اجرا شده با Apps Script.

در نمودار قبلی، کاربر در حال تعامل با برنامه Apps Script Chat دارای جریان اطلاعات زیر است:

  1. کاربر پیامی را به یک برنامه چت ارسال می کند، چه در یک پیام مستقیم یا در فضای چت.
  2. منطق برنامه Chat که در Apps Script که در Google Cloud قرار دارد پیاده سازی شده است، پیام را دریافت می کند.
  3. به صورت اختیاری، منطق برنامه Chat می‌تواند با سرویس‌های Google Workspace، مانند تقویم یا برگه‌ها، یا سایر خدمات Google، مانند Google Maps یا YouTube، ادغام شود.
  4. منطق برنامه Chat پاسخی را به سرویس برنامه Chat در Chat برمی‌گرداند.
  5. پاسخ به کاربر تحویل داده می شود.

برای شروع، به ساخت برنامه چت با اسکریپت برنامه ها مراجعه کنید.

AppSheet

می‌توانید با استفاده از AppSheet یک برنامه چت اشتراک‌گذاری شده با دامنه بدون کد ایجاد کنید. می‌توانید فرآیند توسعه را با استفاده از حالت پیکربندی خودکار و الگوهای زیر برای ایجاد اقدامات رایج برنامه چت ساده کنید. با این حال، برخی از ویژگی‌های برنامه وب AppSheet در برنامه‌های گپ در دسترس نیستند .

این معماری برای موارد استفاده زیر توصیه می شود:

  • برنامه چت برای شما و تیمتان مستقر شده است.
  • برنامه چت می تواند پیام های همزمان ارسال و دریافت کند و می تواند پیام های ناهمزمان ارسال کند.
  • برنامه Chat به مدیریت DevOps ساده نیاز دارد.

نمودار زیر معماری یک برنامه چت ساخته شده با AppSheet را نشان می دهد:

معماری یک برنامه چت اجرا شده با AppSheet.

در نمودار قبل، کاربر در حال تعامل با برنامه AppSheet Chat دارای جریان اطلاعات زیر است:

  1. کاربر پیامی را در چت به یک برنامه چت، چه در یک پیام مستقیم یا در فضای چت، ارسال می کند.
  2. منطق برنامه Chat که در AppSheet که در Google Cloud قرار دارد پیاده سازی شده است، پیام را دریافت می کند.
  3. به صورت اختیاری، منطق برنامه Chat می‌تواند با سرویس‌های Google Workspace، مانند برنامه‌های اسکریپت یا Google Sheets، یکپارچه شود.
  4. منطق برنامه Chat پاسخی را به سرویس برنامه Chat در Chat برمی‌گرداند.
  5. پاسخ به کاربر تحویل داده می شود.

برای شروع، به ساخت برنامه چت با AppSheet مراجعه کنید.

جریان گفتگو

می‌توانید یک برنامه چت با Dialogflow ایجاد کنید، یک پلتفرم زبان طبیعی برای مکالمات خودکار و پاسخ‌های پویا. این معماری برای موارد استفاده زیر توصیه می شود:

  • برنامه چت می تواند پیام های همزمان ارسال و دریافت کند.
  • برنامه چت از پردازش زبان طبیعی برای پاسخگویی و تعامل با کاربران استفاده می کند.

نمودار زیر معماری یک برنامه چت ساخته شده با Dialogflow را نشان می دهد:

معماری یک برنامه چت پیاده سازی شده با Dialogflow.

در نمودار قبلی، کاربری که با یک برنامه گفتگوی گفتگو در حال تعامل است، جریان اطلاعات زیر را دارد:

  1. کاربر پیامی را در چت به یک برنامه چت، چه در یک پیام مستقیم یا در فضای چت، ارسال می کند.
  2. یک عامل مجازی Dialogflow که در Google Cloud قرار دارد، پیام را دریافت و پردازش می‌کند تا پاسخی ایجاد کند.
  3. به صورت اختیاری، با استفاده از یک هوک Dialogflow ، عامل Dialogflow می‌تواند با سرویس‌های شخص ثالث خارجی، مانند سیستم مدیریت پروژه یا ابزار فروش بلیط، تعامل داشته باشد.
  4. عامل Dialogflow پاسخی را به سرویس برنامه Chat در Chat ارسال می کند.
  5. پاسخ به فضای چت تحویل داده می شود.

برای شروع، به ساخت برنامه گفتگوی Google Chat مراجعه کنید.

برنامه یا اسکریپت خط فرمان

می‌توانید یک برنامه خط فرمان یا یک اسکریپت ایجاد کنید که پیام‌ها را به چت ارسال می‌کند یا عملیات دیگری مانند ایجاد یک فضا یا مدیریت اعضای یک فضا را انجام می‌دهد، بدون اینکه به کاربران اجازه دهید مستقیماً برنامه چت را فراخوانی کنند یا به آن پاسخ دهند. این معماری برای موارد استفاده زیر توصیه می شود:

  • برنامه چت به هر زبان برنامه نویسی توسعه یافته است.
  • برنامه چت فقط می‌تواند پیام‌های ناهمزمان ارسال کند.

نمودار زیر معماری را نشان می دهد:

معماری یک برنامه چت که با یک برنامه خط فرمان یا یک اسکریپت پیاده سازی شده است.

در نمودار قبلی، برنامه چت دارای جریان اطلاعات زیر است:

  1. برنامه Chat برای ارسال پیام یا انجام عملیات دیگری با Chat API تماس می گیرد.
  2. Chat عملیات درخواستی را اجرا می کند.
  3. در صورت تمایل، برنامه چت تأییدیه را در CLI چاپ می کند.

اجرای منطق برنامه چت

Chat روش اجرای منطق برنامه Chat را محدود نمی کند. می‌توانید یک تجزیه‌کننده دستوری با نحو ثابت ایجاد کنید، از کتابخانه‌ها یا خدمات پردازش زبان و هوش مصنوعی پیشرفته استفاده کنید، مشترک شوید و به رویدادها پاسخ دهید، یا هر چیز دیگری که برای اهداف خاص شما مناسب است.

تعاملات کاربر را مدیریت کنید

برنامه چت می تواند تعاملات کاربر را از طرق مختلفی دریافت و به آنها پاسخ دهد . تعامل کاربر هر اقدامی است که کاربر برای فراخوانی یا تعامل با یک برنامه چت انجام می دهد.

تجزیه کننده فرمان

برنامه‌های Chat مبتنی بر فرمان، بار رویدادهای تعامل برنامه Chat را بررسی می‌کنند، سپس دستورات و پارامترها را از این محتوا استخراج می‌کنند. برای مثال، به تنظیم دستورات اسلش برای تعامل با کاربران گپ مراجعه کنید.

روش دیگر این است که پیام را نشانه گذاری کنید، دستور را استخراج کنید، و سپس به فرهنگ لغتی ارجاع دهید که دستورات را به توابع کنترل کننده برای هر دستور نگاشت می کند.

رابط کاربری مبتنی بر گفتگو

برنامه‌های مبتنی بر گفتگو با نمایش گفتگوهای مبتنی بر کارت که در آن کاربر می‌تواند با برنامه گپ تعامل داشته باشد، مانند پر کردن فرم‌ها یا درخواست اقدامات، به رویدادهای تعامل برنامه Chat پاسخ می‌دهند.

هر بار که کاربر اقدامی را در یک گفتگو انجام می دهد، یک رویداد تعاملی جدید به برنامه چت ارسال می شود که می تواند با به روز رسانی گفتگو یا ارسال پیام پاسخ دهد.

پردازش زبان طبیعی

بسیاری از پیاده سازی برنامه های چت از پردازش زبان طبیعی (NLP) برای تعیین آنچه کاربر درخواست می کند استفاده می کنند. روش های بسیاری برای اجرای NLP وجود دارد ، و شما می توانید اجرای NLP را با این حال که ترجیح می دهید انتخاب کنید.

شما می توانید از NLP در اجرای برنامه گپ خود با DialogFlow ES یا DialogFlow CX Integration CHAT استفاده کنید ، که به شما امکان می دهد عوامل مجازی را برای مکالمات خودکار و پاسخ های پویا ایجاد کنید.

برای گپ زدن به طور فعال درخواست هایی را صادر کنید

برنامه های گپ همچنین می توانند پیام یا درخواست های دیگری را برای گپ ارسال کنند ، که توسط تعامل مستقیم کاربر در گپ ایجاد نمی شود. در عوض ، این برنامه های گپ می توانند ایجاد شوند-برای مثال ، توسط برنامه های شخص ثالث یا استفاده از یک دعوت خط فرمان از یک کاربر ، اما کاربران نمی توانند مستقیماً در گپ با این برنامه های گپ تعامل داشته باشند.

برنامه های چت غیر فعال از API چت برای ارسال پیام یا انواع دیگر درخواست ها برای گپ استفاده می کنند.

الگوهای مکالمه

شما باید در نظر بگیرید که چگونه می خواهید برنامه چت شما با کاربران تعامل داشته باشد. در بخش های زیر الگوهای مکالمه ای که برنامه گپ شما ممکن است اجرا کند ، شرح می دهد.

تماس و پاسخ (همزمان)

در یک الگوی تماس و پاسخ همزمان ، برنامه گپ به پیام های کاربران به صورت یک به یک پاسخ می دهد. یک پیام به برنامه چت توسط کاربر منجر به یک پاسخ از برنامه گپ می شود ، همانطور که در نمودار زیر نشان داده شده است:

معماری یک پیام همزمان.

در نمودار قبلی ، کاربر در تعامل با یک برنامه چت جریان اطلاعات زیر را دارد:

  1. یک کاربر یک پیام همزمان را به یک برنامه چت ارسال می کند - برای مثال ، "جلسه بعدی من چیست؟".
  2. برنامه گپ یک پیام همزمان برای کاربر ارسال می کند - برای مثال "دکتر سیلوا در ساعت 2:30".

برای این نوع الگوی مکالمه ، می توانید یک معماری برنامه گپ را با استفاده از یک سرویس وب ، میخانه/زیر ، اسکریپت برنامه ها ، برنامه های AppSheet یا Dialogflow پیاده سازی کنید.

پاسخ های چندگانه (ناهمزمان)

الگوی چندین پاسخ می تواند شامل پیام های همزمان و ناهمزمان باشد. این الگوی با برقراری ارتباط دو طرفه بین کاربران و برنامه گپ مشخص می شود ، با برنامه چت هر تعداد پیام اضافی را ایجاد می کند ، همانطور که در نمودار زیر نشان داده شده است:

معماری یک پیام ناهمزمان.

در نمودار قبلی ، کاربر در تعامل با یک برنامه چت جریان اطلاعات زیر را دارد:

  1. کاربر یک پیام همزمان را به یک برنامه گپ می فرستد - برای مثال ، "ترافیک نظارت".
  2. برنامه گپ برای تأیید درخواست - برای مثال ، "نظارت بر" ، یک پیام همزمان را به کاربر ارسال می کند.
  3. بعداً ، برنامه گپ با تماس با API REST - به عنوان مثال "ترافیک جدید" ، یک یا چند پیام ناهمزمان را به کاربر ارسال می کند.
  4. کاربر یک پیام همزمان اضافی را به برنامه گپ ارسال می کند - برای مثال ، "نادیده گرفتن ترافیک".
  5. برنامه گپ برای تأیید درخواست - برای مثال ، "نظارت بر خاموش" ، یک پیام همزمان را به کاربر ارسال می کند.

برای این نوع الگوی مکالمه ، می توانید یک معماری برنامه گپ را با استفاده از یک سرویس وب ، میخانه/زیر ، اسکریپت برنامه ها یا صفحه برنامه پیاده سازی کنید.

پرس و جو یا مشترک شدن در رویدادها (ناهمزمان)

در یک الگوی رویداد ناهمزمان محور ، برنامه گپ با پرس و جو از API گپ یا ایجاد اشتراک در فضای گپ یا کاربر با استفاده از API رویدادهای Google Workspace ، رویدادهایی را دریافت می کند. رویدادها نشان دهنده تغییراتی در منابع گپ ، مانند هنگام ارسال پیام جدید یا وقتی کاربر به یک فضا می پیوندد. برنامه های چت مبتنی بر رویداد ، بار رویداد را برای دریافت اطلاعات در مورد منبع چت تغییر یافته بررسی می کنند ، سپس به همین ترتیب پاسخ دهید.

برنامه های گپ می توانند انواع مختلفی از رویدادها از جمله رویدادها در مورد فضاها ، عضویت ، پیام ها و واکنش ها را دریافت کنند. هنگامی که یک برنامه چت با پرس و جو از API چت یا از طریق اشتراک فعال ، یک رویداد را دریافت می کند ، برنامه گپ می تواند به صورت اختیاری هر تعداد پاسخ ناهمزمان را تولید کند ، که با استفاده از API چت به گپ می فرستد.

شما می توانید از این نوع منطق برای به روزرسانی سیستم های خارجی ، مانند سیستم مدیریت بلیط استفاده کنید ، یا ارسال پیام به فضای گپ به صورت غیر همزمان - برای مثال ، با ارسال پیام خوش آمدید وقتی یک کاربر جدید به یک فضای چت می پیوندد.

نمودار زیر نمونه ای از یک الگوی مکالمه رویداد محور را نشان می دهد:

معماری اشتراک در رویدادهای گپ

در نمودار قبلی ، تعامل بین چت و برنامه چت جریان اطلاعات زیر را دارد:

  1. برنامه چت در یک فضای گپ Google مشترک است.
  2. فضایی که برنامه گپ در تغییرات مشترک است.
  3. برنامه چت رویدادی را به موضوعی در میخانه/زیر ارائه می دهد ، که به عنوان نقطه پایانی اعلان برای اشتراک خدمت می کند. این رویداد حاوی داده هایی در مورد آنچه در منبع تغییر کرده است.
  4. برنامه چت پیام میخانه/زیر را که شامل رویداد است پردازش می کند و در صورت لزوم اقدام می کند.

برای این نوع الگوی مکالمه ، می توانید یک معماری برنامه چت را با استفاده از میخانه/زیر ، یک سرویس وب یا اسکریپت برنامه ها پیاده سازی کنید.

برای کسب اطلاعات بیشتر در مورد دریافت و پاسخ به رویدادها ، به کار با رویدادهای Google Chat Events مراجعه کنید.

پیام یک طرفه از یک برنامه چت

یک پیام یک طرفه از الگوی برنامه چت به یک برنامه چت اجازه می دهد تا پیام های ناهمزمان را به فضای گپ ارسال کند اما به کاربران اجازه نمی دهد مستقیماً با برنامه گپ تعامل داشته باشند. این الگوی مکالمه یا تعاملی نیست ، اما می تواند برای مواردی مانند گزارش زنگ هشدار مفید باشد ، همانطور که در نمودار زیر نشان داده شده است:

معماری یک پیام یک طرفه.

در نمودار قبلی ، یک کاربر در همان فضای برنامه چت جریان اطلاعات زیر را دارد:

  • برنامه گپ با تماس با API چت یا ارسال به URL Webhook - به عنوان مثال ، "هشدار سرریز صف" ، یک پیام ناهمزمان برای کاربر ارسال می کند.
  • به صورت اختیاری ، برنامه گپ پیام های ناهمزمان دیگری را ارسال می کند.

برای این نوع الگوی مکالمه ، می توانید یک معماری برنامه گپ را با استفاده از یک سرویس وب ، یک وب وب ، اسکریپت برنامه ها ، برنامه AppSheet ، یک برنامه خط فرمان یا یک اسکریپت پیاده سازی کنید.

پیام یک طرفه به یک برنامه چت

یک پیام یک طرفه به الگوی برنامه چت به کاربر اجازه می دهد تا یک برنامه چت را بدون برنامه چت در حالی که هنوز پردازش درخواست را پاسخ می دهد ، پیام کند. در حالی که این معماری از نظر فنی امکان پذیر است ، این امر به یک تجربه کاربر ضعیف منجر می شود و ما این الگوی را به شدت دلسرد می کنیم.