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ı bulup oluşturmasına, değiştirmesine, alanlara üye eklemesine veya alanlardan üye çıkarmasına, 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 Script 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 Apps Komut Dosyası ile Google Chat uygulaması oluşturma başlıklı makaleyi inceleyin.
- Chat uygulaması için yapılandırılmış kimlik doğrulaması. Bir kullanıcı adına işlem yapmak için kullanıcı kimlik doğrulaması gerekir. Chat uygulaması olarak işlem gerçekleştirmek için uygulama kimlik doğrulamasının bir hizmet hesabıyla yapılması 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 göz atın. Apps Komut Dosyası'ndaki tüm gelişmiş hizmetler gibi Chat hizmeti de herkese açık 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 bilgilerini içeren bir mesaj yayınlama
Aşağıdaki örnekte, kullanıcı adına bir sohbet 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 kullanmak için appsscript.json
alanında yetkilendirme kapsamlarını 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 edinme
Aşağıdaki örnekte, bir Chat alanı hakkında nasıl bilgi edinileceği 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ının nasıl oluşturulacağı 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
ile birlikte Some requested scopes cannot be shown
hata mesajıyla karşılaşırsanız Apps Script projesinin appsscript.json
dosyasında herhangi bir yetkilendirme kapsamı belirtmemişsiniz demektir. Çoğu durumda Apps Script, bir komut dosyasının hangi kapsamlara ihtiyaç duyduğunu otomatik olarak belirler. Ancak Chat gelişmiş hizmetini kullandığınızda komut dosyanızın kullandığı yetkilendirme kapsamlarını Apps Script projenizin manifest dosyasına manuel olarak eklemeniz gerekir. Açık kapsamları ayarlama başlıklı makaleyi inceleyin.
Hatayı çözmek için uygun yetkilendirme kapsamlarını, oauthScopes
dizisi kapsamında Apps Script projesinin appsscript.json
dosyasına 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 hususlar
Gelişmiş Chat hizmeti aşağıdakileri desteklemez:
- Chat API yöntemi
media.download
. - Geliştirici Önizlemesi'nde kullanılabilen Chat API yöntemleri
Bir mesaj eki indirmek veya geliştirici önizleme yöntemini çağırmak için bunun yerine UrlFetchApp
simgesini kullanın.