آموزش کار با سرویس چت سازمانی rocket.chat – تب Integrations
آموزش کار با سرویس چت سازمانی rocket.chat – تب Integrations
Rocket.Chat از WebHooks برای ادغام ابزارها و خدمات مورد علاقه شما در پلتفرم پشتیبانی می کند. WebHoks یک اعلان رویداد ساده از طریق HTTP POST است. به این ترتیب هر برنامه کاربردی که WebHook را پیاده سازی می کند، می تواند پیامی را به Rocket.Chat و موارد دیگر ارسال کند.
با اسکریپت ها می توانید هر WebHook را به Rocket.Chat هدایت کنید و درخواست چاپ پیام های سفارشی شده را پردازش کنید، نام کاربری و آواتار کاربر پیام را تعریف کنید و کانالی را که پیام در آن پست می شود تغییر دهید یا می توانید درخواست را لغو کنید تا از موارد ناخواسته جلوگیری کنید.
ادغام های موجود:
WebHook ورودی → اجازه دهید یک سرویس خارجی درخواستی را به Rocket.Chat ارسال کند تا پردازش شود.
WebHook خروجی ← اجازه دهید Rocket.Chat فعال شود و به صورت اختیاری درخواستی را به یک سرویس خارجی ارسال کنید و پاسخ را پردازش کنید.
به طور پیش فرض WebHoks فقط برای ارسال پیام طراحی شده است. این پیام بخشی از ساختار JSON است که دارای همان قالبی است که در اسناد API در مورد نحوه ارسال یک پیام چت توضیح داده شده است.
اگر میخواهید قدرت و کنترل بیشتری روی ویژگیهای مختلف Rocket.Chat داشته باشید، به غیر از ارسال و دریافت پیام، نگاهی به برنامههای Rocket.Chat بیندازید.
اسکریپت WebHook ورودی
WebHoks را می توان توسط اسکریپت های ES2015 / ECMAScript 6 برای پردازش درخواست، چاپ پیام های سفارشی یا لغو درخواست برای جلوگیری از پیام های ناخواسته استفاده کرد.
یک WebHook ورودی جدید ایجاد کنید.
به پنل مدیریت خود بروید.
به بخش Integrations بروید.
یک ادغام جدید ایجاد کنید.
Incoming WebHook را انتخاب کنید.
کانالی را که ترجیح می دهید در آن هشدارها را دریافت کنید، انتخاب کنید. امکان نادیده گرفتن پیام ها وجود دارد.
Script Enabled را روی true تنظیم کنید.
اسکریپت خود را در قسمت Script قرار دهید.
ادغام را ذخیره کنید.
از URL ایجاد شده WebHook برای ارسال پیام به Rocket.Chat استفاده کنید.
جزئیات اسکریپت
اسکریپت باید در ES2015 / ECMAScript 6 باشد.
اسکریپت انتظار یک کلاس جهانی به نام Script را دارد. این کلاس یک بار، فقط در اولین اجرا، نمونه سازی می شود و در حافظه نگهداری می شود.
کلاس متدی به نام process_incoming_request دارد، سرور شما هر بار که درخواست جدیدی دریافت می کند این متد را فراخوانی می کند. با یک Object به عنوان پارامتر با خاصیت request فراخوانی می شود.
process_incoming_requestmethod یک شی را با یک ویژگی محتوا که حاوی پیام Rocket.Chat معتبر است، یا یک شی با ویژگی خطا که به عنوان پاسخ به درخواست در قالب JSON و وضعیت کد 400 برمیگردد، برمیگرداند.
یک پیام Rocket.Chat معتبر میتواند حاوی یک فیلد متنی باشد که متن پیام است. هنگامی که پیام را به کانالی غیر از کانال نشان داده شده توسط توکن Webhook هدایت می کنید، می توانید یک فیلد کانال را مشخص کنید که شناسه اتاق را می پذیرد یا اگر پیشوند “#” یا “@” باشد، نام کانال یا کاربر را می پذیرد.
می توانید از روش های کنسول برای ثبت اطلاعات برای کمک به اشکال زدایی اسکریپت خود استفاده کنید. اطلاعات بیشتر در مورد کنسول را اینجا بیابید. برای مشاهده گزارشها، به Administration > View Logs بروید.
اسکریپت WebHook خروجی
از اسکریپتها برای پردازش همه پیامهای یک کانال و تغییر نحوه درخواست یا لغو درخواست Rocket.Chat استفاده کنید. می توانید درخواست را لغو کنید و پیامی را برگردانید یا فقط کاری انجام ندهید. همچنین، می توانید با استفاده از HTTP global helper درخواست دیگری در داخل اسکریپت ارائه دهید.
پاسخ درخواست نیز اسکریپت را اجرا میکند و روش دیگری را فراخوانی میکند تا بتوانید پاسخ را پردازش کنید، درست مانند WebHoks ورودی.
یک WebHook خروجی جدید ایجاد کنید.
به پنل مدیریت خود بروید.
به بخش Integrations بروید
یک ادغام جدید ایجاد کنید
Outgoing WebHook را انتخاب کنید
کانالی را که ترجیح میدهید از دستورات استفاده کنید و پاسخها را دریافت کنید، انتخاب کنید.
URL مورد نظر خود را در URL ها وارد کنید، می توانید این URL را در داخل اسکریپت تغییر دهید.
Script Enabled را روی true تنظیم کنید.
اسکریپت خود را در قسمت Script قرار دهید.
ادغام خود را ذخیره کنید.
جزئیات اسکریپت
اسکریپت باید در ES2015 / ECMAScript 6 باشد.
اسکریپت انتظار یک کلاس جهانی به نام Script را دارد. این کلاس یک بار، فقط در اولین اجرا، نمونه سازی می شود و در حافظه نگهداری می شود.
این کلاس متدی به نامprere_outgoing_request دارد، این متد برای هر پیامی در کانال پیکربندی شده فراخوانی می شود، یا می توان آن را با Trigger Words فیلتر کرد. با یک Object به عنوان پارامتر a که حاوی ویژگی درخواست است فراخوانی می شود.
Prere_outgoing_requestmethod یک شی را با حداقل ویژگی های متد urland برمی گرداند. همچنین می توانید شی درخواست را تغییر داده و آن را برگردانید. حتی ممکن است چیزی برگردانید و درخواست را لغو کنید یا پیامی را برگردانید.
این کلاس متدی به نام process_outgoing_response دارد. برای هر پاسخ درخواست فراخوانی می شود، با یک Object به عنوان پارامتر که حاوی ویژگی درخواست، یعنی شی ای که در روش قبلی برگردانده اید، و یک ویژگی پاسخ است.
متد process_outgoing_response نمیتواند چیزی را برای ادامه پردازش پیشفرض برگرداند، false را برای متوقف کردن آن برگرداند، یا یک شی با ویژگی محتوا که حاوی یک پیام Rocket.Chat معتبر است.
جهت مشاهده دوره های آموزشی مختلف و همچنین نحوه کار با سرویس چت سازمانی Rocket.Chat بر روی این لینک کلیک نمایید.
دیدگاهتان را بنویسید
برای نوشتن دیدگاه باید وارد بشوید.