வழிகாட்டி: நிரலாக்கத்தில் ஒரு தொடக்கக்காரருக்கு JS இல் ஒரு எளிய டெலிகிராம் போட்டை எவ்வாறு உருவாக்குவது

நான் மூன்று வாரங்களுக்கு முன்புதான் ஐடி உலகில் மூழ்க ஆரம்பித்தேன். தீவிரமாக, மூன்று வாரங்களுக்கு முன்பு எனக்கு HTML தொடரியல் கூட புரியவில்லை, மேலும் நிரலாக்க மொழிகளுக்கான எனது அறிமுகம் 10 ஆண்டுகளுக்கு முன்பு பாஸ்கலில் ஒரு பள்ளி பாடத்திட்டத்துடன் முடிந்தது. இருப்பினும், நான் ஒரு ஐடி முகாமுக்கு செல்ல முடிவு செய்தேன், அங்கு குழந்தைகள் ஒரு போட் தயாரிப்பது நல்லது. அது அவ்வளவு கடினம் அல்ல என்று முடிவு செய்தேன்.

இது ஒரு நீண்ட பயணத்தைத் தொடங்கியது, அதில் நான்:

  • உபுண்டுவுடன் கிளவுட் சர்வரை பயன்படுத்தியது,
  • GitHub இல் பதிவு செய்யப்பட்டுள்ளது,
  • அடிப்படை ஜாவாஸ்கிரிப்ட் தொடரியல் கற்றது,
  • ஆங்கிலம் மற்றும் ரஷ்ய மொழிகளில் ஒரு டன் கட்டுரைகளைப் படிக்கவும்,
  • இறுதியாக ஒரு போட் செய்தேன்,
  • இறுதியாக இந்தக் கட்டுரையை எழுதினேன்.

இறுதி முடிவு இப்படி இருந்தது:

வழிகாட்டி: நிரலாக்கத்தில் ஒரு தொடக்கக்காரருக்கு JS இல் ஒரு எளிய டெலிகிராம் போட்டை எவ்வாறு உருவாக்குவது

இது ஆரம்பநிலைக்கான கட்டுரை என்று நான் இப்போதே கூறுவேன் - புதிதாக அடிப்படை விஷயங்களை எப்படி செய்வது என்பதைப் புரிந்து கொள்ள.

மேலும் - மேம்பட்ட புரோகிராமர்களுக்கு - அவர்களை கொஞ்சம் சிரிக்க வைப்பதற்காக.

1. JS இல் குறியீட்டை எழுதுவது எப்படி?

மொழியின் தொடரியலையாவது முதலில் புரிந்துகொள்வது மதிப்பு என்பதை நான் புரிந்துகொண்டேன். தேர்வு ஜாவாஸ்கிரிப்ட்டில் விழுந்தது, ஏனென்றால் எனக்கு அடுத்த படியாக ReactNative இல் ஒரு பயன்பாட்டை உருவாக்க வேண்டும். நான் ஆரம்பித்தேன் நிச்சயமாக கோட்காடமியில் மற்றும் மிகவும் மகிழ்ச்சியாக இருந்தது. முதல் 7 நாட்கள் இலவசம். உண்மையான திட்டங்கள். நான் பரிந்துரைக்கிறேன். அதை முடிக்க சுமார் 25 மணி நேரம் ஆனது. உண்மையில், அவை அனைத்தும் பயனுள்ளதாக இல்லை. இதுவே பாடத்திட்டத்தின் அமைப்பு மற்றும் முதல் தொகுதி விரிவாக இருக்கும்.

வழிகாட்டி: நிரலாக்கத்தில் ஒரு தொடக்கக்காரருக்கு JS இல் ஒரு எளிய டெலிகிராம் போட்டை எவ்வாறு உருவாக்குவது

2. ஒரு போட் பதிவு செய்வது எப்படி?

