Bu sayfada, Pub/Sub. Kuruluşunuzda Chat'in Chat uygulamanıza mesaj göndermesini engelleyebilecek bir güvenlik duvarı varsa veya Chat uygulaması Google Workspace Events API'yi kullanıyorsa Chat uygulaması için bu tür bir mimari kullanışlıdır. Ancak bu Bu sınırlamalar, bu yapılandırmaların Chat uygulamaları yalnızca mesaj gönderip alabilir. eşzamansız mesajlar:
- Mesajlarda iletişim kutuları kullanılamaz. Bunun yerine, kart mesajı.
- Kartları senkronize yanıtla tek tek güncelleyemezsiniz. Bunun yerine,
patch
yöntemini çağırarak mesajın tamamını güncelleyin.
Aşağıdaki şemada, örnek bir makinenin mimarisi Pub/Sub ile geliştirilmiş Chat uygulaması:
Önceki şemada, Pub/Sub ile etkileşimde bulunan bir kullanıcı Chat uygulamasında aşağıdaki bilgi akışı bulunur:
Bir kullanıcı Chat'te bir kullanıcıya mesaj gönderir: doğrudan mesajla veya Chat alanı veya Chat alanında gerçekleşen bir etkinlik Chat uygulamasında etkin bir subscription [abonelik].
Chat, mesajı bir Pub/Sub konusuna gönderir.
Chat uygulaması mantığını içeren bir bulut veya şirket içi sistem olan uygulama sunucusu, mesajı güvenlik duvarından almak için Pub/Sub konusuna abone olur.
İsteğe bağlı olarak, Chat uygulaması Eşzamansız olarak mesaj göndermek veya diğer işlemleri gerçekleştirmek için Chat API anlamına gelir.
Ön koşullar
Java
- Google Chat'e erişimi olan bir Business veya Enterprise Google Workspace hesabı
- Faturalandırmanın etkin olduğu bir Google Cloud projesi. Mevcut bir projede faturalandırmanın etkin olup olmadığını kontrol etmek için fatura durumu hakkında daha fazla bilgi edinin. Proje oluşturmak ve faturalandırmayı ayarlamak için bkz. Bir Google Cloud projesi oluşturun.
- Java 11 veya üzeri
- Maven paket yönetimi aracı
Python
- İşletme veya Kuruluş Şuna erişimi olan Google Workspace hesabı: Google Chat.
- Faturalandırmanın etkin olduğu bir Google Cloud projesi. Mevcut bir projede faturalandırmanın etkin olup olmadığını kontrol etmek için fatura durumu hakkında daha fazla bilgi edinin. Proje oluşturmak ve faturalandırmayı ayarlamak için Google Cloud projesi oluşturma başlıklı makaleyi inceleyin.
- Python 3.6 veya sonraki sürümler
- pip paket yönetim aracı
Node.js
- İşletme veya Kuruluş Şuna erişimi olan Google Workspace hesabı: Google Chat.
- Faturalandırmanın etkin olduğu bir Google Cloud projesi. Mevcut bir projede faturalandırmanın etkin olup olmadığını kontrol etmek için Projelerinizin faturalandırma durumunu doğrulama bölümüne bakın. Proje oluşturmak ve faturalandırmayı ayarlamak için bkz. Bir Google Cloud projesi oluşturun.
- Node.js 14 veya daha yeni sürümler
- npm paket yönetim aracı
-
Başlatılmış bir Node.js projesi. Yeni bir projeyi ilk kullanıma hazırlamak için, proje başlatma belgesinde
yeni bir klasöre geçin, ardından komut satırı arayüzünüzde aşağıdaki komutu çalıştırın:
npm init
Ortamı ayarlama
Google API'lerini kullanmadan önce bir Google Cloud projesinde etkinleştirmeniz gerekir. Tek bir Google Cloud projesinde bir veya daha fazla API'yi etkinleştirebilirsiniz.Google Cloud Console'da Google Chat API'yi ve Pub/Sub API'yi etkinleştirin.
Pub/Sub'ı ayarlama
Chat API'nin mesaj gönderebileceği bir Pub/Sub konusu oluşturun. Her Chat uygulaması için tek bir konu kullanmanızı öneririz.
Chat'e içerik yayınlama izni verin aşağıdaki platformlara Pub/Sub Yayıncısı rolünü atayarak hizmet hesabı:
chat-api-push@system.gserviceaccount.com
Hizmet hesabı oluşturma yetkilendirmesi için Chat uygulamasının Pub/Sub ve Chat'le birlikte gizli anahtar dosyasını çalışma dizininize kaydedin.
Çekme aboneliği oluşturma konusuna değinmek istiyorum.
Komut dosyasını yazma
Java
Bir CLI'da, hizmet hesabı kimlik bilgilerini sağlayın:
export GOOGLE_APPLICATION_CREDENTIALS=SERVICE_ACCOUNT_FILE_PATH
CLI'da, Google Cloud proje kimliğini sağlayın:
export PROJECT_ID=PROJECT_ID
Bir komut satırı arayüzünde, daha önce oluşturduğunuz Pub/Sub aboneliğinin abonelik kimliğini sağlayın:
export SUBSCRIPTION_ID=SUBSCRIPTION_ID
Çalışma dizininizde
pom.xml
adlı bir dosya oluşturun.pom.xml
dosyasına aşağıdaki kodu yapıştırın:Çalışma dizininizde
src/main/java
dizin yapısını oluşturun.src/main/java
dizinindeMain.java
adlı bir dosya oluşturun.Main.java
alanına aşağıdaki kodu yapıştırın:
Python
Bir komut satırı arayüzünde hizmet hesabı kimlik bilgilerini sağlayın:
export GOOGLE_APPLICATION_CREDENTIALS=SERVICE_ACCOUNT_FILE_PATH
CLI'da, Google Cloud proje kimliğini sağlayın:
export PROJECT_ID=PROJECT_ID
Bir komut satırı arayüzünde, daha önce oluşturduğunuz Pub/Sub aboneliğinin abonelik kimliğini sağlayın:
export SUBSCRIPTION_ID=SUBSCRIPTION_ID
Çalışma dizininizde
requirements.txt
adlı bir dosya oluşturun.requirements.txt
dosyasına aşağıdaki kodu yapıştırın:Çalışma dizininizde
app.py
adlı bir dosya oluşturun.app.py
alanına aşağıdaki kodu yapıştırın:
Node.js
Bir komut satırı arayüzünde hizmet hesabı kimlik bilgilerini sağlayın:
export GOOGLE_APPLICATION_CREDENTIALS=SERVICE_ACCOUNT_FILE_PATH
Bir CLI'de Google Cloud proje kimliğini sağlayın:
export PROJECT_ID=PROJECT_ID
Bir komut satırı arayüzünde, daha önce oluşturduğunuz Pub/Sub aboneliğinin abonelik kimliğini sağlayın:
export SUBSCRIPTION_ID=SUBSCRIPTION_ID
Çalışma dizininizde
package.json
adlı bir dosya oluşturun.package.json
dosyasına aşağıdaki kodu yapıştırın:Çalışma dizininizde
index.js
adlı bir dosya oluşturun.index.js
alanına aşağıdaki kodu yapıştırın:
Uygulamayı Chat'te yayınla
Google Cloud konsolunda Menü'ye gidin. > API'ler ve Hizmetler > Etkin API'ler ve Hizmetler > Google Chat API'si > Yapılandırma'yı tıklayın.
Pub/Sub için Chat uygulamasını yapılandırın:
- Uygulama adı alanına
Quickstart App
yazın. - Avatar URL'si alanına
https://developers.google.com/chat/images/quickstart-app-avatar.png
yazın. - Açıklama alanına
Quickstart app
yazın. - İşlevsellik bölümünde 1:1 mesaj alma ve Alanlara ve grup görüşmelerine katılma'yı seçin.
- Bağlantı ayarları bölümünde Cloud Pub/Sub'ı seçin ve oluşturduğunuz Pub/Sub konusunun adını girin.
- Görünürlük bölümünde, alanınızda Bu Google Chat uygulamasını belirli kişiler ve gruplar için kullanılabilir hale getir'i seçin ve e-posta adresinizi girin.
- Günlükler bölümünde, Hataları günlüğe kaydetme'yi seçin.
- Uygulama adı alanına
Kaydet'i tıklayın.
Uygulama, Chat'te mesajları almaya ve yanıtlamaya hazır.
Komut dosyasını çalıştırma
Bir KSA'da çalışma dizininize geçin ve komut dosyasını çalıştırın:
Java
mvn compile exec:java -Dexec.mainClass=Main
Python
python -m venv env
source env/bin/activate
pip install -r requirements.txt -U
python app.py
Node.js
npm install
npm start
Kodu çalıştırdığınızda uygulama, yayınlanan mesajları dinlemeye başlar konusuna değinelim.
Chat uygulamanızı test etme
Chat uygulamanızı test etmek için Chat uygulamasıyla bir doğrudan mesaj alanı açın ve mesaj gönderin:
Kendinizi güvenilir test kullanıcısı olarak eklerken sağladığınız Google Workspace hesabını kullanarak Google Chat'i açın.
- Yeni sohbet'i tıklayın.
- 1 veya daha fazla kullanıcı ekle alanına Chat uygulamanızın adını yazın.
Sonuçlardan Chat uygulamanızı seçin. Doğrudan mesaj açılır.
- Uygulamayı içeren yeni doğrudan mesajda
Hello
yazın ve şuna basın:enter
.
Güvenilir test kullanıcıları eklemek ve etkileşimli özellikleri test etme hakkında daha fazla bilgi edinmek için Google Chat uygulamaları için etkileşimli özellikleri test etme başlıklı makaleyi inceleyin.
Sorun giderme
Bir Google Chat uygulaması veya card bir hata döndürürse Chat arayüzünde "Bir sorun oluştu" mesajı gösteriliyor. veya "İsteğiniz işlenemiyor." Bazen Chat kullanıcı arayüzünde hata mesajı gösterilmez ancak Chat uygulaması veya kartı beklenmedik bir sonuç verir. Örneğin, kart mesajı görünmeyebilir.
Chat kullanıcı arayüzünde hata mesajı gösterilmeyebilir ancak Chat uygulamaları için hata günlüğü etkinleştirildiğinde hataları düzeltmenize yardımcı olacak açıklayıcı hata mesajları ve günlük verileri kullanılabilir. Hataları görüntüleme, hata ayıklama ve düzeltme hakkında yardım için Google Chat hatalarını giderme başlıklı makaleyi inceleyin.
Temizleme
Aşağıdaki işlem için Google Cloud hesabınızdan ücret alınmasını önlemek amacıyla: kaynaklardan yararlanabilmeniz için Cloud projesi.
-
Google Cloud Console'da Kaynakları yönetin sayfasına gidin. Menü > IAM ve Yönetici > Kaynakları Yönet'i tıklayın.
Resource Manager'a git 'nı inceleyin.
- Proje listesinde, silmek istediğiniz projeyi seçin ve ardından Sil'i tıklayın.
- İletişim kutusuna proje kimliğini yazın ve projeyi silmek için Kapat'ı tıklayın.
İlgili konular
Chat uygulamanıza daha fazla özellik eklemek için: takip etmek için: