Etkinlik Nesneleri

Basit tetikleyiciler ve yüklenebilir tetikleyiciler, belirli bir etkinlik gerçekleştiğinde Apps Komut Dosyası'nın bir işlevi otomatik olarak çalıştırmasını sağlar. Bir tetikleyici etkinleştiğinde Apps Komut Dosyası, işleve genellikle e adı verilen bir etkinlik nesnesini bağımsız değişken olarak iletir. Etkinlik nesnesi, tetikleyicinin etkinleşmesine neden olan bağlamla ilgili bilgiler içerir. Örneğin, aşağıdaki örnek kodda, hangi hücrenin düzenlendiğini belirlemek üzere etkinlik nesnesini kullanan bir Google E-Tablolar komut dosyası için basit bir onEdit(e) tetikleyicisi gösterilmektedir.

function onEdit(e){
  // Set a comment on the edited cell to indicate when it was changed.
  var range = e.range;
  range.setNote('Last modified: ' + new Date());
}

Bu sayfada, farklı tetikleyici türleri için etkinlik nesnesindeki alanlar ayrıntılı olarak açıklanır.

Google E-Tablolar etkinlikleri

Google E-Tablolar'a özel çeşitli tetikleyiciler, komut dosyalarının bir e-tablodaki kullanıcı işlemlerine yanıt vermesini sağlar.

(basit ve yüklenebilir)
authMode

ScriptApp.AuthMode sıralamasındaki değer.

LIMITED
source

Komut dosyasının bağlı olduğu Google E-Tablolar dosyasını temsil eden bir Spreadsheet nesnesi.

Spreadsheet
triggerUid

Bu etkinliği oluşturan tetikleyicinin kimliği (yalnızca yüklenebilir tetikleyiciler).

4034124084959907503
user

Varsa etkin kullanıcıyı temsil eden bir User nesnesi (karmaşık güvenlik kısıtlamaları grubuna göre).

amin@example.com

Değiştir

(yüklenebilir)
authMode

ScriptApp.AuthMode sıralamasındaki değer.

FULL
changeType

Değişiklik türü (EDIT, INSERT_ROW, INSERT_COLUMN, REMOVE_ROW, REMOVE_COLUMN, INSERT_GRID, REMOVE_GRID, FORMAT veya OTHER).

INSERT_ROW
source

Komut dosyasının bağlı olduğu Google E-Tablolar dosyasını temsil eden bir Spreadsheet nesnesi.

Spreadsheet
triggerUid

Bu etkinliği oluşturan tetikleyicinin kimliği.

4034124084959907503
user

Varsa etkin kullanıcıyı temsil eden bir User nesnesi (karmaşık güvenlik kısıtlamaları grubuna göre).

amin@example.com

Düzenle

(basit ve yüklenebilir)
authMode

ScriptApp.AuthMode sıralamasındaki değer.

LIMITED
oldValue

Varsa düzenlemeden önceki hücre değeri. Yalnızca düzenlenen aralık tek bir hücreyse kullanılabilir. Hücrenin önceden hiç içeriği yoksa tanımsız olur.

1234
range

Düzenlenen hücreyi veya hücre aralığını temsil eden bir Range nesnesi.

Range
source

Komut dosyasının bağlı olduğu Google E-Tablolar dosyasını temsil eden bir Spreadsheet nesnesi.

Spreadsheet
triggerUid

Bu etkinliği oluşturan tetikleyicinin kimliği (yalnızca yüklenebilir tetikleyiciler).

4034124084959907503
user

Varsa etkin kullanıcıyı temsil eden bir User nesnesi (karmaşık güvenlik kısıtlamaları grubuna göre).

amin@example.com
value

Düzenlemeden sonraki yeni hücrenin değeri. Yalnızca düzenlenen aralık tek bir hücreyse kullanılabilir.

10

Form gönderme

(yüklenebilir)
authMode

ScriptApp.AuthMode sıralamasındaki değer.

FULL
namedValues

