You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
سلام.
معمولا برای ذخیره متغیرهای موقتی در بات یک user_data داریم. توی مثالها هم یک اسمی ازش برده شده اما اصلا مشخص نیست چطور باید باهاش کار کرد. به طور خاص فقط این مثال
https://github.com/balemessenger/bale-bot-samples/blob/master/examples/document_conversation.py
گفته که یک تابع get داره.
۱. اینکه غیر از call back functionها چطوری میشه به user_data دسترسی داشت مشخص نیست. آیا میشود؟
۲. اینکه چطوری میشه توش مقداری ذخیره کرد مشخص نیست.
۳. فرض کنید من از کاربر اسمش رو پرسیدم و در پیام بعدی میخوام اسمشو بیارم. مثلا بگم: «سلام آقای فلانی». این اسم رو الان کجا باید ذخیره کنم؟ یک راه خیلی خیلی بد اینه که من خودم یک دیکشنری global user_data بذارم و کلید هر کاربر access_hash باشه و باز user_data[access_hash] بشه یک دیکشنری دیگه که حالا توی فیلد name اسم کاربر رو ذخیره کنم. و بعدش احتمالا باید mutex هم بذارم چرا که تغییر دادن یک فیلد از یک دیکشنری توی یک دیکشنری atomic نیست. راه حل بهتر این مساله ابتدایی چیه؟
متشکرم
The text was updated successfully, but these errors were encountered:
سلام
۱. این قابلیت اینجور طراحی شده که برای هر کاربر یک update در توابع وجود داره که با متودی که dispatcher داره به صورت زیر کار میکنه :
( "dispatcher.set_conversation_data(update=update, key="mobile", value="09130000000
حالا توی هر بخش از بات که هستی میتونی با متود زیر اون رو بدست بیاری :
( "dispatcher.get_conversation_data(update, key="mobile
۱. اینکه غیر از call back functionها چطوری میشه به user_data دسترسی داشت مشخص نیست. آیا میشود؟
۲. اینکه چطوری میشه توش مقداری ذخیره کرد مشخص نیست.
۳. فرض کنید من از کاربر اسمش رو پرسیدم و در پیام بعدی میخوام اسمشو بیارم. مثلا بگم: «سلام آقای فلانی». این اسم رو الان کجا باید ذخیره کنم؟ یک راه خیلی خیلی بد اینه که من خودم یک دیکشنری global user_data بذارم و کلید هر کاربر access_hash باشه و باز user_data[access_hash] بشه یک دیکشنری دیگه که حالا توی فیلد name اسم کاربر رو ذخیره کنم. و بعدش احتمالا باید mutex هم بذارم چرا که تغییر دادن یک فیلد از یک دیکشنری توی یک دیکشنری atomic نیست. راه حل بهتر این مساله ابتدایی چیه؟
متشکرم
The text was updated successfully, but these errors were encountered: