Eğik çizgi komutlarına Google Chat uygulaması olarak yanıt verme

Bu sayfada, Google Chat uygulamanız için eğik çizgi komutlarını nasıl ayarlayacağınız ve bunlara nasıl yanıt vereceğiniz açıklanmaktadır.

Eğik çizgi komutları, kullanıcıların Chat uygulamasını çağırıp uygulamayla etkileşime geçmesinin yaygın bir yoludur. Eğik çizgi komutları, kullanıcıların Chat uygulamasının önemli özelliklerini keşfetmesine ve kullanmasına da yardımcı olur.

Eğik çizgi komutu kullanmak için kullanıcılar bir eğik çizgi (/) ve ardından Chat uygulaması hakkında bilgi almak için /about gibi kısa bir metin komutu yazar. Kullanıcılar, Google Chat'e eğik çizgi yazarak Chat uygulaması için kullanılabilen komutların listesini içeren bir pencere görüntüleyebilir:

Eğik çizgi komutu penceresi
Şekil 1: Kullanıcılar Google Chat'e eğik çizgi yazdığında görünen pencere.

Eğik çizgi komutları ayarlamanız gerekip gerekmediğine karar vermek ve kullanıcı etkileşimlerini nasıl tasarlayacağınızı anlamak için Tüm kullanıcı yolculuklarını tanımlama bölümüne bakın.

Gizli yanıtlar içeren eğik çizgi komutları

Bir kullanıcı eğik çizgi komutu içeren bir mesaj gönderdiğinde bu mesaj yalnızca kullanıcı ve Chat uygulaması tarafından görülebilir. Chat uygulamanızı birden fazla kullanıcının bulunduğu alanlara eklenecek şekilde yapılandırdıysanız kullanıcı ile Chat uygulaması arasındaki etkileşimi gizli tutmak için eğik çizgi komutuna gizli olarak yanıt verebilirsiniz.

Örneğin, kullanıcılar bir alanda keşfettikleri Chat uygulaması hakkında bilgi edinmek için /about veya /help gibi komutlar kullanabilir. Chat uygulaması, alandaki diğer kullanıcıları bilgilendirmemek için Chat uygulamasının nasıl kullanılacağı ve destek alma hakkında bilgilerle özel olarak yanıt verebilir.

Ön koşullar

Node.js

Etkileşimli özellikler için etkinleştirilmiş bir Google Chat uygulaması. HTTP hizmetini kullanarak etkileşimli bir Chat uygulaması oluşturmak için bu hızlı başlangıç kılavuzunu tamamlayın.

Apps Komut Dosyası

Etkileşimli özellikler için etkinleştirilmiş bir Google Chat uygulaması. Apps Komut Dosyası'nda etkileşimli bir Chat uygulaması oluşturmak için bu hızlı başlangıç kılavuzunu tamamlayın.

Python

Etkileşimli özellikler için etkinleştirilmiş bir Google Chat uygulaması. HTTP hizmetini kullanarak etkileşimli bir Chat uygulaması oluşturmak için bu hızlı başlangıç kılavuzunu tamamlayın.

Java

Etkileşimli özellikler için etkinleştirilmiş bir Google Chat uygulaması. HTTP hizmetini kullanarak etkileşimli bir Chat uygulaması oluşturmak için bu hızlı başlangıç kılavuzunu tamamlayın.

Eğik çizgi komutu oluşturma

Bu bölümde, eğik çizgi komutu ayarlamak için aşağıdaki adımların nasıl tamamlanacağı açıklanmaktadır:

  1. Eğik çizgi komutunuz için bir ad oluşturun.
  2. Google Chat API'de eğik çizgi komutunu yapılandırın.

Eğik çizgi komutunuza ad verin

Eğik çizgi komutunun adı, kullanıcıların Chat uygulamasını çağırmak için Chat mesajına yazdığı addır. Adın altında kullanıcılara bu komutu nasıl kullanacaklarını daha ayrıntılı açıklamak için kısa bir açıklama da gösterilir:

