Cập nhật hoặc gia hạn gói thuê bao Google Workspace

Trang này giải thích cách gia hạn gói thuê bao của Google Workspace bằng phương thức subscriptions.update(). Bạn có thể sử dụng phương thức này để cập nhật thời gian hết hạn của một gói thuê bao, bao gồm cả việc gia hạn gói thuê bao để hết thời gian hết hạn tối đa có thể.

Apps Script

  • Một dự án Apps Script:
    • Sử dụng dự án của bạn trên Google Cloud thay vì dự án mặc định do Apps Script tạo tự động.
    • Đối với mọi phạm vi mà bạn đã thêm để định cấu hình màn hình xin phép bằng OAuth, bạn cũng phải thêm các phạm vi đó vào tệp appsscript.json trong dự án Apps Script. Ví dụ:
    • "oauthScopes": [
        "https://www.googleapis.com/auth/chat.messages.readonly"
      ]
          
    • Bật dịch vụ nâng cao của Google Workspace Events.

Python

  • Python 3.6 trở lên
  • Công cụ quản lý gói pip
  • Các thư viện ứng dụng mới nhất của Google dành cho Python. Để cài đặt hoặc cập nhật các công cụ này, hãy chạy lệnh sau trong giao diện dòng lệnh của bạn:
      pip3 install --upgrade google-api-python-client google-auth-oauthlib
      

Gia hạn gói thuê bao của Google Workspace

Trong phần này, bạn sẽ sử dụng phương thức subscriptions.update() của API Sự kiện Google Workspace để gia hạn gói thuê bao tới thời gian hết hạn tối đa. Để chỉ định thời gian hết hạn tối đa, bạn cần cập nhật trường ttl của tài nguyên Subscription thành 0.

Thời gian hết hạn tối đa phụ thuộc vào loại dữ liệu tài nguyên được đưa vào tải trọng sự kiện. Để tìm hiểu thêm về thời gian hết hạn, hãy xem bài viết Dữ liệu sự kiện cho các sự kiện Google Workspace.

Cách gia hạn gói thuê bao của Google Workspace:

Apps Script

  1. Trong dự án Apps Script, hãy tạo một tệp tập lệnh mới có tên là updateSubscription rồi thêm mã sau:

    function updateSubscription() {
      // The name of the subscription to update.
      const name = 'subscriptions/SUBSCRIPTION_ID';
    
      // Call the Workspace Events API using the advanced service.
      const response = WorkspaceEvents.Subscriptions.patch({
        ttl: '0s',
      }, name);
      console.log(response);
    }
    

    Thay thế các đoạn mã sau:

    • SUBSCRIPTION_ID: Mã của gói thuê bao. Để lấy mã nhận dạng, bạn có thể dùng bất kỳ cách nào sau đây:
      • Giá trị của trường uid.
      • Mã nhận dạng tên tài nguyên được thể hiện trong trường name. Ví dụ: nếu tên tài nguyên là subscriptions/subscription-123, hãy sử dụng subscription-123.
  2. Để cập nhật gói thuê bao của Google Workspace, hãy chạy hàm updateSubscription trong dự án Apps Script.

Python

  1. Trong thư mục đang làm việc, hãy tạo một tệp có tên update_subscription.py rồi thêm mã sau:

    """Update subscription."""
    
    from google_auth_oauthlib.flow import InstalledAppFlow
    from googleapiclient.discovery import build
    
    # Specify required scopes.
    SCOPES = [SCOPES]
    
    # Authenticate with Google Workspace and get user authentication.
    flow = InstalledAppFlow.from_client_secrets_file('client_secrets.json', SCOPES)
    CREDENTIALS = flow.run_local_server()
    
    # Call the Workspace Events API using the service endpoint.
    service = build(
        'workspaceevents',
        'v1',
        credentials=CREDENTIALS,
    )
    
    BODY = {
        'ttl': {'seconds': 0},
    }
    NAME = 'subscriptions/SUBSCRIPTION_ID'
    response = (
        service.subscriptions()
        .patch(name=NAME, updateMask='ttl', body=BODY)
        .execute()
    )
    print(response)
    

    Thay thế các đoạn mã sau:

    • SCOPES: Một hoặc nhiều phạm vi OAuth hỗ trợ từng loại sự kiện cho gói thuê bao. Được định dạng dưới dạng một mảng chuỗi. Để liệt kê nhiều phạm vi, hãy phân tách bằng dấu phẩy. Ví dụ: 'https://www.googleapis.com/auth/chat.spaces.readonly', 'https://www.googleapis.com/auth/chat.memberships.readonly'.
    • SUBSCRIPTION_ID: Mã của gói thuê bao. Để lấy mã nhận dạng, bạn có thể dùng bất kỳ cách nào sau đây:
      • Giá trị của trường uid.
      • Mã nhận dạng tên tài nguyên được thể hiện trong trường name. Ví dụ: nếu tên tài nguyên là subscriptions/subscription-123, hãy sử dụng subscription-123.
  2. Trong thư mục đang làm việc, hãy đảm bảo rằng bạn đã lưu trữ thông tin đăng nhập của mã ứng dụng khách OAuth và đặt tên cho tệp là client_secrets.json. Mã mẫu sẽ sử dụng tệp JSON này để xác thực với Google Workspace và lấy thông tin đăng nhập của người dùng. Để biết hướng dẫn, hãy xem bài viết Tạo thông tin đăng nhập mã ứng dụng khách OAuth.

  3. Để cập nhật gói thuê bao của Google Workspace, hãy chạy lệnh sau trong thiết bị đầu cuối của bạn:

    python3 update_subscription.py
    
API Sự kiện của Google Workspace sẽ trả về một hoạt động diễn ra trong thời gian dài có chứa thực thể của tài nguyên Subscription.

Để biết thông tin chi tiết về tài nguyên Subscription đã cập nhật, hãy sử dụng phương thức operations.get() và chỉ định tài nguyên Operation được trả về từ yêu cầu subscriptions.update() của bạn. Ngược lại, nếu bạn chỉ định tài nguyên Operation từ phiên bản trước đó của gói thuê bao, thì phản hồi sẽ trống.