Bu sayfada, Chat uygulamanız için uygulama ana kartı mesajını nasıl oluşturup göndereceğiniz açıklanmaktadır. Uygulama ana sayfası, bir kullanıcı Chat uygulamasıyla doğrudan mesaj açtığında Chat uygulamasının kullanıcıya gönderdiği özelleştirilebilir bir kart mesajıdır.
Örneğin, uygulama ana kartı mesajını, eğik çizgi komutları kullanarak Chat uygulamasıyla etkileşimde bulunmaya ilişkin ipuçları içerecek şekilde yapılandırabilirsiniz. Son kullanıcılar için uygulama ana sayfası, yalnızca uygulama geliştiricisi bu özelliği etkinleştirirse Chat uygulamasının doğrudan mesajında kullanılabilir.
Chat uygulamaları için JSON kartı mesajlarını tasarlamak ve önizlemek üzere Kart Oluşturucu'yu kullanın:
Card Builder'ı açınÖn koşullar
Python
- Google Chat'e erişimi olan bir Google Workspace hesabı.
- Yayınlanmış bir Chat uygulamasıdır. Chat uygulaması oluşturmak için bu quickstart göz atın.
- Etkileşim için yapılandırılmış bir Google Chat uygulaması Daha fazla bilgi edinmek için Google Chat uygulamanızı etkileşim etkinlikleri alacak şekilde yapılandırma başlıklı makaleyi inceleyin.
Apps Komut Dosyası
- Google Chat'e erişimi olan bir Google Workspace hesabı.
- Yayınlanmış bir Chat uygulamasıdır. Chat uygulaması oluşturmak için bu quickstart takip edin.
- Etkileşim için yapılandırılmış bir Google Chat uygulaması Daha fazla bilgi edinmek için Google Chat uygulamanızı etkileşim etkinlikleri alacak şekilde yapılandırma başlıklı makaleyi inceleyin.
Google Cloud Console'da yapılandırın
Python
Google Cloud Console'da Menü > Diğer ürünler > Google Workspace > Ürün Kitaplığı > Google Chat API'ye gidin.
Manage'ı (Yönet) ve ardından Configuration (Yapılandırma) sekmesini tıklayın.
Destek Uygulaması Ana Sayfası'nı etkinleştirin.
Destek Uygulaması Ana Sayfası onay kutusunu seçin.
Uygulama Ana Sayfa URL'si alanına bir URL ekleyin. Bu değer genellikle Uygulama URL'si ile aynı URL'dir. Bu URL,
APP_HOME
etkinliği için çağrılır.Kaydet'i tıklayın.
Apps Komut Dosyası
Google Cloud Console'da Menü > Diğer ürünler > Google Workspace > Ürün Kitaplığı > Google Chat API'ye gidin.
Manage'ı (Yönet) ve ardından Configuration (Yapılandırma) sekmesini tıklayın.
Destek Uygulaması Ana Sayfası onay kutusunu seçin.
Kaydet'i tıklayın.
Chat uygulamanızı yapılandırın
Chat uygulamanızı, uygulama ana sayfası için yeni bir kart mesajı gönderecek şekilde yapılandırın.
Python
Kullanıcı bir Chat uygulamasından doğrudan mesaj açtığında Chat uygulamanıza bir APP_HOME
etkinliği gönderilir. Bir Chat uygulaması bu etkinliği aldığında pushCard
gezinmeyle birlikte, RenderActions
JSON örneği döndürülür.
@app.route('/', methods=['POST'])
def on_event():
event = request.get_json()
chat = event.get('chat')
if chat is not None:
return handle_chat_event(event)
def handle_chat_event(event):
if event['chat'].get('type') == 'APP_HOME':
return get_app_home_card()
def get_app_home_card():
return {
"action": {
"navigations": [
{
"pushCard": {
"sections": [
{
"widgets": [
{
"buttonList": {
"buttons": [
{
"text": "Open documentation",
"onClick": {
"openLink": {
"url": "https://developers.google.com/chat"
}
}
}
]
}
}
]
}
]
}
}
]
}
}
Apps Komut Dosyası
Bu örnekte, kart JSON hatası döndürerek bir kart mesajı gönderilmektedir. Apps Komut Dosyası kart hizmetini de kullanabilirsiniz.
pushCard
gezinme ile RenderActions
JSON örneğini döndürmek için onAppHome
işlevi uygulayın:
// "onAppHome" is the pre-defined name of the callback that the Chat servers
// execute.
function onAppHome() {
return {
action: {
navigations: [
{
pushCard: getCard()
}
]
}
};
}
function getCard() {
return {
sections: [
{
widgets: [
{
buttonList: {
buttons: [
{
text: "Open documentation",
onClick: {
openLink: {
url: "https://developers.google.com/chat"
}
}
}
]
}
}
]
}
]
};
}
Uygulama ana kartı mesajını güncelleme
Uygulama ana sayfa kartı mesajı, kullanıcı bir kart mesajıyla bilgi gönderdiğinde veya iletişim kutusunu kapattığında güncellenebilir. Örneğin, ilk uygulama ana kartı mesajı, kullanıcıdan bilgi içeren bir form doldurmasını isteyen karşılama mesajıdır. Kullanıcı formu doldurduktan sonra, güncellenmiş bir uygulama ana sayfa kartı mesajı gönderilir. Güncelleme, updateCard
gezinmesi içeren bir RenderActions
örneğiyle döndürülmelidir.
Python
HTTP uygulamaları için, uygulama ana kartı mesajının güncellenmesi Kullanıcılar tarafından girilen bilgileri işleme işlemine benzer, ancak RenderActions
değerini döndürmeniz gerekir. invokedFunction
, Card
widget'ıyla ilişkili çağrılan işlevin adını temsil eder. Daha fazla bilgi için CommonEventObject
adresini inceleyin.
Aşağıdaki örnekte submitForm
, kullanıcının form verilerini gönderdiğini göstermektedir:
@app.route('/', methods=['POST'])
def on_event():
event = request.get_json()
chat = event.get('chat')
if chat is not None:
return handle_chat_event(event)
def handle_chat_event(event):
if event['chat'].get('type') == 'SUBMIT_FORM':
event_object = event.get('commonEventObject')
if event_object is not None:
// Forms
if 'submitForm' == event_object.get('invokedFunction'):
return {
'render_actions': {
'action': {
'navigations': [{
'updateCard': get_update_card()
}]
}
}
}
def get_update_card():
return {
"action": {
"navigations": [{
"pushCard": {
"sections": [{
"widgets": [{
"buttonList": {
"buttons": [{
"text": "Open documentation",
"onClick": {
"openLink": {
"url": "https://developers.google.com/chat"
}
},
}]
}
}]
}]
}
}]
}
}
Apps Komut Dosyası
Bu örnekte, kart JSON hatası döndürerek bir kart mesajı gönderilmektedir. Apps Komut Dosyası kart hizmetini de kullanabilirsiniz.
// Called from elsewhere (i.e. on button press).
function updateAppHomeCard(event) {
return {
render_actions: {
action: {
navigations: [
{
updateCard: getCard()
}
]
}
}
}
}
function getCard() {
return {
sections: [
{
widgets: [
{
buttonList: {
buttons: [
{
text: "Open documentation",
onClick: {
openLink: {
url: "https://developers.google.com/chat"
}
}
}
]
}
}
]
}
]
};
}
Sınırlamalar
navigation
genellikle Chat uygulamalarında kullanılamaz. Grup kartlarını iade edemezsiniz.
Chat uygulamalarında yalnızca pushCard
(ilk yanıt için) ve updateCard
(güncellemeler için) kullanılabilir.
İlgili konular
İletişim kutusu açmak için
OPEN_DIALOG
etkileşimini kullanın. Daha fazla bilgi için Uygulama ana kartı mesajına yanıt olarak iletişim kutusu açma konusuna bakın.İletişim kutusunu kapatmak için
CLOSE_DIALOG
etkileşimini kullanarak iletişim kutusunu kapatıp uygulama ana kartı mesajına geri dönün veyaCLOSE_DIALOG_EXECUTE
etkileşimini kullanarak iletişim kutusunu kapatıp uygulama ana kartı mesajını yenileyin. Daha fazla bilgi için Uygulama ana kartı mesajlarına ilişkin iletişim kutusunu yanıtlama konusuna bakın.Uygulama ana kartı mesajı oluşturma ve gönderme örneğini görmek için codelab'deki sorun yönetimi Chat uygulamasına göz atın: Gemini Destekli Google Chat için uygulamalar oluşturma.