شروع سریع پایتون

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

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

یک برنامه خط فرمان پایتون ایجاد کنید که درخواست هایی را به Google Chat API ارسال می کند.

اهداف

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

پیش نیازها

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

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

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

API را فعال کنید

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

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

  1. در کنسول Google Cloud، به منو > APIs & Services > صفحه رضایت OAuth بروید.

    به صفحه رضایت OAuth بروید

  2. برای نوع User Internal را انتخاب کنید، سپس روی Create کلیک کنید.
  3. فرم ثبت نام برنامه را تکمیل کنید، سپس روی ذخیره و ادامه کلیک کنید.
  4. در حال حاضر، می‌توانید از افزودن دامنه‌ها صرفنظر کنید و روی ذخیره و ادامه کلیک کنید. در آینده، وقتی برنامه‌ای را برای استفاده خارج از سازمان Google Workspace خود ایجاد می‌کنید، باید نوع کاربر را به خارجی تغییر دهید و سپس محدوده‌های مجوز مورد نیاز برنامه خود را اضافه کنید.

  5. خلاصه ثبت برنامه خود را مرور کنید. برای ایجاد تغییرات، روی ویرایش کلیک کنید. اگر ثبت برنامه خوب به نظر می رسد، روی بازگشت به داشبورد کلیک کنید.

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

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

    به Credentials بروید

  2. روی ایجاد اعتبارنامه > شناسه مشتری OAuth کلیک کنید.
  3. روی نوع برنامه > برنامه دسکتاپ کلیک کنید.
  4. در قسمت نام ، نامی را برای اعتبارنامه تایپ کنید. این نام فقط در کنسول Google Cloud نشان داده می شود.
  5. روی ایجاد کلیک کنید. صفحه ایجاد شده توسط سرویس گیرنده OAuth ظاهر می شود که شناسه مشتری و راز مشتری جدید شما را نشان می دهد.
  6. روی OK کلیک کنید. اعتبار جدید ایجاد شده در شناسه های مشتری OAuth 2.0 ظاهر می شود.
  7. فایل JSON دانلود شده را به عنوان credentials.json ذخیره کنید و فایل را به دایرکتوری کاری خود منتقل کنید.

برنامه Google Chat را پیکربندی کنید

برای تماس با Google Chat API، باید یک برنامه Google Chat را پیکربندی کنید. برای هر گونه درخواست نوشتن، Google Chat با استفاده از اطلاعات زیر، برنامه Google Chat را در UI نسبت می دهد.

  1. در کنسول Google Cloud، به صفحه پیکربندی Chat API بروید:

    به صفحه پیکربندی Chat API بروید

  2. در قسمت Application info اطلاعات زیر را وارد کنید:

    1. در قسمت نام برنامه ، Chat API quickstart app را وارد کنید.
    2. در قسمت URL آواتار ، https://developers.google.com/chat/images/quickstart-app-avatar.png را وارد کنید.
    3. در قسمت توضیحات ، Quickstart for calling the Chat API وارد کنید.
  3. در بخش ویژگی‌های تعاملی ، روی گزینه فعال کردن ویژگی‌های تعاملی در موقعیت خاموش کلیک کنید تا ویژگی‌های تعاملی برای برنامه گپ غیرفعال شود.

  4. روی ذخیره کلیک کنید.

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

  • کتابخانه کلاینت گوگل را برای پایتون نصب کنید:

    pip install --upgrade google-apps-chat google-auth-httplib2 google-auth-oauthlib
    

نمونه را پیکربندی کنید

  1. در پوشه کاری خود، یک فایل با نام quickstart.py ایجاد کنید.
  2. کد زیر را در quickstart.py قرار دهید:

    chat/quickstart/quickstart.py
    from __future__ import print_function
    
    import os.path
    
    from google.auth.transport.requests import Request
    from google.oauth2.credentials import Credentials
    from google_auth_oauthlib.flow import InstalledAppFlow
    from google.apps import chat_v1 as google_chat
    
    
    # If modifying these scopes, delete the file token.json.
    SCOPES = ['https://www.googleapis.com/auth/chat.spaces.readonly']
    
    
    def main():
        """Shows basic usage of the Google Chat API.
        """
        creds = None
        # 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.
        if os.path.exists('token.json'):
            creds = Credentials.from_authorized_user_file('token.json', SCOPES)
        # If there are no (valid) credentials available, let the user log in.
        if not creds or not creds.valid:
            if creds and creds.expired and creds.refresh_token:
                creds.refresh(Request())
            else:
                flow = InstalledAppFlow.from_client_secrets_file(
                    'credentials.json', SCOPES)
                creds = flow.run_local_server(port=0)
            # Save the credentials for the next run
            with open('token.json', 'w') as token:
                token.write(creds.to_json())
    
        try:
            # Create a client
            client = google_chat.ChatServiceClient(
                credentials = creds,
                client_options = {
                    "scopes" : SCOPES
                }
            )
    
            # Initialize request argument(s)
            request = google_chat.ListSpacesRequest(
                # Filter spaces by space type (SPACE or GROUP_CHAT or DIRECT_MESSAGE)
                filter = 'space_type = "SPACE"'
            )
    
            # Make the request
            page_result = client.list_spaces(request)
    
            # Handle the response. Iterating over page_result will yield results and
            # resolve additional pages automatically.
            for response in page_result:
                print(response)
        except Exception as error:
            # TODO(developer) - Handle errors from Chat API.
            print(f'An error occurred: {error}')
    
    
    if __name__ == '__main__':
        main()

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

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

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

    برنامه پایتون شما اجرا می شود و Google Chat API را فرا می خواند.

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

مراحل بعدی