இது ஆரம்பத்தில் எனக்கு மிகவும் உதவியது இந்த கட்டுரை ஒரு குறிப்பிட்ட அர்ச்சகோவின் வலைப்பதிவிலிருந்து. அவர் ஆரம்பத்திலேயே மெல்லுகிறார். ஆனால் முக்கிய விஷயம் என்னவென்றால், ஒரு போட் பதிவு செய்வதற்கான வழிமுறைகள். என்னால் சிறப்பாக எழுத முடியாது, இது எளிதான பகுதி என்பதால், சுருக்கத்தை மட்டும் எழுதுகிறேன். நீங்கள் ஒரு போட்டை உருவாக்கி அதன் API ஐப் பெற வேண்டும். இது மற்றொரு போட் மூலம் செய்யப்படுகிறது - @BotFather. டெலிகிராமில் அவரைக் கண்டுபிடி, அவருக்கு எழுதுங்கள், எளிய வழியைப் பின்பற்றி (சேமி!) ஒரு API விசையைப் பெறுங்கள் (இது எண்கள் மற்றும் எழுத்துக்களின் தொகுப்பு). அது பின்னர் கைக்கு வந்தது.

வழிகாட்டி: நிரலாக்கத்தில் ஒரு தொடக்கக்காரருக்கு JS இல் ஒரு எளிய டெலிகிராம் போட்டை எவ்வாறு உருவாக்குவது

3. போட் குறியீடு எப்படி இருக்கும்?

கட்டுரைகளை நீண்ட நேரம் படித்த பிறகு, டெலிகிராம் API ஐப் படிப்பது மற்றும் புதிதாக பெரிய குறியீடுகளை உருவாக்குவது பற்றி கவலைப்படாமல் இருக்க, ஒருவித நூலகத்தைப் பயன்படுத்துவது மதிப்புக்குரியது என்பதை உணர்ந்தேன் (மூன்றாம் தரப்பு குறியீடு தொகுதி வடிவத்தில்). நான் கட்டமைப்பைக் கண்டேன் தந்தி, இது npm அல்லது நூலைப் பயன்படுத்தி எப்படியாவது இணைக்கப்பட வேண்டும். ஒரு போட்டின் வரிசைப்படுத்தல் என்ன என்பதை நான் தோராயமாக இப்படித்தான் புரிந்துகொண்டேன். இங்கே சிரிக்கவும். நான் புண்பட மாட்டேன். பக்கத்தின் கீழே உள்ள எடுத்துக்காட்டுகள், போட் உருவாக்கத்தின் போது எனக்கு மிகவும் உதவியது:

வழிகாட்டி: நிரலாக்கத்தில் ஒரு தொடக்கக்காரருக்கு JS இல் ஒரு எளிய டெலிகிராம் போட்டை எவ்வாறு உருவாக்குவது

3. 100 ரூபிள் உங்கள் சொந்த கிளவுட் சர்வர் உருவாக்க எப்படி

நீண்ட தேடலுக்குப் பிறகு, மேலே உள்ள படத்தில் உள்ள 'npm' கட்டளை கட்டளை வரியைக் குறிக்கிறது என்பதை உணர்ந்தேன். கட்டளை வரி எல்லா இடங்களிலும் உள்ளது, ஆனால் அதை இயக்க, நீங்கள் NodePackageManager ஐ நிறுவ வேண்டும். பிரச்சனை என்னவென்றால், நான் ChromeOS உடன் PixelBook இல் நிரலாக்கம் செய்து கொண்டிருந்தேன். நான் லினக்ஸை எவ்வாறு கற்றுக்கொண்டேன் என்பது பற்றிய ஒரு பெரிய தொகுதியை இங்கு தவிர்க்கிறேன் - பெரும்பாலானவர்களுக்கு இது காலியாகவும் தேவையற்றதாகவும் உள்ளது. உங்களிடம் விண்டோஸ் அல்லது மேக்புக் இருந்தால், உங்களிடம் ஏற்கனவே கன்சோல் உள்ளது.

சுருக்கமாக, நான் க்ரோஸ்டினி வழியாக லினக்ஸை நிறுவினேன்.

இருப்பினும், செயல்பாட்டில், போட் தொடர்ந்து வேலை செய்ய (எனது கணினி இயக்கத்தில் இருக்கும்போது மட்டுமல்ல), எனக்கு ஒரு கிளவுட் சர்வர் தேவை என்பதை உணர்ந்தேன். நான் தேர்ந்தெடுத்தேன் vscale.io நான் 100 ரூபிள் செலவழித்து மலிவான உபுண்டு சேவையகத்தை வாங்கினேன் (படத்தைப் பார்க்கவும்).

வழிகாட்டி: நிரலாக்கத்தில் ஒரு தொடக்கக்காரருக்கு JS இல் ஒரு எளிய டெலிகிராம் போட்டை எவ்வாறு உருவாக்குவது

