وب هوک چیست؟
وب هوک نوعی API رویداد محور است که به جای ارسال اطلاعات در پاسخ به درخواست (request) یک برنامهی دیگر، اطلاعات را در پاسخ به یک رویداد تریگر شده ارسال میکند؛ اطلاعاتی مانند زمان، کلیک کردن روی یک دکمه، یا دریافت فرم ارسالی و …
از لحاظ فنی وب هوک یک Http Request از نوع REST است که در صورت وقوع یک رویداد (event)، به یک آدرس منحصربهفرد (URL) ارسال میشود؛ در واقع دادههای مربوط به یک رویداد، در قالب JSON یا XML به آدرس وب هوک (Webhook URL) ارسال میشوند که به آن «بسته اطلاعاتی» یا همان «Payload» گفته میشود.
در کل هر جا که شما نیاز دارید تا دادههای مربوط به یک رویداد را به صورت Real time دریافت کنید، باید از وب هوک استفاده کنید؛ وب هوک این امکان را فراهم میکند که هرگاه یک رویداد اتفاق افتاد، دادهها به صورت آنی (Real-Time) از یک منبع به منبع دیگر ارسال شوند. این انتقال داده، بر بستر وب و از طریق همان Webhook URL اتفاق میافتد.
منظور از رویداد در وب هوک چیست؟
رویدادهای تریگر شده در وب هوک رویدادهایی هستند که توسط کاربران یا مشتریان شما انجام میشوند؛ مثلا وقتی کاربری در سایت شما دکمهی اضافه کردن به سبد خرید را میزند (یعنی رویداد را انجام میدهد) به این رویداد یک رویداد تریگر شده گفته میشود. رویدادهای مختلفی میتوانند به عنوان رویداد تریگر شده درنظر گرفته شوند مثل : تکمیل فرم ثبتنام، ورود به سایت و …
تعریف وب هوک با یک مثال
مثلا فرض کنید یک وبسایت فروش آنلاین میخواهد وقتی کاربری به درگاه پرداخت رسید و پرداخت ناموفقی داشت (رویداد پرداخت ناموفق)، یک ایمیل به صورت خودکار به او ارسال کند، در این حالت میتواند از وب هوک استفاده کند تا بهروزرسانیهای لحظهای از رویداد پرداختهای ناموفق را در وب سرورش دریافت کند.
وب هوک چه کاربردی دارد؟
همانطور که گفتیم از وب هوک برای ارسال اطلاعات از یک منبع به منبع دیگر استفاده میشود. مثلا موقعیتهای زیر را درنظر بگیرید:
- برای همگامسازی دادههای کاربر در سایر برنامهها از وب هوک استفاده میشود؛ مثلا به روزرسانی وضعیت اشتراک کاربر در سیستم مدیریت ارتباط با مشتری (CRM) هنگامی که یک کاربر اشتراک خود را لغو میکند؛ یا اگر یک کاربر نشانی ایمیل خود را تغییر دهد، میتوان اطمینان یافت که این تغییر در CRM نیز اعمال شده است.
- میتوان از وب هوک برای اتصال یک درگاه پرداخت به سامانه بازاریابی ایمیلی استفاده کرد تا هرگاه پرداختی انجام میشود، کاربر یک ایمیل دریافت کند.
- ارسال یادآورهای خودکار 5 دقیقه قبل از شروع جلسات ست شده.
- هنگامی که قیمت سهام در یک روز 5 درصد کاهش مییابد و شما میخواهید به کاربر صاحب سهام یک شرکت، این موضوع را اطلاع دهید.
وب هوک و API چه تفاوتی باهم دارند؟
رابطهای برنامهنویسی کاربردی که به آن API گفته میشود، پایهی اتصال دو برنامه به یکدیگر هستند. در واقع APIها مانند مترجمهایی هستند که به اجزای مختلف نرم افزارها اجازه میدهند تا با یک روشی استاندارد با هم ارتباط برقرار کنند. آنها مجموعهای از قوانین را جهت تعامل و سادهسازی فرآیندهای پیچیده ارائه میکنند و این امکان را فراهم میکنند تا اپلیکیشنها، پلتفرمها و سرویسها به طور یکپارچه با هم کار کنند.
ساز و کار API به این شکل است که مثلا برنامه A اطلاعات را از برنامه B درخواست میکند (request میفرستد) و برنامه B در پاسخ به این درخواست، دادهها را ارسال میکند؛ اما یک webhook به طور خودکار دادهها را در پاسخ به یک رویداد خاص (رویداد تریگر شده)، بدون هیچ درخواستی از سوی نرم افزار دیگری ارسال میکند، بدین معنی که بدون نیاز به ارسال request میتوان بلافاصله دادهها را دریافت کرد و این موضوع که منجر به به همگامسازی بلادرنگ و تبادل بی دردسر دادهها میشود باعث شده تا وب هوکها برای ارائهدهنده و مصرفکننده بسیار کارآمد باشد.
ارائه وب هوک؛ قابلیت دیگری در پنل اتومیشن متریکس
در دنیای امروزی که بیشتر کارهای ما در وب و با استفاده از رویدادها اتفاق میافتد، ضرورت استفاده از وبهوک روز به روز افزایش مییابد و این قابلیت به سرعت در حال محبوب شدن است.
اما بازی کردن با کد برنامهها میتواند خستهکننده باشد یا اگر برنامهنویس نباشید استفاده از این قابلیت را برای شما غیرممکن میکند! قابلیت وب هوک در پنل اتومیشن متریکس به شما این را امکان را میدهد که برنامههایتان را به هم متصل کنید و دادهها را در صورت وقع رویداد مد نظرتان، به صورت آنی سمت سرورتان دریافت کنید؛ به طور مثال شما میتوانید کاربرانی که رویداد x را انجام دادهاند، اطلاعاتشان را از طریق وب هوک به سرور خود یا هر نرم افزار دیگری که مدنظرتان باشد ارسال کنید.
نحوه راهاندازی وب هوک در پنل متریکس
در حال حاضر وب هوک در پنل متریکس به عنوان یک node (گره) از سفر مشتری (customer journey) ارایه میشود. پس برای استفاده از وب هوک میبایست یک جرنی بسازید و از تب نودهای اکشن، گزینه webhook call را انتخاب کنید.
مثل تمامی نودهای اکشن، برای نود وب هوک نیز میبایست یک کمپین بسازید و برای کمپین مورد نظر یک نام ویژه انتخاب کنید.
در بخش دوم، url مورد نظر خود را که در واقع وب هوک متریکس آن را کال میکند باید انتخاب کنید.
در مرحله بعدی روش ارسال داده به url مورد نظر را انتخاب کنید که از نوع post, put یا get میتواند باشد. دقت کنید که در حال حاضر تنها متد post در متریکس ارایه میشود (درخواستهای GET و POST دو نوع از درخواستهای HTTP هستند که GET برای دریافت دادهها از سرور و POST برای درج یا بهروزرسانی دادهها در سرور استفاده میشود).
سپس محتوای درخواستتان را تنظیم کنید. برای هدر درخواست خود میتوانید یک key و value انتخاب کنید برای ادامه نیز میتوانید پارامترهایی که برایتان مهم است را از طریق وب هوک مورد نظر ارسال کنید.
امیدواریم این مقاله برایتان مفید بوده باشد و توانسته باشیم که مفهوم وب هوک را به زبانی ساده برایتان شرح دهیم؛ اگر همچنان برای استفاده از قابلیت وب هوک متریکس سوالی دارید میتوانید با بخش پشتیبانی متریکس در ارتباط باشید.
آیا این مقاله نیاز شما را برطرف کرد؟
برای امتیازدهی روی ستارهها کلیک کنید
میانگین 3.5 / 5. تعداد آرا 2
اولین نفر باشید که به این مقاله امتیاز میدهید