تلگرامربات فروشگاهیراه‌اندازی

ساخت ربات فروشگاهی تلگرام، از BotFather تا جواب دادن خودکار

گرفتن توکن از BotFather چند دقیقه طول می‌کشد؛ کار اصلی از جایی شروع می‌شود که باید چیزی پشت آن ربات جواب بدهد.

تیم موری

۸ دقیقه مطالعه

تصویر شاخص مقاله ساخت ربات فروشگاهی تلگرام، از BotFather تا جواب دادن خودکار

خلاصه سریع

ساخت ربات تلگرام یعنی گرفتن یک توکن از BotFather و این بخش چند دقیقه است. ربات تازه‌ساخته هیچ کاری بلد نیست و تا وقتی برنامه‌ای پشتش ننشیند، پیام مشتری بی‌جواب می‌ماند. دو انتخاب دارید: خودتان کد بزنید و یک سرور همیشه‌روشن نگه دارید، یا توکن را به سرویسی بدهید که جواب دادن را به عهده بگیرد.

عبارت «ساخت ربات تلگرام» ماهی نزدیک ۶۰۰ بار در ایران جست‌وجو می‌شود و پشت این عدد دو گروه کاملاً متفاوت نشسته‌اند. برنامه‌نویس‌هایی که دنبال کتابخانه و سورس می‌گردند، و فروشنده‌هایی که فقط می‌خواهند پیام‌های تلگرام فروشگاهشان بی‌جواب نماند.

هر دو گروه از یک جا شروع می‌کنند، از BotFather. از همان‌جا به بعد مسیرها فرق دارد.

بیشتر آموزش‌ها همین‌جا تمام می‌شوند و نمی‌گویند ربات تازه‌ساخته خالی است. BotFather یک کلید به شما می‌دهد و پشت آن کلید هیچ منطقی نیست.

مرحلهچقدر طول می‌کشدچه چیزی لازم دارید
ساخت ربات در BotFatherچند دقیقهفقط یک حساب تلگرام
گرفتن توکنبلافاصلههمان گفتگو با BotFather
نوشتن کد رباتاز چند روز تا چند هفتهبرنامه‌نویس، سرور همیشه‌روشن، و برای وبهوک دامنه با HTTPS
وصل کردن توکن به یک سرویس آمادهچند دقیقهتوکن و یک حساب در آن سرویس
پر کردن ربات از محصولاتبستگی به فروشگاه داردفهرست محصولات یا آدرس سایت

ربات تلگرام چیست و ربات فروشگاهی چه فرقی دارد

ربات تلگرام یک حساب تلگرام است که به‌جای آدم، یک برنامه پشتش نشسته. تلگرام پیام‌هایی را که به آن حساب می‌رسد به برنامه شما تحویل می‌دهد و جوابی را که برنامه برمی‌گرداند به مشتری نشان می‌دهد. تلگرام واسطه است و کاری به محتوای جواب ندارد.

ربات فروشگاهی یک نوع خاص از همین است: رباتی که قرار است درباره محصولات یک فروشگاه حرف بزند. قیمت بدهد، بگوید چه چیزی موجود است، دو مدل را با هم مقایسه کند و آخرش مشتری را به خرید برساند.

تلگرام با هر دو یکسان رفتار می‌کند. تفاوت در چیزی است که شما پشت ربات گذاشته‌اید.

ساخت ربات با BotFather، قدم به قدم

BotFather خودش یک ربات است با آدرس @BotFather. تلگرام همین یک راه رسمی را برای ساخت ربات گذاشته و هر آموزشی که شما را جای دیگری بفرستد، دارد دور می‌زند.

  1. در تلگرام @BotFather را باز کنید و /start بزنید.
  2. دستور /newbot را بفرستید.
  3. یک اسم نمایشی بدهید. این همان چیزی است که مشتری بالای گفتگو می‌بیند و بعداً قابل تغییر است.
  4. یک نام کاربری بدهید که حتماً به bot ختم شود، مثل kafsh_shop_bot. این یکی بعداً عوض نمی‌شود، پس با حوصله انتخابش کنید.
  5. BotFather یک توکن می‌دهد؛ رشته‌ای شبیه ۱۲۳۴۵۶۷۸۹:AAH... . این توکن رمز ربات شماست.

