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


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


در کنار لینک، کارت اطلاعات بیشتری در مورد لینک، از جمله عناصر تعاملی مانند دکمهها، ارائه میدهد. برنامه چت شما میتواند کارت پیوست شده را در پاسخ به تعاملات کاربر، مانند کلیک روی دکمه، بهروزرسانی کند.
اگر کسی نمیخواهد برنامه چت با پیوست کردن کارت به پیامش، پیشنمایش لینک او را نشان دهد، میتواند با کلیک روی روی تراشه پیشنمایش، از پیشنمایش جلوگیری کند. کاربران میتوانند در هر زمان با کلیک روی حذف پیشنمایش، کارت پیوستشده را حذف کنند.
پیشنیازها
نود جی اس
یک برنامه چت گوگل که رویدادهای تعاملی را دریافت و به آنها پاسخ میدهد. برای ایجاد یک برنامه چت تعاملی با استفاده از سرویس HTTP، این راهنمای سریع را تکمیل کنید.پایتون
یک برنامه چت گوگل که رویدادهای تعاملی را دریافت و به آنها پاسخ میدهد. برای ایجاد یک برنامه چت تعاملی با استفاده از سرویس HTTP، این راهنمای سریع را تکمیل کنید.جاوا
یک برنامه چت گوگل که رویدادهای تعاملی را دریافت و به آنها پاسخ میدهد. برای ایجاد یک برنامه چت تعاملی با استفاده از سرویس HTTP، این راهنمای سریع را تکمیل کنید.اسکریپت برنامهها
یک برنامه چت گوگل که رویدادهای تعاملی را دریافت و به آنها پاسخ میدهد. برای ایجاد یک برنامه چت تعاملی در Apps Script، این راهنمای سریع را تکمیل کنید.پیکربندی پیشنمایش لینکها
لینکهای خاصی - مانند example.com ، support.example.com و support.example.com/cases/ - را به عنوان الگوهای URL در صفحه پیکربندی برنامه چت خود در کنسول Google Cloud ثبت کنید تا برنامه چت شما بتواند آنها را پیشنمایش کند.


- کنسول گوگل کلود را باز کنید.
- کنار «Google Cloud»، روی فلش رو به پایین کلیک کنید و پروژه برنامه چت خود را باز کنید.
- در فیلد جستجو، عبارت
Google Chat APIرا تایپ کنید و روی Google Chat API کلیک کنید. - روی مدیریت > پیکربندی کلیک کنید.
- در پیشنمایشهای پیوند، الگوی نشانی وب را اضافه یا ویرایش کنید.
- برای پیکربندی پیشنمایشهای لینک برای یک الگوی URL جدید، روی «افزودن الگوی URL» کلیک کنید.
- برای ویرایش پیکربندی یک الگوی URL موجود، روی پیکان رو به پایین کلیک کنید.
در فیلد الگوی میزبان ، دامنه الگوی URL را وارد کنید. برنامه چت، لینکهای این دامنه را پیشنمایش میدهد.
برای اینکه لینکهای پیشنمایش برنامه چت برای یک زیردامنه خاص، مانند
subdomain.example.com، نمایش داده شوند، زیردامنه را نیز اضافه کنید.برای داشتن لینکهای پیشنمایش برنامه چت برای کل دامنه، یک کاراکتر wildcard با ستاره (*) به عنوان زیر دامنه مشخص کنید. برای مثال،
*.example.comباsubdomain.example.comوany.number.of.subdomains.example.comمطابقت دارد.در فیلد پیشوند مسیر ، مسیری را برای اضافه شدن به دامنه الگوی میزبان وارد کنید.
برای تطبیق همه URLها در دامنه الگوی میزبان، پیشوند مسیر را خالی بگذارید.
برای مثال، اگر الگوی میزبان
support.example.comباشد، برای تطبیق URLها برای موارد میزبانی شده درsupport.example.com/cases/،cases/را وارد کنید.روی انجام شد کلیک کنید.
روی ذخیره کلیک کنید.
اکنون، هر زمان که کسی پیوندی را که با الگوی URL پیشنمایش پیوند مطابقت دارد، به پیامی در فضای چت که شامل برنامه چت شما میشود، اضافه کند، برنامه شما پیشنمایشی از پیوند را نشان میدهد.
پیشنمایش یک لینک
پس از پیکربندی پیشنمایش لینک برای یک لینک مشخص، برنامه چت شما میتواند با پیوست کردن اطلاعات بیشتر به آن، لینک را شناسایی و پیشنمایش کند.
در فضاهای چت که شامل برنامه چت شما میشوند، وقتی پیام کسی حاوی لینکی است که با الگوی URL پیشنمایش لینک مطابقت دارد، برنامه چت شما یک رویداد تعامل MESSAGE دریافت میکند. محتوای JSON برای رویداد تعامل شامل فیلد matchedUrl است:
جیسون
message: {
matchedUrl: {
url: "https://support.example.com/cases/case123"
},
... // other message attributes redacted
}
با بررسی وجود فیلد matchedUrl در رویداد MESSAGE ، برنامه چت شما میتواند اطلاعاتی را به پیام با لینک پیشنمایششده اضافه کند. برنامه چت شما میتواند با یک پیام متنی ساده پاسخ دهد یا یک کارت پیوست کند.
با پیامک پاسخ دهید
برای پاسخهای اولیه، برنامه چت شما میتواند با پاسخ دادن به یک پیام متنی ساده به یک لینک، پیشنمایشی از آن را نمایش دهد. این مثال پیامی را پیوست میکند که URL لینکی را که با الگوی URL پیشنمایش لینک مطابقت دارد، تکرار میکند.
نود جی اس
پایتون
جاوا
اسکریپت برنامهها
کارتی را پیوست کنید که پیشنمایشی از لینک را نشان دهد
برای پیوست کردن یک کارت به لینک پیشنمایششده، یک ActionResponse از نوع UPDATE_USER_MESSAGE_CARDS برگردانید. این مثال یک کارت ساده را پیوست میکند.


