Yangi formatda davom etish uchun: https://uzfor.net/view.php?act=post&id=3450
Postga havola
Сирожиддин [2882] [off]
Yangi bot yasash uchun \new buyrug’ini yuboramiz
Keyin bizdan botimizga nom berishimizni so’raydi. Men uni String2UTF8 deb nomladim.
Keyin biz unga manzil kiritishimiz kerak bo’ladi va u oxirida bot qo’shimchasi bilan tugashi kerak. Men uni String2UTF8_bot deb nomladim. Agar biz tanlagan manzil band bo’lsa boshqa manzil topishimiz kerak. Manzilni (username) xam to’g’ri kiritganimizda bizga botfather buni takidlab bizga HTTP API beradi. API xabarda "Use this token to access the HTTP API: 445482470:AAGNmQbhHZTOaqe2Aj9R9FY2lffqqCXRd94" kabi yozilgan bo’ladi.
Mana bizni botimiz ishlatishga tayyor bo’ldi va u qo’ygan manzilimiz bo’yicha ishlatishga tayyor. https://t.me/String2UTF8_bot manzili bo’yicha murojaat qilinsa bo’ladi. Lekin u xozircha so’rovlarimizga javob qaytara olmaydi. Botga buyruqni https://api.telegram.org/botAPI/buyruq ko’rinishida berishimiz mumkin. Mavjud buyruqlar to’liq ro’yhatini https://core.telegram.org/bots/api manzilida o’qishingiz mumkin.
Botga kimdir nimadir yozsa uni 24 soat mobaynida telegramning serverida JSON shakida saqlanib turadi. Uni quyidagi manzil bo’yicha o’qishimiz mumkin: https://api.telegram.org/botAPI/getUpdates
Endi maqsadimiz botga kimdir nimadir yozganda u xabarni o’sha zaxotiyoq qayta ishlab egasiga yuborishimiz kerak bo’ladi. Buning uchun botimizga webhook tayinlaymiz, ya’ni botga nimadir yozilganda bot xabarni avtomatik tarzda o’sha manzilga json ko’rinishida yuboradi. Buning uchun https://api.telegram.org/bot[token]/setwebhook?url=[webhook] manzilini ishlatamiz.
Endi tayyor php scriptimizni hostingga yuklab uni bot orqali ishlatishga kiritamiz. Bot birorta web servis bilan xabar almashishi uchun o’rtadagi muloqot shifrlangan (himoyalangan) bo’lishi kerak ya’ni SSL sertifikat kerak bo’ladi. SSL sertifikat esa yaxshigina pul turadi. Bizni oldimizda Let's Encrypt dan bepul sertifikat olib o’rnatish yoki o’zimiz yaratishimiz yoki shunga o’xshash yo’llar turibdi. Men Let's Encryptdan sertifikat olib uni uzinfocomni oddiy hostinggiga sozlab botni ishlataman deganimda hosting bilan muammolar yuzaga keldi va boshqa yo’l izlashimga to’g’ri keldi. Izlanishlarim natijasida COMODO CA Limited tomonidan beriladigan bepul sertifikatli bepul hosting va bepul 3-darajali domen beradigan sayt/firma/tizim xullas “ajib bir narsa” chiqib qoldi )) Manzil quyidagicha: https://www.000webhost.com/ Uni tariflarini bizni hostingerlarimiz yaqin orada hayoliga ham keltira olishmaydi. Ex essiz uzcard bilan tulov qilib bo’lganda pulli tarifidan sotib olardim. Mayli xozircha bepul tarifini tanlab ro’yhatdan o’tamiz va o’zimizga yangi akkount ochamiz. Yangi akkount ochib unga yangi sayt ochishni tushuntirib o’tmayman, o’ylaymanki o’zingiz qila olasiz.
Yangi sayt ochganimizdan keyin unga ftp orqali fayllarimizni yuklaymiz. O'ylaymanki buni xam o'zingiz qila olasiz (jarayonni bajarishda muammolarga duch kelinsa bemalol murojaat qilishingiz mumkin)
Meni yuklagan faylim https://erkin.000webhostapp.com/tbot.php manzili bo’yicha joylashdi. Demak webhookni shu manzil bo’yicha sozlaymiz. Buning uchun brouzerimiz manzillar qatoriga quyidagini yozamiz va murojaat yuboramiz. (enterni bosamiz)
https://api.telegram.org/bot445482470:AAGNmQbhHZTOaqe2Aj9R9FY2lffqqCXRd94/setwebhook?url=https://erkin.000webhostapp.com/tbot.php
Natija ijobiy bo’lsa brouzerimizda quyidagicha natija chiqadi:
Keyin bizdan botimizga nom berishimizni so’raydi. Men uni String2UTF8 deb nomladim.
Keyin biz unga manzil kiritishimiz kerak bo’ladi va u oxirida bot qo’shimchasi bilan tugashi kerak. Men uni String2UTF8_bot deb nomladim. Agar biz tanlagan manzil band bo’lsa boshqa manzil topishimiz kerak. Manzilni (username) xam to’g’ri kiritganimizda bizga botfather buni takidlab bizga HTTP API beradi. API xabarda "Use this token to access the HTTP API: 445482470:AAGNmQbhHZTOaqe2Aj9R9FY2lffqqCXRd94" kabi yozilgan bo’ladi.
Mana bizni botimiz ishlatishga tayyor bo’ldi va u qo’ygan manzilimiz bo’yicha ishlatishga tayyor. https://t.me/String2UTF8_bot manzili bo’yicha murojaat qilinsa bo’ladi. Lekin u xozircha so’rovlarimizga javob qaytara olmaydi. Botga buyruqni https://api.telegram.org/botAPI/buyruq ko’rinishida berishimiz mumkin. Mavjud buyruqlar to’liq ro’yhatini https://core.telegram.org/bots/api manzilida o’qishingiz mumkin.
Botga kimdir nimadir yozsa uni 24 soat mobaynida telegramning serverida JSON shakida saqlanib turadi. Uni quyidagi manzil bo’yicha o’qishimiz mumkin: https://api.telegram.org/botAPI/getUpdates
Endi maqsadimiz botga kimdir nimadir yozganda u xabarni o’sha zaxotiyoq qayta ishlab egasiga yuborishimiz kerak bo’ladi. Buning uchun botimizga webhook tayinlaymiz, ya’ni botga nimadir yozilganda bot xabarni avtomatik tarzda o’sha manzilga json ko’rinishida yuboradi. Buning uchun https://api.telegram.org/bot[token]/setwebhook?url=[webhook] manzilini ishlatamiz.
Endi tayyor php scriptimizni hostingga yuklab uni bot orqali ishlatishga kiritamiz. Bot birorta web servis bilan xabar almashishi uchun o’rtadagi muloqot shifrlangan (himoyalangan) bo’lishi kerak ya’ni SSL sertifikat kerak bo’ladi. SSL sertifikat esa yaxshigina pul turadi. Bizni oldimizda Let's Encrypt dan bepul sertifikat olib o’rnatish yoki o’zimiz yaratishimiz yoki shunga o’xshash yo’llar turibdi. Men Let's Encryptdan sertifikat olib uni uzinfocomni oddiy hostinggiga sozlab botni ishlataman deganimda hosting bilan muammolar yuzaga keldi va boshqa yo’l izlashimga to’g’ri keldi. Izlanishlarim natijasida COMODO CA Limited tomonidan beriladigan bepul sertifikatli bepul hosting va bepul 3-darajali domen beradigan sayt/firma/tizim xullas “ajib bir narsa” chiqib qoldi )) Manzil quyidagicha: https://www.000webhost.com/ Uni tariflarini bizni hostingerlarimiz yaqin orada hayoliga ham keltira olishmaydi. Ex essiz uzcard bilan tulov qilib bo’lganda pulli tarifidan sotib olardim. Mayli xozircha bepul tarifini tanlab ro’yhatdan o’tamiz va o’zimizga yangi akkount ochamiz. Yangi akkount ochib unga yangi sayt ochishni tushuntirib o’tmayman, o’ylaymanki o’zingiz qila olasiz.
Yangi sayt ochganimizdan keyin unga ftp orqali fayllarimizni yuklaymiz. O'ylaymanki buni xam o'zingiz qila olasiz (jarayonni bajarishda muammolarga duch kelinsa bemalol murojaat qilishingiz mumkin)
Meni yuklagan faylim https://erkin.000webhostapp.com/tbot.php manzili bo’yicha joylashdi. Demak webhookni shu manzil bo’yicha sozlaymiz. Buning uchun brouzerimiz manzillar qatoriga quyidagini yozamiz va murojaat yuboramiz. (enterni bosamiz)
https://api.telegram.org/bot445482470:AAGNmQbhHZTOaqe2Aj9R9FY2lffqqCXRd94/setwebhook?url=https://erkin.000webhostapp.com/tbot.php
Natija ijobiy bo’lsa brouzerimizda quyidagicha natija chiqadi: