Gelişmiş Chat hizmeti, Apps Komut Dosyası'nda Google Chat API'yi kullanmanıza olanak tanır. Bu API, komut dosyalarının Chat alanlarını bulmasına, oluşturmasına ve değiştirmesine, alanlara üye eklemesine veya alanlardan üye kaldırmasına ve metin, kart, ek ve tepki içeren mesajları okumasına ya da yayınlamasına olanak tanır.
Ön koşullar
- Google Cloud Console'daki Chat API yapılandırma sayfasında yapılandırılmış bir Apps Komut Dosyası Google Chat uygulaması. Uygulamanın Apps Komut Dosyası projesi, Apps Komut Dosyası projeleri için otomatik olarak oluşturulan varsayılan proje yerine standart bir Google Cloud projesi kullanmalıdır. Uyumlu bir Google Chat uygulaması oluşturmak için Google Apps Komut Dosyası ile Google Chat uygulaması oluşturma başlıklı makaleyi inceleyin.
- Chat uygulaması için kimlik doğrulama yapılandırılmış olmalıdır. Bir kullanıcı adına işlem yapmak için kullanıcı kimlik doğrulaması gerekir. Chat uygulaması olarak işlem yapmak için hizmet hesabıyla uygulama kimlik doğrulaması gerekir. Bir Chat API yönteminin hangi kimlik doğrulama biçimini desteklediğini kontrol etmek için Google Chat API çağrıları için gerekli kimlik doğrulama türleri başlıklı makaleyi inceleyin.
Referans
Bu hizmet hakkında daha fazla bilgi için Chat API referans belgelerine bakın. Apps Komut Dosyası'ndaki tüm gelişmiş hizmetler gibi Chat hizmeti de genel API ile aynı nesneleri, yöntemleri ve parametreleri kullanır.
Örnek kod
Bu örneklerde, gelişmiş hizmeti kullanarak yaygın Google Chat API işlemlerinin nasıl yapılacağı gösterilmektedir.
Kullanıcı kimlik bilgileriyle ileti yayınlama
Aşağıdaki örnekte, kullanıcı adına bir Chat alanına nasıl mesaj gönderileceği gösterilmektedir.
chat.messages.create
yetkilendirme kapsamını Apps Komut Dosyası projesininappsscript.json
dosyasına ekleyin:"oauthScopes": [ "https://www.googleapis.com/auth/chat.messages.create" ]
Apps Komut Dosyası projesinin koduna aşağıdaki gibi bir işlev ekleyin:
Uygulama kimlik bilgileriyle mesaj yayınlama
Aşağıdaki örnekte, uygulama adına bir Chat alanına nasıl mesaj gönderileceği gösterilmektedir. Gelişmiş Chat hizmetini bir hizmet hesabıyla kullanırken appsscript.json
içinde yetkilendirme kapsamları belirtmeniz gerekmez. Hizmet hesaplarıyla kimlik doğrulama hakkında ayrıntılı bilgi için Google Chat uygulaması olarak kimlik doğrulama başlıklı makaleyi inceleyin.
Alan oluşturma
Aşağıdaki örnekte, bir sohbet alanı hakkında nasıl bilgi alınacağı gösterilmektedir.
chat.spaces.readonly
yetkilendirme kapsamını Apps Komut Dosyası projesininappsscript.json
dosyasına ekleyin:"oauthScopes": [ "https://www.googleapis.com/auth/chat.spaces.readonly" ]
Apps Komut Dosyası projesinin koduna aşağıdaki gibi bir işlev ekleyin:
Alan oluşturma
Aşağıdaki örnekte, Chat alanı oluşturma işlemi gösterilmektedir.
chat.spaces.create
yetkilendirme kapsamını Apps Komut Dosyası projesininappsscript.json
dosyasına ekleyin:"oauthScopes": [ "https://www.googleapis.com/auth/chat.spaces.create" ]
Apps Komut Dosyası projesinin koduna aşağıdaki gibi bir işlev ekleyin:
Üyelikleri listeleme
Aşağıdaki örnekte, bir sohbet alanının tüm üyelerinin nasıl listeleneceği gösterilmektedir.
chat.memberships.readonly
yetkilendirme kapsamını Apps Komut Dosyası projesininappsscript.json
dosyasına ekleyin:"oauthScopes": [ "https://www.googleapis.com/auth/chat.memberships.readonly" ]
Apps Komut Dosyası projesinin koduna aşağıdaki gibi bir işlev ekleyin:
Sorun giderme
Error 400: invalid_scope
hata koduyla birlikte Some requested scopes cannot be shown
hata mesajını alırsanız Apps Script projesinin appsscript.json
dosyasında herhangi bir yetkilendirme kapsamı belirtmemişsiniz demektir. Çoğu durumda Apps Komut Dosyası, bir komut dosyasının hangi kapsamları gerektirdiğini otomatik olarak belirler. Ancak Chat gelişmiş hizmetini kullandığınızda, komut dosyanızın kullandığı yetkilendirme kapsamlarını Apps Komut Dosyası projenizin manifest dosyasına manuel olarak eklemeniz gerekir. Açık kapsamları ayarlama başlıklı makaleyi inceleyin.
Hatayı düzeltmek için Apps Komut Dosyası projesinin appsscript.json
dosyasına oauthScopes
dizisinin bir parçası olarak uygun yetkilendirme kapsamlarını ekleyin. Örneğin, spaces.messages.create
yöntemini çağırmak için aşağıdakileri ekleyin:
"oauthScopes": [
"https://www.googleapis.com/auth/chat.messages.create"
]
Sınırlar ve dikkat edilmesi gereken noktalar
Gelişmiş Chat hizmeti şunları desteklemez:
- Chat API yöntemi
media.download
. - Geliştirici Önizlemesi'nde kullanılabilen Chat API yöntemleri
İleti eki indirmek veya geliştirici önizleme yöntemi çağırmak için UrlFetchApp
yerine kullanın.