YouTube Playables SDK রেফারেন্স


ytgame

ইউটিউব প্লেয়েবলস এসডিকে-এর শীর্ষ-স্তরের নেমস্পেস।

এটি বর্তমান উইন্ডোর একটি গ্লোবালি স্কোপড ভেরিয়েবল। আপনি কোনোভাবেই এই ভেরিয়েবলটি ওভাররাইড করতে পারবেন না
নেমস্পেস
ads
বিজ্ঞাপন সম্পর্কিত ফাংশন এবং বৈশিষ্ট্যসমূহ।
engagement
খেলোয়াড়ের সম্পৃক্ততা সম্পর্কিত ফাংশন এবং বৈশিষ্ট্যসমূহ।
game
সাধারণ গেমের আচরণের সাথে সম্পর্কিত ফাংশন এবং বৈশিষ্ট্যসমূহ।
health
গেমের স্বাস্থ্য সম্পর্কিত ফাংশন এবং বৈশিষ্ট্যসমূহ।
system
ইউটিউব সিস্টেম সম্পর্কিত কার্যাবলী ও বৈশিষ্ট্যসমূহ।
গণনা
Sdk Error Type
ইউটিউব প্লেয়েবলস এসডিকে যে ধরনের ত্রুটিগুলো দেখায়।
ক্লাস
Sdk Error
ইউটিউব প্লেয়েবলস এসডিকে দ্বারা প্রক্ষেপিত এরর অবজেক্ট।
ভেরিয়েবল
IN_ PLAYABLES_ ENV
গেমটি প্লেয়েবলস এনভায়রনমেন্টের মধ্যে চলছে কি না।
SDK_ VERSION
ইউটিউব প্লেয়েবলস এসডিকে সংস্করণ।
আরও দেখুন

গণনা


Const SdkErrorType

SdkErrorType
ইউটিউব প্লেয়েবলস এসডিকে যে ধরনের ত্রুটিগুলো দেখায়।
গণনার সদস্য
API_ UNAVAILABLE
এপিআইটি সাময়িকভাবে অনুপলব্ধ ছিল।

খেলোয়াড়রা যদি খেলার গুরুত্বপূর্ণ পর্যায়ে থাকে, তবে তাদের পরে আবার চেষ্টা করতে বলুন।
INVALID_ PARAMS
এপিআইটি অবৈধ প্যারামিটার দিয়ে কল করা হয়েছিল।
SIZE_ LIMIT_ EXCEEDED
নির্ধারিত আকারের সীমা অতিক্রমকারী প্যারামিটার দিয়ে এপিআই-টি কল করা হয়েছিল।
UNKNOWN
ত্রুটির ধরণ অজানা।

ভেরিয়েবল


Const IN_PLAYABLES_ENV

IN_PLAYABLES_ENV : boolean
গেমটি প্লেয়েবলস এনভায়রনমেন্টের মধ্যে চলছে কি না। শুধুমাত্র প্লেয়েবলস-এর ভেতরে উপলব্ধ ফিচারগুলো চালু বা বন্ধ করবেন কি না, তা নির্ধারণ করতে আপনি এটি ব্যবহার করতে পারেন। এসডিকে (SDK) প্রকৃতপক্ষে লোড হয়েছে কি না, তা নিশ্চিত করতে এই চেকটিকে ytgame চেক করার সাথে একত্রিত করুন।
উদাহরণ
const inPlayablesEnv = typeof ytgame !== "undefined" && ytgame.IN_PLAYABLES_ENV;
// An example of where you may want to fork behavior for saving data.
if (ytgame?.IN_PLAYABLES_ENV) {
  ytgame.game.saveData(dataStr);
} else {
  window.localStorage.setItem("SAVE_DATA", dataStr);
}

Const SDK_VERSION

SDK_VERSION : string
ইউটিউব প্লেয়েবলস এসডিকে সংস্করণ।
উদাহরণ
// Prints the SDK version to console. Do not do this in production.
console.log(ytgame.SDK_VERSION);

ytgame.SdkError

এক্সটেন্ডস Error
ইউটিউব প্লেয়েবলস এসডিকে দ্বারা প্রক্ষেপিত এরর অবজেক্ট।

