چرا چتبات گاهی نباید فقط جواب بدهد؟
سؤال «سفارش من کجاست؟» را در نظر بگیرید. هیچ سند، کاتالوگ یا صفحهی سؤالات متداولی نمیتواند جواب آن را بنویسد، چون جواب برای هر مشتری فرق میکند و ساعت به ساعت هم عوض میشود. جواب درست در یک سیستم دیگر است: پنل فروشگاه، نرمافزار انبار یا سامانهی ارسال. چتبات اگر فقط از روی فایلها جواب بدهد، یا حدس میزند یا میگوید نمیداند.
اینجاست که دو واژه وارد بحث میشوند که شاید بارها شنیدهاید و کمتر کسی دقیق توضیحشان داده است: API و وبهوک. این مقاله قرار نیست شما را برنامهنویس کند. هدفش این است که وقتی تیم فنی یا یک فروشندهی نرمافزار این واژهها را به کار برد، دقیقاً بدانید دربارهی چه حرف میزنند و چه چیزی باید فراهم باشد تا چتبات واقعاً به یک سیستم دیگر وصل شود.
اگر هنوز مبحث دانش و منابع چتبات برایتان روشن نیست، پیش از این مقاله بهتر است آمادهسازی اسناد کسبوکار قبل از آپلود را بخوانید. چون اتصال به سیستمها جای دانش درست را نمیگیرد و فقط مکمل آن است. برای آشنایی با خود محصول هم میتوانید به آرتینبات سر بزنید.
API را با یک رستوران توضیح بدهیم
تصور کنید در یک رستوران نشستهاید. شما به آشپزخانه دسترسی مستقیم ندارید و لازم هم نیست داشته باشید. گارسون واسطه است: درخواست شما را به زبان مشخصی میگیرد، به آشپزخانه میبرد و جواب را برمیگرداند. API همین گارسون است.
به زبان فنیتر، API راهی است که یک نرمافزار از طریق آن به نرمافزار دیگر میگوید «این اطلاعات را بده» یا «این کار را انجام بده». قالب درخواست مشخص است، قالب جواب هم مشخص است و هر دو طرف میدانند چه انتظاری از هم داشته باشند. وقتی چتبات از شما شمارهی سفارش را میگیرد و آن را به سیستم فروشگاه میفرستد تا وضعیت را بگیرد، در واقع دارد از یک API استفاده میکند.
نکتهی مهمی که اغلب نادیده گرفته میشود: API را سیستم مقصد باید داشته باشد. اگر نرمافزار فروشگاه یا حسابداری شما چنین راهی را فراهم نکرده باشد، چتبات هر قدر هم هوشمند باشد، دری برای زدن ندارد.
وبهوک را با زنگ در مقایسه کنید
حالا وضعیت متفاوتی را در نظر بگیرید. به جای اینکه مدام به آشپزخانه سر بزنید و بپرسید «غذا آماده شد؟»، به شما یک بیپر میدهند که وقتی غذا آماده شد، خودش صدا کند. وبهوک همین بیپر است.
وبهوک روشی است که وقتی رویداد مشخصی رخ داد، سیستم اول به طور خودکار اطلاعات را به یک آدرس معین در سیستم دوم میفرستد. مثلاً وقتی مشتری فرم درخواست تماس را کامل کرد، اطلاعاتش بلافاصله به نرمافزار مدیریت مشتریان یا یک اعلان داخلی ارسال شود. سیستم دوم لازم نیست مدام بپرسد «چیز جدیدی هست؟»؛ خبر خودش میرسد.
تفاوت این دو در یک جمله
اگر بخواهیم همهچیز را در یک جمله خلاصه کنیم: در API شما میپرسید و جواب میگیرید، در وبهوک اتفاقی میافتد و شما خبردار میشوید. اولی برای گرفتن اطلاعات در لحظهی نیاز مناسب است، دومی برای انتقال رویدادها.
در عمل بسیاری از اتصالها هر دو را با هم دارند. چتبات برای پاسخ به مشتری از API وضعیت سفارش را میپرسد و وقتی گفتوگو به یک درخواست پیگیری تبدیل شد، رویداد را از طریق وبهوک به سامانهی تیم پشتیبانی میفرستد.
سه سناریوی واقعی برای یک فروشگاه یا شرکت خدماتی
سناریوی اول، پیگیری سفارش. مشتری شمارهی سفارش را میدهد، چتبات آن را از طریق اتصال مجاز از سیستم فروشگاه میپرسد و وضعیت واقعی را برمیگرداند. در آرتینبات برای فروشگاههایی که از ووکامرس یا شاپیفای استفاده میکنند، ابزار پیگیری سفارش در نظر گرفته شده است که همین کار را با رعایت حریم خصوصی مشتری انجام میدهد. جزئیاتش را در مقالهی ابزار «سفارشم کجاست؟» بخوانید.
سناریوی دوم، ثبت مشخصات مشتری جدید. کسی در گفتوگو نام و شمارهاش را میدهد و میگوید میخواهد با فروش صحبت کند. اگر این اطلاعات فقط در پنل چتبات بماند، شاید دو روز بعد کسی آن را ببیند. اما اگر رویداد به یک سیستم دیگر فرستاده شود، همکار فروش همان لحظه خبردار میشود.
سناریوی سوم، اعلان به تیم. وقتی مشتری ناراضی است یا درخواست حساسی ثبت کرده، میتوان به جای اینکه چتبات سعی کند خودش حلش کند، رویداد را به یک کانال داخلی بفرستید. این همان اصل ارجاع به انسان است که در اصل سکوت ربات مفصلتر توضیح دادهایم.