توکن را جایی امن نگه دارید. هر کسی که آن را داشته باشد می‌تواند از طرف ربات شما پیام بدهد. اگر لو رفت، در همان گفتگوی BotFather دستور /revoke را بزنید تا توکن قبلی باطل و یک توکن تازه صادر شود.

چند دستور دیگر BotFather که به درد فروشگاه می‌خورد:

  • ‏/setuserpic: عکس ربات. لوگوی فروشگاه را بگذارید؛ اعتماد مشتری به یک ربات بی‌عکس کمتر است.
  • ‏/setdescription: متنی که وسط صفحه خالی گفتگو، قبل از اولین پیام، دیده می‌شود.
  • ‏/setabouttext: متن کوتاه پروفایل ربات.
  • ‏/setcommands: فهرست دستورهایی که کنار فیلد تایپ به مشتری پیشنهاد می‌شود.
  • ‏/mybots: فهرست ربات‌های شما، برای وقتی که بعداً خواستید چیزی را عوض کنید.

تا اینجا ربات ساخته شده و اگر آدرسش را باز کنید دکمه شروع را می‌بینید. مشتری دکمه را می‌زند، پیام می‌دهد و هیچ اتفاقی نمی‌افتد. کار BotFather تمام شده است.

توکن را گرفتید، حالا چه

تلگرام دو راه برای رساندن پیام‌ها به شما دارد. اولی getUpdates است: برنامه شما مرتب از تلگرام می‌پرسد پیام تازه‌ای هست یا نه. دومی وبهوک است: شما یک آدرس HTTPS به تلگرام می‌دهید و تلگرام هر پیام را همان لحظه به آن آدرس می‌فرستد.

هر دو راه یک چیز می‌خواهند: برنامه‌ای که همیشه روشن باشد. لپ‌تاپ شما خاموش شود، ربات هم خاموش است. ربات‌هایی که در یک بعدازظهر ساخته می‌شوند معمولاً همین‌جا می‌مانند.

راه اول: خودتان کد بزنید

اگر برنامه‌نویسید و دنبال «سورس ربات فروشگاهی تلگرام» می‌گردید، این مسیر مال شماست، و بخش ربات ساده‌ترین قسمتش است.

کتابخانه‌های پایتون برای Bot API آماده‌اند و رباتی که به /start جواب بدهد و چند دکمه نشان بدهد در چند ده خط درمی‌آید. کاری که وقت می‌برد بعد از آن است.

  • سرور: جایی که ربات شبانه‌روز روشن بماند. برای وبهوک دامنه و گواهی HTTPS هم لازم دارید.
  • کاتالوگ: محصول‌ها، قیمت‌ها و موجودی باید از جایی بیاید و هر روز به‌روز بماند. اگر فروشگاه سایت دارد، یعنی یک همگام‌سازی که باید نگهداری شود.
  • جست‌وجو: مشتری اسم دقیق محصول را نمی‌نویسد. «کفش اسپرت مشکی سایز ۴۳» باید به محصول درست برسد و این کار با یک جست‌وجوی ساده روی نام محصول جواب نمی‌دهد.
  • پرداخت: پرداخت داخل خود تلگرام برای فروشگاه ایرانی در دسترس نیست، پس کار به لینک درگاه یا کارت‌به‌کارت و پیگیری دستی می‌رسد.
  • نگهداری: تلگرام Bot API را عوض می‌کند، محصولات عوض می‌شوند، و مشتری چیزی می‌پرسد که پیش‌بینی نکرده بودید.

سورس‌های آماده گیت‌هاب معمولاً تا دو مورد اول را پوشش می‌دهند. سه مورد آخر را خودتان باید ببندید.

