কিভাবে পাইথন দিয়ে বেসিক টেলিগ্রাম বট তৈরি করা যায় 3

কিভাবে পাইথন দিয়ে বেসিক টেলিগ্রাম বট তৈরি করা যায় 3

আপনি যদি একজন টেলিগ্রাম ব্যবহারকারী হন, তাহলে আপনি কিছু সময়ে চ্যাটবটের সাথে 'কথোপকথন' করতে বাধ্য হবেন। তাদের আশ্চর্যজনক কাস্টমাইজিবিলিটির সাথে, টেলিগ্রামের বটগুলি বিভিন্ন সুবিধা প্রদান করে --- এটি স্বয়ংক্রিয় কাজগুলির জন্য হোক বা আপনার চ্যাট গ্রুপে গেমগুলির সাথে কিছুটা মজা করুন।





যদিও কেউ কেউ একটি বট তৈরি করা একটি কঠিন কাজ বলে মনে করতে পারে, এটি আসলে তা নয়। সঠিক পরিকল্পনার সাথে, আপনি একটি টেলিগ্রাম বটকে এক ঘন্টারও কম সময়ে চালাতে পারেন! এখানে একটি সহজ টেলিগ্রাম বট তৈরি করা যায় যা অনুরোধ করা হলে ইন্টারনেট বিড়ালের সুন্দর ছবি আউটপুট করে।





শুরু হচ্ছে

এই টিউটোরিয়ালের জন্য, আমরা পাইথন 3 ব্যবহার করতে যাচ্ছি, পাইথন-টেলিগ্রাম-বট এবং অনুরোধ লাইব্রেরি, এবং TheCatAPI





টেলিগ্রামের প্রতিটি বটের একটি অনন্য টোকেন রয়েছে যা এটির সাথে যোগাযোগ করতে সহায়তা করে বট এপিআই অ্যাপের মেসেজিং ইন্টারফেস ব্যবহার করার জন্য। বোট এপিআই, ডেভেলপারদের মধ্যে টেলিগ্রামের অন্যতম জনপ্রিয় বৈশিষ্ট্য, আপনাকে এর বার্তাগুলিকে ইন্টারফেস হিসাবে ব্যবহার করতে দেয়।

কিভাবে ফেসবুকে ডিলিট করা মেসেজ রিকভার করতে হয়

টোকেন পেতে, এর সাথে একটি কথোপকথন শুরু করুন বটফাদার যা, নাম অনুসারে, একটি অফিসিয়াল বট যা আপনাকে আপনার নিজের বট তৈরি এবং কাস্টমাইজ করতে দেয়। আপনি প্রদত্ত লিঙ্কটি ব্যবহার করে বটটি অ্যাক্সেস করতে পারেন বা বিকল্পভাবে টেলিগ্রামে 'otবটফাদার' অনুসন্ধান করতে পারেন।



একবার আড্ডায়, টাইপ করে আপনার বট তৈরি করুন /newbot কমান্ড আপনার বটের নাম এবং ব্যবহারকারীর নাম সেট করা চালিয়ে যান (আমরা আমাদের namepawsomebot নাম দেওয়ার সিদ্ধান্ত নিয়েছি)। এটি অনুসরণ করে, আপনি আপনার বটের জন্য অনন্য একটি টোকেন পাবেন।

এখন যেহেতু আমাদের সমস্ত পূর্বশর্ত রয়েছে, এখন উত্তেজনাপূর্ণ অংশে যাওয়ার সময়!





লাইব্রেরি ইনস্টল করা

আপনি যদি উইন্ডোজ ব্যবহার করেন, কমান্ড প্রম্পট খুলুন এবং নিম্নলিখিত কমান্ডগুলি টাইপ করুন:

pip install python-telegram-bot
pip install requests

আপনি যদি ম্যাকওএস বা লিনাক্স ব্যবহার করেন, তাহলে এর পরিবর্তে আপনার টার্মিনালে নিম্নলিখিত কমান্ডগুলি ব্যবহার করুন। অতিরিক্তভাবে লিনাক্সে, নিশ্চিত করুন যে আপনি সুডো সুবিধা সহ একজন ব্যবহারকারী হিসাবে লগ ইন করেছেন।





