Real loyiha · 2021 · ~2 daqiqa o‘qiladi
Aladdin Bot — atraksion jihozlari katalogi
Atraksion jihozlari sotadigan kompaniya uchun Telegram-katalog: kategoriyalar, tovarlar va narxlar uch tilda. 2021-yildan beri uzluksiz ishlab turibdi — tovarlarni menejerlar veb-paneldan boshqaradi, bot kodiga tegilmaydi.
Python · aiogram · REST API · SQLite · systemd
- 2021-yildan beri jonli
- 10 000+ foydalanuvchi
- 3 til (uz/ru/en)
- veb-panel + bot juftligi
Mundarija
Muammo#
Aladdin — bolalar maydonchalari va atraksion jihozlari sotadigan kompaniya. Tovarlar assortimenti keng: karusellar, batutlar, o'yin maydonchalari — har birining o'z turlari, o'lchamlari va narxlari bor. Mijozlar narxlarni bilish uchun menejerga qo'ng'iroq qilardi, katalog esa PDF va qog'oz ko'rinishida tarqalardi — u tez eskirar, tilga moslab bo'lmasdi.
Mening zimmamda Telegram bot bo'lgan — katalog backend'i tayyor API sifatida berilgan, bot esa uni mijozga yetkazadigan qatlam.
Yechim#
Telegram-katalog bot: mijoz kategoriyani ochadi, tovarlar ro'yxatini varaqlaydi, har tovarning surati, tavsifi va narxini o'z tilida ko'radi. Ro'yxatdan o'tish oddiy — ism va telefon; shu ro'yxat kompaniya uchun mijozlar bazasiga aylanadi.
Arxitektura#
Tizim ikki qismdan iborat — va bu ajratish ataylab qilingan:
- Katalog backend'i — tovarlar, kategoriyalar, narxlar va manzillar veb-panelda saqlanadi. Menejerlar tovar qo'shadi, narx yangilaydi — dasturchisiz;
- Telegram bot — katalogni API orqali o'qiydi va mijozga o'z tilida ko'rsatadi. Bot hech qanday tovar ma'lumotini o'zida saqlamaydi — faqat foydalanuvchilar (ism, telefon, til tanlovi) lokal bazada;
- Uch til (o'zbek, rus, ingliz) — interfeys ham, tovar kontenti ham;
- Ommaviy xabar — yangi tovar yoki aksiyani barcha ro'yxatdan o'tgan mijozlarga yuborish, adminlarga xizmat bildirishnomalari.
Bot serverda systemd ostida 24/7 ishlaydi.
Qiyin qarorlar#
Katalogni botga emas, backend'ga berish. Eng oson yo'l — tovarlarni bot bazasiga yozish edi. Lekin unda har tovar o'zgarishi dasturchidan o'tardi. Kontent va kod ajratildi: menejer veb-panelda ishlaydi, bot esa shunchaki ko'zgu. Bot bir marta yozildi — katalog esa har kuni yangilanaveradi.
Ro'yxatdan o'tishni minimal qilish. Mijozdan faqat ism va telefon so'raladi — katalogga kirish uchun to'siq deyarli yo'q, kompaniya esa har qiziqqan mijozning kontaktini oladi. Sotuv botda emas — botning ishi mijozni "isitib" menejerga yetkazish.
Natija#
- Bot 2021-yildan beri — besh yildirki — jonli ishlab turibdi: @atraksion_bot;
- 2026-yil avgust holatiga 10 167 ro'yxatdan o'tgan foydalanuvchi;
- Katalog uch tilda, narxlar doim dolzarb — menejerlar o'zi yangilaydi;
- Ro'yxatdan o'tgan har mijoz — kompaniya bazasidagi jonli kontakt.
Kod — kompaniya mulki (yopiq). Arxitektura va yechimlar haqida savollar bo'lsa — bog'laning.
Aloqador maqolalar
Darslik · 14.08 · ~1 daqiqa
Video: Pythonda operatorlar — o‘zbek tilida
YouTube darsim: Python operatorlari — arifmetik, taqqoslash va mantiqiy operatorlar misollar bilan.
Maqola · 20.07 · ~2 daqiqa
FastAPI yoki Django REST Framework: qaysi birini tanlash
Ikkala framework ham Python'da API qurish uchun kuchli. Farqlari, kuchli tomonlari va qaysi loyihaga qaysi biri mos kelishi haqida amaliy solishtiruv.
Darslik · 10.06 · ~2 daqiqa
Parollarni to‘g‘ri saqlash: hash, salt va Argon2
Nega MD5 va SHA-256 parol uchun yaroqsiz, salt nima beradi va zamonaviy tanlov nima uchun Argon2 — Python misollari bilan.