SdkError অবজেক্টটি Error এর একটি চাইল্ড এবং এতে একটি অতিরিক্ত ফিল্ড থাকে।
নির্মাণকারী
constructor
বৈশিষ্ট্য
error Type
ত্রুটির ধরণ।
message
name
stack ?

বৈশিষ্ট্য


ত্রুটির ধরণ

errorType : SdkErrorType
ত্রুটির ধরণ।

ytgame.ads

বিজ্ঞাপন সম্পর্কিত ফাংশন এবং বৈশিষ্ট্যসমূহ।
কার্যাবলী
request Interstitial Ad
একটি মধ্যবর্তী বিজ্ঞাপন দেখানোর অনুরোধ করা হয়েছে।
request Rewarded Ad
একটি নির্দিষ্ট ধরনের পুরস্কারের জন্য পুরস্কারযুক্ত বিজ্ঞাপন দেখানোর অনুরোধ করা হয়েছে।

কার্যাবলী


ইন্টারস্টিশিয়াল বিজ্ঞাপনের অনুরোধ

requestInterstitialAd ( ) : Promise < void >
একটি মধ্যবর্তী বিজ্ঞাপন দেখানোর অনুরোধ করা হয়েছে।

বিজ্ঞাপনটি দেখানো হয়েছে কিনা, সে বিষয়ে কোনো নিশ্চয়তা দেওয়া হয় না। বিজ্ঞাপন দেখার জন্য খেলোয়াড়দের পুরস্কৃত করতে এই API ব্যবহার করবেন না।
উদাহরণ
try {
  await ytgame.ads.requestInterstitialAd();
  // Ad request successful, do something else.
} catch (error) {
  // Handle errors, retry logic, etc.
  // Note that error may be undefined.
}
ফেরত
Promise < void > একটি প্রমিস যা সফল অনুরোধে রিজলভ হয় অথবা অসফল অনুরোধে রিজেক্ট বা এরর দেয়।

পুরস্কারপ্রাপ্ত বিজ্ঞাপনের অনুরোধ

requestRewardedAd ( rewardId : string ) : Promise < boolean >
একটি নির্দিষ্ট ধরনের পুরস্কারের জন্য পুরস্কারযুক্ত বিজ্ঞাপন দেখানোর অনুরোধ করা হয়েছে।

বিজ্ঞাপনটি দেখানো হয়েছে কিনা, সে বিষয়ে কোনো নিশ্চয়তা দেওয়া হচ্ছে না।
উদাহরণ
try {
  const isRewardEarned = await ytgame.ads.requestRewardedAd("reward-123");
  // Handle reward being earned or not.
} catch (error) {
  // Handle errors, retry logic, etc.
  // Note that error may be undefined.
}
প্যারামিটার
rewardId : string আবশ্যক। একটি শনাক্তকারী যা দাবিযোগ্য পুরস্কারের ধরণকে অনন্যভাবে চিহ্নিত করে। আপনাকে অবশ্যই প্রতিটি পুরস্কারের ধরনের জন্য একটি অনন্য আইডি ব্যবহার করতে হবে, এবং যতবার সেই নির্দিষ্ট ধরনের পুরস্কার দেওয়া হবে, ততবার একই আইডি পুনরায় ব্যবহার করতে হবে। উদাহরণস্বরূপ, আপনি আইডিটিকে পাঠযোগ্য বা একটি UUID করতে পারেন। আপনি নির্দিষ্ট পুরস্কারের জন্য এটিকে আপনার গেম কোডে একটি হার্ড-কোডেড আইডি হিসাবে অন্তর্ভুক্ত করতে পারেন। আমাদের একমাত্র শর্ত হলো আপনি একটি আইডি প্রদান করবেন এবং তাতে কোনো ব্যবহারকারীর ডেটা থাকবে না। উদাহরণস্বরূপ:
  • 100-coins-reward-12 - "100 কয়েন"
  • 7defcfa2-4312-4893-a13a-a84e0c47a4df - "3 lives"
  • 121b001a-0c25-4289-88f6-58e3620d938f - "স্তরটি এড়িয়ে যান"
ফেরত
Promise < boolean > একটি প্রমিস যা সফল অনুরোধের ক্ষেত্রে রিজলভ হয়। যদি ব্যবহারকারী পুরস্কার পাওয়ার শর্ত পূরণ করে, তবে এর মান 'true' হয়, আর যদি না করে, তবে এর মান 'false' হয়। অনুরোধ অসফল হলে প্রমিসটি রিজেক্ট বা এরর থ্রো করে।