pip3 install python-telegram-bot
pip3 install requests

প্রোগ্রাম লেখা

আপনার কম্পিউটারে একটি নতুন ফোল্ডার তৈরি করুন এবং এটি আপনার প্রিয় এডিটরে খুলুন। একটি নতুন ফাইল তৈরি করুন এবং তার নাম দিন main.py। এই ফাইলে আপনার বটের সোর্স কোড থাকবে।

এখন, আসুন আমরা আগে ইনস্টল করা লাইব্রেরিগুলি তাদের কিছু অন্তর্নির্মিত ফাংশন সহ আমদানি করি।

from telegram.ext import Updater, CommandHandler
import requests
import re

এখান থেকে প্রোগ্রামটির প্রবাহ হল TheCatAPI অ্যাক্সেস করা, একটি এলোমেলো ছবির URL প্রাপ্ত করা এবং সেই ছবিটি ব্যবহারকারীর চ্যাটে পাঠানো।

ইমেজ ইউআরএল পেতে একটি ফাংশন দিয়ে শুরু করা যাক, যা অনুরোধ মডিউল ব্যবহার করে করা যেতে পারে। এই ফাংশনে, আমরা TheCatAPI দ্বারা প্রদত্ত একটি এলোমেলো ফাইলের JSON ডেটা লোড করি এবং এর ইউআরএলটি পরবর্তীতে ব্যবহারের জন্য বের করি। JSON অবজেক্টের ফর্ম্যাটটি দেখতে, এখানে যান https://api.thecatapi.com/v1/images/search আপনার ব্রাউজারে। আপনি এরকম কিছু লক্ষ্য করবেন:

[{'breeds':[],'id':'a8c','url':'url.jpg','width':800,'height':533}]

লক্ষ্য করুন যে JSON বস্তু একটি অ্যারে যা একটি অভিধান ধারণ করে। এই অভিধানে 'url' কী সহ URL রয়েছে। ইউআরএল বের করার জন্য, আমাদের অ্যারের প্রথম উপাদান এবং তারপর প্রাসঙ্গিক কী উল্লেখ করতে হবে।

def getUrl():
#obtain a json object with image details
#extract image url from the json object
contents = requests.get('https://api.thecatapi.com/v1/images/search')
url = contents[0]['url']
return url

পরবর্তী, আমাদের এই ছবিটি একজন ব্যবহারকারীর চ্যাটে পাঠাতে হবে। এর জন্য, আমাদের একটি চিত্র URL এর পাশাপাশি ব্যবহারকারীর চ্যাটের অনন্য আইডি প্রয়োজন। এটি করার জন্য আসুন একটি রেপার ফাংশন তৈরি করি। প্রথমে, আমরা কল করি getUrl () । একটি এলোমেলো ছবির ইউআরএল পাওয়ার ফাংশন --- এই ইউআরএলটি প্রতিবার আপনার প্রোগ্রামটি ফাংশনের মাধ্যমে পুনরাবৃত্তি করলে পরিবর্তিত হয়।

এর পরে প্রাপক ব্যবহারকারীর চ্যাট আইডি প্রাপ্ত হয়, যা বট এপিআই এর অন্তর্নির্মিত মাধ্যমে বার্তা এবং URL বিশ্লেষণের জন্য বটের লক্ষ্য স্থান নির্ধারণ করে। ছবি পাঠান() ফাংশন

def sendImage(bot, update):
url = getUrl()
chat_id = update.message.chat_id
bot.send_photo(chat_id=chat_id, image=url)

বট এপিআই এর বিভিন্ন অন্তর্নির্মিত ফাংশন এবং সেগুলি কীভাবে কাজ করে সে সম্পর্কে আরও জানতে, নির্দ্বিধায় টেলিগ্রামের পরীক্ষা করে দেখুন অফিসিয়াল ডকুমেন্টেশন এই টিউটোরিয়ালের পরে।

