สร้างการสมัครใช้บริการ Google Workspace

หน้านี้จะอธิบายวิธีใช้ Google Workspace Events API เพื่อสร้าง การสมัครใช้บริการแหล่งข้อมูลของ Google Workspace การสมัครใช้บริการ Google Workspace ทำให้แอปของคุณได้รับข้อมูลเกี่ยวกับกิจกรรมของ Google Workspace แสดงถึงการเปลี่ยนแปลงทรัพยากร Google Workspace เพื่อเรียนรู้เกี่ยวกับ ทรัพยากรและประเภทเหตุการณ์ที่ Google Workspace Events API รองรับ โปรดดู ภาพรวมของ Google Workspace Events API

หน้านี้จะมีขั้นตอนในการสร้าง Google Workspace ดังต่อไปนี้ การสมัครใช้บริการ:

  1. ตั้งค่าสภาพแวดล้อมของคุณ
  2. สร้างและสมัครใช้บริการหัวข้อ Google Cloud Pub/Sub คุณใช้หัวข้อนี้เป็น ปลายทางสำหรับรับเหตุการณ์ Google Workspace
  3. เรียกใช้ create() ของ Google Workspace Events API ใน Subscription ทรัพยากร
  4. ทดสอบการสมัครใช้บริการ Google Workspace เพื่อให้มั่นใจว่า Pub/Sub หัวข้อจะได้รับเหตุการณ์ที่คุณสมัครรับข้อมูล
  5. (ไม่บังคับ) กำหนดค่าวิธีพุชเหตุการณ์ไปยังปลายทางสำหรับแอป ดังนี้ ให้แอปประมวลผลเหตุการณ์ได้ และดำเนินการหากจำเป็น

ข้อกำหนดเบื้องต้น

Apps Script

  • วิธีใช้คำสั่ง Google Cloud CLI ในคู่มือนี้
    1. ติดตั้ง Google Cloud CLI
    2. ถึง เริ่มต้น CLI ของ gcloud แล้วเรียกใช้โค้ดต่อไปนี้
    3.   gcloud init
        
  • โปรเจ็กต์ Google Cloud โดยเปิดใช้การเรียกเก็บเงิน สําหรับการสมัครใช้บริการ Chat คุณต้องทำดังนี้ เปิดใช้ Chat API ในโปรเจ็กต์ที่อยู่ในระบบคลาวด์และ กำหนดค่าชื่อแอป, URL ของรูปโปรไฟล์ และคำอธิบาย ด้วย โปรดดูรายละเอียดที่หัวข้อ สร้างแอป Google Chat
  • ต้องมีการตรวจสอบสิทธิ์ผู้ใช้ด้วยหน้าจอความยินยอม OAuth ที่กำหนดค่าสำหรับ แอปนั้น เมื่อกำหนดค่าหน้าจอคำยินยอม คุณต้องระบุขอบเขตเพื่อ รองรับเหตุการณ์แต่ละประเภทสำหรับการสมัครใช้บริการ วิธีกำหนดค่าความยินยอม และระบุขอบเขตที่จำเป็น โปรดดู เลือกขอบเขต
  • โครงการ Apps Script:
    • ใช้โปรเจ็กต์ Google Cloud ของคุณแทนโปรเจ็กต์เริ่มต้นที่สร้างขึ้นโดยอัตโนมัติโดย Apps Script
    • สำหรับขอบเขตที่คุณเพิ่มเพื่อกำหนดค่าหน้าจอคำยินยอม OAuth คุณต้องเพิ่มฟิลด์ เป็นไฟล์ appsscript.json ในโปรเจ็กต์ Apps Script ของคุณ เช่น
    • "oauthScopes": [
        "https://www.googleapis.com/auth/chat.messages.readonly"
      ]
          
    • เปิดใช้ บริการขั้นสูงของ Google Workspace Events

Python

  • Python 3.6 ขึ้นไป
  • เครื่องมือจัดการแพ็กเกจ pip
  • ไลบรารีของไคลเอ็นต์ Google ล่าสุดสำหรับ Python หากต้องการติดตั้งหรืออัปเดตแอปพลิเคชัน ให้เรียกใช้คำสั่งต่อไปนี้ ในอินเทอร์เฟซบรรทัดคำสั่ง
      pip3 install --upgrade google-api-python-client google-auth-oauthlib
      
  • วิธีใช้คำสั่ง Google Cloud CLI ในคู่มือนี้
    1. ติดตั้ง Google Cloud CLI
    2. ถึง เริ่มต้น CLI ของ gcloud แล้วเรียกใช้โค้ดต่อไปนี้
    3.   gcloud init
        
  • โปรเจ็กต์ Google Cloud โดยเปิดใช้การเรียกเก็บเงิน สําหรับการสมัครใช้บริการ Chat คุณต้องทำดังนี้ เปิดใช้ Chat API ในโปรเจ็กต์ที่อยู่ในระบบคลาวด์และ กำหนดค่าชื่อแอป, URL ของรูปโปรไฟล์ และคำอธิบาย ด้วย โปรดดูรายละเอียดที่หัวข้อ สร้างแอป Google Chat
  • ต้องมีการตรวจสอบสิทธิ์ผู้ใช้ด้วยหน้าจอความยินยอม OAuth ที่กำหนดค่าสำหรับ แอปนั้น เมื่อกำหนดค่าหน้าจอคำยินยอม คุณต้องระบุขอบเขตเพื่อ รองรับเหตุการณ์แต่ละประเภทสำหรับการสมัครใช้บริการ วิธีกำหนดค่าความยินยอม และระบุขอบเขตที่จำเป็น โปรดดู เลือกขอบเขต