Form gönderimindeki soru adlarını ve değerlerini içeren bir nesne.

{
  'First Name': ['Jane'],
  'Timestamp': ['6/7/2015 20:54:13'],
  'Last Name': ['Doe']
}
range

Düzenlenen hücreyi veya hücre aralığını temsil eden bir Range nesnesi.

Range
triggerUid

Bu etkinliği oluşturan tetikleyicinin kimliği.

4034124084959907503
values

E-tabloda göründükleri sırada değerlere sahip olan dizi.

['2015/05/04 15:00', 'amin@example.com', 'Bob', '27', 'Bill',
'28', 'Susan', '25']

Google Dokümanlar etkinlikleri

Tetikleyiciler, bir kullanıcı bir dokümanı açtığında Google Dokümanlar'ın yanıt vermesine olanak tanır.

(basit ve yüklenebilir)
authMode

ScriptApp.AuthMode sıralamasındaki değer.

LIMITED
source

Komut dosyasının bağlı olduğu Google Dokümanlar dosyasını temsil eden bir Document nesnesi.

Document
triggerUid

Bu etkinliği oluşturan tetikleyicinin kimliği (yalnızca yüklenebilir tetikleyiciler).

4034124084959907503
user

Varsa etkin kullanıcıyı temsil eden bir User nesnesi (karmaşık güvenlik kısıtlamaları grubuna göre).

amin@example.com

Google Slaytlar etkinlikleri

Tetikleyiciler, bir kullanıcı sunuyu açtığında Google Slaytlar'ın yanıt vermesine olanak tanır.

(basit)
authMode

ScriptApp.AuthMode sıralamasındaki değer.

LIMITED
source

Komut dosyasının bağlı olduğu Google Slaytlar dosyasını temsil eden bir Presentation nesnesi.

Presentation
user

Varsa etkin kullanıcıyı temsil eden bir User nesnesi (karmaşık güvenlik kısıtlamaları grubuna göre).

amin@example.com

Google Formlar etkinlikleri

Google Formlar'a özel tetikleyiciler, bir kullanıcı formu düzenlediğinde veya yanıt gönderdiğinde komut dosyalarının yanıt vermesine olanak tanır.

* (basit ve yüklenebilir)
authMode

ScriptApp.AuthMode sıralamasındaki değer.

LIMITED
source

Komut dosyasının bağlı olduğu Google Formlar dosyasını temsil eden bir Form nesnesi.

Form
triggerUid

Bu etkinliği oluşturan tetikleyicinin kimliği (yalnızca yüklenebilir tetikleyiciler).

4034124084959907503
user

Varsa etkin kullanıcıyı temsil eden bir User nesnesi (karmaşık güvenlik kısıtlamaları grubuna göre).

amin@example.com

* Bu etkinlik, bir kullanıcı yanıt vermek için bir form açtığında değil, bir düzenleyici formda değişiklik yapmak için formu açtığında gerçekleşir.

Form gönderme

(yüklenebilir)
authMode

ScriptApp.AuthMode sıralamasındaki değer.

FULL
response

Kullanıcının forma verdiği yanıtı bütün olarak temsil eden bir FormResponse nesnesi.

FormResponse
source

Komut dosyasının bağlı olduğu Google Formlar dosyasını temsil eden bir Form nesnesi.

Form
triggerUid

Bu etkinliği oluşturan tetikleyicinin kimliği.

4034124084959907503

Google Takvim etkinlikleri

Takvim tetikleyicileri, bir kullanıcının takvim etkinlikleri güncellendiğinde (oluşturulduğunda, düzenlendiğinde veya silindiğinde) etkinleşir.

Bu tetikleyiciler, hangi etkinliğin nasıl veya nasıl değiştiğini size bildirmez. Bunun yerine, takvimde yapılan son değişiklikleri almak için kodunuzun artımlı bir senkronizasyon işlemi gerçekleştirmesi gerektiğini belirtir. Bu prosedürün tam açıklaması için Calendar API'nin Kaynakları senkronize etme kılavuzuna bakın.

