עדכון או חידוש של מינוי ל-Google Workspace

בדף הזה מוסבר איך לחדש מינוי ל-Google Workspace באמצעות השיטה subscriptions.update(). אפשר להשתמש בשיטה הזו כדי לעדכן את תאריך התפוגה של מינוי, כולל חידוש המינוי לתאריך התפוגה המקסימלי האפשרי, או כדי לעדכן את רשימת סוגי האירועים שמתקבלים לגבי משאב היעד.

Apps Script

  • פרויקט Apps Script:
    • להשתמש בפרויקט Google Cloud שלכם במקום בפרויקט ברירת המחדל שנוצר אוטומטית על ידי Apps Script.
    • לכל היקפי ההרשאות שהוספתם כדי להגדיר את מסך ההסכמה ל-OAuth, אתם צריכים להוסיף את היקפי ההרשאות גם לקובץ appsscript.json בפרויקט Apps Script. לדוגמה, אם ציינתם את ההיקף chat.messages, צריך להוסיף את הפרטים הבאים:
    • "oauthScopes": [
        "https://www.googleapis.com/auth/chat.messages"
      ]
          
    • מפעילים את השירות המתקדם Google Workspace Events.

Python

  • ‫Python 3.6 ואילך
  • כלי ניהול החבילות pip
  • ספריות הלקוח העדכניות של Google ל-Python. כדי להתקין או לעדכן אותם, מריצים את הפקודה הבאה בממשק שורת הפקודה:
      pip3 install --upgrade google-api-python-client google-auth-oauthlib
      

חידוש מינוי ל-Google Workspace

בקטע הזה משתמשים בשיטה subscriptions.update() של Google Workspace Events API כדי לחדש מינוי עד למועד התפוגה המקסימלי שלו. כדי לציין את זמן התפוגה המקסימלי, מעדכנים את השדה ttl של משאב Subscription לערך 0.

זמן התפוגה המקסימלי תלוי בנתוני המשאב שכלולים במטען הייעודי (payload) של האירוע. מידע נוסף על זמני תפוגה זמין במאמר בנושא נתוני אירועים של אירועים ב-Google Workspace.

כדי לחדש מינוי ל-Google Workspace:

Apps Script

  1. בפרויקט Apps Script, יוצרים קובץ סקריפט חדש בשם updateSubscription ומוסיפים את הקוד הבא:

    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);
    }
    

    מחליפים את מה שכתוב בשדות הבאים:

    • SUBSCRIPTION_ID: מזהה המינוי. כדי לקבל את המזהה, אפשר להשתמש באחת מהאפשרויות הבאות:
      • הערך של השדה uid.
      • המזהה של שם המשאב שמיוצג בשדה name. לדוגמה, אם שם המשאב הוא subscriptions/subscription-123, משתמשים ב-subscription-123.
  2. כדי לעדכן את המינוי ל-Google Workspace, מריצים את הפונקציה updateSubscription בפרויקט Apps Script.

Python

  1. בתיקיית העבודה, יוצרים קובץ בשם update_subscription.py ומוסיפים את הקוד הבא:

    """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('credentials.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)
    

    מחליפים את מה שכתוב בשדות הבאים:

    • SCOPES: היקפי הרשאות של OAuth שתומכים בכל סוג אירוע של המינוי. הפורמט הוא מערך של מחרוזות. כדי לציין כמה היקפי הרשאות, מפרידים ביניהם באמצעות פסיקים. לדוגמה, 'https://www.googleapis.com/auth/chat.spaces.readonly', 'https://www.googleapis.com/auth/chat.memberships.readonly'.
    • SUBSCRIPTION_ID: מזהה המינוי. כדי לקבל את המזהה, אפשר להשתמש באחת מהאפשרויות הבאות:
      • הערך של השדה uid.
      • המזהה של שם המשאב שמיוצג בשדה name. לדוגמה, אם שם המשאב הוא subscriptions/subscription-123, משתמשים ב-subscription-123.
  2. בספריית העבודה, מוודאים ששמרתם את פרטי הכניסה של מזהה לקוח OAuth ונתתם לקובץ את השם credentials.json. בדוגמת הקוד נעשה שימוש בקובץ ה-JSON הזה כדי לבצע אימות ב-Google Workspace ולקבל פרטי כניסה של משתמשים. הוראות מפורטות זמינות במאמר בנושא יצירת פרטי כניסה של מזהה לקוח OAuth.

  3. כדי לעדכן את המינוי ל-Google Workspace, מריצים את הפקודה הבאה במסוף:

    python3 update_subscription.py
ממשק Google Workspace Events API מחזיר פעולה ממושכת שמכילה את המופע של משאב Subscription.

כדי לקבל פרטים על משאב Subscription מעודכן, משתמשים בשיטה operations.get() ומציינים את משאב Operation שהוחזר מהבקשה subscriptions.update(). אחרת, אם תציינו משאב Operation מגרסה קודמת של המינוי, התגובה תהיה ריקה.