ตั้งค่าสภาพแวดล้อมของคุณ

ส่วนต่อไปนี้จะอธิบายวิธีตั้งค่าสภาพแวดล้อมก่อนสร้าง การสมัครใช้บริการ Google Workspace

เปิดใช้ Google Workspace Events API และ Google Cloud Pub/Sub API

ก่อนใช้ Google APIs คุณต้องเปิดใช้ API เหล่านี้ในโปรเจ็กต์ Google Cloud คุณสามารถเปิด API ได้ตั้งแต่ 1 รายการขึ้นไปในโปรเจ็กต์ Google Cloud เดียว

คอนโซล Google Cloud

ในคอนโซล Google Cloud ให้เปิดโปรเจ็กต์ Google Cloud สําหรับแอปและเปิดใช้ Google Workspace Events API และ Pub/Sub API

เปิดใช้ API

gcloud

  1. ในไดเรกทอรีที่ใช้งานได้ ให้ลงชื่อเข้าใช้บัญชี Google ของคุณ:

    gcloud auth login
    
  2. ตั้งค่าโปรเจ็กต์เป็นโปรเจ็กต์ที่อยู่ในระบบคลาวด์สําหรับแอปของคุณ โดยทำดังนี้

    gcloud config set project PROJECT_ID
    

    แทนที่ PROJECT_ID ด้วย รหัสโปรเจ็กต์สำหรับโปรเจ็กต์ระบบคลาวด์ของแอป

  3. เปิดใช้ Google Workspace Events API และ Google Cloud Pub/Sub API:

    gcloud services enable pubsub.googleapis.com workspaceevents.googleapis.com
    

สร้างข้อมูลเข้าสู่ระบบรหัสไคลเอ็นต์ OAuth

เลือกประเภทแอปพลิเคชันเพื่อดูคำแนะนำเฉพาะเกี่ยวกับวิธีสร้างรหัสไคลเอ็นต์ OAuth

เว็บแอปพลิเคชัน

  1. ในคอนโซล Google Cloud ให้ไปที่เมนู > API และ บริการ > ข้อมูลเข้าสู่ระบบ

    ไปที่ข้อมูลเข้าสู่ระบบ

  2. คลิกสร้างข้อมูลเข้าสู่ระบบ > รหัสไคลเอ็นต์ OAuth
  3. คลิกประเภทแอปพลิเคชัน > เว็บแอปพลิเคชัน
  4. ในช่องชื่อ ให้พิมพ์ชื่อของข้อมูลเข้าสู่ระบบ ชื่อนี้จะแสดงเฉพาะในคอนโซล Google Cloud เท่านั้น
  5. เพิ่ม URI ที่ได้รับอนุญาตที่เกี่ยวข้องกับแอปของคุณ ดังนี้
    • แอปฝั่งไคลเอ็นต์ (JavaScript) - ในส่วนต้นทาง JavaScript ที่ได้รับอนุญาต ให้คลิกเพิ่ม URI จากนั้นป้อน URI เพื่อใช้สำหรับคำขอของเบราว์เซอร์ ค่านี้ระบุโดเมนที่แอปพลิเคชันของคุณสามารถส่งคำขอ API ไปยังเซิร์ฟเวอร์ OAuth 2.0
    • แอปฝั่งเซิร์ฟเวอร์ (Java, Python และอื่นๆ) - คลิกเพิ่ม URI ในส่วน URI การเปลี่ยนเส้นทางที่ได้รับอนุญาต จากนั้นป้อน URI ปลายทางที่เซิร์ฟเวอร์ OAuth 2.0 สามารถส่งการตอบกลับได้
  6. คลิกสร้าง หน้าจอที่สร้างไคลเอ็นต์ OAuth จะปรากฏขึ้น ซึ่งจะแสดงรหัสไคลเอ็นต์ใหม่และรหัสลับไคลเอ็นต์ของคุณ

    จดรหัสไคลเอ็นต์ ทั้งนี้จะไม่มีการใช้รหัสลับไคลเอ็นต์สำหรับเว็บแอปพลิเคชัน

  7. คลิกตกลง ข้อมูลเข้าสู่ระบบที่สร้างขึ้นใหม่จะปรากฏในส่วนรหัสไคลเอ็นต์ OAuth 2.0

