شروع سریع Node.js

Quickstarts نحوه راه‌اندازی و اجرای برنامه‌ای را توضیح می‌دهد که Google Workspace API را فراخوانی می‌کند.

راه‌اندازی‌های سریع Google Workspace از کتابخانه‌های سرویس گیرنده API برای رسیدگی به برخی از جزئیات جریان احراز هویت و مجوز استفاده می‌کنند. توصیه می کنیم از کتابخانه های سرویس گیرنده برای برنامه های خود استفاده کنید. این شروع سریع از یک رویکرد احراز هویت ساده استفاده می کند که برای یک محیط آزمایشی مناسب است. برای یک محیط تولید، توصیه می‌کنیم قبل از انتخاب اعتبارنامه‌های دسترسی مناسب برای برنامه‌تان، درباره احراز هویت و مجوز یاد بگیرید.

یک برنامه خط فرمان Node.js ایجاد کنید که به API Google Meet درخواست می دهد.

اهداف

  • محیط خود را تنظیم کنید.
  • کتابخانه مشتری را نصب کنید.
  • نمونه را تنظیم کنید
  • نمونه را اجرا کنید.

پیش نیازها

برای اجرای این شروع سریع، به پیش نیازهای زیر نیاز دارید:

  • یک حساب Google Workspace با فعال شدن Google Meet.

محیط خود را تنظیم کنید

برای تکمیل این شروع سریع، محیط خود را تنظیم کنید.

API را فعال کنید

قبل از استفاده از Google API، باید آنها را در پروژه Google Cloud روشن کنید. می‌توانید یک یا چند API را در یک پروژه Google Cloud روشن کنید.

اگر از یک پروژه Google Cloud جدید برای تکمیل این شروع سریع استفاده می‌کنید، صفحه رضایت OAuth را پیکربندی کنید. اگر قبلاً این مرحله را برای پروژه Cloud خود انجام داده اید، به بخش بعدی بروید.

  1. در کنسول Google Cloud، به منو > بروید > برندسازی

    به برندینگ بروید

  2. اگر قبلاً آن را پیکربندی کرده اید ، می توانید تنظیمات صفحه رضایت OAuth زیر را در نام تجاری ، مخاطب و دسترسی به داده پیکربندی کنید. اگر پیامی دیدید که می گوید هنوز پیکربندی نشده است ، روی شروع کلیک کنید:
    1. در قسمت اطلاعات برنامه ، در نام برنامه ، نامی برای برنامه وارد کنید.
    2. در ایمیل پشتیبانی کاربر ، آدرس ایمیل پشتیبانی را انتخاب کنید که در صورت داشتن رضایت، کاربران بتوانند با شما تماس بگیرند.
    3. روی Next کلیک کنید.
    4. در قسمت Audience ، Internal را انتخاب کنید.
    5. روی Next کلیک کنید.
    6. در قسمت اطلاعات تماس ، آدرس ایمیلی را وارد کنید که در آن می‌توانید از هرگونه تغییر در پروژه خود مطلع شوید.
    7. روی Next کلیک کنید.
    8. در قسمت پایان ، خط‌مشی داده‌های کاربر سرویس‌های API Google را مرور کنید و در صورت موافقت، من با خدمات Google API موافقم: خط‌مشی داده‌های کاربر را انتخاب کنید.
    9. روی Continue کلیک کنید.
    10. روی ایجاد کلیک کنید.
  3. در حال حاضر، می توانید از افزودن دامنه ها صرف نظر کنید. در آینده، وقتی برنامه‌ای را برای استفاده خارج از سازمان Google Workspace خود ایجاد می‌کنید، باید نوع کاربر را به خارجی تغییر دهید. سپس محدوده های مجوز مورد نیاز برنامه خود را اضافه کنید. برای کسب اطلاعات بیشتر، راهنمای کامل Configure OAuth رضایت را ببینید.

اعتبارنامه ها را برای یک برنامه دسکتاپ تأیید کنید

