Method: triggers.fire

Bir tetikleyici etkinliğin gerçekleştiğini Google'a bildirir.

HTTP isteği

POST https://workspacestudio.googleapis.com/v1/{name=triggers/*}:fire

URL, gRPC Kod Dönüştürme söz dizimini kullanır.

Yol parametreleri

Parametreler
name

string

Zorunlu. Tetikleyicinin kaynak adı. Biçim: triggers/{trigger_id}

İstek metni

İstek içeriği aşağıdaki yapıyla birlikte verileri içerir:

JSON gösterimi
{
  "outputs": {
    string: {
      object (VariableData)
    },
    ...
  },
  "log": {
    object (TextFormat)
  },
  "requestId": string
}
Alanlar
outputs

map (key: string, value: object (VariableData))

İsteğe bağlıdır. Üçüncü taraf uygulamasındaki tetikleyici etkinliğin çıktı değişkenleri.

"key": value çiftlerinin listesini içeren bir nesne. Örnek: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

log

object (TextFormat)

İsteğe bağlıdır. Tetikleyici etkinlik için isteğe bağlı kullanıcıya yönelik günlük.

requestId

string

İsteğe bağlıdır. Bu isteğin benzersiz tanımlayıcısıdır. 36 ASCII karakterle sınırlıdır. Rastgele bir UUID önerilir. Bu istek yalnızca requestId sağlanırsa idempotent olur.

Yanıt metni

Başarılı olursa yanıt gövdesi boş olur.

Yetkilendirme kapsamları

Aşağıdaki OAuth kapsamını gerektirir:

  • https://www.googleapis.com/auth/workspace.studio.trigger

Daha fazla bilgi için Yetkilendirme kılavuzu'na bakın.

VariableData

Farklı türlerde birden fazla değer içerebilen değişken verileri temsil eder.

JSON gösterimi
{
  "booleanValues": [
    boolean
  ],
  "integerValues": [
    string
  ],
  "stringValues": [
    string
  ],
  "timestampValues": [
    string
  ],
  "resourceReferences": [
    string
  ],
  "resourceDataValues": [
    {
      object (ResourceData)
    }
  ],
  "emailAddressValues": [
    string
  ],
  "users": [
    string
  ]
}
Alanlar
booleanValues[]

boolean

Boole değerleri.

integerValues[]

string (int64 format)

Tam sayı değerleri.

stringValues[]

string

Dize değerleri.

timestampValues[]

string (Timestamp format)

Zaman damgası değerleri.

Zaman damgasında RFC 3339 kullanılır. Yani oluşturulan çıkış her zaman Z ile normalleştirilir ve 0, 3, 6 veya 9 kesirli basamak kullanılır. "Z" dışındaki zaman farkları da kabul edilir. Örnekler: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" veya "2014-10-02T15:01:23+05:30".

resourceReferences[]

string

Kaynak kimliklerinin listesi (ör. "spaces/123").

resourceDataValues[]

object (ResourceData)

Kaynak verilerinin listesi.

emailAddressValues[]

string

E-posta adresi değerleri.

users[]

string

Google kullanıcı değerleri users/{user} biçimindedir.

ResourceData

Uygulamaya özgü kaynak değeri.

JSON gösterimi
{
  "fields": {
    string: {
      object (VariableData)
    },
    ...
  }
}
Alanlar
fields

map (key: string, value: object (VariableData))

Alan adına göre anahtarlanmış kaynak alanlarının haritası.

"key": value çiftlerinin listesini içeren bir nesne. Örnek: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

TextFormat

Stiller, köprüler ve etkileşimli öğeler gibi zengin biçimlendirme seçenekleri içeren bir metin bloğu.

JSON gösterimi
{
  "textFormatElements": [
    {
      object (TextFormatElement)
    }
  ]
}
Alanlar
textFormatElements[]

object (TextFormatElement)

İsteğe bağlıdır. Metin biçimi öğelerinin bir koleksiyonu.

TextFormatElement

WorkflowTextFormatMarkup mesajındaki tek bir öğe. Bu öğe; çip, stil verilmiş metin, köprü veya liste kapsayıcısı olabilir.

JSON gösterimi
{

  "text": string,
  "chip": {
    object (Chip)
  },
  "styledText": {
    object (StyledText)
  },
  "hyperlink": {
    object (Hyperlink)
  },
  "listContainer": {
    object (ListContainer)
  }
}
Alanlar
element birleşik alanı. Olası birkaç metin biçimi öğesinden birini temsil eden öğe. element aşağıdakilerden yalnızca biri olabilir:
text

string

Metin biçimindeki metinler.

chip

object (Chip)

Metin biçiminde tıklanabilir çip.

styledText

object (StyledText)

Metin biçiminde stil verilmiş metin.

listContainer

object (ListContainer)