Android

  1. ในคอนโซล Google Cloud ให้ไปที่เมนู > API และ บริการ > ข้อมูลเข้าสู่ระบบ

    ไปที่ข้อมูลเข้าสู่ระบบ

  2. คลิกสร้างข้อมูลเข้าสู่ระบบ > รหัสไคลเอ็นต์ OAuth
  3. คลิกประเภทแอปพลิเคชัน > Android
  4. ใน "ชื่อ" ให้พิมพ์ชื่อของข้อมูลเข้าสู่ระบบ ชื่อนี้จะแสดงเฉพาะในคอนโซล Google Cloud เท่านั้น
  5. ใน "ชื่อแพ็กเกจ" ป้อนชื่อแพ็กเกจจากไฟล์ AndroidManifest.xml
  6. ใน "ลายนิ้วมือสำหรับใบรับรอง SHA-1" ให้ป้อนลายนิ้วมือสำหรับใบรับรอง SHA-1 ที่สร้างขึ้น
  7. คลิกสร้าง หน้าจอที่ไคลเอ็นต์ OAuth สร้างจะปรากฏขึ้น ซึ่งจะแสดงรหัสไคลเอ็นต์ใหม่ของคุณ
  8. คลิกตกลง ข้อมูลเข้าสู่ระบบที่สร้างขึ้นใหม่จะปรากฏในส่วน "รหัสไคลเอ็นต์ OAuth 2.0"

iOS

  1. ในคอนโซล Google Cloud ให้ไปที่เมนู > API และ บริการ > ข้อมูลเข้าสู่ระบบ

    ไปที่ข้อมูลเข้าสู่ระบบ

  2. คลิกสร้างข้อมูลเข้าสู่ระบบ > รหัสไคลเอ็นต์ OAuth
  3. คลิกประเภทแอปพลิเคชัน > iOS
  4. ใน "ชื่อ" ให้พิมพ์ชื่อของข้อมูลเข้าสู่ระบบ ชื่อนี้จะแสดงเฉพาะในคอนโซล Google Cloud เท่านั้น
  5. ใน "รหัสแพ็กเกจ" ป้อนตัวระบุชุดซอฟต์แวร์ตามที่แสดงอยู่ในไฟล์ Info.plist ของแอป
  6. ไม่บังคับ: หากแอปของคุณปรากฏใน Apple App Store ให้ป้อนรหัส App Store
  7. ไม่บังคับ: ใน "รหัสทีม" ให้ป้อนสตริงอักขระ 10 ตัวที่ไม่ซ้ำกันซึ่งสร้างโดย Apple และมอบหมายให้กับทีมของคุณ
  8. คลิกสร้าง หน้าจอที่สร้างไคลเอ็นต์ OAuth จะปรากฏขึ้น ซึ่งจะแสดงรหัสไคลเอ็นต์ใหม่และรหัสลับไคลเอ็นต์ของคุณ
  9. คลิกตกลง ข้อมูลเข้าสู่ระบบที่สร้างขึ้นใหม่จะปรากฏในส่วน "รหัสไคลเอ็นต์ OAuth 2.0"

แอป Chrome

  1. ในคอนโซล Google Cloud ให้ไปที่เมนู > API และ บริการ > ข้อมูลเข้าสู่ระบบ

    ไปที่ข้อมูลเข้าสู่ระบบ

  2. คลิกสร้างข้อมูลเข้าสู่ระบบ > รหัสไคลเอ็นต์ OAuth
  3. คลิกประเภทแอปพลิเคชัน > แอป Chrome
  4. ใน "ชื่อ" ให้พิมพ์ชื่อของข้อมูลเข้าสู่ระบบ ชื่อนี้จะแสดงเฉพาะในคอนโซล Google Cloud เท่านั้น
  5. ใน "รหัสแอปพลิเคชัน" ให้ป้อนสตริงรหัสยาว 32 อักขระที่ไม่ซ้ำกันของแอป คุณสามารถดูค่ารหัสนี้ได้ใน URL ของ Chrome เว็บสโตร์ของแอปและในหน้าแดชบอร์ดสำหรับนักพัฒนาซอฟต์แวร์ Chrome เว็บสโตร์
  6. คลิกสร้าง หน้าจอที่สร้างไคลเอ็นต์ OAuth จะปรากฏขึ้น ซึ่งจะแสดงรหัสไคลเอ็นต์ใหม่และรหัสลับไคลเอ็นต์ของคุณ
  7. คลิกตกลง ข้อมูลเข้าสู่ระบบที่สร้างขึ้นใหม่จะปรากฏในส่วน "รหัสไคลเอ็นต์ OAuth 2.0"

แอปบนเดสก์ท็อป

  1. ในคอนโซล Google Cloud ให้ไปที่เมนู > API และ บริการ > ข้อมูลเข้าสู่ระบบ

    ไปที่ข้อมูลเข้าสู่ระบบ

  2. คลิกสร้างข้อมูลเข้าสู่ระบบ > รหัสไคลเอ็นต์ OAuth
  3. คลิกประเภทแอปพลิเคชัน > แอปบนเดสก์ท็อป
  4. ในช่องชื่อ ให้พิมพ์ชื่อของข้อมูลเข้าสู่ระบบ ชื่อนี้จะแสดงเฉพาะในคอนโซล Google Cloud เท่านั้น
  5. คลิกสร้าง หน้าจอที่สร้างไคลเอ็นต์ OAuth จะปรากฏขึ้น ซึ่งจะแสดงรหัสไคลเอ็นต์ใหม่และรหัสลับไคลเอ็นต์ของคุณ
  6. คลิกตกลง ข้อมูลเข้าสู่ระบบที่สร้างขึ้นใหม่จะปรากฏในส่วนรหัสไคลเอ็นต์ OAuth 2.0

