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