ytgame.engagement

খেলোয়াড়ের সম্পৃক্ততা সম্পর্কিত ফাংশন এবং বৈশিষ্ট্যসমূহ।
গণনা
Content Type
বিষয়বস্তুর সম্ভাব্য প্রকারভেদ।
ইন্টারফেস
Content
গেমটি যে কন্টেন্ট অবজেক্টটি ইউটিউবে পাঠায়।
Score
গেমটি যে স্কোর অবজেক্টটি ইউটিউবে পাঠায়।
কার্যাবলী
open YTContent
প্রদত্ত কন্টেন্ট আইডি অনুযায়ী কন্টেন্ট খোলার জন্য ইউটিউবকে অনুরোধ করা হয়।
send Score
ইউটিউবে একটি স্কোর পাঠায়।

গণনা


Const ContentType

ContentType
বিষয়বস্তুর সম্ভাব্য প্রকারভেদ।
গণনার সদস্য
PLAYABLE
ইউটিউবে চালানো যায়।
VIDEO
একটি ইউটিউব ভিডিও।

কার্যাবলী


ওপেনওয়াইটি কন্টেন্ট

openYTContent ( content : Content ) : Promise < void >
প্রদত্ত কন্টেন্ট আইডি অনুযায়ী কন্টেন্ট খোলার জন্য ইউটিউবকে অনুরোধ করা হয়।

সাধারণত, এটি ওয়েবে কন্টেন্টটি একটি নতুন ট্যাবে খুলবে। মোবাইলে, ভিডিওটি মিনি প্লেয়ারে খুলবে এবং বর্তমানে খোলা প্লেয়েবলটির জায়গায় আরেকটি প্লেয়েবল আসবে।
উদাহরণ
// Open a video.
async function showVideo(videoID: string) {
  try {
    await ytgame.engagement.openYTContent({
      id: videoID,
      contentType: ytgame.engagement.ContentType.VIDEO,
    });
    // Request successful, content may have opened.
  } catch (error) {
    // Handle errors, retry logic, etc.
    // Note that error may be undefined.
  }
}

// Open a Playable.
async function openDifferentPlayable(playableID: string) {
  try {
    await ytgame.engagement.openYTContent({
      id: playableID,
      contentType: ytgame.engagement.ContentType.PLAYABLE,
    });
    // Request successful, content may have opened.
    // On mobile, the new Playable will replace the current one.
  } catch (error) {
    // Handle errors, retry logic, etc.
    // Note that error may be undefined.
  }
}
প্যারামিটার
content : Content ইউটিউবে খোলার জন্য কন্টেন্টটি।
ফেরত
Promise < void > একটি প্রমিস যা সফল হলে রিজলভ হয় এবং ব্যর্থ হলে ytgame.SdkError সহ রিজেক্ট বা থ্রো করে।

sendScore

sendScore ( score : Score ) : Promise < void >
ইউটিউবে একটি স্কোর পাঠায়।

স্কোরটি গেমের অগ্রগতির একটি দিককে তুলে ধরবে। যদি একাধিক দিক থাকে, তবে সামঞ্জস্য রক্ষার জন্য ডেভেলপারকে অবশ্যই একটি দিক বেছে নিতে হবে। স্কোরগুলো সাজানো হবে এবং সর্বোচ্চ স্কোরটি ইউটিউব UI-তে দেখানো হবে, তাই গেমের ভেতরের যেকোনো হাই স্কোর UI-কে অবশ্যই এই API-এর মাধ্যমে পাঠানো তথ্যের সাথে সামঞ্জস্যপূর্ণ হতে হবে।
উদাহরণ
async function onScoreAwarded(score: number) {
  try {
    await ytgame.engagement.sendScore({ value: score });
    // Score sent successfully, do something else.
  } catch (error) {
    // Handle errors, retry logic, etc.
    // Note that error may be undefined.
  }
}
প্যারামিটার
score : Score ইউটিউবে পাঠানোর জন্য স্কোরটি।
ফেরত
Promise < void > একটি প্রমিস যা সফল হলে রিজলভ হয় এবং ব্যর্থ হলে ytgame.SdkError সহ রিজেক্ট বা থ্রো করে।

