Tìm không gian cho tin nhắn trực tiếp (DM)

Hướng dẫn này giải thích cách sử dụng phương thức findDirectMessage() trên tài nguyên Space của Google Chat API để lấy thông tin chi tiết về một không gian tin nhắn trực tiếp (DM).

Tài nguyên Space đại diện cho một nơi mà mọi người và các ứng dụng Chat có thể gửi tin nhắn, chia sẻ tệp và cộng tác. Có một số loại không gian như sau:

  • Tin nhắn trực tiếp (DM) là cuộc trò chuyện giữa hai người dùng hoặc giữa một người dùng và một ứng dụng Chat.
  • Cuộc trò chuyện nhóm là cuộc trò chuyện giữa 3 người dùng trở lên và các ứng dụng Chat.
  • Không gian có tên là những nơi ổn định để mọi người gửi tin nhắn, chia sẻ tệp và cộng tác.

Khi một quản trị viên Google Workspace cài đặt một ứng dụng Chat cho toàn bộ tổ chức Google Workspace của họ, Google Chat sẽ tạo một tin nhắn trực tiếp giữa ứng dụng Chat đã cài đặt và mỗi người dùng trong tổ chức.

Xác thực bằng xác thực ứng dụng cho phép một ứng dụng Chat nhận được tin nhắn trực tiếp mà ứng dụng Chat có quyền truy cập trong Google Chat (ví dụ: tin nhắn trực tiếp mà ứng dụng là thành viên). Xác thực bằng xác thực người dùng sẽ trả về tin nhắn trực tiếp mà người dùng đã xác thực có quyền truy cập.

Điều kiện tiên quyết

Node.js

Tìm tin nhắn trực tiếp

Để tìm tin nhắn trực tiếp trong Google Chat, hãy truyền các thông tin sau trong yêu cầu của bạn:

  • Với xác thực ứng dụng, hãy chỉ định phạm vi uỷ quyền chat.bot. Với xác thực người dùng, hãy chỉ định phạm vi uỷ quyền chat.spaces.readonly hoặc chat.spaces.
  • Gọi phương thức FindDirectMessage(), truyền name của người dùng khác trong tin nhắn trực tiếp để trả về. Với xác thực người dùng, phương thức này sẽ trả về một tin nhắn trực tiếp giữa người dùng gọi và người dùng được chỉ định. Với tính năng xác thực ứng dụng, phương thức này sẽ trả về một tin nhắn trực tiếp giữa ứng dụng gọi và người dùng được chỉ định.
  • Để thêm một người dùng là thành viên của không gian, hãy chỉ định users/{user}, trong đó {user}{person_id} cho person từ People API hoặc mã nhận dạng của user trong Directory API. Ví dụ: nếu người dùng People API resourceNamepeople/123456789, bạn có thể thêm người dùng vào không gian bằng cách thêm một thành viên có users/123456789 làm member.name.

Tìm tin nhắn trực tiếp có xác thực người dùng

Sau đây là cách tìm tin nhắn trực tiếp có xác thực người dùng:

Node.js

chat/client-libraries/cloud/find-dm-space-user-cred.js
import {createClientWithUserCredentials} from './authentication-utils.js';

const USER_AUTH_OAUTH_SCOPES = ['https://www.googleapis.com/auth/chat.spaces.readonly'];

// This sample shows how to find a Direct Message space with user credential
async function main() {
  // Create a client
  const chatClient = await createClientWithUserCredentials(USER_AUTH_OAUTH_SCOPES);

  // Initialize request argument(s)
  const request = {
    // Replace USER_NAME here
    name: 'users/USER_NAME'
  };

  // Make the request
  const response = await chatClient.findDirectMessage(request);

  // Handle the response
  console.log(response);
}

main().catch(console.error);

Để chạy mẫu này, hãy thay thế USER_NAME bằng mã nhận dạng trong trường name của người dùng.

Chat API trả về một phiên bản Space cho biết thông tin chi tiết về tin nhắn trực tiếp được chỉ định.

Tìm tin nhắn trực tiếp có xác thực ứng dụng

Sau đây là cách tìm tin nhắn trực tiếp bằng tính năng xác thực ứng dụng:

Node.js

chat/client-libraries/cloud/find-dm-space-app-cred.js
import {createClientWithAppCredentials} from './authentication-utils.js';

// This sample shows how to find a Direct Message space with app credential
async function main() {
  // Create a client
  const chatClient = createClientWithAppCredentials();

  // Initialize request argument(s)
  const request = {
    // Replace USER_NAME here
    name: 'users/USER_NAME'
  };

  // Make the request
  const response = await chatClient.findDirectMessage(request);

  // Handle the response
  console.log(response);
}

main().catch(console.error);

Để chạy mẫu này, hãy thay thế USER_NAME bằng mã nhận dạng trong trường name của người dùng.

Chat API trả về một phiên bản Space cho biết thông tin chi tiết về tin nhắn trực tiếp được chỉ định.