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ına olanak tanır. Bir tetikleyici etkinleştiğinde Apps Komut Dosyası, işleve genellikle e olarak adlandırılan bir etkinlik nesnesini bağımsız değişken olarak iletir. Etkinlik nesnesi, tetikleyicinin etkinleştirilmesine neden olan bağlamla ilgili bilgileri içerir. Örneğin, aşağıdaki örnek kodda, hangi hücrenin düzenlendiğini belirlemek için etkinlik nesnesini kullanan bir Google E-Tablolar komut dosyası için basit bir onEdit(e) tetikleyici 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çıklanmaktadır.

Google E-Tablolar etkinlikleri

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

(basit ve yüklenebilir)
authMode

ScriptApp.AuthMode enum'ından bir değer.

LIMITED
source

Bir Spreadsheet nesnesi. Bu nesne, komut dosyasının bağlı olduğu Google E-Tablolar dosyasını temsil eder.

Spreadsheet
triggerUid

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

4034124084959907503
user

Kullanılabiliyorsa etkin kullanıcıyı temsil eden bir User nesnesi (karmaşık bir güvenlik kısıtlamaları grubuna bağlı olarak).

amin@example.com

Değiştir

(yüklenebilir)
authMode

ScriptApp.AuthMode enum'ından bir 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

Kullanılabiliyorsa etkin kullanıcıyı temsil eden bir User nesnesi (karmaşık bir güvenlik kısıtlamaları grubuna bağlı olarak).

amin@example.com

Düzenle

(basit ve yüklenebilir)
authMode

ScriptApp.AuthMode enum'ından bir değer.

LIMITED
oldValue

Düzenlemeden önceki hücre değeri (varsa). Yalnızca düzenlenen aralık tek bir hücreyse kullanılabilir. Hücrede daha önce içerik yoksa tanımsız olur.

1234
range

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

Range
source

Bir Spreadsheet nesnesi. Bu nesne, komut dosyasının bağlı olduğu Google E-Tablolar dosyasını temsil eder.

Spreadsheet
triggerUid

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

4034124084959907503
user

Kullanılabiliyorsa etkin kullanıcıyı temsil eden bir User nesnesi (karmaşık bir güvenlik kısıtlamaları grubuna bağlı olarak).

amin@example.com
value

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

10

Form gönderme

(yüklenebilir)
authMode

ScriptApp.AuthMode enum'ından bir 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

Değerlerin, e-tabloda göründükleri sırayla yer aldığı dizi.

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

Google Dokümanlar etkinlikleri

Tetikleyiciler, Google Dokümanlar'ın kullanıcı bir dokümanı açtığında yanıt vermesini sağlar.

(basit ve yüklenebilir)
authMode

ScriptApp.AuthMode enum'ından bir 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

Kullanılabiliyorsa etkin kullanıcıyı temsil eden bir User nesnesi (karmaşık bir güvenlik kısıtlamaları grubuna bağlı olarak).

amin@example.com

Google Slaytlar etkinlikleri

Tetikleyiciler, Google Slaytlar'ın kullanıcı bir sunuyu açtığında yanıt vermesini sağlar.

(basit)
authMode

ScriptApp.AuthMode enum'ından bir değer.

LIMITED
source

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

Presentation
user

Kullanılabiliyorsa etkin kullanıcıyı temsil eden bir User nesnesi (karmaşık bir güvenlik kısıtlamaları grubuna bağlı olarak).

amin@example.com

Google Formlar etkinlikleri

Google Formlar'a özel tetikleyiciler, kullanıcı bir formu düzenlediğinde veya yanıt gönderdiğinde komut dosyalarının yanıt vermesini sağlar.

* (basit ve yüklenebilir)
authMode

ScriptApp.AuthMode enum'ından bir 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

Kullanılabiliyorsa etkin kullanıcıyı temsil eden bir User nesnesi (karmaşık bir güvenlik kısıtlamaları grubuna bağlı olarak).

amin@example.com

* Bu etkinlik, kullanıcı yanıt vermek için formu açtığında değil, düzenleyen formu değiştirmek için açtığında gerçekleşir.

Form gönderme

(yüklenebilir)
authMode

ScriptApp.AuthMode enum'ından bir değer.

FULL
response

Kullanıcının forma verdiği yanıtı bir 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, kullanıcının takvim etkinlikleri güncellendiğinde (oluşturulduğunda, düzenlendiğinde veya silindiğinde) tetiklenir.

Bu tetikleyiciler, hangi etkinliğin değiştiğini 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 yapması gerektiğini belirtirler. Bu prosedürün tam açıklaması için Calendar API'nin Kaynakları senkronize etme kılavuzu'na bakın.

Apps Script'te 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 edileceğini belirleyin. Bu tür her takvim için Takvim gelişmiş hizmetinin Events.list() yöntemini kullanarak ilk senkronizasyon işlemini gerçekleştirin.
  3. İlk senkronizasyonun sonucu, ilgili takvim için nextSyncToken döndürür. Bu jetonu daha sonra kullanmak üzere saklayın.
  4. Apps Komut Dosyası EventUpdated tetikleyicisi, takvim etkinliği değişikliğini gösterdiğinde, depolanan nextSyncToken kullanılarak etkilenen takvim için artımlı senkronizasyon gerçekleştirin. Bu, temelde başka bir Events.list() isteğidir ancak nextSyncToken parametresinin sağlanması, yanıtı yalnızca son senkronizasyondan bu yana değişen etkinliklerle sınırlar.
  5. Hangi etkinliklerin güncellendiğini öğrenmek için senkronizasyonun yanıtını inceleyin ve kodunuzun uygun şekilde yanıt vermesini sağlayın. Örneğin, değişikliği kaydedebilir, bir e-tabloyu güncelleyebilir, e-posta bildirimleri gönderebilir veya başka işlemler yapabilirsiniz.
  6. Bu takvim için depoladığınız nextSyncToken değerini, artımlı senkronizasyon isteği tarafından döndürülen değerle güncelleyin. Bu işlem, bir sonraki senkronizasyon işleminin yalnızca en güncel değişiklikleri döndürmesini zorunlu kılar.

EventUpdated

(yüklenebilir)
authMode

ScriptApp.AuthMode enum'ındaki bir 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 eklenti etkinlikleri

onInstall() tetikleyici, kullanıcı bir eklenti yüklediğinde otomatik olarak çalışır.

Yükle

(basit)
authMode

ScriptApp.AuthMode enum'ından bir 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 bilinir), komut dosyalarının belirli bir zamanda veya yinelenen bir aralıkta yürütülmesine olanak tanır.

Zamana dayalı (yüklenebilir)
authMode

ScriptApp.AuthMode enum'ından bir değer.

FULL
day-of-month

1 ile 31 arasında.

Bu özellik adı kısa çizgi içerdiğinden nokta gösterimi yerine e['day-of-month'] ile erişilmelidir.

31
day-of-week

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

Bu özellik adı kısa çizgi içerdiğinden nokta gösterimi yerine e['day-of-week'] ile erişilmelidir.

7
hour

0 ile 23 arasında.

23
minute

0 ile 59 arasında.

59
month

1 ile 12 arasında.

12
second

0 ile 59 arasında.

59
timezone

Saat dilimi.

UTC
triggerUid

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

4034124084959907503
week-of-year

1 ile 52 arasında.

Bu özellik adı kısa çizgi içerdiğinden nokta gösterimi yerine e['week-of-year'] ile erişilmelidir.

52
year

Yıl.

2015