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.homepageTrigger
varsa 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.homepageTrigger
yoksa bunun yerine genel bir ana sayfa kartı gösterilir.REST API arayüzleri: Eklenti REST API'leri kullanıyorsa
drive.file
kapsamını kullanarak bir belgeye dosya başına erişim isteyen tetikleyiciler ekleyebilirsiniz. İzin verildikten sonraEDITOR_NAME.onFileScopeGrantedTrigger
adlı 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.sheets
veaddOns.slides
alanları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.homepageTrigger
işlevini uygulayın. Aksi takdirde, barındırıcı uygulamalarınız için ortak bir ana sayfa oluşturmak üzerecommon.homepageTrigger
arayüzünü kullanın. - REST API'leri kullanıyorsanız
drive.file
kapsam yetkilendirme akışını veEDITOR_NAME.onFileScopeGrantedTrigger
açı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.linkpreview
kapsam yetkilendirme akışını velinkPreviewTriggers
iş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.onFileScopeGrantedTrigger
bö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 birCard
nesnesi veyaCard
nesneleri 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" }, ... }