Tranportda axborot tizimlari va texnologiyalari



Download 5,47 Mb.
bet5/6
Sana08.07.2022
Hajmi5,47 Mb.
#756202
1   2   3   4   5   6
Bog'liq
kiril

Nimaga aynan Javascript?
1. Telegram Bot yozish uchun sodda sintaksis
2. Bot yaratish uchun uchun juda ko’plab npm package lar mavjud
3. Boshqa dasturlash tillarida yaratilgan botlarga nisbatan anchagina tez ishlayidi.

Shu uchun kelajakda yaratidan botimiz kodlarini ham albatta Javascript dasturlash tilida yozamiz.
Biz yaratadigan bot nima vazifani bajaradi? Batafsil ushbu yaratiladigan bot haqida ma’lumot bermoqchiman. Bu bot juda ko’pchilikning ishini oson qiladi deb o’ylayman. Chunki, telegram da turib siz fayllaringizga o’zgartirish kiritish imkoniga ega bo’lasiz. Botga birorta file yuborasiz lotin yoki kiril tilida bo’lishi mumkin. Sizning tanlovingizga qarab bot sizga ushbu file ni ustida ishlab lotin yoki kiril tilida qaytarib beradi. Masalan Botga siz birorta docx lotin tilida file yuborsangiz u sizga kiril alifbosiga convert qilib ma’lumotlaringiz ni qaytarib beradi. Bundan tashqari ushbu botga docx documentlarni pdf ga convert qilish funksiyasi ham qo’shiladi. Endi TelegramBot yaratishni noldan ko’rib chiqamiz.
TelegramBot yaratish tartibi:
Birinchi navbatda TelegramBot yaratishimiz uchun biz yaratayotgan botimizni @BotFather dan registratsiyadan o’tkazib qo’yishimiz kerak. Qisqa aytganimizda Otadan bot ochish uchun ruxsat so’rashimiz kerak.
Telegramdan @BotFather username ostida Botlarni otasini qidiramiz



Birinchida ptichka belgisi turgan Bot BotFather ning rasmiy boti hisoblanadi.
Rasmiy bot belgisini oldida ptichkadan bilib olishingiz mumkin. Boshqalari bilan adashib yubormasligingiz uchun. Ush bu bot barcha botlarning otasi hisoblanadi. Undagi barcha funksiyalar bolalariga meros qilib o’tkazib olishimiz mumkin. Bot yaratishimizda albatta biz Botfather dan ruxsat so’rab undan keyin bot yarata olishimiz mumkin. U biz bilan tanishib chiqadi va bizga bot yaratishimiz uchun klyuch beradi deb ham tushunishimiz mumkin. Undan keyin esa biz uning barcha funksiyalarini ishlata olamiz va bundan tashqari o’zimiz ham kod yozib botni yuqori darajada optimallashtirishimiz mumkin.
Botga kiramiz va /start kommandasini kiritamiz.





Bizga bir qancha kommandalar beriladi. Yangi bot yaratish uchun
/newbot buyrug’ini ustiga bosamiz
.


Endi botimiz uchun nom beramiz .
M en botga Latin Kiril Document Converter deb nom berdim. Siz xohlagan nomingizni berishingiz mumkin.


Endi bot uchun username tanlaymiz. Username unikal bo’lishi va oxiri bot so’zi bilan tugashi kerak.




Botimiz muvaffaqiyatli ru tegistratsiya bo’ldi va bizga token berdi. Bu tokenni biz hech kimga ko’rsatmasligimiz kerak albatta. Chunki, botimizga tahdidlar bo’lishi mumkin. Endi botda yozib qo’yilganidek biz bu tokenni HTTP API larda ishlatishimiz mumkin. Telegramda bot uchun kerakli muhitni yaratib bo’ldik. Endi botga algoritm yozishimiz uchun Biz o’zimizni kompyuterimizda dasturlash muhitini yaratib olishimiz kerak. Bunday muhit yaratish uchun biz ko’plam dasturlash muhitlaridan foydalanishimiz mumkin. Bulardan eng ko’p ommalashgani Visual Studio Code, Atom, Sublime Text, Webstorm va boshqaolar. Men bulardan Visual Studio Code ni tavsiya etaman. Yengil programma va qulay interfeys.
Visual Studio ni https://code.visualstudio.com/ saytdan yuklab olishingiz mumkin.




Dastur o’rnatilgandan so’ng biz Javascript da kod yozishimiz uchun Uning Runtime Environmentini o’rnatib olishimiz kerak.Bun Runtime Node.js deb Bataladi. Yuqorida ham bu haqda gaplashgan edik. Bu bizning kodlarimiz ni Browserdan tashqarida ishlashga ham yordam beradi va shunga qo’shimcha qilib Node.js yordamida biz Javascriptning o’zida saytning Frontend va Backend qismini bemalol yozishimiz mumkin. Tez, sifatli va albatta oson.
Node.js ning rasmiy sahifasi https://nodejs.org dan yuklab olishingiz mumkin.
Bu turli xil operatsion sistemalar uchun mo’ljallangan. Men Linux operatsion sistemasi ishlatganim uchun Linux uchun yuklab olaman. Agar siz Windows ishlatsangiz windows uchun yuklab olasiz. Saytni o’zi siz qaysi operatsion sistemasi ishlatishingizni biladi va shunga moslab sizga o’zi tavsiya qiladi qaysi envnironmentni o’rnatishni.