Metin biçimindeki liste kapsayıcısı.

Çip

Metin biçiminde tıklanabilir bir çip.

JSON gösterimi
{
  "icon": {
    object (Icon)
  },
  "label": string,
  "url": string
}
Alanlar
icon

object (Icon)

İsteğe bağlıdır. Çipte gösterilen simge.

label

string

İsteğe bağlıdır. Çipte gösterilen metin.

url

string

İsteğe bağlıdır. Çip tıklandığında gidilecek URL.

Simge

Çipteki simge.

JSON gösterimi
{

  "iconUrl": string,
  "materialIcon": string
}
Alanlar
icons birleşik alanı. Çipte gösterilen simge. icons aşağıdakilerden yalnızca biri olabilir:
iconUrl

string

HTTPS URL'sinde barındırılan özel bir simge gösterin.

Örneğin:

"iconUrl":
"https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png"

Desteklenen dosya türleri arasında .png ve .jpg yer alır.

materialIcon

string

Google Material Icon'da tanımlanan simge adı (örneğin, check_box). Geçersiz adlar bırakılır ve boş dizeyle değiştirilir. Bu durum, simgenin oluşturulamamasına neden olur.

StyledText

Kalın, italik ve renk gibi stillere sahip metin öğesi.

JSON gösterimi
{
  "text": string,
  "styles": [
    enum (Style)
  ],
  "fontWeight": enum (FontWeight),
  "color": {
    object (Color)
  },
  "wrapStyle": enum (WrapStyle)
}
Alanlar
text

string

İsteğe bağlıdır. Metnin ana içeriği.

styles[]

enum (Style)

İsteğe bağlıdır. Metne uygulanan stiller koleksiyonu.

fontWeight

enum (FontWeight)

İsteğe bağlıdır. Metnin yazı tipi ağırlığı.

color

object (Color)

İsteğe bağlıdır. Metnin rengi.

wrapStyle

enum (WrapStyle)

İsteğe bağlıdır. Metnin sarmalama stili.

Stil

İtalik, altı çizili gibi farklı metin stilleri için enum.

Sıralamalar
STYLE_UNSPECIFIED Stil uygulanmadı.
ITALIC İtalik stil.
UNDERLINE Altı çizili stil.
STRIKETHROUGH Üstü çizili stil.
LINE_BREAK Satır sonu.
UPPERCASE Büyük harf stili.
CODE Kodlayın.
CODE_BLOCK Kod bloğu.

FontWeight

Farklı yazı tipi ağırlıkları için enum.

Sıralamalar
FONT_WEIGHT_UNSPECIFIED Normal kalınlıkta standart ağırlık.
LIGHT Daha az kalınlık ve daha hafif ağırlık.
MEDIUM Açık ve kalın arasında bir ağırlık.
BOLD Daha fazla kalınlık ile daha ağır.

Renk

RGBA renk alanındaki bir rengi temsil eder. Bu gösterim, çeşitli dillerdeki renk gösterimlerine dönüştürme ve bu gösterimlerden dönüştürme işlemlerinin kolaylığı için tasarlanmıştır. Örneğin, bu gösterimin alanları Java'da java.awt.Color oluşturucusuna, iOS'te UIColor'ın +colorWithRed:green:blue:alpha yöntemine kolayca sağlanabilir ve biraz çalışmayla JavaScript'te CSS rgba() dizesi olarak kolayca biçimlendirilebilir.

Bu referans sayfasında, RGB değerini yorumlamak için kullanılması gereken mutlak renk alanı (ör. sRGB, Adobe RGB, DCI-P3 ve BT.2020) hakkında bilgi verilmemektedir. Uygulamalar varsayılan olarak sRGB renk alanını kullanmalıdır.

Renk eşitliğine karar verilmesi gerektiğinde, aksi belgelenmediği sürece uygulamalar, kırmızı, yeşil, mavi ve alfa değerlerinin her biri en fazla 1e-5 farklıysa iki rengi eşit olarak kabul eder.

Örnek (Java):

 import com.google.type.Color;

 // ...
 public static java.awt.Color fromProto(Color protocolor) {
   float alpha = protocolor.hasAlpha()
       ? protocolor.getAlpha().getValue()
       : 1.0;

   return new java.awt.Color(
       protocolor.getRed(),
       protocolor.getGreen(),
       protocolor.getBlue(),
       alpha);
 }

 public static Color toProto(java.awt.Color color) {
   float red = (float) color.getRed();
   float green = (float) color.getGreen();
   float blue = (float) color.getBlue();
   float denominator = 255.0;
   Color.Builder resultBuilder =
       Color
           .newBuilder()
           .setRed(red / denominator)
           .setGreen(green / denominator)
           .setBlue(blue / denominator);
   int alpha = color.getAlpha();
   if (alpha != 255) {
     result.setAlpha(
         FloatValue
             .newBuilder()
             .setValue(((float) alpha) / denominator)
             .build());
   }
   return resultBuilder.build();
 }
 // ...

