สร้างแอป HTTP สำหรับ Google Chat

หน้านี้อธิบายวิธีสร้างส่วนเสริมของ Google Workspace ที่ใช้ได้ใน Google Chat โดยใช้บริการ HTTP

การเริ่มต้นอย่างรวดเร็วนี้แสดงวิธีสร้างบริการ HTTP โดยใช้บริการของ Google Cloud หากต้องการสร้างแอป Chat คุณจะต้องเขียนและทำให้ ฟังก์ชัน Cloud Run ใช้งานได้ ซึ่งแอป Chat จะใช้ฟังก์ชันนี้เพื่อตอบกลับข้อความของผู้ใช้

สถาปัตยกรรม HTTP ช่วยให้คุณกำหนดค่า Chat เพื่อผสานรวมกับ Google Cloud หรือเซิร์ฟเวอร์ในองค์กรโดยใช้ HTTP ได้ ดังที่แสดงใน แผนภาพต่อไปนี้

สถาปัตยกรรมของแอป Chat ที่ใช้บริการเว็บในเซิร์ฟเวอร์ภายในองค์กร

ในแผนภาพก่อนหน้านี้ ผู้ใช้ที่โต้ตอบกับแอป HTTP Chat จะมีขั้นตอนการไหลของข้อมูลดังนี้

  1. ผู้ใช้ส่งข้อความใน Chat ไปยัง แอป Chat ไม่ว่าจะในข้อความส่วนตัวหรือใน พื้นที่ทำงานใน Chat
  2. ระบบจะส่งคำขอ HTTP ไปยังเว็บเซิร์ฟเวอร์ซึ่งเป็นระบบคลาวด์หรือระบบในองค์กรที่มีตรรกะของแอป Chat
  3. ไม่บังคับ: ตรรกะของแอป Chat สามารถผสานรวมกับ บริการของ Google Workspace (เช่น ปฏิทินและ ชีต), บริการอื่นๆ ของ Google (เช่น Maps, YouTube และ Vertex AI) หรือบริการเว็บอื่นๆ (เช่น ระบบ การจัดการโปรเจ็กต์หรือเครื่องมือออกตั๋ว)
  4. เว็บเซิร์ฟเวอร์จะส่งการตอบกลับ HTTP กลับไปยัง บริการแอป Chat ใน Chat
  5. ระบบจะส่งคำตอบให้ผู้ใช้
  6. แอป Chat สามารถเรียกใช้ Chat API เพื่อโพสต์ข้อความแบบไม่พร้อมกันหรือดำเนินการอื่นๆ ได้ (ไม่บังคับ)

สถาปัตยกรรมนี้ช่วยให้คุณมีความยืดหยุ่นในการใช้ไลบรารีและคอมโพเนนต์ที่มีอยู่แล้วในระบบ เนื่องจากแอปแชทเหล่านี้สามารถออกแบบโดยใช้ภาษาโปรแกรมที่แตกต่างกันได้

วัตถุประสงค์

  • ตั้งค่าสภาพแวดล้อม
  • สร้างและทำให้ฟังก์ชัน Cloud Run ใช้งานได้
  • กำหนดค่าส่วนเสริมของ Google Workspace สำหรับแอป Chat
  • ทดสอบแอป

ข้อกำหนดเบื้องต้น

ตั้งค่าสภาพแวดล้อม

ก่อนใช้ Google API คุณต้องเปิดใช้ API ในโปรเจ็กต์ Google Cloud คุณเปิด API อย่างน้อย 1 รายการในโปรเจ็กต์ Google Cloud เดียวได้
  • ในคอนโซล Google Cloud ให้เปิดใช้ Cloud Build API, Cloud Functions API, Cloud Pub/Sub API, Cloud Logging API, Artifact Registry API และ Cloud Run API

    เปิดใช้ API

สร้างและทำให้ฟังก์ชัน Cloud Run ใช้งานได้

สร้างและทําให้ฟังก์ชัน Cloud Run ใช้งานได้ ซึ่งจะสร้างการ์ด Chat พร้อมชื่อที่แสดงและรูปโปรไฟล์ของผู้ส่ง เมื่อแอป Chat ได้รับข้อความ แอปจะเรียกใช้ฟังก์ชันและ ตอบกลับด้วยการ์ด

หากต้องการสร้างและติดตั้งใช้งานฟังก์ชันสำหรับแอป Chat ให้ทำตามขั้นตอนต่อไปนี้

