راهنمای Webhook در ریمیت
در دنیای نرمافزارهای امروزی، ارتباط و همگامسازی بین سرویسهای مختلف اهمیت بالایی دارد. وب هوک یکی از راههای کلیدی برای دستیابی به این هدف هستند. این راهنما به شما کمک میکند تا با مفهوم وب هوک در ریمیت آشنا شوید، کاربردهای آن را درک کنید و نحوه استفاده از آن را بیاموزید.
Webhook
وب هوک یک مکانیزم ارتباطی خودکار بین اپلیکیشنهاست که به اپلیکیشن شما اجازه میدهد تا اطلاعات را در زمان وقوع رویدادهای خاص، بهصورت خودکار به یک آدرس مشخص ارسال کند. برخلاف روشهای دیگر (که در آن اپلیکیشن شما باید مدام سرور را برای تغییرات چک کند)، وب هوک بهجای اینکه منتظر بماند تا شما درخواستی ارسال کنید، خودش هر وقت رویداد مهمی رخ دهد، فوراً آن را به شما اطلاع میدهد.
به زبان سادهتر، وب هوک به اپلیکیشن شما میگوید: «وقتی اتفاق X رخ داد، این اطلاعات را به آدرس Y بفرست.»
کاربرد Webhook در ریمیت
در ریمیت، وب هوک به شما این امکان را میدهد که از تغییرات مهم در رزروها (مانند ایجاد، بهروزرسانی یا حذف جلسه) مطلع شوید و سیستمهای دیگر خود را بر اساس این تغییرات بهروز کنید. این قابلیت برای سناریوهای زیر بسیار مفید است:
- همگامسازی با سیستمهای مدیریت ارتباط با مشتری یا CRM
- ارسال اعلانهای سفارشی مانند ارسال پیامک، ایمیل یا نوتیفیکیشن
- اتوماسیون فرآیندها مانند فعالسازی فرآیندهای کسبوکار بر اساس وضعیت رزروها
نحوه استفاده از Webhook در ریمیت
برای استفاده از وب هوک در ریمیت، شما نیاز به یک آدرس دارید که سرور شما آن را مدیریت میکند و قادر به دریافت درخواستهای HTTP (به طور مثال POST) باشد. پس از آن، باید این آدرس را در تنظیمات ریمیت > بخش ویرایش شرکت ثبت کنید.
رویدادها و دادههای ارسالی
هنگامی که یکی از رویدادهای انتخابشده (مانند رزرو، ویرایش یا حذف جلسه) رخ دهد، ریمیت یک درخواست HTTP با متد مشخص شده به آدرس Webhook شما ارسال میکند. این درخواست جزئیات رویداد را شرح میدهد.
انواع رویدادها (Events):
reservation_created: ایجاد جلسه
reservation_updated: بهروزرسانی جلسه
reservation_deleted: حذف جلسه
ساختار دادههای ارسالی (JSON Payload):
دادههایی که ریمیت به Webhook شما ارسال میکند، شامل اطلاعاتی در مورد رویداد و جزئیات مربوط به رزرو است. ساختار کلی دادهها به شرح زیر است:
{
"event": "reservation_created", // نوع رویداد
"data": {
"reservation_id": "RES12345",
"meeting_type": "appointment", // نوع جلسه: 'normal' یا 'appointment'
"status": "approved", // وضعیت رزرو: 'reject', 'pending', 'approve'
"start_time": "2026-05-19T10:00:00Z",
"end_time": "2024-05-19T10:30:00Z",
"attendees": [
{
"name": "نام کاربر",
"email": "name@example.com",
"company": "Company Name"
}
],
"location": "Online Meeting Room",
"description": "توضیحات جلسه"
// ... سایر جزئیات مربوط به رزرو
}
}
توضیح پارامترهای کلیدی:
reservation_id: شناسه یکتای رزرو
meeting_type: نوع جلسه:
- normal: یک جلسه عادی
- appointment: یک قرار ملاقات از پیش تعیین شده
status: وضعیت رزرو:
- reject: رزرو رد شده است
- pending: رزرو در انتظار تایید است
- approve: رزرو تایید شده است
start_time: زمان شروع رزرو
end_time: زمان پایان رزرو
attendees: شرکت کنندگان
location: محل برگزاری جلسه یا لینک آنلاین
description: توضیحات مربوط به جلسه
جزئیات فنی API Webhook
| وضعیت (Status) | روش (Method) | آدرس (URL) | توضیحات |
|---|---|---|---|
| ایجاد جلسه | POST | {Your_Webhook_URL} | هنگام ایجاد رزرو جدید ارسال میشود. |
| ویرایش جلسه | PUT | {Your_Webhook_URL} | هنگام بهروزرسانی رزرو موجود ارسال میشود. |
| حذف جلسه | DELETE | {Your_Webhook_URL} | هنگام حذف رزرو ارسال میشود. |
نکات مهم:
برای اطمینان از اینکه درخواستها واقعاً از سمت ریمیت ارسال شدهاند، میتوانید از مکانیزمهای امنیتی مانند امضای درخواست (Request Signing) استفاده کنید. در صورت نیاز، جزئیات مربوط به امضای درخواست قابل ارائه است.
سرور شما باید با کد وضعیت 200 به درخواست Webhook پاسخ دهد تا ریمیت متوجه شود دادهها با موفقیت دریافت شدهاند. در غیر این صورت، ریمیت ممکن است تلاش برای ارسال مجدد را انجام دهد.
در صورت بروز خطا در سمت سرور شما، ریمیت ممکن است پس از مدتی مجدداً تلاش به ارسال دادهها کند. اطمینان حاصل کنید که سیستم شما قادر به مدیریت این تکرارها باشد (مثلاً با جلوگیری از پردازش تکراری همان رویداد).
جمع بندی
وب هوک یک ابزار قدرتمند برای یکپارچهسازی و اتوماسیون است که به شما امکان میدهد برنامه ریمیت را به سایر ابزارها و فرآیندهای خود متصل کنید. با استفاده از این راهنما، شما میتوانید وب هوک را به درستی پیادهسازی کرده و از مزایای آن در مدیریت و رصد رزروهای خود بهرهمند شوید.
