บริการ Chat ขั้นสูงช่วยให้คุณใช้ Google Chat API ใน Apps Script ได้ API นี้ช่วยให้สคริปต์ค้นหา สร้าง และแก้ไขพื้นที่ใน Chat, เพิ่มหรือนำสมาชิกออกจากพื้นที่ทำงาน รวมถึงอ่านหรือโพสต์ข้อความที่มีข้อความ การ์ด ไฟล์แนบ และความรู้สึกได้
ข้อกำหนดเบื้องต้น
- แอป Google Chat ของ Apps Script ที่กำหนดค่าไว้ในหน้าการกำหนดค่า Chat API ในคอนโซล Google Cloud โปรเจ็กต์ Apps Script ของแอปต้องใช้โปรเจ็กต์ Google Cloud มาตรฐานแทนโปรเจ็กต์เริ่มต้นที่สร้างขึ้นโดยอัตโนมัติสำหรับโปรเจ็กต์ Apps Script หากต้องการสร้างแอป Google Chat ที่เข้ากันได้ โปรดดูหัวข้อสร้างแอป Google Chat ด้วย Apps Script
- กำหนดค่าการตรวจสอบสิทธิ์สำหรับแอป Chat แล้ว การดำเนินการในนามของผู้ใช้ต้องมีการตรวจสอบสิทธิ์ผู้ใช้ การดำเนินการในรูปแบบแอป Chat ต้องใช้การตรวจสอบสิทธิ์แอปด้วยบัญชีบริการ หากต้องการตรวจสอบว่าเมธอด Chat API รองรับการตรวจสอบสิทธิ์รูปแบบใด โปรดดูประเภทการตรวจสอบสิทธิ์ที่จำเป็นสำหรับการเรียก Google Chat API
ข้อมูลอ้างอิง
โปรดดูข้อมูลเพิ่มเติมเกี่ยวกับบริการนี้ในเอกสารอ้างอิงสำหรับ Chat API บริการ Chat จะใช้ออบเจ็กต์ เมธอด และพารามิเตอร์เดียวกันกับ API สาธารณะ เช่นเดียวกับบริการขั้นสูงทั้งหมดใน Apps Script
รหัสตัวอย่าง
ตัวอย่างเหล่านี้จะแสดงวิธีดำเนินการทั่วไปกับ 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
เพิ่มขอบเขตการให้สิทธิ์
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 ขั้นสูงไม่รองรับรายการต่อไปนี้
- เมธอดของ Chat API
media.download
- เมธอดของ Chat API ที่มีอยู่ในเวอร์ชันตัวอย่างสำหรับนักพัฒนาแอป
หากต้องการดาวน์โหลดไฟล์แนบข้อความหรือเรียกใช้วิธีการแสดงตัวอย่างสำหรับนักพัฒนาซอฟต์แวร์ ให้ใช้ UrlFetchApp
แทน