Eğik çizgi komutu adı ve açıklaması
Şekil 2: Eğik çizgi komutunun adı ve açıklaması.

Eğik çizgi komutunuz için bir ad ve açıklama seçerken aşağıdaki önerileri dikkate alın:

  • Eğik çizgi komutunuzu adlandırmak için:

    • Komutların kullanıcı için açık ve basit olmasını sağlamak amacıyla kısa, açıklayıcı ve harekete geçirici kelimeler veya ifadeler kullanın. Örneğin, /createAReminder yerine /remindMe yazın.
    • Komutunuz birden fazla kelimeden oluşuyorsa ilk kelime için küçük harfleri, diğer kelimelerin ilk harflerini büyük yazarak kullanıcıların komutu okumasına yardımcı olun. Örneğin, /updatecontact yerine /updateContact kullanın.
    • Komutunuz için benzersiz bir ad mı yoksa yaygın bir ad mı kullanacağınızı düşünün. Komutunuz tipik bir etkileşimi veya özelliği tanımlıyorsa kullanıcıların tanıdığı ve beklediği yaygın bir ad (ör. /settings veya /feedback) kullanabilirsiniz. Komut adınız diğer Chat uygulamaları için aynıysa kullanıcının komut adınızı bulup kullanmak için benzer komutları filtrelemesi gerektiğinden benzersiz komut adları kullanmayı deneyebilirsiniz.
  • Eğik çizgi komutunuzu açıklamak için:

    • Kullanıcıların komutu çağırdığında ne beklemeleri gerektiğini bilmesi için açıklamayı kısa ve net tutun.
    • Komut için biçimlendirme şartları olup olmadığını kullanıcılara bildirin. Örneğin, bağımsız değişken metni gerektiren bir /remindMe komutu oluşturursanız açıklamayı Remind me to do [something] at [time] gibi bir değere ayarlayın.
    • Chat uygulamasının, alandaki herkese mi yoksa komutu çağıran kullanıcıya özel olarak mı yanıt vereceğini kullanıcılara bildirin. Örneğin, eğik çizgi komutu /about için Learn about this app (Only visible to you) ifadesini kullanabilirsiniz.

Google Chat API'de eğik çizgi komutunuzu yapılandırma

Eğik çizgi komutu oluşturmak için Chat uygulamanızın Google Chat API yapılandırmasında komutla ilgili bilgileri belirtmeniz gerekir.

Google Chat API'de eğik çizgi komutu yapılandırmak için aşağıdaki adımları tamamlayın:

  1. Google Cloud Console'da Menü > API'ler ve Hizmetler > Etkin API'ler ve Hizmetler > Google Chat API'yi tıklayın.

    Google Chat API sayfasına gidin

  2. Yapılandırma'yı tıklayın.

  3. Eğik çizgi komutları altında, Eğik çizgi komutu ekle'yi tıklayın.

  4. Komut için bir ad, komut kimliği ve açıklama girin:

    1. Ad: Komutun görünen adı ve kullanıcıların uygulamanızı çağırmak için yazdığı ad. / ile başlamalı, yalnızca metin içermeli ve en fazla 50 karakter uzunluğunda olmalıdır.
    2. Açıklama: Komutun nasıl kullanılacağını ve biçimlendirileceğini açıklayan metin. Açıklamalar en fazla 50 karakter olabilir.
    3. Komut Kimliği: Chat uygulamanızın eğik çizgi komutunu tanımak ve bir yanıt döndürmek için kullandığı 1 ile 1000 arasında bir sayıdır.
  5. İsteğe bağlı: Chat uygulamanızın komuta iletişim kutusu ile yanıt vermesini istiyorsanız İletişim kutusu aç onay kutusunu işaretleyin.

  6. Kaydet'i tıklayın.

