আর্থ ইঞ্জিন জাভাস্ক্রিপ্ট এপিআই একটি এনপিএম প্যাকেজ হিসেবে বিতরণ করা হয়, যা গিটহাবে হোস্ট করা আছে । নিম্নলিখিত নির্দেশাবলীতে গুগল আর্থ ইঞ্জিন জাভাস্ক্রিপ্ট এপিআই ইনস্টল করার একটি সংক্ষিপ্ত বিবরণ দেওয়া হয়েছে। আর্থ ইঞ্জিন জাভাস্ক্রিপ্ট এপিআই ব্যবহার করার জন্য আপনাকে আপনার কম্পিউটারে ক্লায়েন্ট লাইব্রেরি এবং এর নির্ভরতাগুলো ইনস্টল করতে হবে এবং তারপরে প্রমাণীকরণের ক্রেডেনশিয়াল সেট আপ করতে হবে ।
জাভাস্ক্রিপ্ট ক্লায়েন্ট লাইব্রেরিতে আর্থ ইঞ্জিন কোড এডিটর- এর সমস্ত কার্যকারিতা অন্তর্ভুক্ত নেই। উল্লেখ্য, বাটন, প্যানেল এবং চার্টের মতো ইউজার ইন্টারফেস ফিচারগুলো বাদ দেওয়া হয়েছে।
ক্লায়েন্ট লাইব্রেরি ইনস্টল করা হচ্ছে
১. Node.js এবং npm সেট আপ করুন
npm হলো জাভাস্ক্রিপ্ট এবং Node.js-এর একটি প্যাকেজ ম্যানেজার। আপনার কাছে Node.js 6+ এবং npm 3+ আছে কিনা তা যাচাই করুন।
node --version npm --version
প্রয়োজন হলে, আপনার প্ল্যাটফর্মের অফিসিয়াল ইনস্টলার ব্যবহার করে উভয়ই ইনস্টল করুন।
২. আর্থ ইঞ্জিন ক্লায়েন্ট লাইব্রেরি ইনস্টল করুন
নিম্নলিখিত কমান্ডের সাহায্যে npm থেকে ক্লায়েন্ট লাইব্রেরিটি ইনস্টল করা যায়:
npm install --save @google/earthengine
একবার ইনস্টল হয়ে গেলে, ক্লায়েন্ট লাইব্রেরিটি বর্তমান প্রজেক্ট ডিরেক্টরির মধ্যে রাখা হয়: node_modules/@google/earthengine/* । ভবিষ্যতের প্রজেক্টগুলোতেও একইভাবে ক্লায়েন্টটি ইনস্টল করুন।
৩. একটি অ্যাপ্লিকেশনে ক্লায়েন্ট লাইব্রেরি ব্যবহার করুন
আপনার অ্যাপ্লিকেশন কোডের মধ্যে আর্থ ইঞ্জিন এপিআই (Earth Engine API) রিকোয়ার করুন:
var ee = require('@google/earthengine');
ক্লায়েন্ট লাইব্রেরি আপডেট করা হচ্ছে
ক্লায়েন্ট লাইব্রেরিটি সর্বশেষ সংস্করণে আপডেট করতে npm ব্যবহার করুন। বর্তমান প্রজেক্ট ডিরেক্টরি থেকে:npm update @google/earthengine
npm ব্যবহার করে লাইব্রেরি আপডেট করার বিষয়ে আরও জানুন।
ক্লায়েন্ট লাইব্রেরি আনইনস্টল করা হচ্ছে
npm প্যাকেজ ম্যানেজার ব্যবহার করে আনইনস্টল করতে, নিম্নলিখিত কমান্ডটি চালান:
npm uninstall --save @google/earthengine
এটি বর্তমান প্রজেক্ট থেকে node_modules/@google/earthengine সরিয়ে দেয়, কিন্তু একই মেশিনের অন্য ডিরেক্টরিতে থাকা কোনো প্রজেক্টকে প্রভাবিত করে না।
একটি ক্লাউড প্রজেক্ট তৈরি করুন এবং আর্থ ইঞ্জিন এপিআই সক্রিয় করুন।
একটি ক্লাউড প্রজেক্ট তৈরি করতে এবং আর্থ ইঞ্জিন এপিআই (Earth Engine API) সক্রিয় করতে এই নির্দেশাবলী অনুসরণ করুন।
প্রমাণীকরণ শংসাপত্র স্থাপন করা
আর্থ ইঞ্জিন এপিআইগুলো ব্রাউজার-ভিত্তিক ক্লায়েন্টদের প্রমাণীকরণের জন্য OAuth 2.0 প্রোটোকল ব্যবহার করে। Node.js-এ সার্ভার-সাইড প্রমাণীকরণের জন্য সার্ভিস অ্যাকাউন্ট ব্যবহারের পরামর্শ দেওয়া হয়। ওয়েব অ্যাপগুলো যেকোনো একটি পদ্ধতি ব্যবহার করতে পারে, যার সুবিধা ও অসুবিধাগুলো নিচে আলোচনা করা হলো।
OAuth ব্যবহার করে ক্লায়েন্ট-সাইড প্রমাণীকরণ
ওয়েব ব্রাউজারে ক্লায়েন্ট-সাইড অথেনটিকেশনের মাধ্যমে, আপনার অ্যাপ্লিকেশনের ব্যবহারকারীরা তাদের নিজস্ব গুগল অ্যাকাউন্ট দিয়ে লগ ইন করেন। এই ব্যবহারকারীদের অবশ্যই আর্থ ইঞ্জিন অ্যাক্সেস করার জন্য আগে থেকেই অনুমোদিত হতে হবে এবং আপনার অ্যাপ্লিকেশন দ্বারা ব্যবহৃত অ্যাসেটগুলো পড়ার অনুমতি থাকতে হবে।
একটি OAuth 2.0 ক্লায়েন্ট আইডি তৈরি করার পর, নিচে দেখানো পদ্ধতি অনুযায়ী প্রমাণীকরণ করুন ( my-project জায়গায় আপনার Google Cloud প্রজেক্ট আইডি বসান):
// Load client library. var ee = require('@google/earthengine'); // Initialize client library and run analysis. var initialize = function() { ee.initialize(null, null, function() { // ... run analysis ... }, function(e) { console.error('Initialization error: ' + e); }, null, 'my-project'); }; // Authenticate using an OAuth pop-up. ee.data.authenticateViaOauth(YOUR_CLIENT_ID, initialize, function(e) { console.error('Authentication error: ' + e); }, null, function() { ee.data.authenticateViaPopup(initialize); });
একটি সার্ভিস অ্যাকাউন্ট ব্যবহার করে সার্ভার-সাইড প্রমাণীকরণ
সার্ভার-সাইড অথেনটিকেশনের ক্ষেত্রে, একটি প্রাইভেট কী আপনার অ্যাপ্লিকেশনের সাথে সংরক্ষিত থাকে, যা অ্যাপ্লিকেশনটিকে একটি সার্ভিস অ্যাকাউন্টের মাধ্যমে আর্থ ইঞ্জিন এপিআই (Earth Engine API) অ্যাক্সেস করার সুযোগ দেয়। আপনার অ্যাপ্লিকেশনের ব্যবহারকারীদের আর্থ ইঞ্জিনে নিজস্ব অ্যাক্সেসের প্রয়োজন হয় না এবং তাদের লগ ইন করারও দরকার পড়ে না।
Node.js-এ শুধুমাত্র সার্ভার-সাইড অথেন্টিকেশন ক্লায়েন্ট লাইব্রেরির মাধ্যমে প্রদান করা হয়।
নতুন সার্ভিস অ্যাকাউন্ট তৈরি করার পর, প্রমাণীকরণের জন্য আপনার JSON প্রাইভেট কী ব্যবহার করুন ( my-project জায়গায় আপনার Google Cloud প্রজেক্ট আইডি বসান):
// Require client library and private key. var ee = require('@google/earthengine'); var privateKey = require('./.private-key.json'); // Initialize client library and run analysis. var runAnalysis = function() { ee.initialize(null, null, function() { // ... run analysis ... }, function(e) { console.error('Initialization error: ' + e); }, null, 'my-project'); }; // Authenticate using a service account. ee.data.authenticateViaPrivateKey(privateKey, runAnalysis, function(e) { console.error('Authentication error: ' + e); });
ইনস্টলেশন পরীক্ষা করা হচ্ছে
প্রমাণীকরণ সঠিকভাবে সেট আপ করা হয়েছে কিনা তা পরীক্ষা করতে, নিম্নলিখিত স্ক্রিপ্টটি চালান ( my-project জায়গায় আপনার Google Cloud প্রজেক্ট আইডি বসান):
var ee = require('@google/earthengine'); // Authenticate using one (but not both) of the methods below. ee.data.authenticateViaOauth(YOUR_CLIENT_ID); ee.data.authenticateViaPrivateKey(YOUR_PRIVATE_KEY); ee.initialize(null, null, null, null, null, 'my-project'); // Run an Earth Engine script. var image = new ee.Image('srtm90_v4'); image.getMap({min: 0, max: 1000}, function(map) { console.log(map); });
সবকিছু সঠিকভাবে ইনস্টল করা থাকলে, একটি ইমেজের মেটাডেটা প্রিন্ট করা উচিত।