GASとGather APIを活用してメタバースのアクティブユーザー数を記録する方法


皆さん、こんにちは。今回は、Google Apps Script(GAS)とGather APIを使って、Gatherスペースにいるアクティブユーザーの人数を記録する方法についてご紹介します。

私が参考にしたのは、こちらの記事です。(https://zenn.dev/ryo_endo/articles/a1cd54399383c0)


しかし、一部うまく機能しなかった部分があったので調整しました。

以下が私が使用したコードです。

function logActiveUser() {
  // APIからスペース情報を取得const url = "https://api.gather.town/api/v2/users/me/owned-spaces";
  PropertiesService.getScriptProperties().setProperty( "secret" , "自分のAPIキー") ;
  const headers = {"apiKey": PropertiesService.getScriptProperties().getProperty("secret")};
  console.log(headers);const response = UrlFetchApp.fetch(url, {"headers": headers});
  const data = JSON.parse(response.getContentText());
  // スペースIDを指定
  const spaceId = 'xxxxx\yyyy' //スペースのID
  // スペースの人数を取得const laprasSpace = data[spaceId]const 
  numActive = laprasSpace['numActive']
  // スプレッドシートに出力
  const sheet = SpreadsheetApp.getActiveSheet();
  sheet.appendRow([new Date(), numActive])}

このコードは、Gather APIからスペース情報を取得し、指定したスペースのアクティブユーザー数を取得します。その後、その情報をGoogleスプレッドシートに出力します。

この方法を使えば、特定の時間帯にスペースにいるアクティブユーザーの人数を把握することができます。これは、イベントのピーク時間を特定したり、特定の活動がエンゲージメントにどのように影響するかを理解したりするのに役立ちます。

これからも、GASとGather APIを使ったさまざまな実験を続けていきます。その結果を共有するのが楽しみです。それでは、次回のブログでお会いしましょう!

この記事が気に入ったらサポートをしてみませんか?