คำแนะนำนี้จะอธิบายวิธีใช้เมธอด patch
ในทรัพยากร Space
ของ Google Chat API เพื่ออัปเดตพื้นที่ทำงาน อัปเดตพื้นที่ทำงานเพื่อเปลี่ยนแอตทริบิวต์เกี่ยวกับพื้นที่ทำงาน เช่น ชื่อที่แสดง คำอธิบาย และหลักเกณฑ์ที่ผู้ใช้มองเห็น
แหล่งข้อมูล Space
เป็นพื้นที่ที่ผู้คนและแอป Chat ใช้ในการส่งข้อความ แชร์ไฟล์ และทำงานร่วมกัน พื้นที่ทำงานมีหลายประเภทดังนี้
- ข้อความส่วนตัว (DM) คือการสนทนาระหว่างผู้ใช้ 2 คนหรือผู้ใช้กับแอป Chat
- การแชทเป็นกลุ่มคือการสนทนาระหว่างผู้ใช้ 3 คนขึ้นไปกับแอป Chat
- พื้นที่ทำงานที่มีชื่อจะเป็นพื้นที่ทำงานถาวรที่ผู้คนส่งข้อความ แชร์ไฟล์ และทำงานร่วมกัน
ข้อกำหนดเบื้องต้น
Python
- Python 3.6 ขึ้นไป
- เครื่องมือการจัดการแพ็กเกจ pip
ไลบรารีของไคลเอ็นต์ Google ล่าสุดสำหรับ Python หากต้องการติดตั้งหรืออัปเดต ให้เรียกใช้คำสั่งต่อไปนี้ในอินเทอร์เฟซบรรทัดคำสั่ง
pip3 install --upgrade google-api-python-client google-auth-oauthlib
- โปรเจ็กต์ Google Cloud ที่เปิดใช้และกำหนดค่า Google Chat API โปรดดูขั้นตอนที่หัวข้อสร้างแอป Google Chat
กำหนดค่าการให้สิทธิ์สำหรับแอป Chat แล้ว การอัปเดตพื้นที่ทำงานจะต้องมีการตรวจสอบสิทธิ์ผู้ใช้ที่มีขอบเขตการให้สิทธิ์
chat.spaces
Node.js
- Node.js และ npm
ไลบรารีของไคลเอ็นต์ Google ล่าสุดสำหรับ Node.js หากต้องการติดตั้ง ให้เรียกใช้คำสั่งต่อไปนี้ในอินเทอร์เฟซบรรทัดคำสั่ง
npm install @google-cloud/local-auth @googleapis/chat
- โปรเจ็กต์ Google Cloud ที่เปิดใช้และกำหนดค่า Google Chat API โปรดดูขั้นตอนที่หัวข้อสร้างแอป Google Chat
กำหนดค่าการให้สิทธิ์สำหรับแอป Chat แล้ว การอัปเดตพื้นที่ทำงานจะต้องมีการตรวจสอบสิทธิ์ผู้ใช้ที่มีขอบเขตการให้สิทธิ์
chat.spaces
อัปเดตพื้นที่ทำงาน
หากต้องการอัปเดตพื้นที่ทำงานที่มีอยู่ใน Google Chat ให้ส่งข้อมูลต่อไปนี้ในคำขอ
- ระบุขอบเขตการให้สิทธิ์
chat.spaces
- เรียกใช้เมธอด
patch
ในทรัพยากรSpace
และส่งname
ของพื้นที่ทำงานเพื่ออัปเดต รวมถึงupdateMask
และbody
ที่ระบุแอตทริบิวต์พื้นที่ทำงานที่อัปเดตแล้ว updateMask
จะระบุส่วนต่างๆ ของพื้นที่ทำงานที่จะอัปเดต และประกอบด้วยข้อมูลต่อไปนี้displayName
: อัปเดตชื่อของพื้นที่ทำงานที่ผู้ใช้อ่านได้ซึ่งแสดงใน UI ของ Google Chat รองรับเฉพาะการเปลี่ยนชื่อที่แสดงของพื้นที่ทำงานที่มีประเภทSPACE
หรือเมื่อใส่มาสก์spaceType
ด้วยเพื่อเปลี่ยนประเภทพื้นที่ทำงานGROUP_CHAT
เป็นSPACE
การพยายามอัปเดตชื่อที่แสดงของGROUP_CHAT
หรือพื้นที่ทำงานDIRECT_MESSAGE
ทำให้เกิดข้อผิดพลาดเกี่ยวกับอาร์กิวเมนต์ที่ไม่ถูกต้องspaceType
: อัปเดตประเภทของพื้นที่ทำงาน แต่รองรับการเปลี่ยนประเภทพื้นที่ทำงานGROUP_CHAT
เป็นSPACE
เท่านั้น รวมdisplayName
ร่วมกับspaceType
ในมาสก์การอัปเดต และตรวจสอบว่าพื้นที่ที่ระบุมีdisplayName
และประเภทพื้นที่ทำงานSPACE
ที่ไม่ว่างเปล่า หากพื้นที่ทํางานที่มีอยู่มีประเภทSPACE
อยู่แล้ว ซึ่งรวมถึงมาสก์spaceType
และประเภทSPACE
ในพื้นที่ทํางานที่ระบุเมื่ออัปเดตชื่อที่แสดงเป็นแบบไม่บังคับ การพยายามอัปเดตประเภทพื้นที่ทำงานด้วยวิธีอื่นจะทําให้เกิดข้อผิดพลาดเกี่ยวกับอาร์กิวเมนต์ที่ไม่ถูกต้องspaceDetails
: รายละเอียดเกี่ยวกับพื้นที่ทำงาน รวมถึงคำอธิบายและกฎspaceHistoryState
: รองรับการเปิดหรือปิดประวัติของพื้นที่ทำงาน หากองค์กรอนุญาตให้ผู้ใช้เปลี่ยนการตั้งค่าประวัติ ใช้กับเส้นทางสนามอื่นโดยเฉพาะได้
วิธีอัปเดต spaceDetails
ของพื้นที่ทำงานที่มีอยู่
Python
- สร้างไฟล์ชื่อ
chat_space_update.py
ในไดเรกทอรีการทำงาน ใส่รหัสต่อไปนี้ใน
chat_space_update.py
:from google_auth_oauthlib.flow import InstalledAppFlow from googleapiclient.discovery import build # Define your app's authorization scopes. # When modifying these scopes, delete the file token.json, if it exists. SCOPES = ["https://www.googleapis.com/auth/chat.spaces"] def main(): ''' Authenticates with Chat API via user credentials, then updates the specified space description and guidelines. ''' # Authenticate with Google Workspace # and get user authorization. flow = InstalledAppFlow.from_client_secrets_file( 'client_secrets.json', SCOPES) creds = flow.run_local_server() # Build a service endpoint for Chat API. chat = build('chat', 'v1', credentials=creds) # Use the service endpoint to call Chat API. result = chat.spaces().patch( # The space to update, and the updated space details. # # Replace {space} with a space name. # Obtain the space name from the spaces resource of Chat API, # or from a space's URL. name='spaces/SPACE', updateMask='spaceDetails', body={ 'spaceDetails': { 'description': 'This description was updated with Chat API!', 'guidelines': 'These guidelines were updated with Chat API!' } } ).execute() # Prints details about the updated space. print(result) if __name__ == '__main__': main()
ในโค้ด ให้แทนที่
SPACE
ด้วยชื่อพื้นที่ทำงานซึ่งคุณดูได้จากเมธอดspaces.list
ใน Chat API หรือจาก URL ของพื้นที่ทำงานสร้างและเรียกใช้ตัวอย่างในไดเรกทอรีการทำงาน
python3 chat_space_update.py
Node.js
- สร้างไฟล์ชื่อ
update-space.js
ในไดเรกทอรีการทำงาน ใส่รหัสต่อไปนี้ใน
update-space.js
:const chat = require('@googleapis/chat'); const {authenticate} = require('@google-cloud/local-auth'); /** * Updates a Chat space with the description and guidelines. * @return {!Promise<!Object>} */ async function updateSpace() { const scopes = [ 'https://www.googleapis.com/auth/chat.spaces', ]; const authClient = await authenticate({scopes, keyfilePath: 'client_secrets.json'}); const chatClient = await chat.chat({version: 'v1', auth: authClient}); return await chatClient.spaces.patch({ name: 'spaces/SPACE', updateMask: 'spaceDetails', requestBody: { spaceDetails: { description: 'This description was updated with Chat API!', guidelines: 'These guidelines were updated with Chat API!' }, } }); } updateSpace().then(console.log);
ในโค้ด ให้แทนที่
SPACE
ด้วยชื่อพื้นที่ทำงานซึ่งคุณดูได้จากเมธอดspaces.list
ใน Chat API หรือจาก URL ของพื้นที่ทำงานเรียกใช้ตัวอย่างในไดเรกทอรีการทำงาน
node update-space.js
Google Chat API จะส่งกลับอินสแตนซ์ของทรัพยากร Space
ที่แสดงการอัปเดต
หัวข้อที่เกี่ยวข้อง
- ดูรายละเอียดเกี่ยวกับพื้นที่ทำงาน
- แสดงรายการพื้นที่ทำงาน
- ลบพื้นที่ทำงาน
- ตั้งค่าพื้นที่ทำงาน
- ค้นหาพื้นที่ข้อความส่วนตัว