برای احراز هویت کاربران نهایی و دسترسی به داده های کاربر در برنامه خود، باید یک یا چند شناسه مشتری OAuth 2.0 ایجاد کنید. شناسه مشتری برای شناسایی یک برنامه واحد در سرورهای OAuth Google استفاده می شود. اگر برنامه شما روی چندین پلتفرم اجرا می شود، باید برای هر پلتفرم یک شناسه مشتری جداگانه ایجاد کنید.
  1. در کنسول Google Cloud، به منو > بروید > مشتریان

    به مشتریان بروید

  2. روی Create Client کلیک کنید.
  3. روی نوع برنامه > برنامه دسکتاپ کلیک کنید.
  4. در قسمت نام ، نامی را برای اعتبارنامه تایپ کنید. این نام فقط در کنسول Google Cloud نشان داده می شود.
  5. روی ایجاد کلیک کنید.

    اعتبار جدید ایجاد شده در زیر "OAuth 2.0 Client IDs" ظاهر می شود.

  6. فایل JSON دانلود شده را به عنوان credentials.json ذخیره کنید و فایل را به دایرکتوری کاری خود منتقل کنید.

کتابخانه مشتری را نصب کنید

  • کتابخانه ها را با استفاده از npm نصب کنید:

    npm install @google-apps/meet @google-cloud/local-auth@2.1.0 --save
    

نمونه را تنظیم کنید

  1. در پوشه کاری خود، یک فایل با نام index.js ایجاد کنید.

  2. در فایل، کد زیر را قرار دهید:

    meet/quickstart/index.js
    const fs = require('fs').promises;
    const path = require('path');
    const process = require('process');
    const {authenticate} = require('@google-cloud/local-auth');
    const {SpacesServiceClient} = require('@google-apps/meet').v2;
    const { auth } = require('google-auth-library');
    
    // If modifying these scopes, delete token.json.
    const SCOPES = ['https://www.googleapis.com/auth/meetings.space.created'];
    
    // The file token.json stores the user's access and refresh tokens, and is
    // created automatically when the authorization flow completes for the first
    // time.
    const TOKEN_PATH = path.join(process.cwd(), 'token.json');
    const CREDENTIALS_PATH = path.join(process.cwd(), 'credentials.json');
    
    /**
     * Reads previously authorized credentials from the save file.
     *
     * @return {Promise<OAuth2Client|null>}
     */
    async function loadSavedCredentialsIfExist() {
      try {
        const content = await fs.readFile(TOKEN_PATH);
        const credentials = JSON.parse(content);
        return auth.fromJSON(credentials);
      } catch (err) {
        console.log(err);
        return null;
      }
    }
    
    /**
     * Serializes credentials to a file compatible with GoogleAuth.fromJSON.
     *
     * @param {OAuth2Client} client
     * @return {Promise<void>}
     */
    async function saveCredentials(client) {
      const content = await fs.readFile(CREDENTIALS_PATH);
      const keys = JSON.parse(content);
      const key = keys.installed || keys.web;
      const payload = JSON.stringify({
        type: 'authorized_user',
        client_id: key.client_id,
        client_secret: key.client_secret,
        refresh_token: client.credentials.refresh_token,
      });
      await fs.writeFile(TOKEN_PATH, payload);
    }
    
    /**
     * Load or request or authorization to call APIs.
     *
     */
    async function authorize() {
      let client = await loadSavedCredentialsIfExist();
      if (client) {
        return client;
      }
      client = await authenticate({
        scopes: SCOPES,
        keyfilePath: CREDENTIALS_PATH,
      });
      if (client.credentials) {
        await saveCredentials(client);
      }
      return client;
    }
    
    /**
     * Creates a new meeting space.
     * @param {OAuth2Client} authClient An authorized OAuth2 client.
     */
    async function createSpace(authClient) {
      const meetClient = new SpacesServiceClient({
        authClient: authClient
      });
      // Construct request
      const request = {
      };
    
      // Run request
      const response = await meetClient.createSpace(request);
      console.log(`Meet URL: ${response[0].meetingUri}`);
    }
    
    authorize().then(createSpace).catch(console.error);

نمونه را اجرا کنید

  1. در پوشه کاری خود، نمونه را اجرا کنید:

    node .
    
  1. اولین باری که نمونه را اجرا می‌کنید، از شما می‌خواهد دسترسی را مجاز کنید:
    1. اگر قبلاً وارد حساب Google خود نشده اید، هنگامی که از شما خواسته شد وارد شوید. اگر به چندین حساب وارد شده اید، یک حساب را برای استفاده از مجوز انتخاب کنید.
    2. روی Accept کلیک کنید.

    برنامه Nodejs شما اجرا می شود و با Google Meet API تماس می گیرد.

    اطلاعات مجوز در سیستم فایل ذخیره می شود، بنابراین دفعه بعد که کد نمونه را اجرا می کنید، از شما درخواست مجوز نمی شود.

مراحل بعدی