หน้านี้จะอธิบายวิธีใช้ Google Workspace Events API เพื่อสร้าง การสมัครใช้บริการแหล่งข้อมูลของ Google Workspace การสมัครใช้บริการ Google Workspace ทำให้แอปของคุณได้รับข้อมูลเกี่ยวกับกิจกรรมของ Google Workspace แสดงถึงการเปลี่ยนแปลงทรัพยากร Google Workspace เพื่อเรียนรู้เกี่ยวกับ ทรัพยากรและประเภทเหตุการณ์ที่ Google Workspace Events API รองรับ โปรดดู ภาพรวมของ Google Workspace Events API
หน้านี้จะมีขั้นตอนในการสร้าง Google Workspace ดังต่อไปนี้ การสมัครใช้บริการ:
- ตั้งค่าสภาพแวดล้อมของคุณ
- สร้างและสมัครใช้บริการหัวข้อ Google Cloud Pub/Sub คุณใช้หัวข้อนี้เป็น ปลายทางสำหรับรับเหตุการณ์ Google Workspace
- เรียกใช้
create()
ของ Google Workspace Events API ในSubscription
ทรัพยากร - ทดสอบการสมัครใช้บริการ Google Workspace เพื่อให้มั่นใจว่า Pub/Sub หัวข้อจะได้รับเหตุการณ์ที่คุณสมัครรับข้อมูล
- (ไม่บังคับ) กำหนดค่าวิธีพุชเหตุการณ์ไปยังปลายทางสำหรับแอป ดังนี้ ให้แอปประมวลผลเหตุการณ์ได้ และดำเนินการหากจำเป็น
ข้อกำหนดเบื้องต้น
Apps Script
- วิธีใช้คำสั่ง Google Cloud CLI ในคู่มือนี้
- ติดตั้ง Google Cloud CLI
- ถึง
เริ่มต้น CLI ของ
gcloud
แล้วเรียกใช้โค้ดต่อไปนี้
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 ในคู่มือนี้
- ติดตั้ง Google Cloud CLI
- ถึง
เริ่มต้น CLI ของ
gcloud
แล้วเรียกใช้โค้ดต่อไปนี้
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
gcloud
ในไดเรกทอรีที่ใช้งานได้ ให้ลงชื่อเข้าใช้บัญชี Google ของคุณ:
gcloud auth login
ตั้งค่าโปรเจ็กต์เป็นโปรเจ็กต์ที่อยู่ในระบบคลาวด์สําหรับแอปของคุณ โดยทำดังนี้
gcloud config set project PROJECT_ID
แทนที่
PROJECT_ID
ด้วย รหัสโปรเจ็กต์สำหรับโปรเจ็กต์ระบบคลาวด์ของแอปเปิดใช้ Google Workspace Events API และ Google Cloud Pub/Sub API:
gcloud services enable pubsub.googleapis.com workspaceevents.googleapis.com
สร้างข้อมูลเข้าสู่ระบบรหัสไคลเอ็นต์ OAuth
เลือกประเภทแอปพลิเคชันเพื่อดูคำแนะนำเฉพาะเกี่ยวกับวิธีสร้างรหัสไคลเอ็นต์ OAuth
เว็บแอปพลิเคชัน
- ในคอนโซล Google Cloud ให้ไปที่เมนู > API และ บริการ > ข้อมูลเข้าสู่ระบบ
- คลิกสร้างข้อมูลเข้าสู่ระบบ > รหัสไคลเอ็นต์ OAuth
- คลิกประเภทแอปพลิเคชัน > เว็บแอปพลิเคชัน
- ในช่องชื่อ ให้พิมพ์ชื่อของข้อมูลเข้าสู่ระบบ ชื่อนี้จะแสดงเฉพาะในคอนโซล Google Cloud เท่านั้น
- เพิ่ม URI ที่ได้รับอนุญาตที่เกี่ยวข้องกับแอปของคุณ ดังนี้
- แอปฝั่งไคลเอ็นต์ (JavaScript) - ในส่วนต้นทาง JavaScript ที่ได้รับอนุญาต ให้คลิกเพิ่ม URI จากนั้นป้อน URI เพื่อใช้สำหรับคำขอของเบราว์เซอร์ ค่านี้ระบุโดเมนที่แอปพลิเคชันของคุณสามารถส่งคำขอ API ไปยังเซิร์ฟเวอร์ OAuth 2.0
- แอปฝั่งเซิร์ฟเวอร์ (Java, Python และอื่นๆ) - คลิกเพิ่ม URI ในส่วน URI การเปลี่ยนเส้นทางที่ได้รับอนุญาต จากนั้นป้อน URI ปลายทางที่เซิร์ฟเวอร์ OAuth 2.0 สามารถส่งการตอบกลับได้
- คลิกสร้าง หน้าจอที่สร้างไคลเอ็นต์ OAuth จะปรากฏขึ้น ซึ่งจะแสดงรหัสไคลเอ็นต์ใหม่และรหัสลับไคลเอ็นต์ของคุณ
จดรหัสไคลเอ็นต์ ทั้งนี้จะไม่มีการใช้รหัสลับไคลเอ็นต์สำหรับเว็บแอปพลิเคชัน
- คลิกตกลง ข้อมูลเข้าสู่ระบบที่สร้างขึ้นใหม่จะปรากฏในส่วนรหัสไคลเอ็นต์ OAuth 2.0
Android
- ในคอนโซล Google Cloud ให้ไปที่เมนู > API และ บริการ > ข้อมูลเข้าสู่ระบบ
- คลิกสร้างข้อมูลเข้าสู่ระบบ > รหัสไคลเอ็นต์ OAuth
- คลิกประเภทแอปพลิเคชัน > Android
- ใน "ชื่อ" ให้พิมพ์ชื่อของข้อมูลเข้าสู่ระบบ ชื่อนี้จะแสดงเฉพาะในคอนโซล Google Cloud เท่านั้น
- ใน "ชื่อแพ็กเกจ" ป้อนชื่อแพ็กเกจจากไฟล์
AndroidManifest.xml
- ใน "ลายนิ้วมือสำหรับใบรับรอง SHA-1" ให้ป้อนลายนิ้วมือสำหรับใบรับรอง SHA-1 ที่สร้างขึ้น
- คลิกสร้าง หน้าจอที่ไคลเอ็นต์ OAuth สร้างจะปรากฏขึ้น ซึ่งจะแสดงรหัสไคลเอ็นต์ใหม่ของคุณ
- คลิกตกลง ข้อมูลเข้าสู่ระบบที่สร้างขึ้นใหม่จะปรากฏในส่วน "รหัสไคลเอ็นต์ OAuth 2.0"
iOS
- ในคอนโซล Google Cloud ให้ไปที่เมนู > API และ บริการ > ข้อมูลเข้าสู่ระบบ
- คลิกสร้างข้อมูลเข้าสู่ระบบ > รหัสไคลเอ็นต์ OAuth
- คลิกประเภทแอปพลิเคชัน > iOS
- ใน "ชื่อ" ให้พิมพ์ชื่อของข้อมูลเข้าสู่ระบบ ชื่อนี้จะแสดงเฉพาะในคอนโซล Google Cloud เท่านั้น
- ใน "รหัสแพ็กเกจ" ป้อนตัวระบุชุดซอฟต์แวร์ตามที่แสดงอยู่ในไฟล์
Info.plist
ของแอป - ไม่บังคับ: หากแอปของคุณปรากฏใน Apple App Store ให้ป้อนรหัส App Store
- ไม่บังคับ: ใน "รหัสทีม" ให้ป้อนสตริงอักขระ 10 ตัวที่ไม่ซ้ำกันซึ่งสร้างโดย Apple และมอบหมายให้กับทีมของคุณ
- คลิกสร้าง หน้าจอที่สร้างไคลเอ็นต์ OAuth จะปรากฏขึ้น ซึ่งจะแสดงรหัสไคลเอ็นต์ใหม่และรหัสลับไคลเอ็นต์ของคุณ
- คลิกตกลง ข้อมูลเข้าสู่ระบบที่สร้างขึ้นใหม่จะปรากฏในส่วน "รหัสไคลเอ็นต์ OAuth 2.0"
แอป Chrome
- ในคอนโซล Google Cloud ให้ไปที่เมนู > API และ บริการ > ข้อมูลเข้าสู่ระบบ
- คลิกสร้างข้อมูลเข้าสู่ระบบ > รหัสไคลเอ็นต์ OAuth
- คลิกประเภทแอปพลิเคชัน > แอป Chrome
- ใน "ชื่อ" ให้พิมพ์ชื่อของข้อมูลเข้าสู่ระบบ ชื่อนี้จะแสดงเฉพาะในคอนโซล Google Cloud เท่านั้น
- ใน "รหัสแอปพลิเคชัน" ให้ป้อนสตริงรหัสยาว 32 อักขระที่ไม่ซ้ำกันของแอป คุณสามารถดูค่ารหัสนี้ได้ใน URL ของ Chrome เว็บสโตร์ของแอปและในหน้าแดชบอร์ดสำหรับนักพัฒนาซอฟต์แวร์ Chrome เว็บสโตร์
- คลิกสร้าง หน้าจอที่สร้างไคลเอ็นต์ OAuth จะปรากฏขึ้น ซึ่งจะแสดงรหัสไคลเอ็นต์ใหม่และรหัสลับไคลเอ็นต์ของคุณ
- คลิกตกลง ข้อมูลเข้าสู่ระบบที่สร้างขึ้นใหม่จะปรากฏในส่วน "รหัสไคลเอ็นต์ OAuth 2.0"
แอปบนเดสก์ท็อป
- ในคอนโซล Google Cloud ให้ไปที่เมนู > API และ บริการ > ข้อมูลเข้าสู่ระบบ
- คลิกสร้างข้อมูลเข้าสู่ระบบ > รหัสไคลเอ็นต์ OAuth
- คลิกประเภทแอปพลิเคชัน > แอปบนเดสก์ท็อป
- ในช่องชื่อ ให้พิมพ์ชื่อของข้อมูลเข้าสู่ระบบ ชื่อนี้จะแสดงเฉพาะในคอนโซล Google Cloud เท่านั้น
- คลิกสร้าง หน้าจอที่สร้างไคลเอ็นต์ OAuth จะปรากฏขึ้น ซึ่งจะแสดงรหัสไคลเอ็นต์ใหม่และรหัสลับไคลเอ็นต์ของคุณ
- คลิกตกลง ข้อมูลเข้าสู่ระบบที่สร้างขึ้นใหม่จะปรากฏในส่วนรหัสไคลเอ็นต์ OAuth 2.0
ทีวีและ อุปกรณ์อินพุตจำกัด
- ในคอนโซล Google Cloud ให้ไปที่เมนู > API และ บริการ > ข้อมูลเข้าสู่ระบบ
- คลิกสร้างข้อมูลเข้าสู่ระบบ > รหัสไคลเอ็นต์ OAuth
- คลิกประเภทแอปพลิเคชัน > ทีวีและ อุปกรณ์อินพุตจำกัด
- ใน "ชื่อ" ให้พิมพ์ชื่อของข้อมูลเข้าสู่ระบบ ชื่อนี้จะแสดงเฉพาะในคอนโซล Google Cloud เท่านั้น
- คลิกสร้าง หน้าจอที่สร้างไคลเอ็นต์ OAuth จะปรากฏขึ้น ซึ่งจะแสดงรหัสไคลเอ็นต์ใหม่และรหัสลับไคลเอ็นต์ของคุณ
- คลิกตกลง ข้อมูลเข้าสู่ระบบที่สร้างขึ้นใหม่จะปรากฏในส่วน "รหัสไคลเอ็นต์ OAuth 2.0"
Universal Windows Platform (UWP)
- ในคอนโซล Google Cloud ให้ไปที่เมนู > API และ บริการ > ข้อมูลเข้าสู่ระบบ
- คลิกสร้างข้อมูลเข้าสู่ระบบ > รหัสไคลเอ็นต์ OAuth
- คลิกประเภทแอปพลิเคชัน > แพลตฟอร์ม Windows สากล (UWP)
- ใน "ชื่อ" ให้พิมพ์ชื่อของข้อมูลเข้าสู่ระบบ ชื่อนี้จะแสดงเฉพาะในคอนโซล Google Cloud เท่านั้น
- ใน "รหัสร้านค้า" ให้ป้อนค่ารหัส Microsoft Store แบบ 12 อักขระที่ไม่ซ้ำกันของแอป คุณดูรหัสนี้ได้ใน URL ใน Microsoft Store ของแอปและในศูนย์พาร์ทเนอร์
- คลิกสร้าง หน้าจอที่สร้างไคลเอ็นต์ OAuth จะปรากฏขึ้น ซึ่งจะแสดงรหัสไคลเอ็นต์ใหม่และรหัสลับไคลเอ็นต์ของคุณ
- คลิกตกลง ข้อมูลเข้าสู่ระบบที่สร้างขึ้นใหม่จะปรากฏในส่วน "รหัสไคลเอ็นต์ OAuth 2.0"
ดาวน์โหลดไฟล์ JSON รหัสลับไคลเอ็นต์
ไฟล์รหัสลับไคลเอ็นต์คือการแสดงรหัสไคลเอ็นต์ OAuth ในรูปแบบ JSON ข้อมูลเข้าสู่ระบบที่แอปของคุณใช้อ้างอิงได้เมื่อระบุข้อมูลเข้าสู่ระบบ
ในคอนโซล Google Cloud ให้ไปที่เมนู > API และ บริการ > ข้อมูลเข้าสู่ระบบ
ในส่วนรหัสไคลเอ็นต์ OAuth 2.0 ให้คลิกรหัสไคลเอ็นต์ที่คุณสร้าง
คลิกดาวน์โหลด JSON
บันทึกไฟล์เป็น
client_secrets.json
สร้างและสมัครใช้บริการหัวข้อ Pub/Sub
ในส่วนนี้ คุณจะได้สร้างหัวข้อ Pub/Sub และการสมัครใช้บริการ เกี่ยวกับหัวข้อนี้ หัวข้อ Pub/Sub ทำหน้าที่เป็น ปลายทางการแจ้งเตือนที่การสมัครใช้บริการ Google Workspace ของคุณจะได้รับ กิจกรรม
ดูข้อมูลเพิ่มเติมเกี่ยวกับการสร้างและจัดการหัวข้อ Pub/Sub ได้ที่ Pub/Sub เอกสารประกอบ ที่ใช้เวลาเพียง 2 นาที
วิธีสร้างและสมัครรับข้อมูลหัวข้อ Pub/Sub มีดังนี้
คอนโซล Google Cloud
ในคอนโซล Google Cloud ให้ไปที่หน้า Pub/Sub แล้วดำเนินการดังนี้
ตรวจสอบว่าได้เลือกโปรเจ็กต์ที่อยู่ในระบบคลาวด์สำหรับแอปแล้ว
คลิก
สร้างหัวข้อและ ให้ทำดังนี้- ป้อนชื่อหัวข้อ เช่น
workspace-events-topic
- คงการเลือกเพิ่มการสมัครใช้บริการเริ่มต้นไว้ Pub/Sub ตั้งชื่อสิ่งนี้
การสมัครใช้บริการเริ่มต้นที่คล้ายกับชื่อหัวข้อของคุณ เช่น
workspace-events-topic-sub
- ไม่บังคับ: อัปเดตหรือกำหนดค่าพร็อพเพอร์ตี้เพิ่มเติม สำหรับหัวข้อของคุณ
- ป้อนชื่อหัวข้อ เช่น
คลิกสร้าง ชื่อหัวข้อแบบเต็มมีรูปแบบเป็น
projects/PROJECT_ID/topics/TOPIC_ID
คุณจะใช้ชื่อเต็มนี้ในขั้นตอนถัดไปให้สิทธิ์เข้าถึงเพื่อเผยแพร่ข้อความ Pub/Sub ไปยังหัวข้อของคุณ:
- ในหน้าหัวข้อ ให้ไปที่แผงด้านข้างและเปิด สิทธิ์
- คลิกเพิ่มผู้ใช้หลัก
- ในช่องเพิ่มผู้ใช้หลัก ให้เพิ่มบัญชีบริการสำหรับ
แอปพลิเคชัน Google Workspace ที่ส่งกิจกรรมให้กับ
การสมัครใช้บริการ:
- สำหรับกิจกรรมใน Chat
chat-api-push@system.gserviceaccount.com
- สำหรับกิจกรรมใน Meet
meet-api-event-push@system.gserviceaccount.com
- สำหรับกิจกรรมใน Chat
- ในเมนูมอบหมายบทบาท ให้เลือก
Pub/Sub Publisher
- คลิกบันทึก การอัปเดตสิทธิ์อาจใช้เวลาสักครู่ สำหรับหัวข้อของคุณ
gcloud
สร้างหัวข้อในโปรเจ็กต์ที่อยู่ในระบบคลาวด์ด้วยการเรียกใช้รายการต่อไปนี้ คำสั่ง:
gcloud pubsub topics create TOPIC_ID
แทนที่
TOPIC_ID
ด้วยรหัสที่ไม่ซ้ำกันสำหรับหัวข้อ เช่น ด้วยชื่อworkspace-events-topic
ผลลัพธ์จะแสดงชื่อหัวข้อแบบเต็ม โดยมีรูปแบบเป็น
projects/PROJECT_ID/topics/TOPIC_ID
จดบันทึกชื่อและตรวจสอบว่าค่าของ PROJECT_ID คือรหัสโปรเจ็กต์ที่อยู่ในระบบคลาวด์ สำหรับแอปของคุณ คุณใช้ชื่อหัวข้อในขั้นตอนต่อไปนี้ และเพื่อสร้าง การสมัครใช้บริการ Google Workspace ในภายหลังวิธีให้สิทธิ์เพื่อเผยแพร่ข้อความในหัวข้อของคุณ
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
- หากต้องการรับกิจกรรมจาก Chat ให้ใช้
การอัปเดตสิทธิ์สำหรับหัวข้ออาจใช้เวลา 2-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 |
โดยที่ SPACE คือรหัสใน
ชื่อทรัพยากรของทรัพยากร Chat API |
ผู้ใช้ Chat ที่อนุญาตให้มีการสมัครใช้บริการจะต้อง ได้เป็นสมาชิกพื้นที่ทำงานผ่าน Google Workspace หรือ Google บัญชี |
พื้นที่ทำงานทั้งหมดสำหรับผู้ใช้ |
|
การสมัครใช้บริการจะได้รับเหตุการณ์สําหรับพื้นที่ทำงานที่ผู้ใช้อยู่เท่านั้น เป็นสมาชิกผ่านบัญชี Google Workspace หรือบัญชี Google |
ผู้ใช้ |
โดยที่ USER คือรหัสใน
ชื่อทรัพยากรของทรัพยากร Chat API |
การสมัครใช้บริการจะได้รับเฉพาะเหตุการณ์เกี่ยวกับผู้ใช้ที่ ให้สิทธิ์การสมัครใช้บริการแล้ว ผู้ใช้ให้สิทธิ์การสมัครใช้บริการใน ไม่ได้ ในนามของผู้ใช้คนอื่นๆ |
ระบุทรัพยากรเป้าหมายสำหรับ Meet
ทรัพยากรเป้าหมาย | รูปแบบ | ข้อจำกัด (หากมี) |
---|---|---|
พื้นที่จัดประชุม | //meet.googleapis.com/spaces/SPACE
โดยที่ SPACE คือรหัสใน
ชื่อทรัพยากรของทรัพยากร |
|
ผู้ใช้ | //cloudidentity.googleapis.com/users/USER
โดยที่ USER คือรหัสใน
ช่อง |
การสมัครใช้บริการจะได้รับเหตุการณ์เกี่ยวกับพื้นที่การประชุมที่ ผู้ใช้เป็นอย่างใดอย่างหนึ่งต่อไปนี้
|
สร้างการสมัครใช้บริการ Google Workspace
หากต้องการสร้างการสมัครใช้บริการ ให้ใช้
subscriptions.create()
วิธีในการสร้าง
Subscription
ทรัพยากร คุณระบุฟิลด์ต่อไปนี้
targetResource
: Google Workspace ที่คุณระบุใน ส่วนก่อนหน้า ซึ่งจัดรูปแบบโดยใช้ชื่อแหล่งข้อมูลแบบเต็มeventTypes
: อาร์เรย์ของประเภทเหตุการณ์อย่างน้อย 1 ประเภทที่คุณต้องการรับ แหล่งข้อมูล ตัวอย่างเช่น ถ้าแอปของคุณต้องการทราบเกี่ยวกับข้อความใหม่เท่านั้น โพสต์ไปยังพื้นที่ใน Chat แอปของคุณจะสามารถสมัครรับกิจกรรม เกี่ยวกับข้อความที่สร้างขึ้นnotificationEndpoint
: ปลายทางของการแจ้งเตือนที่ การสมัครใช้บริการ Google Workspace จะส่งกิจกรรม คุณใช้ หัวข้อ Pub/Sub ที่คุณสร้างไว้ในส่วนก่อนหน้าpayloadOptions
: ตัวเลือกสำหรับระบุจำนวนข้อมูลทรัพยากรที่จะรวมไว้ เพย์โหลดของเหตุการณ์ การกำหนดค่านี้มีผลต่อเวลาหมดอายุสำหรับ การสมัครใช้บริการ ดูข้อมูลเพิ่มเติมได้ที่เหตุการณ์ ข้อมูล
วิธีสร้างการสมัครใช้บริการ Google Workspace
Apps Script
สร้างไฟล์สคริปต์ใหม่ในโปรเจ็กต์ 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
: ไม่รวมข้อมูลทรัพยากร
หากต้องการสร้างการสมัครใช้บริการ Google Workspace ให้เรียกใช้ฟังก์ชัน
createSubscription
ในโปรเจ็กต์ Apps Script ของคุณ
Python
สร้างไฟล์ชื่อ
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
: ไม่รวมข้อมูลทรัพยากร
หากต้องการสร้างการสมัครใช้บริการ Google Workspace ให้เรียกใช้คำสั่งต่อไปนี้ใน เทอร์มินัล:
python3 create_subscription.py
Google Workspace Events API ตอบกลับคำขอที่ใช้งานเป็นเวลานาน
การดำเนินการ ที่มีฟังก์ชัน
ของทรัพยากร Subscription
ที่คุณสร้างขึ้น
ทดสอบการสมัครใช้บริการ Google Workspace
หากต้องการทดสอบว่าคุณรับเหตุการณ์ Google Workspace อยู่ คุณสามารถเรียกใช้ เหตุการณ์ และดึงข้อความไปยังการสมัคร Pub/Sub
วิธีทดสอบการสมัครใช้บริการ Google Workspace
คอนโซล Google Cloud
ทริกเกอร์เหตุการณ์อย่างน้อย 1 ประเภทในทรัพยากรเป้าหมาย การสมัครใช้บริการ Google Workspace เช่น หากสมัครรับข้อมูล ข้อความในพื้นที่ใน Chat ให้โพสต์ข้อความไปยังพื้นที่ทำงาน
ในคอนโซล Google Cloud ให้ไปที่หน้า Pub/Sub แล้วดำเนินการดังนี้
ตรวจสอบว่าได้เลือกโปรเจ็กต์ที่อยู่ในระบบคลาวด์สำหรับแอปแล้ว
คลิกการสมัครรับข้อมูลในเมนู Pub/Sub
ในตาราง ค้นหาการสมัครใช้บริการ Pub/Sub สำหรับหัวข้อของคุณและคลิก ชื่อการสมัครใช้บริการ
คลิกแท็บข้อความ
คลิกพุล การสร้างเหตุการณ์อาจใช้เวลา 2-3 นาที ข้อความ Pub/Sub
gcloud
ทริกเกอร์เหตุการณ์อย่างน้อย 1 ประเภทในทรัพยากรเป้าหมาย การสมัครใช้บริการ Google Workspace เช่น หากสมัครรับข้อมูล ข้อความในพื้นที่ใน Chat ให้โพสต์ข้อความในพื้นที่ทำงาน
เรียกใช้คำสั่งต่อไปนี้
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 เอกสารประกอบ