ytgame.engagement.Content

গেমটি যে কন্টেন্ট অবজেক্টটি ইউটিউবে পাঠায়।
বৈশিষ্ট্য
content Type ?
খোলার জন্য বিষয়বস্তুর ধরন।
id
যে কন্টেন্টটি আমরা খুলতে চাই তার আইডি।

বৈশিষ্ট্য


Optional কন্টেন্ট টাইপ

contentType ?: ContentType
খোলার জন্য কন্টেন্টের ধরন উল্লেখ করতে হবে, কিন্তু তা উল্লেখ না করা হলে VIDEO খোলা হবে বলে ধরে নেওয়া হবে।

আইডি

id : string
যে কন্টেন্টটি আমরা খুলতে চাই তার আইডি।

ytgame.engagement.Score

গেমটি যে স্কোর অবজেক্টটি ইউটিউবে পাঠায়।
বৈশিষ্ট্য
value
স্কোরের মান একটি পূর্ণসংখ্যা হিসাবে প্রকাশ করা হয়।

বৈশিষ্ট্য


মূল্য

value : number
স্কোরের মান একটি পূর্ণসংখ্যা হিসাবে প্রকাশ করা হয়। স্কোরটি অবশ্যই সর্বোচ্চ নিরাপদ পূর্ণসংখ্যার চেয়ে কম বা সমান হতে হবে। অন্যথায়, স্কোরটি বাতিল করা হবে।

ytgame.game

সাধারণ গেমের আচরণের সাথে সম্পর্কিত ফাংশন এবং বৈশিষ্ট্যসমূহ।
কার্যাবলী
first Frame Ready
গেমটি ফ্রেম দেখানো শুরু করেছে বলে ইউটিউবকে অবহিত করে।
game Ready
গেমটি খেলোয়াড়দের অংশগ্রহণের জন্য প্রস্তুত বলে ইউটিউবকে অবহিত করে।
load Data
ইউটিউব থেকে গেমের ডেটা একটি সিরিয়ালাইজড স্ট্রিং আকারে লোড করে।
save Data
গেমের ডেটা একটি সিরিয়ালাইজড স্ট্রিং আকারে ইউটিউবে সংরক্ষণ করে।

কার্যাবলী


প্রথমফ্রেমপ্রস্তুত

firstFrameReady ( ) : void
গেমটি ফ্রেম দেখানো শুরু করেছে বলে ইউটিউবকে অবহিত করে।

গেমটিকে অবশ্যই এই API-টি কল করতে হবে। অন্যথায়, গেমটি ব্যবহারকারীদের দেখানো হবে না। gameReady() () এর আগে অবশ্যই firstFrameReady() () কল করতে হবে।
উদাহরণ
function onGameInitialized() {
  ytgame.game.firstFrameReady();
}

গেমরেডি

gameReady ( ) : void
গেমটি খেলোয়াড়দের অংশগ্রহণের জন্য প্রস্তুত বলে ইউটিউবকে অবহিত করে।

যখন গেমটি ইন্টারঅ্যাক্ট করার যোগ্য থাকবে, তখন এটিকে অবশ্যই এই API-টি কল করতে হবে। লোডিং স্ক্রিন দেখানো অবস্থায় গেমটি কোনোভাবেই এই API-টি কল করবে না । অন্যথায়, গেমটি ইউটিউব সার্টিফিকেশন প্রক্রিয়ায় ব্যর্থ হবে।
উদাহরণ
function onGameInteractable() {
  ytgame.game.gameReady();
}

লোডডেটা

loadData ( ) : Promise < string >
ইউটিউব থেকে গেমের ডেটা একটি সিরিয়ালাইজড স্ট্রিং আকারে লোড করে।

গেমটিকে অবশ্যই স্ট্রিং এবং একটি অভ্যন্তরীণ ফরম্যাটের মধ্যেকার যেকোনো পার্সিং পরিচালনা করতে হবে।
উদাহরণ
async function gameSetup() {
  try {
    const data = await ytgame.game.loadData();
    // Load succeeded, do something with data.
  } catch (error) {
    // Handle errors, retry logic, etc.
    // Note that error may be undefined.
  }
}
ফেরত
Promise < string > একটি প্রমিস যা লোডিং সফল হলে সম্পন্ন হয় এবং ব্যর্থ হলে ytgame.SdkError দিয়ে প্রত্যাখ্যাত হয়।