Node.js

  1. ในคอนโซล Google Cloud ให้ไปที่หน้า Cloud Run โดยทำดังนี้

    ไปที่ Cloud Run

    ตรวจสอบว่าได้เลือกโปรเจ็กต์สำหรับแอป Chat แล้ว

  2. คลิกเขียนฟังก์ชัน

  3. ในหน้าสร้างบริการ ให้ตั้งค่าฟังก์ชันดังนี้

    1. ในช่องชื่อบริการ ให้ป้อน addonchatapp
    2. เลือกภูมิภาคในรายการภูมิภาค
    3. ในรายการรันไทม์ ให้เลือก Node.js เวอร์ชันล่าสุด
    4. ในส่วนการตรวจสอบสิทธิ์ ให้เลือกต้องมีการตรวจสอบสิทธิ์
    5. คลิกสร้าง แล้วรอให้ Cloud Run สร้างบริการ คอนโซลจะเปลี่ยนเส้นทางคุณไปยังแท็บแหล่งที่มา
  4. ในแท็บแหล่งที่มา ให้ทำดังนี้

    1. ในจุดแรกเข้า ให้ลบข้อความเริ่มต้นแล้วป้อน avatarApp
    2. แทนที่เนื้อหาของ index.js ด้วยโค้ดต่อไปนี้
    node/chat/avatar-app/index.js
    import { http } from '@google-cloud/functions-framework';
    
    // The ID of the slash command "/about".
    // You must use the same ID in the Google Chat API configuration.
    const ABOUT_COMMAND_ID = 1;
    
    /**
     * Handle requests from Google Workspace add on
     *
     * @param {Object} req Request sent by Google Chat
     * @param {Object} res Response to be sent back to Google Chat
     */
    http('avatarApp', (req, res) => {
      const chatEvent = req.body.chat;
      let message;
      if (chatEvent.appCommandPayload) {
        message = handleAppCommand(chatEvent);
      } else {
        message = handleMessage(chatEvent);
      }
      res.send({ hostAppDataAction: { chatDataAction: { createMessageAction: {
        message: message
      }}}});
    });
    
    /**
     * Responds to an APP_COMMAND event in Google Chat.
     *
     * @param {Object} event the event object from Google Chat
     * @return the response message object.
     */
    function handleAppCommand(event) {
      switch (event.appCommandPayload.appCommandMetadata.appCommandId) {
        case ABOUT_COMMAND_ID:
          return {
            text: 'The Avatar app replies to Google Chat messages.'
          };
      }
    }
    
    /**
     * Responds to a MESSAGE event in Google Chat.
     *
     * @param {Object} event the event object from Google Chat
     * @return the response message object.
     */
    function handleMessage(event) {
      // Stores the Google Chat user as a variable.
      const chatUser = event.messagePayload.message.sender;
      const displayName = chatUser.displayName;
      const avatarUrl = chatUser.avatarUrl;
      return {
        text: 'Here\'s your avatar',
        cardsV2: [{
          cardId: 'avatarCard',
          card: {
            name: 'Avatar Card',
            header: {
              title: `Hello ${displayName}!`,
            },
            sections: [{ widgets: [{
              textParagraph: { text: 'Your avatar picture: ' }
            }, {
              image: { imageUrl: avatarUrl }
            }]}]
          }
        }]
      };
    }
    1. คลิกบันทึกและติดตั้งใช้งานอีกครั้ง