ทีวีและ อุปกรณ์อินพุตจำกัด

  1. ในคอนโซล Google Cloud ให้ไปที่เมนู > API และ บริการ > ข้อมูลเข้าสู่ระบบ

    ไปที่ข้อมูลเข้าสู่ระบบ

  2. คลิกสร้างข้อมูลเข้าสู่ระบบ > รหัสไคลเอ็นต์ OAuth
  3. คลิกประเภทแอปพลิเคชัน > ทีวีและ อุปกรณ์อินพุตจำกัด
  4. ใน "ชื่อ" ให้พิมพ์ชื่อของข้อมูลเข้าสู่ระบบ ชื่อนี้จะแสดงเฉพาะในคอนโซล Google Cloud เท่านั้น
  5. คลิกสร้าง หน้าจอที่สร้างไคลเอ็นต์ OAuth จะปรากฏขึ้น ซึ่งจะแสดงรหัสไคลเอ็นต์ใหม่และรหัสลับไคลเอ็นต์ของคุณ
  6. คลิกตกลง ข้อมูลเข้าสู่ระบบที่สร้างขึ้นใหม่จะปรากฏในส่วน "รหัสไคลเอ็นต์ OAuth 2.0"

Universal Windows Platform (UWP)

  1. ในคอนโซล Google Cloud ให้ไปที่เมนู > API และ บริการ > ข้อมูลเข้าสู่ระบบ

    ไปที่ข้อมูลเข้าสู่ระบบ

  2. คลิกสร้างข้อมูลเข้าสู่ระบบ > รหัสไคลเอ็นต์ OAuth
  3. คลิกประเภทแอปพลิเคชัน > แพลตฟอร์ม Windows สากล (UWP)
  4. ใน "ชื่อ" ให้พิมพ์ชื่อของข้อมูลเข้าสู่ระบบ ชื่อนี้จะแสดงเฉพาะในคอนโซล Google Cloud เท่านั้น
  5. ใน "รหัสร้านค้า" ให้ป้อนค่ารหัส Microsoft Store แบบ 12 อักขระที่ไม่ซ้ำกันของแอป คุณดูรหัสนี้ได้ใน URL ใน Microsoft Store ของแอปและในศูนย์พาร์ทเนอร์
  6. คลิกสร้าง หน้าจอที่สร้างไคลเอ็นต์ OAuth จะปรากฏขึ้น ซึ่งจะแสดงรหัสไคลเอ็นต์ใหม่และรหัสลับไคลเอ็นต์ของคุณ
  7. คลิกตกลง ข้อมูลเข้าสู่ระบบที่สร้างขึ้นใหม่จะปรากฏในส่วน "รหัสไคลเอ็นต์ OAuth 2.0"

ดาวน์โหลดไฟล์ JSON รหัสลับไคลเอ็นต์

ไฟล์รหัสลับไคลเอ็นต์คือการแสดงรหัสไคลเอ็นต์ OAuth ในรูปแบบ JSON ข้อมูลเข้าสู่ระบบที่แอปของคุณใช้อ้างอิงได้เมื่อระบุข้อมูลเข้าสู่ระบบ

  1. ในคอนโซล Google Cloud ให้ไปที่เมนู > API และ บริการ > ข้อมูลเข้าสู่ระบบ

    ไปที่ข้อมูลเข้าสู่ระบบ

  2. ในส่วนรหัสไคลเอ็นต์ OAuth 2.0 ให้คลิกรหัสไคลเอ็นต์ที่คุณสร้าง

  3. คลิกดาวน์โหลด JSON

  4. บันทึกไฟล์เป็น client_secrets.json

สร้างและสมัครใช้บริการหัวข้อ Pub/Sub

ในส่วนนี้ คุณจะได้สร้างหัวข้อ Pub/Sub และการสมัครใช้บริการ เกี่ยวกับหัวข้อนี้ หัวข้อ Pub/Sub ทำหน้าที่เป็น ปลายทางการแจ้งเตือนที่การสมัครใช้บริการ Google Workspace ของคุณจะได้รับ กิจกรรม

ดูข้อมูลเพิ่มเติมเกี่ยวกับการสร้างและจัดการหัวข้อ Pub/Sub ได้ที่ Pub/Sub เอกสารประกอบ ที่ใช้เวลาเพียง 2 นาที

วิธีสร้างและสมัครรับข้อมูลหัวข้อ Pub/Sub มีดังนี้