অবশেষে, আসুন একটি ফাংশন তৈরি করি যা বটের সামগ্রিক কাজ নিয়ন্ত্রণ করে। এই ফাংশন --- প্রচলিতভাবে প্রধান () --- বলা হয় যেখানে আমরা টিউটোরিয়ালের শুরুতে প্রাপ্ত টোকেন ব্যবহার করে বট এপিআই-তে একটি HTTP অনুরোধ পাঠাই এবং তারপর বটের ব্যবহারকারীর মিথস্ক্রিয়া কেমন হবে তা নির্ধারণ করুন। আমাদের মতো সহজ ক্ষেত্রে, এর অর্থ মূলত বট শুরু করা এবং কল করা SendImage () ব্যবহারকারী দ্বারা অনুরোধ করা হলে ফাংশন।

def main():
updater = Updater('1190888035:AAGeJ9316R95NqJLFefV5vQA-UL4np11V2c')
#call sendImage() when the user types a command in the telegram chat
updater.dispatcher.add_handler(CommandHandler('meow',sendImage))
#start the bot
updater.start_polling()
updater.idle()
if __name__ == '__main__':
main()

আপনার চূড়ান্ত প্রোগ্রাম এই মত হওয়া উচিত:

from telegram.ext import Updater, CommandHandler
import requests
import re
def getUrl():
#obtain a json object with image details
#extract image url from the json object
contents = requests.get('https://api.thecatapi.com/v1/images/search')
url = contents[0]['url']
return url
def sendImage(bot, update):
url = getUrl()
chat_id = update.message.chat_id
bot.send_photo(chat_id=chat_id, image=url)
def main():
updater = Updater('1190888035:AAGeJ9316R95NqJLFefV5vQA-UL4np11V2c')
#call sendImage() when the user types a command in the telegram chat
updater.dispatcher.add_handler(CommandHandler('meow',sendImage))
#start the bot
updater.start_polling()
updater.idle()
if __name__ == '__main__':
main()

আপনার নিজের টেলিগ্রাম বট

অভিনন্দন! আপনি আপনার নিজের স্ট্রেস-রিলিভিং বট তৈরি করেছেন যা অনুরোধ করা হলে সবচেয়ে সুন্দর ইন্টারনেট বিড়ালের ওপেন সোর্স ছবি পাঠায়। আপনার প্রোগ্রাম চালানোর চেষ্টা করুন এবং টাইপ করুন /মিউ এটি সক্রিয় করার জন্য আপনার বটের আড্ডায়।

যদিও এটি সীমিত কার্যকারিতা সহ একটি সাধারণ বট হতে পারে, এটি দেখায় যে টেলিগ্রামের বট বিকাশের বাস্তুতন্ত্র কতটা শক্তিশালী। আপনি আপনার বটের কার্যকারিতা বাড়ানোর জন্য যে কোন সংখ্যক জটিল সাবরুটিন এবং বৈশিষ্ট্য যোগ করতে পারেন --- আকাশের সীমা। অসাধারণ টেলিগ্রাম বট সম্পর্কে আরো জানতে যা অবদানকারীরা বছরের পর বছর ধরে তৈরি করেছেন, আমাদের দেখুন দরকারী টেলিগ্রাম বটের তালিকা

আপনি গিটহাবের মতো প্ল্যাটফর্মে টেলিগ্রাম বটগুলির জন্য বিভিন্ন ওপেন সোর্স লাইসেন্সপ্রাপ্ত প্রোগ্রামও খুঁজে পেতে পারেন। বেশিরভাগ ওপেন সোর্স লাইসেন্স আপনাকে একটি প্রোগ্রামের সোর্স কোড ব্যবহার, অধ্যয়ন, ডাউনলোড বা সংশোধন করতে দেয়।

আপনার টেলিগ্রাম বট অনলাইনে হোস্ট করুন

এখন যেহেতু আপনি আপনার বটটি চালু এবং চালাচ্ছেন, আপনার পিসিতে main.py বন্ধ করার চেষ্টা করুন এবং আপনার টেলিগ্রাম মেসেঞ্জার অ্যাপে বটটি ব্যবহার করুন। এটি কি এখনও সাড়া দেয় /মিউ কমান্ড? না, তা হয় না।

একজন শিক্ষানবিশ হিসাবে, আপনি যখন আপনার ইন্টারনেটে চলমান একটি বট তৈরি করেছেন তখন আপনার পিসিতে main.py কেন চালু এবং চলতে হবে তা নিয়ে আপনি বিভ্রান্ত হতে পারেন। এর কারণ হল যে প্রোগ্রামটি আপনার পিসিকে স্থানীয় সার্ভার হিসেবে ব্যবহার করে এই প্রোগ্রামে ব্যবহৃত API গুলিতে HTTP অনুরোধ পাঠাতে।

যেমন, আপনি যখনই অ্যাপ্লিকেশনটি ব্যবহার করতে চান তখন প্রোগ্রামটি চালাতে হবে তা সম্ভব নয় বা সুবিধাজনক নয়। এই সমস্যা সমাধানের জন্য, আমাদের আপনার ডিভাইসের উপর বটের নির্ভরতা দূর করতে হবে

এটি করার একটি উপায় হল একটি স্বল্পমূল্যের প্রিন্টেড সার্কিট বোর্ড (PCB), যেমন রাস্পবেরি পাই, আপনার নিজস্ব ওয়েব সার্ভার সেট আপ করা এবং আপনার প্রোগ্রাম চালানোর জন্য ব্যবহার করা। এটি আপনার পিসিতে প্রোগ্রামটি চালানোর মতো একই সুবিধা রয়েছে যা এটি সারাদিন এবং রাত ধরে রাখার খরচ ছাড়াই, যেহেতু পিসিবিগুলির উল্লেখযোগ্যভাবে কম শক্তির পদচিহ্ন থাকে।

বিকল্পভাবে, আপনি ক্লাউডে আপনার প্রোগ্রামটিও স্থাপন করতে পারেন। হেরোকু, এডব্লিউএস, গুগল ক্লাউড বা মাইক্রোসফট অজুরের মতো একটি ওয়েব-অ্যাপ হোস্টিং প্ল্যাটফর্মের দিকে যান এবং আপনার প্রয়োজন অনুসারে একটি সাবস্ক্রিপশন চয়ন করুন। আমরা একটি বিনামূল্যে ট্রায়াল বা সাবস্ক্রিপশন বেছে নেওয়ার এবং আপনার প্রোগ্রামের স্কেল বা সুযোগ বাড়ানোর সাথে সাথে এটি আপগ্রেড করার পরামর্শ দিই।

শেয়ার করুন শেয়ার করুন টুইট ইমেইল কিভাবে হিরোকুতে বিনামূল্যে আপনার পাইথন ওয়েবসাইট হোস্ট করবেন

বিনা খরচে একটি ছোট ওয়েবসাইট হোস্ট করার প্রয়োজন? হেরোকু হতে পারে আপনি যা খুঁজছেন।

পরবর্তী পড়ুন
সম্পর্কিত বিষয়
  • প্রোগ্রামিং
  • পাইথন
  • টেলিগ্রাম
  • চ্যাটবট
  • সোশ্যাল মিডিয়া বটস
লেখক সম্পর্কে যশ চেলানি(10 নিবন্ধ প্রকাশিত)

যশ একজন উচ্চাকাঙ্ক্ষী কম্পিউটার বিজ্ঞানের ছাত্র, যিনি জিনিসগুলি তৈরি করতে এবং প্রযুক্তি বিষয়ক সব বিষয়ে লিখতে ভালোবাসেন। তার অবসর সময়ে, তিনি স্কোয়াশ খেলতে, সর্বশেষ মুরাকামির একটি অনুলিপি পড়তে এবং স্কাইরিমে ড্রাগন শিকার করতে পছন্দ করেন।

Yash Chellani থেকে আরো

আমাদের নিউজলেটার সদস্যতা

প্রযুক্তি টিপস, রিভিউ, ফ্রি ইবুক এবং এক্সক্লুসিভ ডিলের জন্য আমাদের নিউজলেটারে যোগ দিন!

সাবস্ক্রাইব করতে এখানে ক্লিক করুন