Python

  1. ในคอนโซล Google Cloud ให้ไปที่หน้า Cloud Run โดยทำดังนี้

    ไปที่ Cloud Run

    ตรวจสอบว่าได้เลือกโปรเจ็กต์สำหรับแอป Chat แล้ว

  2. คลิกเขียนฟังก์ชัน

  3. ในหน้าสร้างบริการ ให้ตั้งค่าฟังก์ชันดังนี้

    1. ในช่องชื่อบริการ ให้ป้อน addonchatapp
    2. เลือกภูมิภาคในรายการภูมิภาค
    3. ในรายการรันไทม์ ให้เลือก Python เวอร์ชันล่าสุด
    4. ในส่วนการตรวจสอบสิทธิ์ ให้เลือกต้องมีการตรวจสอบสิทธิ์
    5. คลิกสร้าง แล้วรอให้ Cloud Run สร้างบริการ คอนโซลจะเปลี่ยนเส้นทางคุณไปยังแท็บแหล่งที่มา
  4. ในแท็บแหล่งที่มา ให้ทำดังนี้

    1. ในจุดแรกเข้า ให้ลบข้อความเริ่มต้นแล้วป้อน avatar_app
    2. แทนที่เนื้อหาของ main.py ด้วยโค้ดต่อไปนี้
    python/chat/avatar-app/main.py
    from typing import Any, Mapping
    
    import flask
    import functions_framework
    
    # The ID of the slash command "/about".
    # You must use the same ID in the Google Chat API configuration.
    ABOUT_COMMAND_ID = 1
    
    @functions_framework.http
    def avatar_app(req: flask.Request) -> Mapping[str, Any]:
      """Handle requests from Google Workspace add on
    
      Args:
        flask.Request req: the request sent by Google Chat
    
      Returns:
        Mapping[str, Any]: the response to be sent back to Google Chat
      """
      chat_event = req.get_json(silent=True)["chat"]
      if chat_event and "appCommandPayload" in chat_event:
        message = handle_app_command(chat_event)
      else:
        message = handle_message(chat_event)
      return { "hostAppDataAction": { "chatDataAction": { "createMessageAction": {
          "message": message
      }}}}
    
    def handle_app_command(event: Mapping[str, Any]) -> Mapping[str, Any]:
      """Responds to an APP_COMMAND event in Google Chat.
    
      Args:
        Mapping[str, Any] event: the event object from Google Chat
    
      Returns:
        Mapping[str, Any]: the response message object.
      """
      if event["appCommandPayload"]["appCommandMetadata"]["appCommandId"] == ABOUT_COMMAND_ID:
        return {
          "text": "The Avatar app replies to Google Chat messages.",
        }
      return {}
    
    def handle_message(event: Mapping[str, Any]) -> Mapping[str, Any]:
      """Responds to a MESSAGE event in Google Chat.
    
      Args:
        Mapping[str, Any] event: the event object from Google Chat
    
      Returns:
        Mapping[str, Any]: the response message object.
      """
      # Stores the Google Chat user as a variable.
      chat_user = event["messagePayload"]["message"]["sender"]
      display_name = chat_user.get("displayName", "")
      avatar_url = chat_user.get("avatarUrl", "")
      return {
        "text": "Here's your avatar",
        "cardsV2": [{
          "cardId": "avatarCard",
          "card": {
            "name": "Avatar Card",
            "header": {
              "title": f"Hello {display_name}!"
            },
            "sections": [{ "widgets": [
              { "textParagraph": { "text": "Your avatar picture:" }},
              { "image": { "imageUrl": avatar_url }},
            ]}]
          }
        }]
      }
    1. คลิกบันทึกและติดตั้งใช้งานอีกครั้ง