คอนโซล Google Cloud

  1. ในคอนโซล Google Cloud ให้ไปที่หน้า Pub/Sub แล้วดำเนินการดังนี้

    ไปที่ Google Cloud Pub/Sub

    ตรวจสอบว่าได้เลือกโปรเจ็กต์ที่อยู่ในระบบคลาวด์สำหรับแอปแล้ว

  2. คลิก สร้างหัวข้อและ ให้ทำดังนี้

    1. ป้อนชื่อหัวข้อ เช่น workspace-events-topic
    2. คงการเลือกเพิ่มการสมัครใช้บริการเริ่มต้นไว้ Pub/Sub ตั้งชื่อสิ่งนี้ การสมัครใช้บริการเริ่มต้นที่คล้ายกับชื่อหัวข้อของคุณ เช่น workspace-events-topic-sub
    3. ไม่บังคับ: อัปเดตหรือกำหนดค่าพร็อพเพอร์ตี้เพิ่มเติม สำหรับหัวข้อของคุณ
  3. คลิกสร้าง ชื่อหัวข้อแบบเต็มมีรูปแบบเป็น projects/PROJECT_ID/topics/TOPIC_ID คุณจะใช้ชื่อเต็มนี้ในขั้นตอนถัดไป

  4. ให้สิทธิ์เข้าถึงเพื่อเผยแพร่ข้อความ Pub/Sub ไปยังหัวข้อของคุณ:

    1. ในหน้าหัวข้อ ให้ไปที่แผงด้านข้างและเปิด สิทธิ์
    2. คลิกเพิ่มผู้ใช้หลัก
    3. ในช่องเพิ่มผู้ใช้หลัก ให้เพิ่มบัญชีบริการสำหรับ แอปพลิเคชัน Google Workspace ที่ส่งกิจกรรมให้กับ การสมัครใช้บริการ:
      1. สำหรับกิจกรรมใน Chat chat-api-push@system.gserviceaccount.com
      2. สำหรับกิจกรรมใน Meet meet-api-event-push@system.gserviceaccount.com
    4. ในเมนูมอบหมายบทบาท ให้เลือก Pub/Sub Publisher
    5. คลิกบันทึก การอัปเดตสิทธิ์อาจใช้เวลาสักครู่ สำหรับหัวข้อของคุณ

gcloud

  1. สร้างหัวข้อในโปรเจ็กต์ที่อยู่ในระบบคลาวด์ด้วยการเรียกใช้รายการต่อไปนี้ คำสั่ง:

    gcloud pubsub topics create TOPIC_ID
    

    แทนที่ TOPIC_ID ด้วยรหัสที่ไม่ซ้ำกันสำหรับหัวข้อ เช่น ด้วยชื่อ workspace-events-topic

    ผลลัพธ์จะแสดงชื่อหัวข้อแบบเต็ม โดยมีรูปแบบเป็น projects/PROJECT_ID/topics/TOPIC_ID จดบันทึกชื่อและตรวจสอบว่าค่าของ PROJECT_ID คือรหัสโปรเจ็กต์ที่อยู่ในระบบคลาวด์ สำหรับแอปของคุณ คุณใช้ชื่อหัวข้อในขั้นตอนต่อไปนี้ และเพื่อสร้าง การสมัครใช้บริการ Google Workspace ในภายหลัง

  2. วิธีให้สิทธิ์เพื่อเผยแพร่ข้อความในหัวข้อของคุณ

    gcloud pubsub topics add-iam-policy-binding TOPIC_NAME --member='serviceAccount:GOOGLE_WORKSPACE_APPLICATION' --role='roles/pubsub.publisher'
    

    โดยแทนที่ค่าต่อไปนี้

    • TOPIC_NAME: ชื่อเต็มของหัวข้อ ซึ่งก็คือ เอาต์พุตจากขั้นตอนก่อนหน้า จัดรูปแบบเป็น projects/PROJECT_ID/topics/TOPIC_ID
    • GOOGLE_WORKSPACE_APPLICATION: แอปพลิเคชัน Google Workspace ที่ต้องนำส่งกิจกรรมไปยัง การสมัครใช้บริการของคุณ:

      • หากต้องการรับกิจกรรมจาก Chat ให้ใช้ chat-api-push@system.gserviceaccount.com
      • หากต้องการรับกิจกรรมจาก Meet ให้ใช้ meet-api-event-push@system.gserviceaccount.com

    การอัปเดตสิทธิ์สำหรับหัวข้ออาจใช้เวลา 2-3 นาที

  3. สร้างการสมัครใช้บริการ Pub/Sub สำหรับหัวข้อโดยทำดังนี้

     gcloud pubsub subscriptions create SUBSCRIPTION_NAME --topic=TOPIC_NAME
    

    โดยแทนที่ค่าต่อไปนี้

    • SUBSCRIPTION_NAME: ชื่อสำหรับการสมัครใช้บริการของคุณ เช่น workspace-events-subscription
    • TOPIC_NAME: ชื่อหัวข้อที่คุณสร้าง ในขั้นตอนก่อนหน้า

สมัครใช้บริการแหล่งข้อมูลของ Google Workspace

ในส่วนนี้ คุณจะสมัครรับข้อมูลแหล่งข้อมูล Google Workspace ที่ ที่ต้องการตรวจสอบเหตุการณ์

เลือกและระบุทรัพยากรเป้าหมาย

ในการสมัครใช้บริการ Google Workspace ทรัพยากรเป้าหมายคือค่า แหล่งข้อมูล Google Workspace ที่คุณใช้ตรวจสอบเหตุการณ์ เป้าหมาย แสดงทรัพยากรในช่อง targetResource ของการสมัครใช้บริการ ซึ่งอยู่ในรูปแบบโดยใช้ ชื่อเต็มของทรัพยากร เช่น สำหรับการสมัครใช้บริการที่ตรวจสอบ พื้นที่ใน Google Chat (spaces/AAAABBBBBBB) ค่าของ targetResource คือ //chat.googleapis.com/spaces/AAAABBBBBBB

