Google Apps Komut Dosyası hızlı başlangıç kılavuzu

Hızlı başlangıç kılavuzlarında Google Workspace API çağıran bir uygulamanın nasıl kurulacağı ve çalıştırılacağı açıklanmaktadır.

Google Workspace hızlı başlangıç kılavuzları, kimlik doğrulama ve yetkilendirme akışının bazı ayrıntılarını işlemek için API istemci kitaplıklarını kullanır. İstemci kitaplıklarını kendi uygulamalarınız için kullanmanızı öneririz. Bu hızlı başlangıç kılavuzu, test ortamı için uygun olan basitleştirilmiş bir kimlik doğrulama yaklaşımı kullanır. Üretim ortamı söz konusuysa uygulamanız için uygun olan erişim kimlik bilgilerini seçmeden önce kimlik doğrulama ve yetkilendirme hakkında bilgi edinmenizi öneririz.

Google Drive Activity API'ye istek gönderen bir Google Apps Komut Dosyası oluşturun.

Hedefler

  • Komut dosyasını oluşturun.
  • Google Drive Activity API'sini etkinleştirin.
  • Örneği çalıştırın.

Ön koşullar

  • Google Hesabı
  • Google Drive'a erişim

Komut dosyasını oluşturun

  1. script.google.com/create adresine giderek yeni bir komut dosyası oluşturun.
  2. Komut dosyası düzenleyicinin içeriğini aşağıdaki kodla değiştirin:

drive/activity-v2/quickstart.gs
/**
 * Lists 10 activity for a Drive user.
 * @see https://developers.google.com/drive/activity/v2/reference/rest/v2/activity/query
 */
function listDriveActivity() {
  const request = {
    pageSize: 10
    // Use other parameter here if needed.
  };
  try {
    // Activity.query method is used Query past activity in Google Drive.
    const response = DriveActivity.Activity.query(request);
    const activities = response.activities;
    if (!activities || activities.length === 0) {
      console.log('No activity.');
      return;
    }
    console.log('Recent activity:');
    for (const activity of activities) {
      // get time information of activity.
      const time = getTimeInfo(activity);
      // get the action details/information
      const action = getActionInfo(activity.primaryActionDetail);
      // get the actor's details of activity
      const actors = activity.actors.map(getActorInfo);
      // get target information of activity.
      const targets = activity.targets.map(getTargetInfo);
      // print the time,actor,action and targets of drive activity.
      console.log('%s: %s, %s, %s', time, actors, action, targets);
    }
  } catch (err) {
    // TODO (developer) - Handle error from drive activity API
    console.log('Failed with an error %s', err.message);
  }
}

/**
 * @param {object} object
 * @return {string}  Returns the name of a set property in an object, or else "unknown".
 */
function getOneOf(object) {
  for (const key in object) {
    return key;
  }
  return 'unknown';
}

/**
 * @param {object} activity Activity object.
 * @return {string} Returns a time associated with an activity.
 */
function getTimeInfo(activity) {
  if ('timestamp' in activity) {
    return activity.timestamp;
  }
  if ('timeRange' in activity) {
    return activity.timeRange.endTime;
  }
  return 'unknown';
}

/**
 * @param {object} actionDetail The primary action details of the activity.
 * @return {string} Returns the type of action.
 */
function getActionInfo(actionDetail) {
  return getOneOf(actionDetail);
}

/**
 * @param {object} user The User object.
 * @return {string}  Returns user information, or the type of user if not a known user.
 */
function getUserInfo(user) {
  if ('knownUser' in user) {
    const knownUser = user.knownUser;
    const isMe = knownUser.isCurrentUser || false;
    return isMe ? 'people/me' : knownUser.personName;
  }
  return getOneOf(user);
}

/**
 * @param {object} actor The Actor object.
 * @return {string} Returns actor information, or the type of actor if not a user.
 */
function getActorInfo(actor) {
  if ('user' in actor) {
    return getUserInfo(actor.user);
  }
  return getOneOf(actor);
}

/**
 * @param {object} target The Target object.
 * @return {string} Returns the type of a target and an associated title.
 */
function getTargetInfo(target) {
  if ('driveItem' in target) {
    const title = target.driveItem.title || 'unknown';
    return 'driveItem:"' + title + '"';
  }
  if ('drive' in target) {
    const title = target.drive.title || 'unknown';
    return 'drive:"' + title + '"';
  }
  if ('fileComment' in target) {
    const parent = target.fileComment.parent || {};
    const title = parent.title || 'unknown';
    return 'fileComment:"' + title + '"';
  }
  return getOneOf(target) + ':unknown';
}

  1. Kaydet'i tıklayın.
  2. Adsız proje'yi tıklayın, Hızlı Başlangıç yazın ve Yeniden adlandır'ı tıklayın.

Google Drive Activity API'sini etkinleştirme

  1. Apps Komut Dosyası projesini açın.
  2. Düzenleyici'yi tıklayın.
  3. Hizmetler'in yanında, Hizmet ekle'yi tıklayın .
  4. Drive Activity API'yi seçin ve Ekle'yi tıklayın.

Örneği çalıştır

Apps Komut Dosyası düzenleyicisinde Çalıştır'ı tıklayın.

Örneği ilk kez çalıştırdığınızda erişimi yetkilendirmeniz istenir:

  1. İzinleri incele'yi tıklayın.
  2. Bir hesap seçin.
  3. İzin ver'i tıklayın.

Komut dosyasının yürütme günlüğü, pencerenin alt kısmında görünür.

Sonraki adımlar