4. போட் இயக்க சர்வரை எவ்வாறு தயாரிப்பது

அதன் பிறகு, சேவையகத்தில் ஒருவித கோப்புறையை உருவாக்க வேண்டும் என்பதை உணர்ந்தேன், அதில் குறியீட்டு உரையுடன் கோப்பை வைப்பேன். இதைச் செய்ய, கன்சோலில் (“திறந்த கன்சோல்” பொத்தான் மூலம் இணையதளத்தில் நேரடியாக இயக்கவும்), நான் உள்ளிட்டேன்

mkdir bot

bot - இது எனது கோப்புறையின் பெயர். அதன் பிறகு, நான் npm மற்றும் Node.js ஐ நிறுவினேன், இது *.js தெளிவுத்திறன் கொண்ட கோப்புகளிலிருந்து குறியீட்டை இயக்க அனுமதிக்கும்.

sudo apt update
sudo apt install nodejs
sudo apt install npm

இந்த கட்டத்தில் உங்கள் கன்சோல் மூலம் சர்வருடன் இணைப்பை அமைக்க பரிந்துரைக்கிறேன். இங்கே அறிவுறுத்தல் இது உங்கள் கணினியின் கன்சோல் மூலம் நேரடியாக சேவையகத்துடன் வேலை செய்ய அனுமதிக்கும்.

5. உங்கள் முதல் போட்டிற்கான குறியீட்டை எப்படி எழுதுவது.

ஆனால் இப்போது அது எனக்கு ஒரு கண்டுபிடிப்பு மட்டுமே. எந்தவொரு நிரலும் உரையின் வரிகள் மட்டுமே. அவை எங்கும் செருகப்படலாம், விரும்பிய நீட்டிப்புடன் சேமிக்கப்படும், அவ்வளவுதான். நீங்கள் அழகாக இருக்கிறீர்கள். நான் பயன்படுத்தினேன் ஆட்டம், ஆனால் உண்மையில், நீங்கள் ஒரு நிலையான நோட்பேடில் எழுதலாம். முக்கிய விஷயம் என்னவென்றால், கோப்பை பின்னர் விரும்பிய நீட்டிப்பில் சேமிப்பது. இது வேர்டில் உரையை எழுதி சேமிப்பது போன்றது.

நான் ஒரு புதிய கோப்பை உருவாக்கினேன், அதில் டெலிகிராஃப் பக்கத்தில் உள்ள எடுத்துக்காட்டில் இருந்து குறியீட்டைச் செருகி, அதை index.js கோப்பில் சேமித்தேன் (பொதுவாக கோப்பை அப்படிப் பெயரிட வேண்டிய அவசியமில்லை, ஆனால் இது வழக்கம்). முக்கியமானது - BOT_TOKEN க்குப் பதிலாக, இரண்டாவது பத்தியிலிருந்து உங்கள் API விசையைச் செருகவும்.

const Telegraf = require('telegraf')

const bot = new Telegraf(process.env.BOT_TOKEN)
bot.start((ctx) => ctx.reply('Welcome!'))
bot.help((ctx) => ctx.reply('Send me a sticker'))
bot.on('sticker', (ctx) => ctx.reply(''))
bot.hears('hi', (ctx) => ctx.reply('Hey there'))
bot.launch()

6. கிதுப் வழியாக சேவையகத்தில் குறியீட்டை எவ்வாறு பதிவேற்றுவது

இப்போது இந்த குறியீட்டை எப்படியாவது சர்வரில் பதிவேற்றி இயக்க வேண்டும். இது எனக்கு சவாலாக மாறியது. இதன் விளைவாக, பல சோதனைகளுக்குப் பிறகு, கன்சோலில் உள்ள கட்டளையைப் பயன்படுத்தி குறியீட்டைப் புதுப்பிக்க அனுமதிக்கும் ஒரு கோப்பை கிதுப்பில் உருவாக்குவது எளிதாக இருக்கும் என்பதை உணர்ந்தேன். நான் கணக்கு பதிவு செய்தேன் -மகிழ்ச்சியா மற்றும் செய்தார் புதிய திட்டம், நான் கோப்பை பதிவேற்றிய இடத்தில். அதன் பிறகு, போட் கோப்புறையில் உள்ள சர்வரில் எனது கணக்கிலிருந்து (திறந்த!) கோப்புகளை எவ்வாறு பதிவேற்றுவது என்பதை நான் கண்டுபிடிக்க வேண்டியிருந்தது (நீங்கள் திடீரென்று அதை விட்டுவிட்டால், சிடி போட் என்று எழுதுங்கள்).