ก่อนสร้างการสมัครใช้บริการ โปรดใช้ส่วนต่อไปนี้เพื่อดูวิธีการ ระบุและจัดรูปแบบทรัพยากรเป้าหมาย

ระบุทรัพยากรเป้าหมายของ Chat

ทรัพยากรเป้าหมาย รูปแบบ ข้อจำกัด
Space

//chat.googleapis.com/spaces/SPACE

โดยที่ SPACE คือรหัสใน ชื่อทรัพยากรของทรัพยากร Chat API space คุณสามารถดูรหัสจาก URL ของพื้นที่ทำงานหรือใช้ spaces.list()

ผู้ใช้ Chat ที่อนุญาตให้มีการสมัครใช้บริการจะต้อง ได้เป็นสมาชิกพื้นที่ทำงานผ่าน Google Workspace หรือ Google บัญชี
พื้นที่ทำงานทั้งหมดสำหรับผู้ใช้

//chat.googleapis.com/spaces/-

การสมัครใช้บริการจะได้รับเหตุการณ์สําหรับพื้นที่ทำงานที่ผู้ใช้อยู่เท่านั้น เป็นสมาชิกผ่านบัญชี Google Workspace หรือบัญชี Google
ผู้ใช้

//cloudidentity.googleapis.com/users/USER

โดยที่ USER คือรหัสใน ชื่อทรัพยากรของทรัพยากร Chat API user โปรดดูรายละเอียดที่หัวข้อ ระบุและระบุ ผู้ใช้ Google Chat

การสมัครใช้บริการจะได้รับเฉพาะเหตุการณ์เกี่ยวกับผู้ใช้ที่ ให้สิทธิ์การสมัครใช้บริการแล้ว ผู้ใช้ให้สิทธิ์การสมัครใช้บริการใน ไม่ได้ ในนามของผู้ใช้คนอื่นๆ

ระบุทรัพยากรเป้าหมายสำหรับ Meet

ทรัพยากรเป้าหมาย รูปแบบ ข้อจำกัด (หากมี)
พื้นที่จัดประชุม //meet.googleapis.com/spaces/SPACE

โดยที่ SPACE คือรหัสใน ชื่อทรัพยากรของทรัพยากร space สำหรับ REST API ของ Meet โปรดดูรายละเอียดที่หัวข้อ อย่างไร Meet จะระบุพื้นที่การประชุม

ผู้ใช้ //cloudidentity.googleapis.com/users/USER

โดยที่ USER คือรหัสใน ช่อง signedinUser.user ของทรัพยากร participant ของ Meet REST API โปรดดูรายละเอียดที่หัวข้อ ทำงานร่วมกับผู้เข้าร่วม

การสมัครใช้บริการจะได้รับเหตุการณ์เกี่ยวกับพื้นที่การประชุมที่ ผู้ใช้เป็นอย่างใดอย่างหนึ่งต่อไปนี้

  • เจ้าของพื้นที่การประชุม
  • ผู้จัด กิจกรรมใน Google ปฏิทินที่เชื่อมโยงกับพื้นที่การประชุม

สร้างการสมัครใช้บริการ Google Workspace

หากต้องการสร้างการสมัครใช้บริการ ให้ใช้ subscriptions.create() วิธีในการสร้าง Subscription ทรัพยากร คุณระบุฟิลด์ต่อไปนี้

  • targetResource: Google Workspace ที่คุณระบุใน ส่วนก่อนหน้า ซึ่งจัดรูปแบบโดยใช้ชื่อแหล่งข้อมูลแบบเต็ม
  • eventTypes: อาร์เรย์ของประเภทเหตุการณ์อย่างน้อย 1 ประเภทที่คุณต้องการรับ แหล่งข้อมูล ตัวอย่างเช่น ถ้าแอปของคุณต้องการทราบเกี่ยวกับข้อความใหม่เท่านั้น โพสต์ไปยังพื้นที่ใน Chat แอปของคุณจะสามารถสมัครรับกิจกรรม เกี่ยวกับข้อความที่สร้างขึ้น
  • notificationEndpoint: ปลายทางของการแจ้งเตือนที่ การสมัครใช้บริการ Google Workspace จะส่งกิจกรรม คุณใช้ หัวข้อ Pub/Sub ที่คุณสร้างไว้ในส่วนก่อนหน้า
  • payloadOptions: ตัวเลือกสำหรับระบุจำนวนข้อมูลทรัพยากรที่จะรวมไว้ เพย์โหลดของเหตุการณ์ การกำหนดค่านี้มีผลต่อเวลาหมดอายุสำหรับ การสมัครใช้บริการ ดูข้อมูลเพิ่มเติมได้ที่เหตุการณ์ ข้อมูล

วิธีสร้างการสมัครใช้บริการ Google Workspace

