Google Workspace eklentileriyle, Google Dokümanlar, E-Tablolar ve Slaytlar dahil olmak üzere Düzenleyiciler'de özelleştirilmiş arayüzler sağlayabilirsiniz. Bu sayede kullanıcıya alakalı bilgiler sağlayabilir, görevleri otomatikleştirip üçüncü taraf sistemlerini Düzenleyiciler'e bağlayabilirsiniz.
Eklenti kullanıcı arayüzüne erişme
Google Workspace eklentisinin simgesi Dokümanlar, E-Tablolar ve Slaytlar kullanıcı arayüzlerinin sağ tarafındaki Google Workspace hızlı erişim yan panelinde görünüyorsa eklentiyi Düzenleyiciler'de açabilirsiniz.
Google Workspace eklentisi aşağıdaki arayüzleri sunabilir:
Ana sayfa arayüzleri: Eklentinin manifest dosyasında, kullanıcının eklentiyi açtığı düzenleyici için tetikleyici
EDITOR_NAME.homepageTriggervarsa eklenti, özellikle bu düzenleyici için bir ana sayfa kartı oluşturup döndürür. Eklentinin manifest dosyasında, kullanıcının açtığı düzenleyici içinEDITOR_NAME.homepageTriggeryoksa bunun yerine genel bir ana sayfa kartı gösterilir.REST API arayüzleri: Eklenti REST API'leri kullanıyorsa
drive.filekapsamını kullanarak bir belgeye dosya başına erişim isteyen tetikleyiciler ekleyebilirsiniz. İzin verildikten sonraEDITOR_NAME.onFileScopeGrantedTriggeradlı başka bir tetikleyici çalıştırılır ve dosyaya özel bir arayüz gösterilir.Bağlantı önizleme arayüzleri: Eklentiniz bir üçüncü taraf hizmetiyle entegre oluyorsa hizmetinizin URL'lerindeki içeriği önizleyen kartlar oluşturabilirsiniz.
Düzenleyici eklentileri için arayüz oluşturma
Aşağıdaki adımları uygulayarak Düzenleyiciler için Düzenleyici Eklentisi arayüzleri oluşturun:
- Eklenti komut dosyası projesinin manifest dosyasına uygun
addOns.common,addOns.docs,addOns.sheetsveaddOns.slidesalanlarını ekleyin. - Gerekli Editor kapsamlarını komut dosyası projesi manifestinize ekleyin.
- Editöre özel bir ana sayfa sağlıyorsanız arayüzü oluşturmak için
EDITOR_NAME.homepageTriggerişlevini uygulayın. Aksi takdirde, barındırıcı uygulamalarınız için ortak bir ana sayfa oluşturmak üzerecommon.homepageTriggerarayüzünü kullanın. - REST API'leri kullanıyorsanız
drive.filekapsam yetkilendirme akışını veEDITOR_NAME.onFileScopeGrantedTriggeraçık dosyaya özel bir arayüz görüntülemek için tetikleyici işlevini uygulayın. Daha fazla bilgi için REST API arayüzleri başlıklı makaleyi inceleyin. - Bağlantı önizlemelerini bir üçüncü taraf hizmetinden yapılandırıyorsanız
https://www.googleapis.com/auth/workspace.linkpreviewkapsam yetkilendirme akışını velinkPreviewTriggersişlevini uygulayın. Daha fazla bilgi için Bağlantı önizleme arayüzleri başlıklı makaleyi inceleyin. - Kullanıcının kullanıcı arayüzü etkileşimlerine (ör. düğme tıklamaları) yanıt vermek için gereken ilişkili geri çağırma işlevlerini uygulayın.
Editör ana sayfaları
Eklentinizin komut dosyası projesinde, eklentinin ana sayfasını oluşturan ve tek bir Card veya Card nesneleri dizisi döndüren bir ana sayfa tetikleyici işlevi sağlamanız gerekir.
Ana sayfa tetikleyici işlevine, istemcinin platformu gibi bilgileri içeren bir parametre olarak etkinlik nesnesi iletilir. Ana sayfanın yapısını uyarlamak için etkinlik nesnesi verilerini kullanabilirsiniz.
Kullanıcıya, eklentinizi açtığı düzenleyiciye özel bir ana sayfa veya ortak bir ana sayfa sunabilirsiniz.
Ortak ana sayfayı görüntüleme
Eklentinizin ortak ana sayfasını Düzenleyiciler'de göstermek için eklentinin manifest dosyasına uygun düzenleyici alanlarını (ör. addOns.docs, addOns.sheets veya addOns.slides) ekleyin.
Aşağıdaki örnekte, Google Workspace eklentisi manifest dosyasının addons bölümü gösterilmektedir. Eklenti, Dokümanlar, E-Tablolar ve Slaytlar'ı genişletir ve her ana makine uygulamasında ortak ana sayfayı gösterir.
"addOns": {
"common": {
"name": "Translate",
"logoUrl": "https://www.gstatic.com/images/branding/product/1x/translate_24dp.png",
"layoutProperties": {
"primaryColor": "#2772ed"
},
"homepageTrigger": {
"runFunction": "onHomepage"
}
},
"docs": {},
"sheets": {},
"slides": {}
}
}Düzenleyiciye özel bir ana sayfa görüntüleme
Bir düzenleyiciye özel ana sayfa sunmak için EDITOR_NAME.homepageTrigger öğesini eklenti manifestine ekleyin.
Aşağıdaki örnekte, Google Workspace eklenti manifestosunun addons bölümü gösterilmektedir.
Eklenti, Dokümanlar, E-Tablolar ve Slaytlar için etkinleştirilir. Dokümanlar ve Slaytlar'da ortak bir ana sayfa, E-Tablolar'da ise benzersiz bir ana sayfa gösterilir. Geri çağırma işlevi onSheetsHomepage, E-Tablolar'a özel ana sayfa kartını oluşturur.
"addOns": {
"common": {
"name": "Translate",
"logoUrl": "https://www.gstatic.com/images/branding/product/1x/translate_24dp.png",
"layoutProperties": {
"primaryColor": "#2772ed"
},
"homepageTrigger": {
"runFunction": "onHomepage"
}
},
"docs": {},
"slides": {},
"sheets": {
"homepageTrigger": {
"runFunction": "onSheetsHomepage"
},
}
}REST API arayüzleri
Eklentiniz Google Sheets API gibi REST API'leri kullanıyorsa onFileScopeGrantedTrigger işlevini kullanarak Düzenleyici ana uygulamasında açık olan dosyaya özel yeni bir arayüz görüntüleyebilirsiniz.
onFileScopeGrantedTrigger işlevini kullanmak için drive.file kapsam yetkilendirme akışını eklemeniz gerekir. drive.file
kapsamını nasıl isteyeceğinizi öğrenmek için Geçerli doküman için dosya erişimi iste başlıklı makaleyi inceleyin.
Kullanıcı drive.file kapsamı verdiğinde EDITOR_NAME.onFileScopeGrantedTrigger.runFunction tetiklenir. Tetikleyici etkinleştiğinde, eklenti manifestindeki EDITOR_NAME.onFileScopeGrantedTrigger.runFunction alanı tarafından belirtilen bağlamsal tetikleyici işlevi yürütülür.
Düzenleyicilerden biri için REST API arayüzü oluşturmak üzere aşağıdaki adımları uygulayın.
EDITOR_NAME yerine, kullanmayı seçtiğiniz Editor ana makine uygulamasını (ör. sheets.onFileScopeGrantedTrigger) girin.
EDITOR_NAME.onFileScopeGrantedTriggeröğesini manifest dosyanızın uygun Editor's (Düzenleyici) bölümüne ekleyin. Örneğin, bu arayüzü Google E-Tablolar'da oluşturmak istiyorsanız tetikleyiciyi"sheets"bölümüne ekleyin.EDITOR_NAME.onFileScopeGrantedTriggerbölümünde belirtilen işlevi uygulayın. Bu işlev, bağımsız değişken olarak bir etkinlik nesnesi kabul eder ve tek birCardnesnesi veyaCardnesneleri dizisi döndürmelidir.- Diğer kartlarda olduğu gibi, arayüz için widget etkileşimi sağlamak üzere kullanılan geri çağırma işlevlerini uygulamanız gerekir. Örneğin, arayüze bir düğme eklediyseniz bu düğmeye bir Action eklenmeli ve düğme tıklandığında çalışan bir geri çağırma işlevi uygulanmalıdır.
Aşağıdaki örnekte, Google Workspace eklenti manifestosunun addons bölümü gösterilmektedir.
Eklenti, REST API'lerini kullandığından onFileScopeGrantedTrigger, Google E-Tablolar için dahil edilir. Kullanıcı drive.file kapsamı için izin verdiğinde geri çağırma işlevi onFileScopeGrantedSheets dosyaya özel bir arayüz oluşturur.
"addOns": {
"common": {
"name": "Productivity add-on",
"logoUrl": "https://www.gstatic.com/images/icons/material/system_gm/1x/work_outline_black_18dp.png",
"layoutProperties": {
"primaryColor": "#669df6",
"secondaryColor": "#ee675c"
}
},
"sheets": {
"homepageTrigger": {
"runFunction": "onEditorsHomepage"
},
"onFileScopeGrantedTrigger": {
"runFunction": "onFileScopeGrantedSheets"
}
}Üçüncü taraf hizmetleri için bağlantı önizleme arayüzleri
Üçüncü taraf hizmeti için bağlantı önizlemelerini etkinleştirmek istiyorsanız eklentinizin manifest dosyasında bağlantı önizlemelerini yapılandırmanız ve önizleme kartı döndüren bir işlev oluşturmanız gerekir. Kullanıcı yetkilendirmesi gerektiren hizmetler için işleviniz yetkilendirme akışını da çağırmalıdır.
Bağlantı önizlemelerini etkinleştirme adımları için Akıllı çipleri kullanarak bağlantıları önizleme başlıklı makaleyi inceleyin.
Etkinlik nesneleri
Bir etkinlik nesnesi oluşturulur ve EDITOR_NAME.homepageTrigger veya EDITOR_NAME.onFileScopeGrantedTrigger gibi tetikleyici işlevlere iletilir. Tetikleyici işlevi, eklenti kartlarının nasıl oluşturulacağını veya eklenti davranışının nasıl kontrol edileceğini belirlemek için etkinlik nesnesindeki bilgileri kullanır.
Etkinlik nesnelerinin tam yapısı Etkinlik nesneleri bölümünde açıklanmaktadır.
Bir düzenleyici, eklentinin etkin ana makine uygulaması olduğunda etkinlik nesneleri, istemci bilgilerini taşıyan Docs, Sheets veya Slides etkinlik nesnesi alanlarını içerir.
Eklentinin, mevcut kullanıcı veya doküman için drive.file kapsam yetkilendirmesi yoksa etkinlik nesnesi yalnızca docs.addonHasFileScopePermission, sheets.addonHasFileScopePermission veya slides.addonHasFileScopePermission alanını içerir. Eklentinin yetkilendirmesi varsa etkinlik nesnesi, tüm Editor etkinlik nesnesi alanlarını içerir.
Aşağıdaki örnekte, bir sheets.onFileScopeGrantedTrigger işlevine iletilen bir Editor etkinlik nesnesi gösterilmektedir. Burada, eklenti geçerli doküman için drive.file kapsam yetkisine sahip:
` {
"commonEventObject": { ... },
"sheets": {
"addonHasFileScopePermission": true,
"id":"A_24Q3CDA23112312ED52",
"title":"How to get started with Sheets"
},
...
}