راه دوم: توکن را به یک سرویس بدهید

اگر فروشنده‌اید و قرار نیست خودتان نگهداری کنید، مسیر کوتاه‌تر این است: ربات را در BotFather بسازید و توکن را در پنل سرویسی وارد کنید که جواب دادن را به عهده می‌گیرد.

از آن لحظه پیام‌های ربات به آن سرویس می‌رود و جواب برمی‌گردد. ربات همچنان مال خودتان است؛ اسم، عکس و آدرسش دست شماست و هر وقت خواستید با /revoke اتصال را قطع می‌کنید.

موقع انتخاب سرویس یک چیز را بررسی کنید: جواب‌ها از کجا می‌آید. سرویسی که فقط یک منوی ثابت می‌سازد، مشتری را بعد از دو کلیک به بن‌بست می‌رساند. سرویسی که محصولات واقعی فروشگاه شما را خوانده باشد می‌تواند به سوالی که در هیچ منویی نیست هم جواب بدهد.

گوشی سفیدی روی میز چوبی که کارت خلاصه سفارش یک ربات فروشگاهی را نشان می‌دهد: نام محصول، هزینه ارسال، مبلغ کل، دکمه قرمز «تایید و پرداخت» و سه دکمه منوی محصولات، سفارش‌ها و پشتیبانی.

بیشتر ربات‌های فروشگاهی تلگرام که در ایران می‌بینید منومحورند: دسته‌بندی، زیردسته، محصول، سبد خرید. این شکل برای فروشگاهی با ده محصول خوب کار می‌کند و برای کاتالوگ بزرگ خسته‌کننده می‌شود.

ربات منومحورربات جواب‌ده
مشتری چطور جلو می‌روددکمه می‌زندسوالش را می‌نویسد
سوال بیرون از منوبن‌بستجواب می‌گیرد، اگر داده‌اش را داشته باشد
کاتالوگ بزرگچند لایه منو و گم شدن مشتریفرقی نمی‌کند
ساختنشقابل پیش‌بینی، با کد سادهنیاز به جست‌وجو روی محصولات و یک مدل زبانی
وقتی جواب نداردسکوت یا منوی تکراریباید مشتری را به آدم واقعی برساند

اگر سفارش‌های شما یک مسیر ثابت دارند، منو کافی است. جایی که مشتری سوال می‌پرسد و مقایسه می‌خواهد، منو کم می‌آورد.

شرط عضویت در کانال

خیلی از فروشگاه‌ها کانال تلگرام دارند و می‌خواهند مشتری قبل از گفتگو عضو کانال شود. این کار شدنی است: ربات قبل از جواب دادن عضویت را بررسی می‌کند و اگر مشتری عضو نبود، پیام دعوت نشان می‌دهد.

برای اینکه ربات بتواند عضویت را بررسی کند باید ادمین همان کانال باشد. متن دعوت هم دست خودتان است و هر وقت خواستید می‌شود کل این شرط را خاموش کرد.

هر شرطی که قبل از جواب بگذارید، بخشی از مشتری‌ها را همان‌جا از دست می‌دهید. اگر عدد اعضای کانال برایتان از عدد سفارش مهم‌تر نیست، این شرط را نگذارید.

کجا ربات تلگرام جواب نمی‌دهد

این محدودیت‌ها از خود تلگرام می‌آید و ربطی به کیفیت ربات شما ندارد.