Eğik çizgi komutu artık Chat uygulaması için yapılandırılmıştır.

Eğik çizgi komutuna yanıt verme

Kullanıcılar eğik çizgi komutu içeren bir Chat mesajı oluşturduğunda Chat uygulamanız bir MESSAGE etkileşim etkinliği alır. Etkinlik yükü, slashCommand ve slashCommandMetadata nesnelerini içerir. Bu nesneler, uygun bir yanıt döndürebilmeniz için mesajda kullanılan komutla ilgili ayrıntıları (komut kimliği dahil) içerir.

Cymbal Labs Chat uygulaması için özel mesaj. Mesajda, Chat uygulamasının Cymbal Labs tarafından geliştirildiği belirtiliyor. Mesajda, dokümanlara giden bir bağlantı ve destek ekibiyle iletişime geçmek için kullanılabilecek bir bağlantı da yer alıyor.
Chat uygulaması, nasıl destek alacağınızı açıklamak için eğik çizgi komutuna /help özel olarak yanıt verir.

Aşağıdaki kodda, MESSAGE etkileşim etkinliklerini işleyerek ve mesajın eşleşen komut kimliğini içerip içermediğini tespit ederek /about eğik çizgi komutuna yanıt veren bir Chat uygulaması örneği gösterilmektedir. Mesajda komut kimliği varsa Chat uygulaması özel bir mesaj döndürür:

Node.js

node/avatar-app/index.js
// Checks for the presence of a slash command in the message.
if (event.message.slashCommand) {
  // Executes the slash command logic based on its ID.
  // Slash command IDs are set in the Google Chat API configuration.
  switch (event.message.slashCommand.commandId) {
    case ABOUT_COMMAND_ID:
      return res.send({
        privateMessageViewer: event.user,
        text: 'The Avatar app replies to Google Chat messages.'
      });
  }
}

Apps Komut Dosyası

apps-script/avatar-app/avatar-app.gs
// Checks for the presence of a slash command in the message.
if (event.message.slashCommand) {
  // Executes the slash command logic based on its ID.
  // Slash command IDs are set in the Google Chat API configuration.
  switch (event.message.slashCommand.commandId) {
    case ABOUT_COMMAND_ID:
      return {
        privateMessageViewer: event.user,
        text: 'The Avatar app replies to Google Chat messages.'
      };
  }
}

Python

python/avatar-app/main.py
# Checks for the presence of a slash command in the message.
if "slashCommand" in request_json["message"]:
  # Executes the slash command logic based on its ID.
  # Slash command IDs are set in the Google Chat API configuration.
  if request_json["message"]["slashCommand"]["commandId"] == ABOUT_COMMAND_ID:
    return {
      "privateMessageViewer": request_json["user"],
      "text": 'The Avatar app replies to Google Chat messages.'
    }

Java

java/avatar-app/src/main/java/App.java
// Checks for the presence of a slash command in the message.
if (body.getAsJsonObject("message").has("slashCommand")) {
  // Executes the slash command logic based on its ID.
  // Slash command IDs are set in the Google Chat API configuration.
  JsonObject slashCommand = body.getAsJsonObject("message").getAsJsonObject("slashCommand");
  switch (slashCommand.get("commandId").getAsString()) {
    case ABOUT_COMMAND_ID:
      Message aboutMessage = new Message();
      aboutMessage.setText("The Avatar app replies to Google Chat messages.");
      aboutMessage.setPrivateMessageViewer(new User()
        .setName(body.getAsJsonObject("user").get("name").getAsString()));
      response.getWriter().write(gson.toJson(aboutMessage));
      return;
  }
}

ABOUT_COMMAND_ID değerini, Chat API'de eğik çizgi komutunu yapılandırırken belirttiğiniz komut kimliğiyle ayarlayın. Bu kodu test etmek için Google Chat uygulamaları için etkileşimli özellikleri test etme başlıklı makaleyi inceleyin.