ডেটা সংরক্ষণ করুন

saveData ( data : string ) : Promise < void >
গেমের ডেটা একটি সিরিয়ালাইজড স্ট্রিং আকারে ইউটিউবে সংরক্ষণ করে।

স্ট্রিংটি অবশ্যই একটি বৈধ, সুগঠিত UTF-16 স্ট্রিং হতে হবে এবং এর সর্বোচ্চ আকার হবে ৩ MiB। স্ট্রিং এবং একটি অভ্যন্তরীণ ফরম্যাটের মধ্যে যেকোনো পার্সিং গেমটিকেই পরিচালনা করতে হবে । প্রয়োজনে, স্ট্রিংটি সুগঠিত কিনা তা পরীক্ষা করার জন্য String.isWellFormed() ব্যবহার করুন।
উদাহরণ
async function saveGame() {
  try {
    ytgame.game.saveData(JSON.stringify(gameSave));
    // Save succeeded.
  } catch (error) {
    // Handle errors, retry logic, etc.
    // Note that error may be undefined.
  }
}
প্যারামিটার
data : string
ফেরত
Promise < void > একটি প্রমিস যা সেভ সফল হলে রিজলভ হয় এবং ব্যর্থ হলে ytgame.SdkError দিয়ে রিজেক্ট হয়।

ytgame.health

গেমের স্বাস্থ্য সম্পর্কিত ফাংশন এবং বৈশিষ্ট্যসমূহ।
কার্যাবলী
log Error
ইউটিউবে একটি ত্রুটি নথিভুক্ত করে।
log Warning
ইউটিউবে একটি সতর্কবার্তা পাঠায়।

কার্যাবলী


লগত্রুটি

logError ( ) : void
ইউটিউবে একটি ত্রুটি নথিভুক্ত করে।

দ্রষ্টব্য: এই এপিআইটি বেস্ট-এফোর্ট এবং রেট-লিমিটেড, যার ফলে ডেটা হারানোর সম্ভাবনা রয়েছে।
উদাহরণ
function onError() {
  ytgame.health.logError();
}

লগওয়ার্নিং

logWarning ( ) : void
ইউটিউবে একটি সতর্কবার্তা পাঠায়।

দ্রষ্টব্য: এই এপিআইটি বেস্ট-এফোর্ট এবং রেট-লিমিটেড, যার ফলে ডেটা হারানোর সম্ভাবনা রয়েছে।
উদাহরণ
function onWarning() {
  ytgame.health.logWarning();
}

ytgame.system

ইউটিউব সিস্টেম সম্পর্কিত কার্যাবলী ও বৈশিষ্ট্যসমূহ।
কার্যাবলী
get Language
ব্যবহারকারীর ইউটিউব সেটিংসে সেট করা ভাষাটিকে একটি BCP-47 ল্যাঙ্গুয়েজ ট্যাগ আকারে ফেরত দেয়।
is Audio Enabled
ইউটিউব সেটিংসে গেমের অডিও চালু আছে কিনা তা জানায়।
on Audio Enabled Change
ইউটিউব থেকে অডিও সেটিংস পরিবর্তনের ইভেন্টটি ফায়ার হলে চালু হওয়ার জন্য একটি কলব্যাক সেট করে।
on Pause
ইউটিউব থেকে গেম পজ ইভেন্ট ফায়ার হলে যে কলব্যাকটি ট্রিগার হবে, তা সেট করে।
on Resume
ইউটিউব থেকে 'রিজিউম গেম' ইভেন্ট ফায়ার হলে যে কলব্যাকটি ট্রিগার হবে, তা সেট করে।

কার্যাবলী


ভাষা জানুন

getLanguage ( ) : Promise < string >
ব্যবহারকারীর ইউটিউব সেটিংসে সেট করা ভাষাটিকে একটি BCP-47 ল্যাঙ্গুয়েজ ট্যাগ আকারে ফেরত দেয়।

