หน้านี้จะอธิบายวิธีตั้งค่าเว็บฮุคเพื่อส่งข้อความแบบไม่พร้อมกันไปยังพื้นที่ใน Chat โดยใช้ทริกเกอร์ภายนอก เช่น คุณสามารถกำหนดค่าแอปพลิเคชันการตรวจสอบเพื่อแจ้งเตือนบุคลากรที่พร้อมรับสายใน Chat เมื่อเซิร์ฟเวอร์หยุดทำงาน หากต้องการส่งข้อความพร้อมกันด้วยแอป Chat โปรดดูหัวข้อส่งข้อความ
การออกแบบสถาปัตยกรรมประเภทนี้จะทำให้ผู้ใช้โต้ตอบกับเว็บฮุคหรือแอปพลิเคชันภายนอกที่เชื่อมต่อไม่ได้เพราะเป็นการสื่อสารทางเดียว เว็บฮุคไม่ใช่การสนทนา แต่จะตอบกลับหรือรับข้อความจากผู้ใช้หรือเหตุการณ์การโต้ตอบในแอป Chat ไม่ได้ หากต้องการตอบกลับข้อความ ให้สร้างแอป Chat แทนเว็บฮุค
แม้ว่าในทางเทคนิคแล้วเว็บฮุคไม่ใช่แอป Chat แต่เว็บฮุคจะเชื่อมต่อแอปพลิเคชันโดยใช้คำขอ HTTP มาตรฐาน แต่หน้านี้จะหมายถึงแอป Chat ที่ช่วยให้เข้าใจง่ายขึ้น เว็บฮุคแต่ละรายการจะทำงานในพื้นที่ใน Chat ที่ลงทะเบียนไว้เท่านั้น เว็บฮุคขาเข้าจะทำงานในข้อความส่วนตัว แต่เฉพาะเมื่อผู้ใช้ทั้งหมดเปิดใช้แอป Chat ไว้เท่านั้น คุณเผยแพร่เว็บฮุคไปยัง Google Workspace Marketplace ไม่ได้
แผนภาพต่อไปนี้แสดงสถาปัตยกรรมของเว็บฮุคที่เชื่อมต่อกับ Chat
ในแผนภาพก่อนหน้า แอป Chat จะมีโฟลว์ข้อมูลต่อไปนี้
- ตรรกะของแอป Chat จะรับข้อมูลจากบริการภายนอกของบุคคลที่สาม เช่น ระบบจัดการโปรเจ็กต์หรือเครื่องมือออกตั๋ว
- ตรรกะของแอป Chat จะโฮสต์อยู่ในระบบคลาวด์หรือระบบภายในองค์กรที่ส่งข้อความโดยใช้ URL ของเว็บฮุคไปยังพื้นที่ใน Chat ที่เฉพาะเจาะจงได้
- ผู้ใช้จะรับข้อความจากแอป Chat ในพื้นที่ใน Chat ดังกล่าวได้ แต่จะโต้ตอบกับแอป Chat ไม่ได้
ข้อกำหนดเบื้องต้น
Python
- บัญชี Google Workspace ที่มีสิทธิ์เข้าถึง Chat องค์กร Google Workspace ต้องอนุญาตให้ผู้ใช้เพิ่มและใช้เว็บฮุคขาเข้า
- Python 3.10.7 ขึ้นไป
ไลบรารี
httplib2
หากจำเป็น ให้เรียกใช้คำสั่งอินเทอร์เฟซบรรทัดคำสั่ง (CLI) ต่อไปนี้เพื่อติดตั้งไลบรารีโดยใช้pip
pip install httplib2
พื้นที่ใน Chat ที่มีอยู่แล้ว
Node.js
- บัญชี Google Workspace ที่มีสิทธิ์เข้าถึง Chat องค์กร Google Workspace ต้องอนุญาตให้ผู้ใช้เพิ่มและใช้เว็บฮุคขาเข้า
- Node.js และ npm ให้ติดตั้ง
- พื้นที่ใน Chat ที่มีอยู่แล้ว
Java
- บัญชี Google Workspace ที่มีสิทธิ์เข้าถึง Chat องค์กร Google Workspace อนุญาตให้ผู้ใช้เพิ่มและใช้เว็บฮุคขาเข้า
- Java 11 ขึ้นไป
- Apache Maven
- พื้นที่ใน Chat ที่มีอยู่แล้ว
Apps Script
- บัญชี Google Workspace ที่มีสิทธิ์เข้าถึง Chat องค์กร Google Workspace อนุญาตให้ผู้ใช้เพิ่มและใช้เว็บฮุคขาเข้า
- พื้นที่ใน Chat ที่มีอยู่แล้ว
สร้างเว็บฮุค
หากต้องการสร้างเว็บฮุค ให้ลงทะเบียนเว็บฮุคที่ต้องการรับข้อความแล้วเขียนสคริปต์สำหรับส่งข้อความ
ลงทะเบียนเว็บฮุคขาเข้า
- เปิด Chat ในเบราว์เซอร์ คุณจะกำหนดค่าเว็บฮุคจากแอป Chat บนอุปกรณ์เคลื่อนที่ไม่ได้
- ไปยังพื้นที่ทำงานที่ต้องการเพิ่มเว็บฮุค
- ถัดจากชื่อพื้นที่ทำงาน ให้คลิก ลูกศรขยายเพิ่มเติม แล้วคลิกแอปและการผสานรวม
คลิก
เพิ่มเว็บฮุคป้อน
Quickstart Webhook
ในช่องชื่อในช่อง URL ของรูปโปรไฟล์ ให้ป้อน
https://developers.google.com/chat/images/chat-product-icon.png
คลิกบันทึก
หากต้องการคัดลอก URL ของเว็บฮุค ให้คลิก
เพิ่มเติม แล้วคลิก คัดลอกลิงก์
เขียนสคริปต์เว็บฮุค
ตัวอย่างสคริปต์เว็บฮุคจะส่งข้อความไปยังพื้นที่ที่มีการลงทะเบียนเว็บฮุคโดยการส่งคำขอ POST
ไปยัง URL ของเว็บฮุค Chat API จะตอบสนองด้วยอินสแตนซ์ของ Message
เลือกภาษาเพื่อดูวิธีสร้างสคริปต์เว็บฮุค
Python
สร้างไฟล์ชื่อ
quickstart.py
ในไดเรกทอรีการทำงานใน
quickstart.py
ให้วางรหัสต่อไปนี้แทนที่ค่าสำหรับตัวแปร
url
ด้วย URL ของเว็บฮุคที่คัดลอกมาตอนลงทะเบียนเว็บฮุค
Node.js
สร้างไฟล์ชื่อ
index.js
ในไดเรกทอรีการทำงานใน
index.js
ให้วางรหัสต่อไปนี้แทนที่ค่าสำหรับตัวแปร
url
ด้วย URL ของเว็บฮุคที่คัดลอกมาตอนลงทะเบียนเว็บฮุค
Java
สร้างไฟล์ชื่อ
pom.xml
ในไดเรกทอรีการทำงานคัดลอกและวางข้อมูลต่อไปนี้ใน
pom.xml
ในไดเรกทอรีการทำงาน ให้สร้างโครงสร้างไดเรกทอรีต่อไปนี้
src/main/java
ในไดเรกทอรี
src/main/java
ให้สร้างไฟล์ชื่อApp.java
ใน
App.java
ให้วางรหัสต่อไปนี้แทนที่ค่าสำหรับตัวแปร
URL
ด้วย URL ของเว็บฮุคที่คัดลอกมาเมื่อลงทะเบียนเว็บฮุค
Apps Script
ในเบราว์เซอร์ ให้ไปที่ Apps Script
คลิกโครงการใหม่
วางโค้ดต่อไปนี้
แทนที่ค่าสำหรับตัวแปร
url
ด้วย URL ของเว็บฮุคที่คัดลอกมาเมื่อลงทะเบียนเว็บฮุค
เรียกใช้สคริปต์เว็บฮุค
ใน CLI ให้เรียกใช้สคริปต์ดังนี้
Python
python3 quickstart.py
Node.js
node index.js
Java
mvn compile exec:java -Dexec.mainClass=App
Apps Script
- คลิกเรียกใช้
เมื่อเรียกใช้โค้ด เว็บฮุคจะส่งข้อความไปยังพื้นที่ทำงานที่คุณลงทะเบียนโค้ดไว้
เริ่มหรือตอบชุดข้อความ
ระบุ
spaces.messages.thread.threadKey
เป็นส่วนหนึ่งของเนื้อหาคำขอข้อความ ใช้ค่าต่อไปนี้สำหรับthreadKey
โดยขึ้นอยู่กับว่าคุณกำลังเริ่มหรือตอบกลับชุดข้อความหากเริ่มต้นชุดข้อความ ให้ตั้งค่า
threadKey
เป็นสตริงที่กำหนดเอง แต่จดบันทึกค่านี้เพื่อโพสต์การตอบกลับชุดข้อความหากตอบกลับชุดข้อความ ให้ระบุ
threadKey
ที่ตั้งไว้เมื่อเริ่มชุดข้อความ เช่น หากต้องการโพสต์การตอบชุดข้อความซึ่งมีข้อความเริ่มต้นที่ใช้MY-THREAD
ให้ตั้งค่าMY-THREAD
กำหนดลักษณะการทำงานของชุดข้อความหากไม่พบ
threadKey
ที่ระบุ ดังนี้ตอบกลับชุดข้อความหรือเริ่มชุดข้อความใหม่ เพิ่มพารามิเตอร์
messageReplyOption=REPLY_MESSAGE_FALLBACK_TO_NEW_THREAD
ลงใน URL ของเว็บฮุค การส่งพารามิเตอร์ของ URL นี้ทำให้ Chat ค้นหาชุดข้อความที่มีอยู่โดยใช้threadKey
ที่ระบุ หากพบข้อความดังกล่าว ข้อความจะโพสต์เป็นการตอบกลับชุดข้อความนั้น หากไม่พบข้อความใดเลย ข้อความจะเริ่มชุดข้อความใหม่ที่ตรงกับthreadKey
นั้นตอบกลับชุดข้อความหรือไม่ดำเนินการใดๆ เพิ่มพารามิเตอร์
messageReplyOption=REPLY_MESSAGE_OR_FAIL
ลงใน URL ของเว็บฮุค การส่งพารามิเตอร์ของ URL นี้ทำให้ Chat ค้นหาชุดข้อความที่มีอยู่โดยใช้threadKey
ที่ระบุ หากพบข้อความดังกล่าว ข้อความจะโพสต์เป็นการตอบกลับชุดข้อความนั้น ถ้าไม่พบข้อความใด แสดงว่าระบบไม่ได้ส่งข้อความ
ดูข้อมูลเพิ่มเติมได้ที่
messageReplyOption
ตัวอย่างโค้ดต่อไปนี้จะเริ่มต้นหรือตอบกลับชุดข้อความ