Java

  1. ในคอนโซล Google Cloud ให้ไปที่หน้า Cloud Run โดยทำดังนี้

    ไปที่ Cloud Run

    ตรวจสอบว่าได้เลือกโปรเจ็กต์สำหรับแอป Chat แล้ว

  2. คลิกเขียนฟังก์ชัน

  3. ในหน้าสร้างบริการ ให้ตั้งค่าฟังก์ชันดังนี้

    1. ในช่องชื่อบริการ ให้ป้อน addonchatapp
    2. เลือกภูมิภาคในรายการภูมิภาค
    3. ในรายการรันไทม์ ให้เลือก Java เวอร์ชันล่าสุด
    4. ในส่วนการตรวจสอบสิทธิ์ ให้เลือกต้องมีการตรวจสอบสิทธิ์
    5. คลิกสร้าง แล้วรอให้ Cloud Run สร้างบริการ คอนโซลจะเปลี่ยนเส้นทางคุณไปยังแท็บแหล่งที่มา
  4. ในแท็บแหล่งที่มา ให้ทำดังนี้

    1. ในจุดแรกเข้า ให้ลบข้อความเริ่มต้นแล้วป้อน App
    2. เปลี่ยนชื่อไฟล์ Java เริ่มต้นเป็น src/main/java/com/google/chat/avatar/App.java
    3. แทนที่เนื้อหาของ App.java ด้วยโค้ดต่อไปนี้
    java/chat/avatar-app/src/main/java/com/google/chat/avatar/App.java
    package com.google.chat.avatar;
    
    import com.google.api.services.chat.v1.model.CardWithId;
    import com.google.api.services.chat.v1.model.GoogleAppsCardV1Card;
    import com.google.api.services.chat.v1.model.GoogleAppsCardV1CardHeader;
    import com.google.api.services.chat.v1.model.GoogleAppsCardV1Image;
    import com.google.api.services.chat.v1.model.GoogleAppsCardV1Section;
    import com.google.api.services.chat.v1.model.GoogleAppsCardV1TextParagraph;
    import com.google.api.services.chat.v1.model.GoogleAppsCardV1Widget;
    import com.google.api.services.chat.v1.model.Message;
    import com.google.cloud.functions.HttpFunction;
    import com.google.cloud.functions.HttpRequest;
    import com.google.cloud.functions.HttpResponse;
    import com.google.gson.Gson;
    import com.google.gson.JsonObject;
    import java.util.List;
    
    public class App implements HttpFunction {
      // The ID of the slash command "/about".
      // You must use the same ID in the Google Chat API configuration.
      private static final int ABOUT_COMMAND_ID = 1;
    
      private static final Gson gson = new Gson();
    
      /**
       * Handle requests from Google Workspace add on
       * 
       * @param request the request sent by Google Chat
       * @param response the response to be sent back to Google Chat
       */
      @Override
      public void service(HttpRequest request, HttpResponse response) throws Exception {
        JsonObject event = gson.fromJson(request.getReader(), JsonObject.class);
        JsonObject chatEvent = event.getAsJsonObject("chat");
        Message message;
        if (chatEvent.has("appCommandPayload")) {
          message = handleAppCommand(chatEvent);
        } else {
          message = handleMessage(chatEvent);
        }
        JsonObject createMessageAction = new JsonObject();
        createMessageAction.add("message", gson.fromJson(gson.toJson(message), JsonObject.class));
        JsonObject chatDataAction = new JsonObject();
        chatDataAction.add("createMessageAction", createMessageAction);
        JsonObject hostAppDataAction = new JsonObject();
        hostAppDataAction.add("chatDataAction", chatDataAction);
        JsonObject dataActions = new JsonObject();
        dataActions.add("hostAppDataAction", hostAppDataAction);
        response.getWriter().write(gson.toJson(dataActions));
      }
    
      /**
       * Handles an APP_COMMAND event in Google Chat.
       *
       * @param event the event object from Google Chat
       * @return the response message object.
       */
      private Message handleAppCommand(JsonObject event) throws Exception {
        switch (event.getAsJsonObject("appCommandPayload")
          .getAsJsonObject("appCommandMetadata").get("appCommandId").getAsInt()) {
          case ABOUT_COMMAND_ID:
            return new Message()
              .setText("The Avatar app replies to Google Chat messages.");
          default:
            return null;
        }
      }
    
      /**
       * Handles a MESSAGE event in Google Chat.
       *
       * @param event the event object from Google Chat
       * @return the response message object.
       */
      private Message handleMessage(JsonObject event) throws Exception {
        // Stores the Google Chat user as a variable.
        JsonObject chatUser = event.getAsJsonObject("messagePayload").getAsJsonObject("message").getAsJsonObject("sender");
        String displayName = chatUser.has("displayName") ? chatUser.get("displayName").getAsString() : "";
        String avatarUrl = chatUser.has("avatarUrl") ? chatUser.get("avatarUrl").getAsString() : "";
        return new Message()
          .setText("Here's your avatar")
          .setCardsV2(List.of(new CardWithId()
            .setCardId("avatarCard")
            .setCard(new GoogleAppsCardV1Card()
              .setName("Avatar Card")
              .setHeader(new GoogleAppsCardV1CardHeader()
                .setTitle(String.format("Hello %s!", displayName)))
              .setSections(List.of(new GoogleAppsCardV1Section().setWidgets(List.of(
                new GoogleAppsCardV1Widget().setTextParagraph(new GoogleAppsCardV1TextParagraph()
                  .setText("Your avatar picture:")),
                new GoogleAppsCardV1Widget()
                  .setImage(new GoogleAppsCardV1Image().setImageUrl(avatarUrl)))))))));
      }
    }
  5. แทนที่เนื้อหาของ pom.xml ด้วยโค้ดต่อไปนี้

    java/chat/avatar-app/pom.xml
    <project xmlns="http://maven.apache.org/POM/4.0.0"
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
      <modelVersion>4.0.0</modelVersion>
    
      <groupId>com.google.chat</groupId>
      <artifactId>avatar-app</artifactId>
      <version>1.0-SNAPSHOT</version>
    
      <properties>
        <maven.compiler.target>17</maven.compiler.target>
        <maven.compiler.source>17</maven.compiler.source>
      </properties>
    
      <dependencies>
        <dependency>
          <groupId>com.google.cloud.functions</groupId>
          <artifactId>functions-framework-api</artifactId>
          <version>1.1.4</version>
        </dependency>
        <dependency>
          <groupId>com.google.code.gson</groupId>
          <artifactId>gson</artifactId>
          <version>2.9.1</version>
        </dependency>
        <dependency>
          <groupId>com.google.apis</groupId>
          <artifactId>google-api-services-chat</artifactId>
          <version>v1-rev20230115-2.0.0</version>
        </dependency>
      </dependencies>
    
      <build>
        <plugins>
          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>3.8.1</version>
            <configuration>
            <excludes>
              <exclude>.google/</exclude>
            </excludes>
            </configuration>
          </plugin>
        </plugins>
      </build>
    </project>
    1. คลิกบันทึกและติดตั้งใช้งานอีกครั้ง