Apps Script

  1. สร้างไฟล์สคริปต์ใหม่ในโปรเจ็กต์ Apps Script ของคุณ ชื่อ createSubscription และเพิ่มโค้ดต่อไปนี้

    function createSubscription() {
      // The Google Workspace resource to monitor for events.
      const targetResource = 'TARGET_RESOURCE';
    
      // The types of events to receive.
      const eventTypes = [EVENT_TYPES];
    
      // The endpoint to deliver events to, such as a Google Cloud Pub/Sub topic.
      const pubsubTopic = 'TOPIC_NAME';
    
      // Whether to include resource data or not.
      const resourceData = RESOURCE_DATA;
    
      // Call the Workspace Events API using the advanced service.
      const response = WorkspaceEvents.Subscriptions.create({
        targetResource: targetResource,
        eventTypes: eventTypes,
        notificationEndpoint: {
          pubsubTopic: pubsubTopic,
        },
        payloadOptions: {
          includeResource: resourceData
        }
      });
      console.log(response);
    }
    

    โดยแทนที่ค่าต่อไปนี้

    • TARGET_RESOURCE: แหล่งข้อมูลของ Google Workspace ที่คุณกำลังสมัครใช้บริการ โดยมีรูปแบบเป็นชื่อทรัพยากรแบบเต็ม สำหรับ เช่น หากต้องการสมัครใช้บริการพื้นที่ใน Google Chat ด้วยรหัสพื้นที่ทำงาน AAAABBBB ใช้ //chat.googleapis.com/spaces/AAAABBBB
    • EVENT_TYPES: ประเภทเหตุการณ์อย่างน้อย 1 ประเภท ที่คุณต้องการสมัครใช้บริการในทรัพยากรเป้าหมาย จัดรูปแบบเป็น อาร์เรย์ของสตริง เช่น 'google.workspace.chat.message.v1.created'
    • TOPIC_NAME: ชื่อเต็มของหัวข้อ Pub/Sub ที่ ที่คุณสร้างในโปรเจ็กต์ที่อยู่ในระบบคลาวด์ จัดรูปแบบเป็น projects/PROJECT_ID/topics/TOPIC_ID
    • RESOURCE_DATA: บูลีนที่ระบุว่า การสมัครใช้บริการจะมีข้อมูลทรัพยากรในเพย์โหลดดังนี้

      • True: รวมข้อมูลทรัพยากรทั้งหมด เพื่อจำกัดช่องที่ รวม ให้เพิ่ม fieldMask และระบุอย่างน้อย 1 ช่องสำหรับทรัพยากรที่เปลี่ยนแปลง เฉพาะ การสมัครรับการสนับสนุนทรัพยากรของ Chat ซึ่งรวมถึง ข้อมูลทรัพยากร
      • False: ไม่รวมข้อมูลทรัพยากร
  2. หากต้องการสร้างการสมัครใช้บริการ Google Workspace ให้เรียกใช้ฟังก์ชัน createSubscription ในโปรเจ็กต์ Apps Script ของคุณ