ব্যবহারকারীর ভাষা বা লোকেল নির্ধারণ করতে, অথবা ক্লাউড সেভে তাদের ভাষার পছন্দ সংরক্ষণ করতে অন্য কোনো ফাংশন ব্যবহার করবেন না। এর পরিবর্তে, ইউটিউব জুড়ে ব্যবহারকারীর অভিজ্ঞতা যেন সামঞ্জস্যপূর্ণ থাকে, তা নিশ্চিত করতে এই ফাংশনটি ব্যবহার করুন।
উদাহরণ
const localeTag = await ytgame.system.getLanguage();
// `localeTag` is now set to something like "en-US" or "es-419".
ফেরত
Promise < string > একটি Promise যা ভাষা পেতে সফল হলে Complete হয় এবং ব্যর্থ হলে ytgame.SdkError দিয়ে Regect হয়।

অডিও সক্ষম করা হয়েছে

isAudioEnabled ( ) : boolean
ইউটিউব সেটিংসে গেমের অডিও চালু আছে কিনা তা জানায়।

গেমের অডিও অবস্থা শুরু করার জন্য এটি ব্যবহার করা উচিত
উদাহরণ
function initGameSound() {
  if (ytgame.system.isAudioEnabled()) {
    // Enable game audio.
  } else {
    // Disable game audio.
  }
}
ফেরত
boolean অডিও চালু আছে কিনা তা নির্দেশকারী একটি বুলিয়ান।

অডিও সক্ষম পরিবর্তন

onAudioEnabledChange ( callback : ( ( isAudioEnabled : boolean ) => void ) ) : ( ( ) => void )
ইউটিউব থেকে অডিও সেটিংস পরিবর্তনের ইভেন্টটি ফায়ার হলে চালু হওয়ার জন্য একটি কলব্যাক সেট করে।

গেমের অডিও অবস্থা আপডেট করার জন্য গেমটিকে অবশ্যই এই API ব্যবহার করতে হবে।
উদাহরণ
ytgame.system.onAudioEnabledChange((isAudioEnabled) => {
  if (isAudioEnabled) {
    // Enable game audio.
  } else {
    // Disable game audio.
  }
});
প্যারামিটার
callback : ( ( isAudioEnabled : boolean ) => void ) যে কলব্যাক ফাংশনটি ট্রিগার করা হবে।
ফেরত
( ( ) => void ) সাধারণত অব্যবহৃত কলব্যাকটি আনসেট করার একটি ফাংশন।

বিরতিতে

onPause ( callback : ( ( ) => void ) ) : ( ( ) => void )
ইউটিউব থেকে গেম পজ করার ইভেন্ট ফায়ার হলে যে কলব্যাকটি ট্রিগার হবে, তা সেট করে। গেমটি থেকে বের করে দেওয়ার আগে যেকোনো স্টেট সেভ করার জন্য খুব অল্প সময় পাওয়া যায়।

ব্যবহারকারী যখন গেম থেকে বেরিয়ে যান, তখন সহ সব ধরনের বিরতির জন্য onPause কল করা হয়। গেমটি আবার চালু হবে এমন কোনো নিশ্চয়তা নেই।
উদাহরণ
ytgame.system.onPause(() => {
  pauseGame();
});

function pauseGame() {
  // Logic to pause game state.
}
প্যারামিটার
callback : ( ( ) => void ) যে কলব্যাক ফাংশনটি ট্রিগার করা হবে।
ফেরত
( ( ) => void ) সাধারণত অব্যবহৃত কলব্যাকটি আনসেট করার একটি ফাংশন।

রিজুমে

onResume ( callback : ( ( ) => void ) ) : ( ( ) => void )
ইউটিউব থেকে 'রিজিউম গেম' ইভেন্ট ফায়ার হলে যে কলব্যাকটি ট্রিগার হবে, তা সেট করে।

পজ করার পর গেমটি আবার চালু হবে কিনা, তার কোনো নিশ্চয়তা নেই।
উদাহরণ
ytgame.system.onResume(() => {
  resumeGame();
});

function resumeGame() {
  // Logic to resume game state.
}
প্যারামিটার
callback : ( ( ) => void ) যে কলব্যাক ফাংশনটি ট্রিগার করা হবে।
ফেরত
( ( ) => void ) সাধারণত অব্যবহৃত কলব্যাকটি আনসেট করার একটি ফাংশন।