บริการแชทขั้นสูงช่วยให้คุณใช้ Google Chat API ใน Apps Script ได้ API นี้ช่วยให้สคริปต์ค้นหา สร้าง และแก้ไข พื้นที่ทำงาน Chat เพิ่มหรือนำสมาชิกออกจากพื้นที่ทำงาน และอ่านหรือโพสต์ ข้อความที่มีข้อความ การ์ด ไฟล์แนบ และรีแอ็กชันได้
ข้อกำหนดเบื้องต้น
- แอป Google Chat ที่สร้างด้วย Apps Script ซึ่งกำหนดค่าใน หน้าการกำหนดค่า Chat API ใน Google Cloud Console โปรเจ็กต์ Apps Script ของแอปต้องใช้โปรเจ็กต์ Google Cloud มาตรฐานแทน โปรเจ็กต์เริ่มต้นที่สร้างขึ้นโดยอัตโนมัติสำหรับโปรเจ็กต์ Apps Script หากต้องการสร้างแอป Google Chat ที่เข้ากันได้ โปรดดูสร้างแอป Google Chat ด้วย Google Apps Script
- การตรวจสอบสิทธิ์ที่กำหนดค่าไว้สำหรับแอป Chat การดำเนินการในนามของผู้ใช้ต้องมี การตรวจสอบสิทธิ์ของผู้ใช้ การดำเนินการในฐานะแอป Chat ต้องใช้การตรวจสอบสิทธิ์ของแอปด้วยบัญชีบริการ หากต้องการตรวจสอบว่าเมธอด Chat API รองรับการตรวจสอบสิทธิ์รูปแบบใด โปรดดู ประเภทของการตรวจสอบสิทธิ์ที่จำเป็นสำหรับการเรียก Google Chat API
ข้อมูลอ้างอิง
ดูข้อมูลเพิ่มเติมเกี่ยวกับบริการนี้ได้ที่เอกสารอ้างอิง Chat API เช่นเดียวกับบริการขั้นสูงทั้งหมดใน Apps Script บริการ Chat จะใช้ออบเจ็กต์ เมธอด และพารามิเตอร์เดียวกันกับ API สาธารณะ
โค้ดตัวอย่าง
ตัวอย่างเหล่านี้แสดงวิธีดำเนินการทั่วไปของ Google Chat API โดยใช้บริการขั้นสูง
โพสต์ข้อความพร้อมข้อมูลเข้าสู่ระบบของผู้ใช้
ตัวอย่างต่อไปนี้แสดงวิธีโพสต์ข้อความไปยัง พื้นที่ทำงานใน Chat ในนามของผู้ใช้
เพิ่มขอบเขตการให้สิทธิ์
chat.messages.create
ลงในไฟล์appsscript.json
ของโปรเจ็กต์ Apps Script โดยทำดังนี้"oauthScopes": [ "https://www.googleapis.com/auth/chat.messages.create" ]
เพิ่มฟังก์ชันเช่นฟังก์ชันนี้ลงในโค้ดของโปรเจ็กต์ Apps Script
โพสต์ข้อความพร้อมข้อมูลเข้าสู่ระบบของแอป
ตัวอย่างต่อไปนี้แสดงวิธีโพสต์ข้อความไปยัง
พื้นที่ทำงานของ Chat ในนามของแอป การใช้บริการ Chat ขั้นสูงกับบัญชีบริการไม่จำเป็นต้อง
ระบุขอบเขตการให้สิทธิ์ใน appsscript.json
โปรดดูรายละเอียดเกี่ยวกับการตรวจสอบสิทธิ์ด้วยบัญชีบริการที่หัวข้อตรวจสอบสิทธิ์ในฐานะแอป Google Chat
รับพื้นที่ทำงาน
ตัวอย่างต่อไปนี้แสดงวิธีรับข้อมูลเกี่ยวกับพื้นที่แชท
เพิ่มขอบเขตการให้สิทธิ์
chat.spaces.readonly
ลงในไฟล์appsscript.json
ของโปรเจ็กต์ Apps Script โดยทำดังนี้"oauthScopes": [ "https://www.googleapis.com/auth/chat.spaces.readonly" ]
เพิ่มฟังก์ชันเช่นฟังก์ชันนี้ลงในโค้ดของโปรเจ็กต์ Apps Script
สร้างพื้นที่ทำงาน
ตัวอย่างต่อไปนี้แสดงวิธีสร้างพื้นที่ใน Chat
เพิ่มขอบเขตการให้สิทธิ์
chat.spaces.create
ลงในไฟล์appsscript.json
ของโปรเจ็กต์ Apps Script โดยทำดังนี้"oauthScopes": [ "https://www.googleapis.com/auth/chat.spaces.create" ]
เพิ่มฟังก์ชันเช่นฟังก์ชันนี้ลงในโค้ดของโปรเจ็กต์ Apps Script
แสดงรายการการเป็นสมาชิก
ตัวอย่างต่อไปนี้แสดงวิธีแสดงรายชื่อสมาชิกทั้งหมดในพื้นที่ทำงานของ Chat
เพิ่มขอบเขตการให้สิทธิ์
chat.memberships.readonly
ลงในไฟล์appsscript.json
ของโปรเจ็กต์ Apps Script โดยทำดังนี้"oauthScopes": [ "https://www.googleapis.com/auth/chat.memberships.readonly" ]
เพิ่มฟังก์ชันเช่นฟังก์ชันนี้ลงในโค้ดของโปรเจ็กต์ Apps Script
แก้ปัญหา
หากคุณพบ Error 400: invalid_scope
พร้อมข้อความแสดงข้อผิดพลาด
Some requested scopes cannot be shown
แสดงว่าคุณยังไม่ได้ระบุขอบเขตการให้สิทธิ์ใดๆ ในไฟล์ appsscript.json
ของโปรเจ็กต์ Apps Script ในกรณีส่วนใหญ่ Apps Script จะกำหนดขอบเขตที่สคริปต์ต้องการโดยอัตโนมัติ
แต่เมื่อใช้บริการขั้นสูงของ Chat คุณต้องเพิ่ม
ขอบเขตการให้สิทธิ์ที่สคริปต์ใช้ลงในไฟล์ Manifest ของโปรเจ็กต์ Apps Script ด้วยตนเอง ดูการตั้งค่าขอบเขตที่ชัดเจน
หากต้องการแก้ไขข้อผิดพลาด ให้เพิ่มขอบเขตการให้สิทธิ์ที่เหมาะสม
ลงในไฟล์ appsscript.json
ของโปรเจ็กต์ Apps Script ซึ่งเป็นส่วนหนึ่งของ
อาร์เรย์ oauthScopes
เช่น หากต้องการเรียกใช้เมธอด
spaces.messages.create
ให้เพิ่มข้อมูลต่อไปนี้
"oauthScopes": [
"https://www.googleapis.com/auth/chat.messages.create"
]
ข้อจำกัดและข้อควรพิจารณา
บริการแชทขั้นสูงไม่รองรับสิ่งต่อไปนี้
- เมธอดของ Chat API
media.download
- เมธอด Chat API ที่พร้อมใช้งานใน Developer Preview
หากต้องการดาวน์โหลดไฟล์แนบของข้อความหรือเรียกใช้เมธอดตัวอย่างสำหรับนักพัฒนาแอป ให้ใช้
UrlFetchApp
แทน