Yuqorida 2 environment turibdi. Sizga Recommended for Most Users 16.15.0 versiyasini o’rnatishingizni maslahat beraman. Chunki, yangi versiyasida ba’zi kamchiliklar bo’lishi mumkin.
O’rnatish juda oson shunchaki, next amalini tanlab ketaverasiz. O’rnatib bo’lganingizdan so’ng uning o’rnatilgan yoki o’rnatilmaganini tekshirishingiz mumkin. Windows sistema bo’lsa Windows +R tugmasini birgalikda bosasiz va cmd buyrug’ini yozasiz. Node –version deb terminalga yozsangiz Node ning versiyasini sizga ko’rsatib berishi kerak. Linux uchun CTR+ALT+T dan foydalanasizlar.
K o’rishingiz mumkin menda v14.19.1 versiyasi o’rnatilgan ekan. Mening kompyuterimga oldin o’rnatilgan. Shu uchun eskiroq versiyasi bo’lishi mumkin.
Node.js da amallar ham bajarishingiz mumkin. Shunchaki node deb yozsangiz node ishga tushganini ko’rishingiz mumkin.


Yuqorida REPL ishga tushganini ko’rishingiz mumkin.
REPL bu Read-Eval-Print-Loop (REPL) is an easy-to-use command-line tool, used for processing Node.js expressions.


Bundan tashqari biz Javascriptda bot yozishimiz uchun bir qancha package lardan foydalanishimiz. Bulardan bir qanchasini misol qilib keltirib o’tishimiz mumkin.
Telebot, Node-telegram-bot-api, grammyjs va boshqalar. Ularning rasmiy github sahifasi bilan tanishishingiz mumkin.
Telebot
https://github.com/mullwar/telebot
Node-telegram-bot-api
https://github.com/yagop/node-telegram-bot-api
Grammyjs
https://github.com/grammyjs/grammY


Ulardan bot yozish uchun eng yaxshisi Node-telegram-bot-api hisoblanadi. Chunki, sodda sintaksis, eslab qolishga oson va ko’p imkoniyatga ega ekanligi bilan boshqalardan ajralib turadi. Biz @Botfather dan bot ochib olgan edik. Endi ushbu bot uchun algoritm yozishni boshlaymiz.
Birinchi navbatda proekt uchun papka ochib olamiz va kerakli muhitni tayyor holga keltiramiz.
Men botproject deb loyihamni nomladim. Ko’rib turganingizdek Ekranni o’ng tomonida ko’rishingiz mumkin.
Endi ushbu project ni yuqorida Visual Studio Code download qilib olgan edik.
Ushbu Editorda project ni ochib olamiz.


Endi bot qilish davomida kerak bo’ladigan package va kutubxonalarni proektimizga install qilib olamiz. Undan oldin Proekt haqida ma’lumot beradigan package.json file ni o’rnatib olishimiz kerak. U uchun npm init buyrug’ini terminalga yozamiz.






Package.json file ni ko’rishimz mumkin. Bizga Proektimiz haqidagi to’liq ma’lumotni ushbu file dan olishimiz mumkin.
Bizga kerak bo’ladigan kutubxona va packagelar. Node-telegram-bot-api, download-file, libreoffice-convert, promisify va util. Proektimizga hammasini install qilib olamiz.
Install qilish npm install package nomi

Y uqoridagi rasmda ko’rsatilgandek install qilishingiz mumkin.


Qaysi kutubxonalar yuklanganligini package,json file da ko’rishimiz mumkin.


Endi botimizni qurishni boshlaymiz.


Kerali kutubxonalarni require qilib oldik.


Endi bir lotinkiril.js file ochamiz. Unda men Lotindan Kirilga yoki Kirildan Lotinga textlarni convert qilib beradigan algoritmlrni yozib qo’yganman.
Oxirida yozib qo’ygan bir nechta funksiyalarimni boshqa bir file da ishlata olishimiz uchum export qilib qo’yishimizga to’gri keladi.




Endi bir botimizni ishlatib ko’ramiz.




B irinchi navbatda lotinkiril.js dagi 2 ta funksiyani asosiy main.js ga require qilib undan yozgan 2 ta funksiyamizni asosiy main.js file mizga olib kelamiz Yuqorida ko’rishingiz mumkin botimiz lotin tilidan kiril tiliga text larni to’g’ri tajrima qilayapti. Endi teskarisini tekshirib ko’ramiz. Ya’ni botga kiril tilida text yuborsam u menga lotin tilida qaytarishi kerak.
Yuqorida ko’rishingiz mumkin botimiz muvaffaqiyatli ishladi.
Endi kod yozishda davom etamiz. Botga birorta lotin yoki kiril so’zi yozganimizda bot shunga javoban lotin yoki kirilga convert qilib berishini tekshirib ko’rishimiz mumkin. Masalan lotin tilida text yuborilsa bizga kiril tilida javob qaytarsin.




Botimiz kirildan lotinga ham to’g’ri tarjima qilayotganini ko’rishimiz mumkin. Demak Botimiz to’g’ri ishlayapti. Endi bizda bir muammo bor. Har safar kodimizga o’zgartirish kiritiganimizda serverni qaytadan ishga tushirishimizga to’gri kelayapti. Biz shunday qilishimiz kerak kodimizni kuzatib turadigan bir ishchi kerak va o’zgargandan keyin serverni o’zi qaytadan ishga tushurishi kerak. Bunda bizga nodemon yordamga keladi. Nodemonni o’rnatib olamiz. Rasmiy github sahifasi

Download 5,47 Mb.

Do'stlaringiz bilan baham:
1   2   3   4   5   6




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish