এই পৃষ্ঠার বাকি অংশে বর্ণিত ধাপগুলো সম্পূর্ণ করুন, এবং প্রায় পাঁচ মিনিটের মধ্যেই আপনি একটি সাধারণ রুবি কমান্ড-লাইন অ্যাপ্লিকেশন পেয়ে যাবেন যা ইউটিউব ডেটা এপিআই-তে অনুরোধ পাঠাতে পারবে।
এই নির্দেশিকায় ব্যবহৃত নমুনা কোডটি GoogleDevelopers ইউটিউব চ্যানেলেরchannel রিসোর্সটি পুনরুদ্ধার করে এবং সেই রিসোর্স থেকে কিছু প্রাথমিক তথ্য প্রিন্ট করে।পূর্বশর্ত
এই কুইকস্টার্টটি চালানোর জন্য আপনার প্রয়োজন হবে:
- রুবি ২.০ বা তার চেয়ে উন্নত সংস্করণ।
- ইন্টারনেট ব্যবহারের সুযোগ এবং একটি ওয়েব ব্রাউজার।
- একটি গুগল অ্যাকাউন্ট।
ধাপ ১: ইউটিউব ডেটা এপিআই চালু করুন।
গুগল ডেভেলপারস কনসোলে একটি প্রজেক্ট তৈরি বা নির্বাচন করতে এবং স্বয়ংক্রিয়ভাবে এপিআই চালু করতে এই উইজার্ডটি ব্যবহার করুন। 'Continue'-তে ক্লিক করুন, তারপর 'Go to credentials'-এ যান ।
ক্রেডেনশিয়াল তৈরি করার পৃষ্ঠায়, বাতিল বোতামে ক্লিক করুন।
পৃষ্ঠার শীর্ষে, OAuth সম্মতি স্ক্রিন ট্যাবটি নির্বাচন করুন। একটি ইমেল ঠিকানা নির্বাচন করুন, যদি আগে থেকে সেট করা না থাকে তবে একটি পণ্যের নাম লিখুন এবং সেভ বোতামে ক্লিক করুন।
Credentials ট্যাবটি নির্বাচন করুন, Create credentials বোতামে ক্লিক করুন এবং OAuth ক্লায়েন্ট আইডি নির্বাচন করুন।
অ্যাপ্লিকেশন টাইপ হিসেবে ‘অন্যান্য’ নির্বাচন করুন, ‘YouTube Data API Quickstart’ নামটি লিখুন এবং ‘তৈরি করুন ’ বোতামে ক্লিক করুন।
প্রদর্শিত ডায়ালগ বক্সটি বন্ধ করতে OK-তে ক্লিক করুন।
ক্লায়েন্ট আইডির ডানদিকে থাকা (JSON ডাউনলোড) বোতামটিতে ক্লিক করুন।
ডাউনলোড করা ফাইলটি আপনার ওয়ার্কিং ডিরেক্টরিতে নিয়ে যান এবং এটির নাম পরিবর্তন করে
client_secret.jsonরাখুন।
ধাপ ২: গুগল ক্লায়েন্ট লাইব্রেরি ইনস্টল করুন
লাইব্রেরিটি ইনস্টল করতে নিম্নলিখিত কমান্ডটি চালান:
gem install google-api-client
বিকল্প ইনস্টলেশন পদ্ধতিগুলোর জন্য লাইব্রেরির ইনস্টলেশন পৃষ্ঠাটি দেখুন।
ধাপ ৩: নমুনাটি প্রস্তুত করুন
আপনার ওয়ার্কিং ডিরেক্টরিতে quickstart.rb নামে একটি ফাইল তৈরি করুন এবং নিম্নলিখিত কোডটি কপি করে পেস্ট করুন:
# Sample Ruby code for user authorization require 'rubygems' gem 'google-api-client', '>0.7' require 'google/apis' require 'google/apis/youtube_v3' require 'googleauth' require 'googleauth/stores/file_token_store' require 'fileutils' require 'json' # REPLACE WITH VALID REDIRECT_URI FOR YOUR CLIENT REDIRECT_URI = 'http://localhost' APPLICATION_NAME = 'YouTube Data API Ruby Tests' # REPLACE WITH NAME/LOCATION OF YOUR client_secrets.json FILE CLIENT_SECRETS_PATH = 'client_secret.json' # REPLACE FINAL ARGUMENT WITH FILE WHERE CREDENTIALS WILL BE STORED CREDENTIALS_PATH = File.join(Dir.home, '.credentials', "youtube-quickstart-ruby-credentials.yaml") # SCOPE FOR WHICH THIS SCRIPT REQUESTS AUTHORIZATION SCOPE = Google::Apis::YoutubeV3::AUTH_YOUTUBE_READONLY def authorize FileUtils.mkdir_p(File.dirname(CREDENTIALS_PATH)) client_id = Google::Auth::ClientId.from_file(CLIENT_SECRETS_PATH) token_store = Google::Auth::Stores::FileTokenStore.new(file: CREDENTIALS_PATH) authorizer = Google::Auth::UserAuthorizer.new( client_id, SCOPE, token_store) user_id = 'default' credentials = authorizer.get_credentials(user_id) if credentials.nil? url = authorizer.get_authorization_url(base_url: REDIRECT_URI) puts "Open the following URL in the browser and enter the " + "resulting code after authorization" puts url code = gets credentials = authorizer.get_and_store_credentials_from_code( user_id: user_id, code: code, base_url: REDIRECT_URI) end credentials end # Initialize the API service = Google::Apis::YoutubeV3::YouTubeService.new service.client_options.application_name = APPLICATION_NAME service.authorization = authorize # Sample ruby code for channels.list def channels_list_by_username(service, part, **params) response = service.list_channels(part, params).to_json item = JSON.parse(response).fetch("items")[0] puts ("This channel's ID is #{item.fetch("id")}. " + "Its title is '#{item.fetch("snippet").fetch("title")}', and it has " + "#{item.fetch("statistics").fetch("viewCount")} views.") end channels_list_by_username(service, 'snippet,contentDetails,statistics', for_username: 'GoogleDevelopers')
ধাপ ৪: নমুনাটি চালান
নিম্নলিখিত কমান্ড ব্যবহার করে নমুনাটি চালান:
ruby quickstart.rb
আপনি প্রথমবার নমুনাটি চালালে, এটি আপনাকে অ্যাক্সেসের অনুমতি দিতে বলবে:
এই নমুনাটি আপনার ডিফল্ট ব্রাউজারে একটি নতুন উইন্ডো বা ট্যাব খোলার চেষ্টা করে। যদি এটি ব্যর্থ হয়, তাহলে কনসোল থেকে URL-টি কপি করে আপনার ব্রাউজারে ম্যানুয়ালি খুলুন।
আপনি যদি আগে থেকেই আপনার গুগল অ্যাকাউন্টে লগ ইন করা না থাকেন, তাহলে আপনাকে লগ ইন করতে বলা হবে। আপনি যদি একাধিক গুগল অ্যাকাউন্টে লগ ইন করে থাকেন, তাহলে অনুমোদনের জন্য ব্যবহার করার জন্য আপনাকে একটি অ্যাকাউন্ট বেছে নিতে বলা হবে।
- Accept বাটনটিতে ক্লিক করুন।
আপনাকে দেওয়া কোডটি কপি করে কমান্ড-লাইন প্রম্পটে পেস্ট করুন এবং এন্টার চাপুন। অনুমোদন দেওয়ার পর আপনাকে যে পেজে রিডাইরেক্ট করা হবে, তার URL-এ কোডটি দেখা যেতে পারে:
http://localhost/?code=4/nr_1TspmmQPFyifh7nz...OFo#
নোট
- অনুমোদন সংক্রান্ত তথ্য ফাইল সিস্টেমে সংরক্ষিত থাকে, তাই পরবর্তী কার্য সম্পাদনের সময় অনুমোদনের জন্য কোনো অনুরোধ করা হবে না।
- এই উদাহরণে অনুমোদন প্রক্রিয়াটি একটি কমান্ড-লাইন অ্যাপ্লিকেশনের জন্য ডিজাইন করা হয়েছে। একটি ওয়েব অ্যাপ্লিকেশনে কীভাবে অনুমোদন সম্পাদন করতে হয় সে সম্পর্কে তথ্যের জন্য, “ওয়েব সার্ভার অ্যাপ্লিকেশনের জন্য OAuth 2.0 ব্যবহার” দেখুন।