Python

  1. สร้างไฟล์ชื่อ create_subscription.py ในไดเรกทอรีการทำงาน และเพิ่มโค้ดต่อไปนี้

    """Create 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()
    
    # The Google Workspace resource to monitor for events.
    TARGET_RESOURCE = 'TARGET_RESOURCE'
    
    # The types of events to receive.
    EVENT_TYPES = [EVENT_TYPES]
    
    # The endpoint to deliver events to, such as a Google Cloud Pub/Sub topic.
    TOPIC = 'TOPIC_NAME'
    
    # Call the Workspace Events API using the service endpoint.
    service = build(
        'workspaceevents',
        'v1',
        credentials=CREDENTIALS,
    )
    
    BODY = {
        'target_resource': TARGET_RESOURCE,
        'event_types': EVENT_TYPES,
        'notification_endpoint': {'pubsub_topic': TOPIC},
        'payload_options': {'include_resource': RESOURCE_DATA},
    }
    response = service.subscriptions().create(body=BODY).execute()
    print(response)
    

    โดยแทนที่ค่าต่อไปนี้

    • SCOPES: ขอบเขต OAuth อย่างน้อย 1 รายการที่รองรับเหตุการณ์แต่ละประเภท สำหรับการสมัครใช้บริการ จัดรูปแบบเป็นอาร์เรย์ของสตริง หากต้องการแสดงรายการขอบเขตหลายรายการ ให้คั่นด้วยเครื่องหมายจุลภาค เช่น 'https://www.googleapis.com/auth/chat.spaces.readonly', 'https://www.googleapis.com/auth/chat.memberships.readonly'
    • TARGET_RESOURCE: แหล่งข้อมูลของ Google Workspace ที่คุณกำลังสมัครใช้บริการ โดยมีรูปแบบเป็นชื่อทรัพยากรแบบเต็ม สำหรับ เช่น หากต้องการสมัครใช้บริการพื้นที่ใน Google Chat ด้วยรหัสพื้นที่ทำงาน AAAABBBB ใช้ //chat.googleapis.com/spaces/AAAABBBB
    • EVENT_TYPES: ประเภทเหตุการณ์อย่างน้อย 1 ประเภท ที่คุณต้องการสมัครใช้บริการในทรัพยากรเป้าหมาย จัดรูปแบบเป็น อาร์เรย์ของสตริง เช่น 'google.workspace.chat.message.v1.created'
    • TOPIC_NAME: ชื่อเต็มของหัวข้อ Pub/Sub ที่ ที่คุณสร้างในโปรเจ็กต์ที่อยู่ในระบบคลาวด์ จัดรูปแบบเป็น projects/PROJECT_ID/topics/TOPIC_ID
    • RESOURCE_DATA: บูลีนที่ระบุว่า การสมัครใช้บริการจะมีข้อมูลทรัพยากรในเพย์โหลดดังนี้

      • True: รวมข้อมูลทรัพยากรทั้งหมด เพื่อจำกัดช่องที่ รวม ให้เพิ่ม fieldMask และระบุอย่างน้อย 1 ช่องสำหรับทรัพยากรที่เปลี่ยนแปลง เฉพาะ การสมัครรับการสนับสนุนทรัพยากรของ Chat ซึ่งรวมถึง ข้อมูลทรัพยากร
      • False: ไม่รวมข้อมูลทรัพยากร
  2. หากต้องการสร้างการสมัครใช้บริการ Google Workspace ให้เรียกใช้คำสั่งต่อไปนี้ใน เทอร์มินัล:

    python3 create_subscription.py
    

Google Workspace Events API ตอบกลับคำขอที่ใช้งานเป็นเวลานาน การดำเนินการ ที่มีฟังก์ชัน ของทรัพยากร Subscription ที่คุณสร้างขึ้น

ทดสอบการสมัครใช้บริการ Google Workspace

หากต้องการทดสอบว่าคุณรับเหตุการณ์ Google Workspace อยู่ คุณสามารถเรียกใช้ เหตุการณ์ และดึงข้อความไปยังการสมัคร Pub/Sub

วิธีทดสอบการสมัครใช้บริการ Google Workspace

คอนโซล Google Cloud

  1. ทริกเกอร์เหตุการณ์อย่างน้อย 1 ประเภทในทรัพยากรเป้าหมาย การสมัครใช้บริการ Google Workspace เช่น หากสมัครรับข้อมูล ข้อความในพื้นที่ใน Chat ให้โพสต์ข้อความไปยังพื้นที่ทำงาน

  2. ในคอนโซล Google Cloud ให้ไปที่หน้า Pub/Sub แล้วดำเนินการดังนี้

    ไปที่ Pub/Sub

    ตรวจสอบว่าได้เลือกโปรเจ็กต์ที่อยู่ในระบบคลาวด์สำหรับแอปแล้ว

  3. คลิกการสมัครรับข้อมูลในเมนู Pub/Sub

  4. ในตาราง ค้นหาการสมัครใช้บริการ Pub/Sub สำหรับหัวข้อของคุณและคลิก ชื่อการสมัครใช้บริการ

  5. คลิกแท็บข้อความ

  6. คลิกพุล การสร้างเหตุการณ์อาจใช้เวลา 2-3 นาที ข้อความ Pub/Sub

gcloud

  1. ทริกเกอร์เหตุการณ์อย่างน้อย 1 ประเภทในทรัพยากรเป้าหมาย การสมัครใช้บริการ Google Workspace เช่น หากสมัครรับข้อมูล ข้อความในพื้นที่ใน Chat ให้โพสต์ข้อความในพื้นที่ทำงาน

  2. เรียกใช้คำสั่งต่อไปนี้

    gcloud pubsub subscriptions pull PUBSUB_SUBSCRIPTION_NAME --format=json --limit=MESSAGE_COUNT --auto-ack
    

    โดยแทนที่ค่าต่อไปนี้

    • PUBSUB_SUBSCRIPTION_NAME: ชื่อและนามสกุลของคุณ การสมัครใช้บริการ Pub/Sub ซึ่งมีรูปแบบเป็น projects/SUBSCRIPTION_ID/subscriptions/SUBSCRIPTION_ID
    • MESSAGE_COUNT: จำนวนข้อความ Pub/Sub สูงสุดที่คุณต้องการดึง

    การสร้าง Pub/Sub อาจใช้เวลา 2-3 นาทีสำหรับกิจกรรม

สำหรับเหตุการณ์ Google Workspace แต่ละรายการที่คุณทริกเกอร์ ระบบจะส่งข้อความ ที่ส่งไปยังการสมัครใช้บริการ Pub/Sub ซึ่งมีเหตุการณ์ โปรดดูรายละเอียดที่หัวข้อ การรับเหตุการณ์เป็นข้อความ Google Cloud Pub/Sub

กำหนดค่าวิธีที่แอปรับเหตุการณ์

การสมัครใช้บริการ Pub/Sub ที่คุณสร้างเป็นแบบพุล หลังจากทดสอบ การสมัครใช้บริการ Pub/Sub คุณสามารถอัปเดตประเภทการนำส่งเพื่อเปลี่ยนวิธี แอปของคุณจะได้รับเหตุการณ์ ตัวอย่างเช่น คุณสามารถกำหนดค่า Pub/Sub เพื่อให้แอปของคุณรับเหตุการณ์ได้ ไปยังปลายทางแอปโดยตรง

หากต้องการเรียนรู้เกี่ยวกับการกำหนดค่าการสมัคร Pub/Sub โปรดดูส่วน Pub/Sub เอกสารประกอบ