7. கிதுப் பகுதி 2 வழியாக சர்வரில் கோப்புகளை எவ்வாறு பதிவேற்றுவது

git இலிருந்து கோப்புகளைப் பதிவிறக்கும் ஒரு நிரலை நான் சர்வரில் நிறுவ வேண்டும். கன்சோலில் தட்டச்சு செய்து சர்வரில் git ஐ நிறுவினேன்

apt-get install git

அதன் பிறகு நான் கோப்பு பதிவேற்றத்தை உள்ளமைக்க வேண்டும். இதைச் செய்ய, நான் கட்டளை வரியில் தட்டச்சு செய்தேன்

git clone git://github.com/b0tank/bot.git bot

இதன் விளைவாக, திட்டத்திலிருந்து அனைத்தும் சர்வரில் பதிவேற்றப்பட்டன. இந்த கட்டத்தில் தவறு என்னவென்றால், நான் ஏற்கனவே இருக்கும் போட் கோப்புறையில் இரண்டாவது கோப்புறையை உருவாக்கினேன். கோப்பின் முகவரி */bot/bot/index.js போல் தெரிகிறது

இந்த சிக்கலை புறக்கணிக்க முடிவு செய்தேன்.

குறியீட்டின் முதல் வரியில் நாம் கோரும் டெலிகிராஃப் நூலகத்தை ஏற்ற, கட்டளையை கன்சோலில் தட்டச்சு செய்யவும்.

npm install telegraf

8. ஒரு போட்டை எவ்வாறு தொடங்குவது

