Google Chat mesajları gönderme

Bu sayfada, Google Chat uygulamalarının kullanıcı etkileşimlerini yanıtlamak için nasıl mesaj gönderebileceği açıklanmaktadır.

Google Chat'te eklentiler kullanıcılara Google Chat uygulamaları olarak görünür. Daha fazla bilgi edinmek için Google Chat'i genişletme başlıklı makaleyi inceleyin.

  • Eğik çizgi komutundan iletişim formu.
    Şekil 1. Bir sohbet uygulaması, eğik çizgi komutuna metin mesajı ve düğmeyle yanıt verir.
  • İletişim formu iletişim kutusunda.
    Şekil 2. Bir Chat uygulaması, kullanıcıların bilgi girebileceği bir iletişim kutusu açar.
  • Form giriş widget'ları içeren kart mesajı.
    Şekil 5. Bir Chat uygulaması, metin ve etkileşimli kart içeren bir mesaj gönderir.

Ön koşullar

Node.js

Google Chat'i genişleten bir Google Workspace eklentisi. Bir tane oluşturmak için HTTP hızlı başlangıç kılavuzunu tamamlayın.

Apps Komut Dosyası

Google Chat'i genişleten bir Google Workspace eklentisi. Oluşturmak için Apps Komut Dosyası hızlı başlangıç kılavuzunu tamamlayın.

Mesajı tasarlama

Sohbet uygulamaları, mesajlara aşağıdakilerden herhangi birini ekleyebilir:

  • Köprü, @bahsetme ve emoji içeren metinler.
  • Bir mesajda görünebilen veya iletişim kutusu olarak yeni bir pencerede açılabilen bir veya daha fazla kart.
  • Bir veya daha fazla aksesuar widget'ı (iletideki metin veya kartlardan sonra görünen düğmeler).

Mesaj tasarlama hakkında bilgi edinmek için aşağıdaki Google Chat API belgelerini inceleyin:

Mesajla yanıtla

Sohbet uygulamaları, aşağıdaki tetikleyicilerden veya etkileşimlerden herhangi birine mesajla yanıt verebilir:

  • Kullanıcıların bir Chat uygulamasına @bahsetmesi veya doğrudan mesaj göndermesi gibi durumlarda Mesaj tetikleyicileri
  • Kullanıcılar Chat uygulamasını Google Workspace Marketplace'ten yüklediğinde veya bir alana eklediğinde Alana eklendi tetiklenir.
  • Mesajlardaki veya iletişim kutularındaki kartlardan gelen düğme tıklamaları. Örneğin, kullanıcılar bilgi girip gönder'i tıkladığında.

Aksi takdirde Chat uygulamaları, Google Chat API'yi çağırarak proaktif olarak mesaj gönderebilir.

Mesajla yanıt vermek için DataActions işlemini CreateMessageAction nesnesi ile döndürün:

{ "hostAppDataAction": { "chatDataAction": { "createMessageAction": {
  "message": MESSAGE
}}}

MESSAGE yerine Chat API'den bir Message kaynağı ekleyin. İşlemlerin işleyiş şekli hakkında daha fazla bilgi edinmek için Chat işlemleri başlıklı makaleyi inceleyin.

Aşağıdaki örnekte, bir Chat uygulaması bir alana eklendiğinde kısa mesaj oluşturup göndermektedir. Bir kullanıcı Chat uygulamanızı bir alana eklediğinde kısa mesaj göndermek için Chat uygulamanız, Alana eklendi tetikleyicisine DataActions işlemini döndürerek yanıt verir:

Node.js

/**
 * Sends an onboarding message when the Chat app is added to a space.
 *
 * @param {Object} req The request object from Google Workspace Add-on.
 * @param {Object} res The response object from the Chat app. An onboarding message that
 *                     introduces the app and helps people get started with it.
 */
exports.cymbalApp = function cymbalApp(req, res) {
  const chatEvent = req.body.chat;
  // Send an onboarding message when added to a Chat space
  if (chatEvent.addedToSpacePayload) {
    res.json({ hostAppDataAction: { chatDataAction: { createMessageAction: { message: {
      text: 'Hi, Cymbal at your service. I help you manage your calendar' +
            'from Google Chat. Take a look at your schedule today by typing' +
            '`/checkCalendar`, or schedule a meeting with `/scheduleMeeting`. To learn' +
            'what else I can do, type `/help`.'
    }}}}});
  }
};

Apps Komut Dosyası

/**
 * Sends an onboarding message when the Chat app is added to a space.
 *
 * @param {Object} event The event object from Chat API.
 * @return {Object} Response from the Chat app. An onboarding message that
 *                  introduces the app and helps people get started with it.
 */
function onAddedToSpace(event) {
  return { hostAppDataAction: { chatDataAction: { createMessageAction: { message: {
    text: 'Hi, Cymbal at your service. I help you manage your calendar' +
          'from Google Chat. Take a look at your schedule today by typing' +
          '`/checkCalendar`, or schedule a meeting with `/scheduleMeeting`. To learn' +
          'what else I can do, type `/help`.'
  }}}}};
}

Kod örneği aşağıdaki kısa mesajı döndürür:

İlk katılım mesajı örneği.

Mesajla yanıt vermeyle ilgili daha fazla örnek için aşağıdaki kılavuzları inceleyin:

Mesaj güncelleme

Sohbet uygulamaları, gönderdikleri mesajları da güncelleyebilir. Örneğin, kullanıcı bir iletişim kutusunu gönderdikten veya bir düğmeyi tıkladıktan sonra mesajı güncellemek için.

Bir Chat uygulaması mesajını güncellemek için aşağıdaki örnekte gösterildiği gibi işlemi DataActions ile UpdateMessageAction döndürün:

{ "hostAppDataAction": { "chatDataAction": { "updateMessageAction": {
  "message": MESSAGE
}}}}

MESSAGE yerine Chat API'den bir Message kaynağı ekleyin.

İşlemlerin işleyiş şekli hakkında daha fazla bilgi edinmek için Chat işlemleri başlıklı makaleyi inceleyin.

Sohbet uygulamaları, kullanıcının gönderdiği bağlantının önizlemesini döndürmek için kullanıcıdan gelen bir mesajı da güncelleyebilir. Ayrıntılı bilgi için Google Chat mesajlarındaki bağlantıları önizleme başlıklı makaleyi inceleyin.

Google Chat API'yi kullanarak etkileşimleri yanıtlama veya proaktif mesajlar gönderme

Chat uygulamalarının, bir eklenti işlemi döndürmek yerine Google Chat API'yi kullanarak etkileşime yanıt vermesi gerekebilir. Örneğin, Chat uygulamaları aşağıdakilerden herhangi birini yapmak için Google Chat API'yi çağırmalıdır:

  • Mesajları planlı olarak veya harici kaynaklardaki değişikliklerle ilgili olarak gönderin. Örneğin, yeni bir sorun veya destek kaydı hakkındaki bildirimler.
  • Etkileşimden 30 saniye sonra yanıt verin. Örneğin, uzun süren bir görevi tamamladıktan sonra mesajla yanıt vermek için.
  • Etkileşimin gerçekleştiği alanın dışında mesaj gönderme.
  • Chat kullanıcıları adına mesaj gönderme

Chat API'yi kullanarak mesaj göndermek için kimlik doğrulamayı ayarlamanız ve Message kaynağında create() yöntemini çağırmanız gerekir. Adımlar için Google Chat API'yi kullanarak mesaj gönderme başlıklı makaleyi inceleyin.