Apps Komut Dosyası'nda Takvim ile senkronize etmek için aşağıdaki adımları uygulayın:

  1. Komut dosyası projesi için Takvim gelişmiş hizmetini etkinleştirin. Yerleşik Takvim hizmeti bu iş akışı için yeterli değildir.
  2. Hangi takvimlerin senkronize edilmesi gerektiğini belirleyin. Bu tür her takvim için Takvim gelişmiş hizmetinin Events.list() yöntemini kullanarak bir ilk senkronizasyon işlemi gerçekleştirin.
  3. İlk senkronizasyonun sonucu, söz konusu takvim için bir nextSyncToken döndürür. Bu jetonu daha sonra kullanmak üzere saklayın.
  4. Bir takvim etkinliği değişikliğini belirten Apps Komut Dosyası EventUpdated tetikleyicisi etkinleştiğinde, depolanan nextSyncToken kullanarak etkilenen takvim için artımlı senkronizasyon gerçekleştirin. Bu aslında başka bir Events.list() isteğidir ancak nextSyncToken sağlanması, yanıtı yalnızca son senkronizasyondan sonra değişen etkinliklerle sınırlar.
  5. Hangi etkinliklerin güncellendiğini öğrenmek ve kodunuzun uygun şekilde yanıt vermesini sağlamak için senkronizasyonun yanıtını inceleyin. Örneğin, değişikliği günlüğe kaydedebilir, bir e-tabloyu güncelleyebilir, e-posta bildirimleri gönderebilir veya başka işlemler gerçekleştirebilirsiniz.
  6. Bu takvim için depoladığınız nextSyncToken değeri, artımlı senkronizasyon isteği tarafından döndürülen değerle güncelleyin. Bu işlem, bir sonraki senkronizasyon işlemini yalnızca en güncel değişiklikleri döndürmeye zorlar.

EventUpdated

(yüklenebilir)
authMode

ScriptApp.AuthMode sıralamasındaki değer.

FULL
calendarId

Etkinlik güncellemesinin gerçekleştiği takvimin dize kimliği.

susan@example.com
triggerUid

Bu etkinliği oluşturan tetikleyicinin kimliği.

4034124084959907503

Google Workspace eklentisi etkinlikleri

Kullanıcı bir eklenti yüklediğinde onInstall() tetikleyicisi otomatik olarak çalışır.

Yükle

(basit)
authMode

ScriptApp.AuthMode sıralamasındaki değer.

FULL

Google Chat uygulaması etkinlikleri

Google Chat'teki etkinlik nesneleri hakkında bilgi edinmek için Google Chat uygulamanızla etkileşimleri alma ve yanıtlama başlıklı makaleyi inceleyin.

Zamana dayalı etkinlikler

Zamana dayalı tetikleyiciler (saat tetikleyicileri olarak da adlandırılır), komut dosyalarının belirli bir zamanda veya yinelenen bir aralıkta yürütülmesini sağlar.

Zamana dayalı (yüklenebilir)
authMode

ScriptApp.AuthMode sıralamasındaki değer.

FULL
day-of-month

1 - 31 arasında.

Bu özellik adı tire içerdiğinden, nokta gösterimi yerine e['day-of-month'] aracılığıyla erişilmelidir.

31
day-of-week

1 (Pazartesi) ile 7 (Pazar) arasında.

Bu özellik adı tire içerdiğinden, nokta gösterimi yerine e['day-of-week'] aracılığıyla erişilmelidir.

7
hour

0 - 23 arasında.

23
minute

0 - 59 arasında.

59
month

1 - 12 arasında.

12
second

0 - 59 arasında.

59
timezone

Saat dilimi.

UTC
triggerUid

Bu etkinliği oluşturan tetikleyicinin kimliği.

4034124084959907503
week-of-year

1 - 52 arasında.

Bu özellik adı tire içerdiğinden, nokta gösterimi yerine e['week-of-year'] aracılığıyla erişilmelidir.

52
year

Yıl.

2015