guess_emoji_telegram_bot icon indicating copy to clipboard operation
guess_emoji_telegram_bot copied to clipboard

ارسال سوال

Open ah-rahimi opened this issue 2 years ago • 1 comments

کاربران بتونن برای ربات سوال های جدید ارسال کنند و امتیاز جمع کنند

ah-rahimi avatar Mar 20 '22 13:03 ah-rahimi

سلام. امیر حسین عزیز.

این موردی که گفتی فعلا توی اولویت نیست.اما همونطور که صحبت کردیم در موردش یک سری ایده دارم.

از طرفی، فعلا اولویت ساخت چنین اپشنی خیلی پایینه. اما اگر باشه خیلی می تونه کار رو راحت تر کنه.

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

داستان کاربر

یه سری راه ها برای بدست آوردن امتیاز رایگان باید داشته باشیم. یکی از این راه ها معرفی ربات به دیگران هست #3 .

یکی دیگه از راه هایی که می تونیم اینجا بذاریم اینه که کاربر وقتی به ذهنش یه ترکیب ایموجی می رسه که ما میتونیم ازش به عنوان مرحله داخل بازی استفاده کنیم اون رو برامون بفرسته و در قبال تائیدش ما بهش امتیاز بدیم.

از اونجاییکه بنامون بر ساده سازیه عملکرد خیلی ساده ‌ای نیاز داریم برای این قضیه :

توضیح عملکرد

یک دستوری باید داخل ربات تعبیه بشه. وقتی کسی می خواد مرحله معرفی کنه. اون دستور رو بزنه و بعدش هر پیامی که فرستاد رو ربات فوروارد کنه داخل یک گروهی.

  • اگر توی اون گروه کسی +1 ریپلای کرد روی پیام. برای شخص امتیاز در نظر گرفته بشه.
  • اگر 0 بود برای کاربر پیام بره که مرحله پیشنهادی شما رد شد ( اگر هم دلیلش رو بتونیم توی همین بخش ذکر کنیم که عالی میشه )

تسک ها

اون چیزی که گفتم توضیح میدم

از اونجاییکه ما توی تلگرام دسترسی به پیام قبلی کاربر نداریم. یه سری وقت ها نیاز داریم که یه کاریر رو توی 2 یا چندین تا پیام از کاربر بگیریم و انجام بدیم.

مثلا یه پیام باشه : /suggesst_level

و بعد توی پیام دوم طرف بیاد مرحله ای که می خواد رو بفرسته و ما اون رو فوروارد کنیم.

برای پیاده سازیه چنین چیزی ما نیاز داریم توی یه سری حالت ها پیامی که کاربر می فرسته رو ذخیره کنیم. و بعد که دوباره پیام داد چک کنیم ببنیم آیا منتظر جواب خاصی از طرف کاربر هستیم یا نه !

یدونه مدل داریم : پیام ها هنوز فرصت نکردم بنویسمش.

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

حالا پیاده سازی و مسائلش به کنار اما برای راحتی کار توی mysql ذخیره میشه همه چیز. باید هم ماژولار باشه که بعدا بتونم برای سرعت بخشیدن به کار ببرمش روی redis.

این یه تسک جداست خودش. باید روش کار بشه جدا.

geeksesi avatar Mar 20 '22 22:03 geeksesi