หน้ารายละเอียดบริการ Cloud Run จะเปิดขึ้น รอให้ฟังก์ชันใช้งานได้

กำหนดค่าส่วนเสริม

หลังจากที่ทําการติดตั้งฟังก์ชัน Cloud Run แล้ว ให้ทําตามขั้นตอนต่อไปนี้เพื่อสร้าง ส่วนเสริมและติดตั้งแอป Google Chat

  1. ในคอนโซล Google Cloud ให้ไปที่หน้า Cloud Run โดยทำดังนี้

    ไปที่ Cloud Run

    ตรวจสอบว่าได้เลือกโปรเจ็กต์ที่คุณเปิดใช้ Cloud Run แล้ว

  2. คลิก addonchatapp ในรายการฟังก์ชัน

  3. ในหน้ารายละเอียดบริการ ให้คัดลอก URL ของฟังก์ชัน URL ลงท้ายด้วย run.app

  4. ในช่องค้นหาของ Google Cloud ให้ค้นหา "Google Chat API" แล้ว คลิก Google Chat API แล้วคลิกจัดการ

    ไปที่ Chat API

  5. คลิกการกำหนดค่า แล้วตั้งค่าแอป Google Chat ดังนี้

    1. ในส่วนชื่อแอป ให้ป้อน Add-on Chat app
    2. ใน URL ของรูปโปรไฟล์ ให้ป้อน https://developers.google.com/workspace/add-ons/images/quickstart-app-avatar.png
    3. ในคำอธิบาย ให้ป้อน Add-on Chat app
    4. ในส่วนฟังก์ชันการทำงาน ให้เลือกเข้าร่วมพื้นที่ทำงานและการสนทนากลุ่ม
    5. ในส่วนการตั้งค่าการเชื่อมต่อ ให้เลือก URL ของปลายทาง HTTP
    6. คัดลอกอีเมลบัญชีบริการ คุณต้องใช้อีเมลนี้เมื่อ ให้สิทธิ์ส่วนเสริมเพื่อเรียกใช้ฟังก์ชัน
    7. ในส่วนทริกเกอร์ ให้เลือกใช้ URL ปลายทาง HTTP ทั่วไปสำหรับทริกเกอร์ทั้งหมด แล้ววาง URL สำหรับทริกเกอร์ฟังก์ชัน Cloud Run ลงในช่อง
    8. ในส่วนระดับการเข้าถึง ให้เลือก ทำให้แอป Google Chat นี้พร้อมใช้งานสำหรับบุคคลและ กลุ่มที่เฉพาะเจาะจงในโดเมนของคุณ แล้วป้อนอีเมล
    9. ในส่วนบันทึก ให้เลือกบันทึกข้อผิดพลาดไปยังการบันทึก
  6. คลิกบันทึก

จากนั้นให้สิทธิ์แอป Chat เพื่อเรียกใช้ฟังก์ชัน Cloud Run

ให้สิทธิ์ Google Chat ในการเรียกใช้ฟังก์ชัน