محدودیتیعنی چهچه کار می‌شود کرد
ربات نمی‌تواند اول پیام بدهدتا مشتری دکمه شروع را نزند، ربات حق ندارد به او پیام بفرستدلینک ربات را جایی بگذارید که مشتری خودش کلیک کند
ربات در گروه همه پیام‌ها را نمی‌بیندبه‌صورت پیش‌فرض فقط پیامی را می‌بیند که با دستور شروع شده یا به آن ریپلای شدهحالت حریم خصوصی ربات را در BotFather خاموش کنید یا ربات را ادمین گروه کنید
پرداخت داخل تلگرامدرگاه‌های پرداخت خود تلگرام برای فروشگاه ایرانی در دسترس نیستمشتری را به لینک درگاه خودتان بفرستید
سوالی که داده‌اش را نداریدربات یا ساکت می‌ماند یا بدتر از آن، چیزی از خودش می‌سازدمسیر رسیدن به پشتیبانی انسانی را همیشه باز بگذارید
مشتری‌ای که تلگرام نداردهمه مشتری‌های شما در تلگرام نیستندربات تلگرام جای پاسخگویی روی خود سایت را نمی‌گیرد

ربات تلگرام یکی از کانال‌های شماست. مشتری‌ای که تلگرام ندارد از سایت یا واتساپ سراغتان می‌آید و آنجا هم باید کسی جواب بدهد.

جای موری کجاست

موری همان مسیر دوم است. ربات را خودتان در BotFather می‌سازید و توکن را در پنل موری وارد می‌کنید؛ از آن لحظه ایجنت موری پشت ربات شما می‌نشیند و جواب می‌دهد.

جواب‌ها از روی محصولات واقعی همان فروشگاه ساخته می‌شود. شرط عضویت کانال، کلید خاموش و روشن پاسخ خودکار و قطع کردن اتصال هم در همان پنل است. روی پیام‌رسان بله هم همین توکن دادن کار می‌کند.

اگر دنبال خود سرویس آمده‌اید، صفحه ربات تلگرام موری همین را توضیح می‌دهد.

سوال‌های پرتکرار

ساخت ربات تلگرام رایگان است؟

ساخت ربات در تلگرام رایگان است و BotFather بابت توکن چیزی نمی‌گیرد. هزینه جای دیگری است: سروری که ربات روی آن روشن می‌ماند، یا اشتراک سرویسی که جواب دادن را به عهده می‌گیرد.

با گوشی هم می‌شود ربات تلگرام ساخت؟

بخش BotFather بله؛ ساخت ربات و گرفتن توکن کامل با اپ موبایل تلگرام انجام می‌شود. اما برنامه‌ای که پشت ربات جواب می‌دهد روی گوشی اجرا نمی‌شود. اگر فقط گوشی دارید، وصل کردن توکن به یک سرویس آماده تنها راه عملی است.

ربات تلگرام با هوش مصنوعی چه فرقی با ربات معمولی دارد؟

ربات معمولی فقط به چیزهایی جواب می‌دهد که از قبل برایش نوشته‌اید. ربات هوش مصنوعی سوال را می‌فهمد و از روی داده‌ای که در اختیارش گذاشته‌اید جواب می‌سازد، پس سوال‌های بیرون از منو را هم پوشش می‌دهد. شرطش این است که داده درستی به آن داده باشید؛ بدون کاتالوگ درست فقط حرف کلی تحویل می‌دهد.

دادن توکن ربات به یک سرویس امن است؟

توکن اجازه پیام دادن از طرف ربات را می‌دهد و نه دسترسی به حساب شخصی تلگرام شما. با این حال آن را فقط به سرویسی بدهید که می‌شناسید، و اگر پشیمان شدید دستور /revoke در BotFather توکن را باطل و اتصال را قطع می‌کند.

همین ربات روی بله هم کار می‌کند؟

بله همان ساختار ربات و توکن تلگرام را دارد. یک ربات بله می‌سازید، توکنش را جداگانه وارد می‌کنید و همان منطق پاسخگویی روی بله هم اجرا می‌شود.

ساخت ربات در تلگرام چند دقیقه است. زنده نگه داشتنش کار یک سال است، و همان تصمیم دربارهٔ اینکه چه چیزی پشت ربات جواب می‌دهد مشخص می‌کند ربات شما یک ماه بعد هنوز کار می‌کند یا نه.

موری را رایگان روی فروشگاه خودتان امتحان کنید و ببینید به سوال‌های مشتری‌هایتان چه جوابی می‌دهد.