نگاهی اولیه به Webhookها (نسخه ۲)
توجه: این قابلیت یا مقاله برای کاربران پیشرفته است.
Webhook راهی است که یک برنامه یا نرمافزار مانند Ultimate Multisite میتواند اطلاعات را بهصورت لحظهای در اختیار برنامههای دیگر قرار دهد. Webhook دادهها یا payloadها را همان لحظه که رویداد اتفاق میافتد به برنامههای دیگر ارسال میکند، یعنی بلافاصله دادهها را دریافت میکنید.
این قابلیت زمانی مفید است که بخواهید دادههای خاصی را از Ultimate Multisite به یک CRM یا سیستم دیگر منتقل کنید، هر بار که یک رویداد فعال میشود. برای مثال، میخواهید نام و آدرس ایمیل کاربر را هر بار که یک حساب کاربری جدید ایجاد میشود، به یک لیست ایمیل ارسال کنید.
نحوه ایجاد یک webhook
برای ایجاد یک webhook، به پیشخوان مدیریت شبکه خود بروید. روی Ultimate Multisite > Webhooks > Add New Webhook کلیک کنید.

هنگام ایجاد یک webhook جدید، از شما اطلاعاتی مانند Name، URL و Event خواسته میشود. میتوانید هر نامی که میخواهید برای webhook خود انتخاب کنید. مهمترین فیلدها URL و Event هستند.

URL همان endpoint یا مقصدی است که Ultimate Multisite payload یا دادهها را به آن ارسال میکند. این همان برنامهای است که داده ها را دریافت خواهد کرد.
Zapier رایجترین راهحلی است که کاربران برای آسانتر کردن یکپارچهسازی با برنامههای شخص ثالث استفاده میکنند. بدون پلتفرمی مانند Zapier، باید بهصورت دستی یک تابع سفارشی بسازید که دادهها را دریافت و پردازش کند. این مقاله را درباره نحوه استفاده از webhook در Ultimate Multisite با Zapier ببینید.
در این مقاله، به مفهوم پایهای نحوه کار webhook و رویدادهای موجود در Ultimate Multisite نگاه میکنیم. از یک سایت شخص ثالث به نام requestbin.com استفاده خواهیم کرد. این سایت به ما امکان میدهد یک endpoint بسازیم و payload را بدون نوشتن کد دریافت کنیم. توجه: تنها کاری که انجام میدهد این است که به ما نشان میدهد دادهها دریافت شدهاند. هیچ پردازش یا عملیاتی روی payload انجام نخواهد شد.
به requestbin.com بروید و روی Create Request Bin کلیک کنید.

بعد از کلیک روی آن دکمه، از شما خواسته میشود که اگر حساب کاربری دارید وارد شوید یا ثبتنام کنید. اگر از قبل حساب کاربری دارید، مستقیماً به پیشخوان آنها هدایت میشوید. در پیشخوان آنها، بلافاصله endpoint یا URL را میبینید که میتوانید برای ایجاد webhook در Ultimate Multisite استفاده کنید.

URL را کپی کنید و به Ultimate Multisite برگردید. endpoint را در فیلد URL قرار دهید و یک رویداد را از منوی کشویی انتخاب کنید. در این مثال، Payment Received را انتخاب میکنیم.
این رویداد هر زمان که کاربری پرداختی انجام دهد فعال میشود. تمام رویدادهای موجود، توضیحات و payloadهای آنها در پایین صفحه لیست شدهاند. روی دکمه Add New Webhook کلیک کنید تا webhook ذخیره شود.

حالا میتوانیم یک رویداد آزمایشی به endpoint ارسال کنیم تا ببینیم آیا webhook که ساختیم کار میکند یا نه. این کار را با کلیک روی Send Test Event در زیر webhook که ساختیم انجام میدهیم.

این یک پنجره تأیید نشان میدهد که میگوید آزمایش موفق بوده است.

حالا اگر به سایت Requestbin برگردیم، میبینیم که payload دریافت شده و حاوی دادههای آزمایشی است.

این اصل پایهای نحوه کار webhook و endpointها است. اگر بخواهید یک endpoint سفارشی بسازید، باید یک تابع سفارشی ایجاد کنید تا دادههایی که از Ultimate Multisite دریافت میکنید را پردازش کند.