หากต้องการให้สิทธิ์ส่วนเสริม Google Workspace ในการเรียกใช้ฟังก์ชัน ให้เพิ่มบัญชีบริการส่วนเสริม Google Workspace ที่มีบทบาทผู้เรียกใช้บริการ Cloud Run

  1. ในคอนโซล Google Cloud ให้ไปที่หน้า Cloud Run โดยทำดังนี้

    ไปที่ Cloud Run

  2. ในรายการบริการ Cloud Run ให้เลือกช่องทําเครื่องหมายข้างฟังก์ชันที่รับ (อย่าคลิกฟังก์ชันโดยตรง)

  3. คลิกสิทธิ์ แผงสิทธิ์จะเปิดขึ้น

  4. คลิกเพิ่มหลัก

  5. ในส่วนผู้ใช้หลักรายใหม่ ให้ป้อนอีเมลของ บัญชีบริการของส่วนเสริม Google Workspace ที่เชื่อมโยงกับแอป Chat

    อีเมลบัญชีบริการจะอยู่ในหน้าการกำหนดค่า Chat API ในส่วนการตั้งค่าการเชื่อมต่อ > URL ปลายทาง HTTP > อีเมลบัญชีบริการ

    ไปที่การกำหนดค่า Chat API

  6. ในเลือกบทบาท ให้เลือก Cloud Run > Cloud Run Service Invoker

  7. คลิกบันทึก

แอป Chat พร้อมรับและตอบกลับ ข้อความใน Chat แล้ว

ทดสอบแอป Chat

หากต้องการทดสอบแอป Chat ให้เปิดพื้นที่ข้อความส่วนตัวด้วย แอป Chat แล้วส่งข้อความโดยทำดังนี้

  1. เปิด Google Chat โดยใช้บัญชี Google Workspace ที่คุณ ระบุเมื่อเพิ่มตัวเองเป็นผู้ทดสอบที่เชื่อถือได้

    ไปที่ Google Chat

  2. คลิก แชทใหม่
  3. ในช่องเพิ่มบุคคลอย่างน้อย 1 คน ให้พิมพ์ชื่อแอป Chat
  4. เลือกแอป Chat จากผลการค้นหา ข้อความส่วนตัวจะเปิดขึ้น

  5. ในข้อความส่วนตัวใหม่กับแอป ให้พิมพ์ Hello แล้วกด enter

ข้อความของแอป Chat มีการ์ดที่แสดงชื่อและรูปโปรไฟล์ของผู้ส่ง ดังที่แสดงในรูปภาพต่อไปนี้

แอปแชทตอบกลับด้วยการ์ดที่มีชื่อที่แสดงและรูปโปรไฟล์ของผู้ส่ง
รูปภาพ

หากต้องการเพิ่มผู้ทดสอบที่เชื่อถือได้และดูข้อมูลเพิ่มเติมเกี่ยวกับการทดสอบฟีเจอร์แบบอินเทอร์แอกทีฟ โปรดดูทดสอบฟีเจอร์แบบอินเทอร์แอกทีฟสำหรับ แอป Google Chat

แก้ปัญหา

เมื่อแอป Google Chat หรือการ์ดแสดงข้อผิดพลาด อินเทอร์เฟซของ Chat จะแสดงข้อความว่า "เกิดข้อผิดพลาด" หรือ "ดำเนินการตามคำขอของคุณไม่ได้" บางครั้ง UI ของ Chat จะไม่แสดงข้อความแสดงข้อผิดพลาดใดๆ แต่แอปหรือการ์ด Chat จะแสดงผลลัพธ์ที่ไม่คาดคิด เช่น ข้อความในการ์ดอาจไม่ปรากฏ

แม้ว่าข้อความแสดงข้อผิดพลาดอาจไม่แสดงใน UI ของ Chat แต่ข้อความแสดงข้อผิดพลาดและข้อมูลบันทึกที่อธิบายไว้จะช่วยคุณแก้ไขข้อผิดพลาดได้เมื่อเปิดการบันทึกข้อผิดพลาดสำหรับแอป Chat หากต้องการความช่วยเหลือในการดู การแก้ไขข้อบกพร่อง และการแก้ไขข้อผิดพลาด โปรดดู แก้ปัญหาและแก้ไขข้อผิดพลาดของ Google Chat

ล้างข้อมูล

เราขอแนะนำให้คุณลบโปรเจ็กต์ Cloud เพื่อหลีกเลี่ยงการเรียกเก็บเงินจากบัญชี Google Cloud สำหรับทรัพยากรที่ใช้ในบทแนะนำนี้

  1. ใน Google Cloud Console ให้ไปที่หน้าจัดการทรัพยากร คลิก เมนู > IAM และผู้ดูแลระบบ > จัดการทรัพยากร

    ไปที่เครื่องมือจัดการทรัพยากร

  2. ในรายการโปรเจ็กต์ ให้เลือกโปรเจ็กต์ที่ต้องการลบ แล้วคลิก ลบ
  3. ในกล่องโต้ตอบ ให้พิมพ์รหัสโปรเจ็กต์ แล้วคลิกปิดเพื่อลบ โปรเจ็กต์