تنظیم ام ام بی
در اولین قدم باید متغیر ام ام بی را تعریف کنید تا اتم بتواند از آن استفاده کند
$mmb = new Mmb('token');
Atom::$mmb = $mmb;
تنظیم دیتابیس
می توانید دیتابیس خود را به اتم معرفی کنید تا مدیریت دیتابیس کاربران و چیز های دیگر که مورد نیاز است را به اتم نیز بسپارید
توجه کنید که اتم فقط بخشی از مدیریت را انجام می دهد و هرگز شما را محدود نمی کند!
تنظیم دیتابیس:
$db = new MmbMySql('localhost', 'user', 'pass', 'db'); // or MmbJson or MmbSqlite or ...
Atom::$db = $db;
تنظیم کانفیگ:
$db = new MmbMySql('localhost', 'user', 'pass', 'db'); // or MmbJson or MmbSqlite or ...
Atom::$db = $db;
می توانید فایل کانفیگ دیتابیسی را مشخص کنید تا در هنگام اجرای installationDb از این فایل استفاده کند
Atom::$dbConfig = __DIR__ . '/dbconfig.php';
تنظیم تگ کانفیگ:
می توانید برای کانفیگ دیتابیس خود، تگی را نیز مشخص کنید:
Atom::$dbConfigTag = 'Database';
دیتای کاربران
دیتای کاربران بصورت طبیعی این ستون ها را داراست:
`id` TEXT
`step` TEXT
`data` TEXT
`map` TEXT
`join_time` INT
`invite_from` TEXT
که این ستون ها در هنگام installation خودکار افزوده می شوند
توجه کنید که نباید این ستون ها را در فایل کانفیگ خود تعریف کنید!
گرفتن دیتای کاربر
شما با کد زیر می توانید دیتای کاربر فعلی را بگیرید:
$user = UsersDb::getThis();
ایجاد خودکار
برای اینکه دیتای کاربران توسط خود اتم ایجاد شود، نیاز است که کالبکی را تعریف کنید تا دیگر ستون ها را هنگام ساخت برگرداند
Atom::$dbNewUser = function($id) {
return [
'score' => 0,
'ban' => false
];
};
اگر شما از خود ستونی ندارید، کافیست آرایه خالی ای برگردانید:
Atom::$dbNewUser = function($id) {
return [];
};
محدود کردن ایجاد خودکار
اگر می خواهید فقط زمانی که پیام ارسال می کنند دیتای کاربر ایجاد شود، از کد زیر استفاده کنید:
Atom::$dbNewUserIfMsg = true;
این مقدار بصورت پیشفرض true است! اگر میخواهید غیر فعال شود از این کد استفاده کنید:
Atom::$dbNewUserIfMsg = false;
اگر می خواهید علاوه بر پیام بودن، تنها در پیوی ایجاد شود، بگذارید:
Atom::$dbNewUserIfMsgPV = true;
این مقدار بصورت پیشفرض true است! اگر میخواهید غیر فعال شود از این کد استفاده کنید:
Atom::$dbNewUserIfMsgPV = false;
محل پیشفرض حافظه:
ام ام بی نیاز به ثبت اطلاعاتی دارد که آن ها را حافظه(Storage) می نامد
برای اینکه حالت پیشفرض ذخیره سازی را تغییر دهید(پیشفرض = Mmb/Storage)، از کد زیر استفاده کنید:
Atom::$storage = __DIR__ . '/Storage00';
لینک دعوت
اگر میخواهید لینک دعوت خود را شخصی سازی کنید، بهتر است نوع شخصی سازی را برای اتم تعریف کنید.
زیرا: 1- اتم از این طریق میفهمد کاربر از سمت چه کسی دعوت شده 2- از تابع ساخت لینک دعوت نیز می توانید استفاده کنید
نام کاربری ربات
برای اینکه از توابع ساخت لینک دعوت اتم استفاده کنید، باید این متغیر را تعریف کنید:
Atom::$botUsername = 'MyBot';
پیشفرض
پیشفرض لینک دعوت ام ام بی، تنها آیدی عددی کاربر است
123456789 => 123456789 => https://t.me/BOT?start=123456789
شخصی سازی
با تعریف تابعی به شکل زیر، می توانید تبدیل آیدی عددی به کد دعوت را شخصی سازی کنید:
Atom::$invLinkEn = function($id) {
return "inv-$id";
};
با تعریف تابعی دیگر به این شکل نیز می توانید عملیات معکوس(تبدیل کد دعوت به آیدی عددی کاربر) را تعریف کنید:
Atom::$invLinkDe = function($code) {
if(substr($code, 0, 4) == 'inv-') {
return substr($code, 4);
}
else {
return false;
}
};
دیتای گروه ها
دیتای گروه ها بصورت پیشفرض غیر فعال است که با کد زیر میتوانید فعال کنید:
Atom::$groupDbEnabled = true;
دیتای گروه ها بصورت طبیعی این ستون ها را داراست:
`id` TEXT
`data` TEXT
که این ستون ها در هنگام installation خودکار افزوده می شوند
توجه کنید که نباید این ستون ها را در فایل کانفیگ خود تعریف کنید!
گرفتن دیتای گروه
شما با کد زیر می توانید دیتای گروه فعلی را بگیرید:
$group = GroupsDb::getThis();