Bu sayfada, Google Chat uygulamasının eğik çizgi komutlarına yanıt vermesi için nasıl yapılandırılacağı 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 komutu, 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 komutları oluşturup oluşturmayacağınıza karar vermek ve kullanıcı etkileşimlerini nasıl tasarlayacağınızı öğrenmek için Chat API dokümanlarında Tüm kullanıcı yolculuklarını tanımlama başlıklı makaleyi inceleyin.
Kullanıcılar eğik çizgi komutlarını nasıl kullanır?
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ı listeleyen bir pencere görüntüleyebilir:
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, bir alanda keşfettikleri Chat uygulaması hakkında bilgi edinmek için kullanıcılar /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
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.
Eğik çizgi komutu oluşturma
Bu bölümde, eğik çizgi komutu oluşturmak için aşağıdaki adımları nasıl tamamlayacağınız açıklanmaktadır:
- Eğik çizgi komutunuz için bir ad oluşturun.
- 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ıkları şeydir. Adın altında, kullanıcılara komutun nasıl kullanılacağı hakkında daha fazla bilgi veren kısa bir açıklama da gösterilir:
Slash komutunuz için ad ve açıklama seçerken aşağıdaki önerileri göz önünde bulundurun:
Eğik çizgi komutunuzu adlandırmak için:
- Komutları kullanıcı için net ve basit hale getirmek amacıyla kısa, açıklayıcı ve işlem yapılabilir kelimeler veya kelime öbekleri kullanın. Örneğin,
/createAReminder
yerine/remindMe
yazın. - Komutunuz birden fazla kelimeden oluşuyorsa ilk kelime için tümüyle küçük harfleri, diğer kelimelerin ilk harfini 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 mi 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. Aksi takdirde, benzersiz komut adları kullanmaya çalışın. Aksi takdirde, komut adınız diğer Chat uygulamalarıyla aynıysa kullanıcının komutunuzu bulup kullanması için benzer komutları filtrelemesi gerekir.
- Komutları kullanıcı için net ve basit hale getirmek amacıyla kısa, açıklayıcı ve işlem yapılabilir kelimeler veya kelime öbekleri kullanın. Örneğin,
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çinLearn 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 komutunu yapılandırmak için aşağıdaki adımları uygulayın:
Google Cloud Console'da Menü > API'ler ve Hizmetler > Etkin API'ler ve Hizmetler > Google Chat API'yi tıklayın.
Yapılandırma'yı tıklayın.
Gelişmiş ayarlar bölümünde Tetikleyiciler'e gidin ve MESAJ alanının bir tetikleyici (ör. HTTP uç noktası veya Apps Script işlevi) içerdiğini kontrol edin. / komutuna yanıt vermek için aşağıdaki bölümde bu tetikleyiciyi kullanmanız gerekir.
Eğik çizgi komutları bölümünde Eğik çizgi komutu ekle'yi tıklayın.
Komut için bir ad, komut kimliği ve açıklama girin:
- Ad: Komutun görünen adı ve kullanıcıların uygulamanızı çağırmak için yazdığı metin. / ile başlamalı, yalnızca metin içermeli ve en fazla 50 karakter uzunluğunda olmalıdır.
- Açıklama: Komutun nasıl kullanılacağını ve biçimlendirileceğini açıklayan metin. Açıklamalar en fazla 50 karakter olabilir.
- Komut kimliği: Chat uygulamanızın eğik çizgi komutunu tanımak ve yanıt döndürmek için kullandığı 1 ile 1.000 arasında bir sayı.
İsteğe bağlı: Chat uygulamanızın komuta bir iletişim kutusuyla yanıt vermesini istiyorsanız İletişim kutusu aç onay kutusunu işaretleyin.
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 Chat mesajı oluşturduğunda Chat uygulamanız, mesajla ilgili bilgileri içeren bir etkinlik nesnesi alır. Etkinlik nesnesi, uygun bir yanıt döndürebilmeniz için mesajda kullanılan komutla ilgili ayrıntıları (komut kimliği dahil) içeren bir yük içerir.
Eğik çizgi komutuna yanıt vermek için Chat uygulamanızın eğik çizgi komutu meta verilerini içeren tüm etkinlik nesnelerini işleyebilmesi amacıyla Mesaj tetikleyicisini uygulamanız gerekir.
Aşağıdaki kodda, /about
eğik çizgi komutunu metin mesajıyla yanıtlayan bir Chat uygulaması örneği gösterilmektedir. Sohbet uygulaması, eğik çizgi komutlarına yanıt vermek için Mesaj tetikleyicisinden gelen etkinlik nesnelerini işler. Bir etkinlik nesnesinin yükü eğik çizgi komut kimliği içerdiğinde Chat uygulaması, DataActions
işlemini createMessageAction
nesnesi ile döndürür:
Node.js
// The ID of the slash command "/about".
// It's not enabled by default, set to the actual ID to enable it. You must
// use the same ID as set in the Google Chat API configuration.
const ABOUT_COMMAND_ID = 0;
/**
* Google Cloud Function that responds to messages sent from a
* Google Chat space.
*
* @param {Object} req Request sent from Google Chat space
* @param {Object} res Response to send back
*/
exports.avatarApp = function avatarApp(req, res) {
if (req.method === 'GET' || !req.body.chat) {
return res.send('Hello! This function is meant to be used ' +
'in a Google Chat Space.');
}
// Stores the Google Chat event as a variable.
const chatMessage = req.body.chat.messagePayload.message;
if (chatMessage.slashCommand) {
// Executes the slash command logic based on its ID.
// Slash command IDs are set in the Google Chat API configuration.
switch (chatMessage.slashCommand.commandId) {
case ABOUT_COMMAND_ID:
return res.send({ hostAppDataAction: { chatDataAction: { createMessageAction: { message: {
text: 'The Avatar app replies to Google Chat messages.'
}}}}});
}
}
// Replies with the sender's avatar in a card otherwise.
const displayName = chatMessage.sender.displayName;
const avatarUrl = chatMessage.sender.avatarUrl;
res.send({ hostAppDataAction: { chatDataAction: { createMessageAction: { message: {
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 }
}]
}]
}
}]
}}}}});
};
Apps Komut Dosyası
// The ID of the slash command "/about".
// It's not enabled by default, set to the actual ID to enable it. You must
// use the same ID as set in the Google Chat API configuration.
const ABOUT_COMMAND_ID = 0;
/**
* Responds to a MESSAGE event in Google Chat.
*
* @param {Object} event the event object from Google Chat
*/
function onMessage(event) {
// Stores the Google Chat event as a variable.
const chatMessage = event.chat.messagePayload.message;
if (chatMessage.slashCommand) {
// Executes the slash command logic based on its ID.
// Slash command IDs are set in the Google Chat API configuration.
switch (chatMessage.slashCommand.commandId) {
case ABOUT_COMMAND_ID:
return { hostAppDataAction: { chatDataAction: { createMessageAction: { message: {
text: 'The Avatar app replies to Google Chat messages.'
}}}}};
}
}
// Replies with the sender's avatar in a card otherwise.
const displayName = chatMessage.sender.displayName;
const avatarUrl = chatMessage.sender.avatarUrl;
return { hostAppDataAction: { chatDataAction: { createMessageAction: { message: {
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 }
}]
}]
}
}]
}}}}};
}
Bu kod örneğini kullanmak için ABOUT_COMMAND_ID
değerini, Chat API'de eğik çizgi komutunu yapılandırırken belirttiğiniz komut kimliğiyle değiştirin.