Örnek (iOS / Obj-C):

 // ...
 static UIColor* fromProto(Color* protocolor) {
    float red = [protocolor red];
    float green = [protocolor green];
    float blue = [protocolor blue];
    FloatValue* alpha_wrapper = [protocolor alpha];
    float alpha = 1.0;
    if (alpha_wrapper != nil) {
      alpha = [alpha_wrapper value];
    }
    return [UIColor colorWithRed:red green:green blue:blue alpha:alpha];
 }

 static Color* toProto(UIColor* color) {
     CGFloat red, green, blue, alpha;
     if (![color getRed:&red green:&green blue:&blue alpha:&alpha]) {
       return nil;
     }
     Color* result = [[Color alloc] init];
     [result setRed:red];
     [result setGreen:green];
     [result setBlue:blue];
     if (alpha <= 0.9999) {
       [result setAlpha:floatWrapperWithValue(alpha)];
     }
     [result autorelease];
     return result;
}
// ...

Örnek (JavaScript):

// ...

var protoToCssColor = function(rgb_color) {
   var redFrac = rgb_color.red || 0.0;
   var greenFrac = rgb_color.green || 0.0;
   var blueFrac = rgb_color.blue || 0.0;
   var red = Math.floor(redFrac * 255);
   var green = Math.floor(greenFrac * 255);
   var blue = Math.floor(blueFrac * 255);

   if (!('alpha' in rgb_color)) {
      return rgbToCssColor(red, green, blue);
   }

   var alphaFrac = rgb_color.alpha.value || 0.0;
   var rgbParams = [red, green, blue].join(',');
   return ['rgba(', rgbParams, ',', alphaFrac, ')'].join('');
};

var rgbToCssColor = function(red, green, blue) {
  var rgbNumber = new Number((red << 16) | (green << 8) | blue);
  var hexString = rgbNumber.toString(16);
  var missingZeros = 6 - hexString.length;
  var resultBuilder = ['#'];
  for (var i = 0; i < missingZeros; i++) {
     resultBuilder.push('0');
  }
  resultBuilder.push(hexString);
  return resultBuilder.join('');
};

// ...
JSON gösterimi
{
  "red": number,
  "green": number,
  "blue": number,
  "alpha": number
}
Alanlar
red

number

Renk içindeki kırmızı miktarı [0, 1] aralığında bir değer olarak.

green

number

Renk içindeki yeşil miktarı [0, 1] aralığında bir değer olarak.

blue

number

Renk içindeki mavi miktarı [0, 1] aralığında bir değer olarak.

alpha

number

Bu rengin piksele uygulanması gereken oranı. Yani, nihai piksel rengi şu denklemle tanımlanır:

pixel color = alpha * (this color) + (1.0 - alpha) * (background color)

Bu nedenle, 1,0 değeri düz bir renge, 0,0 değeri ise tamamen şeffaf bir renge karşılık gelir. Bu, varsayılan değer ile ayarlanmamış değer arasında ayrım yapabilmek için basit bir kayan nokta skaler yerine sarmalayıcı mesaj kullanır. Atlanırsa bu renk nesnesi düz renk olarak oluşturulur (alfa değerine açıkça 1, 0 değeri verilmiş gibi).

WrapStyle

Farklı sarmalama stilleri için enum.

Sıralamalar
WRAP_STYLE_UNSPECIFIED Sarma stili belirtilmedi.
NO_WRAP Sarma stili yok.

ListContainer

Liste öğeleri için kapsayıcı. Her liste öğesi birden fazla TextFormatElement içerebilir.

JSON gösterimi
{
  "listNestLevel": string,
  "listType": enum (ListType),
  "listItems": [
    {
      object (ListItem)
    }
  ]
}
Alanlar
listNestLevel

string (int64 format)

İsteğe bağlıdır. Listenin iç içe yerleştirme düzeyi. En üst düzey için 0'dan başlar ve her iç içe geçmiş liste için 1 artar.

listType

enum (ListType)

İsteğe bağlıdır. Listenin türü.

listItems[]

object (ListItem)

İsteğe bağlıdır. Liste öğeleri koleksiyonu.

ListType

Farklı liste türleri için enum.

Sıralamalar
LIST_TYPE_UNSPECIFIED Liste türü belirtilmedi.
ORDERED Sıralı liste.
UNORDERED Sırasız liste.

ListItem

Liste öğesi.

JSON gösterimi
{
  "textFormatElements": [
    {
      object (TextFormatElement)
    }
  ]
}
Alanlar
textFormatElements[]

object (TextFormatElement)

İsteğe bağlıdır. Metin biçimi öğelerinin bir koleksiyonu.