Botni 24/7 uzluksiz ishlashini ta'minlash
Ko'p foydalanuvchi "botim doim ishlashi kerak" deb o'ylaydi, lekin aslida ko'p botlar uchun bu shart emas — va bu maqolada nega, qanday va qachon kerakligini tushuntiramiz.
Avval: sizga chindan ham "doim yoniq" kerakmi?
Botxonada botlar sukut bo'yicha faolsizlikda uxlaydi va xabar kelganda 1–3 soniyada uyg'onadi (batafsil). Oddiy savol-javob boti, buyurtma qabul qiluvchi bot yoki ma'lumot beruvchi bot uchun bu farqni foydalanuvchi deyarli sezmaydi — birinchi xabar bir necha soniya kechikadi, xolos.
Doim yoniq kerak bo'ladigan holatlar:
- Bot rejalashtirilgan vaqtda (masalan har kuni 09:00) xabar yoki eslatma yuborishi kerak bo'lsa.
- Bot to'lov yoki buyurtma kabi vaqtga sezgir jarayonlarni boshqarsa, hatto bir necha soniyalik kechikish ham noqulay bo'lsa.
- Bot boshqa xizmat bilan doimiy fon aloqasi (masalan WebSocket ulanishi) saqlashi kerak bo'lsa.
Doim yoniq qilishning uch yo'li
1. Avtomatik aniqlash (eng oson)
Kodingizda APScheduler, node-cron, JobQueue, setInterval kabi vaqt bo'yicha ishlaydigan kutubxona bo'lsa, Botxona buni avtomatik aniqlaydi va "Avto" rejimida botni doim yoniq qilib qo'yadi — hech qanday qo'shimcha sozlash shart emas.
2. botxona.yaml orqali aniq belgilash
always_on: true
Bu — kodda scheduler bo'lmasa ham, botni doim yoniq qilib qo'yish uchun eng ishonchli yo'l. Batafsil: botxona.yaml.
3. Panelda qo'lda tanlash
Bot sahifasida Sozlamalar → Ish rejimi bo'limida "Doim yoniq" variantini tanlashingiz mumkin — bu kodni o'zgartirmasdan, istalgan vaqtda o'zgartirsa bo'ladigan sozlama.
Business tarifi
Business tarifidagi botlar sozlamadan qat'i nazar har doim yoniq turadi — agar botingiz doimiy ishlashi biznesingiz uchun muhim bo'lsa, bu eng ishonchli variant.
Rejalashtirilgan vazifa o'tkazib yuborilsa nima bo'ladi?
Agar bot "Avto" yoki "Uxlash" rejimida bo'lib, faolsizlik tufayli uxlab qolgan bo'lsa va shu vaqtda rejalashtirilgan vazifa (masalan kunlik hisobot) ishga tushishi kerak bo'lsa — bot uyg'oq bo'lmagani uchun vazifa ishlamay qoladi. Bu — "Uxlash" rejimini ongli tanlaganingizda kutilgan holat; agar bunday bo'lishini xohlamasangiz, "Doim yoniq"ga o'ting yoki botxona.yamlda always_on: true qo'shing.
Bot ishlamay qolganini qanday bilaman?
Muhim jarayonlar uchun botingiz kodiga o'zini tekshiradigan oddiy mexanizm qo'shishingiz mumkin (masalan har safar ishga tushganda adminga "ishga tushdim" xabari yuborish). Bundan tashqari, analitika bo'limida DAU va faollik grafigidagi keskin tushishlar muammoni erta payqashga yordam beradi. Crash-loop holatida (bot 10 daqiqada 5 martadan ko'proq qulab tushsa) tizim sizga avtomatik bildirishnoma yuboradi (batafsil).
Keyingi qadam
Botingiz qanday texnologiyada yozilganiga qarab: aiogram, python-telegram-bot, grammY yoki Telegraf qo'llanmalariga qarang.