نود جی اس
پایتون
جاوا
اسکریپت برنامهها
این مثال با برگرداندن JSON کارت، یک پیام کارت ارسال میکند. همچنین میتوانید از سرویس کارت Apps Script استفاده کنید.
بهروزرسانی کارت پیشنمایش لینک
برنامه چت شما میتواند کارت پیشنمایش لینک را هنگام تعامل کاربران با آن، مانند کلیک کردن روی دکمهای روی کارت، بهروزرسانی کند.
برای بهروزرسانی کارت، برنامه چت شما باید رویداد تعامل CARD_CLICKED را مدیریت کند و یک actionResponse بر اساس اینکه چه کسی پیام حاوی پیشنمایش لینک را ارسال کرده است، برگرداند:
- اگر کاربر پیام را ارسال کرده است،
actionResponse.typeرا رویUPDATE_USER_MESSAGE_CARDSتنظیم کنید. - اگر برنامه چت پیام را ارسال کرده است،
actionResponse.typeرا رویUPDATE_MESSAGEتنظیم کنید.
برای تعیین اینکه چه کسی پیام را ارسال کرده است، میتوانید از فیلد message.sender.type در رویداد تعامل استفاده کنید تا ببینید فرستنده یک کاربر HUMAN بوده است یا BOT .
مثال زیر نشان میدهد که چگونه یک برنامه چت، هر زمان که کاربر روی دکمه «به من اختصاص بده» کلیک میکند، پیشنمایش لینک را با بهروزرسانی فیلد «گیرنده کارت» و غیرفعال کردن دکمه، بهروزرسانی میکند.


نود جی اس
پایتون
جاوا
اسکریپت برنامهها
این مثال با برگرداندن JSON کارت، یک پیام کارت ارسال میکند. همچنین میتوانید از سرویس کارت Apps Script استفاده کنید.
محدودیتها و ملاحظات
هنگام پیکربندی پیشنمایش لینکها برای برنامه چت خود، به این محدودیتها و ملاحظات توجه داشته باشید:
- هر برنامه چت از پیشنمایش لینکها برای حداکثر ۵ الگوی URL پشتیبانی میکند.
- برنامههای چت در هر پیام، یک لینک را پیشنمایش میدهند. اگر چندین لینک قابل پیشنمایش در یک پیام وجود داشته باشد، فقط اولین لینک قابل پیشنمایش نمایش داده میشود.
- برنامههای چت فقط لینکهایی را که با
https://شروع میشوند، پیشنمایش میدهند، بنابراینhttps://support.example.com/cases/پیشنمایش میدهد، اماsupport.example.com/cases/این کار را نمیکند. - مگر اینکه پیام شامل اطلاعات دیگری باشد که به برنامه چت ارسال میشود، مانند یک دستور اسلش ، در غیر این صورت فقط URL لینک از طریق پیشنمایشهای لینک به برنامه چت ارسال میشود.
- اگر کاربری لینک را ارسال کند، برنامه چت فقط در صورتی میتواند پیشنمایش کارت لینک را بهروزرسانی کند که کاربران با کارت تعامل داشته باشند، مثلاً با کلیک روی دکمه. شما نمیتوانید متد
update()از API چت را روی منبعMessageفراخوانی کنید تا پیام کاربر را بهصورت غیرهمزمان بهروزرسانی کنید. - برنامههای چت باید لینکها را برای همه افراد حاضر در فضا پیشنمایش کنند، بنابراین فیلد
privateMessageViewerدر پیام باید حذف شود.
پیشنمایشهای لینک اشکالزدایی
همزمان با پیادهسازی پیشنمایش لینکها، ممکن است لازم باشد با خواندن گزارشهای برنامه، برنامه چت خود را اشکالزدایی کنید. برای خواندن گزارشها، به Logs Explorer در کنسول Google Cloud مراجعه کنید.