இதைச் செய்ய, கோப்புடன் கோப்புறையில் இருக்கும்போது (கன்சோல் வழியாக கோப்புறையிலிருந்து கோப்புறைக்கு நகர்த்த, வடிவமைப்பு கட்டளையை இயக்கவும் cd bot நீங்கள் இருக்க வேண்டிய இடத்தில் நீங்கள் இருக்கிறீர்கள் என்பதை உறுதிசெய்ய, அங்குள்ள அனைத்து கோப்புகள் மற்றும் கோப்புறைகளை கன்சோலில் காண்பிக்கும் கட்டளையை உள்ளிடலாம். ls -a

தொடங்க, நான் கன்சோலில் நுழைந்தேன்

node index.js

பிழை இல்லை என்றால், எல்லாம் நன்றாக இருக்கிறது, போட் வேலை செய்கிறது. தந்தியில் அவரைத் தேடுங்கள். பிழை இருந்தால், புள்ளி 1ல் இருந்து உங்கள் அறிவைப் பயன்படுத்தவும்.

9. பின்னணியில் ஒரு போட்டை இயக்குவது எப்படி

நீங்கள் கன்சோலில் அமர்ந்திருக்கும் போதுதான் போட் வேலை செய்யும் என்பதை மிக விரைவாக உணர்வீர்கள். இந்த சிக்கலை தீர்க்க நான் கட்டளையைப் பயன்படுத்தினேன்

screen

இதற்குப் பிறகு, சில உரைகளுடன் ஒரு திரை தோன்றும். இதன் பொருள் எல்லாம் நன்றாக இருக்கிறது. நீங்கள் கிளவுட் சர்வரில் விர்ச்சுவல் சர்வரில் இருக்கிறீர்கள். இது எவ்வாறு செயல்படுகிறது என்பதை நன்கு புரிந்து கொள்ள - இங்கே கட்டுரை. உங்கள் கோப்புறைக்குச் சென்று, bot ஐத் தொடங்க கட்டளையை உள்ளிடவும்

node index.js

10. போட் எவ்வாறு செயல்படுகிறது மற்றும் அதன் செயல்பாட்டை எவ்வாறு விரிவாக்குவது

எங்கள் உதாரணம் போட் என்ன செய்ய முடியும்? அவனால் முடியும்

bot.start((ctx) => ctx.reply('Welcome!'))

"வரவேற்கிறேன்!" தொடக்கத்தில் (உரையை மாற்ற முயற்சிக்கவும்)

bot.help((ctx) => ctx.reply('Send me a sticker'))

நிலையான / உதவி கட்டளைக்கு பதிலளிக்கும் விதமாக, "எனக்கு ஒரு ஸ்டிக்கர் அனுப்பு" என்ற செய்தியை அனுப்பவும்.

bot.on('sticker', (ctx) => ctx.reply(''))

ஒரு ஸ்டிக்கருக்குப் பதில் ஒப்புதலை அனுப்பவும்

bot.hears('hi', (ctx) => ctx.reply('Hey there'))

அவர்கள் அவருக்கு "ஹாய்" என்று எழுதினால் "ஹாய் தேர்" என்று பதிலளிக்கவும்
bot.launch()

வழிகாட்டி: நிரலாக்கத்தில் ஒரு தொடக்கக்காரருக்கு JS இல் ஒரு எளிய டெலிகிராம் போட்டை எவ்வாறு உருவாக்குவது

இல் உள்ள குறியீட்டைப் பார்த்தால் -மகிழ்ச்சியா, இந்த செயல்பாட்டிலிருந்து நான் வெகுதூரம் செல்லவில்லை என்பதை நீங்கள் விரைவில் புரிந்துகொள்வீர்கள். செயலில் பயன்படுத்தப்படுவது செயல்பாடு ctx.replyWithPhoto ஒரு குறிப்பிட்ட உரைக்கு பதிலளிக்கும் வகையில் ஒரு குறிப்பிட்ட புகைப்படம் அல்லது gif ஐ அனுப்ப இது உங்களை அனுமதிக்கிறது.

குறியீட்டின் குறிப்பிடத்தக்க பகுதி 11-13 வயதுடைய குழந்தைகளால் எழுதப்பட்டது, அவர்களுக்கு நான் போட் அணுகலை வழங்கினேன். அவர்கள் தங்கள் பயனர் வழக்கை உள்ளிட்டனர். அவர்களால் எந்தப் பகுதியை உருவாக்கினார்கள் என்பதைச் சொல்வது எளிது என்று நினைக்கிறேன்.

எடுத்துக்காட்டாக, "ஜேக்" என்ற செய்தி கார்ட்டூன் அட்வென்ச்சர் டைமில் இருந்து பிரபலமான கதாபாத்திரத்துடன் GIF ஐப் பெறும்.

வழிகாட்டி: நிரலாக்கத்தில் ஒரு தொடக்கக்காரருக்கு JS இல் ஒரு எளிய டெலிகிராம் போட்டை எவ்வாறு உருவாக்குவது

போட்டை மேலும் உருவாக்க, நீங்கள் ஒரு விசைப்பலகையை இணைக்க வேண்டும், எடுத்துக்காட்டுகளைப் பார்க்கவும், எடுத்துக்காட்டாக, இங்கிருந்து

11. குறியீட்டைப் புதுப்பித்து, போட்டை மறுதொடக்கம் செய்வது எப்படி

கிதுப்பில் மட்டுமல்ல, சர்வரிலும் குறியீட்டைப் புதுப்பிக்க வேண்டும் என்பதை மறந்துவிடாதீர்கள். இதைச் செய்வது எளிது - போட்டை நிறுத்துங்கள் (ctrl+c அழுத்தவும்),

- இலக்கு கோப்புறையில் இருக்கும்போது பணியகத்தில் உள்ளிடவும், git pull
— கட்டளையுடன் மீண்டும் போட்டை துவக்குகிறோம் node index.js

முடிவில்

இந்தக் கோப்பில் விவரிக்கப்பட்டுள்ள பல விஷயங்கள் மேம்பட்ட புரோகிராமர்களுக்கு மிகத் தெளிவாகத் தெரியும். இருப்பினும், நானே பள்ளத்தைத் தாண்டி ஒரே அடியில் போட்களின் உலகத்திற்கு செல்ல முயன்றபோது, ​​​​அத்தகைய வழிகாட்டியை நான் உண்மையில் தவறவிட்டேன். எந்தவொரு IT நிபுணருக்கும் வெளிப்படையான மற்றும் எளிமையான விஷயங்களைத் தவறவிடாத வழிகாட்டி.

எதிர்காலத்தில், அதே பாணியில் ReactNative இல் உங்களின் முதல் விண்ணப்பத்தை எவ்வாறு உருவாக்குவது என்பது பற்றிய இடுகையைத் திட்டமிடுகிறேன், குழுசேரவும்!

ஆதாரம்: www.habr.com

கருத்தைச் சேர்