Bu kılavuzda, kullanıcıların Google Workspace Flows'daki bir akışa ekleyebileceği bir adımın nasıl oluşturulacağı açıklanmaktadır.
Adım, bir akışın görev sırasındaki tek bir adımdır. Adımlar akış başlatamaz.
Örneğin, aritmetik işlem yapan bir adımı ele alalım. Kullanıcıdan iki değer ve bir matematik işlemi girmesini ister. Ardından, değerler üzerinde matematiksel işlemi gerçekleştirir ve sonucu verir.
Bir adım oluşturmak için eklentinin manifest dosyasında yapılandırın, Google Workspace eklentisinin koduna uygulama mantığı yazın ve adımı dağıtıp test edin. Alfa sürümü sırasında, Akışlar'ı genişleten bir eklenti yayınlamayın.
Adımı tanımlama
Bir adımı yapılandırmak için manifest dosyasında tanımlayın ve uygulama mantığını kodda yazın.
Manifest dosyasında adımı tanımlayın
Manifest dosyasında appsscript.json:
onConfigFunctionveonExecuteFunctiondeğerlerini, eklentinin kodundaki ilgili işlevlerin adları olarak ayarlayın. Bu örnekte, işlevleronConfigCalculate()veonExecuteCalculate()olarak adlandırılır.onConfigFunction, adımı oluşturur ve yapılandırır. Gerekirse, e-posta göndermek için adres gibi adımı uygulamak üzere kullanıcılardan gerekli verileri toplar. Bu kılavuzdaki örnekte iki değer ve bir matematik işlemi istiyoruz.onExecuteFunctionadımı yürütür. Kullanıcılardan toplanan veriler bu işleve aktarılır. Geçerliyse bir çıkış döndürür. Bu kılavuzdaki örnekte, matematiksel bir hesaplamanın sonucunu verir.
Gerekli giriş ve çıkışları ayarlayarak adımın veri toplamasını ve sonraki adımlara göndermesini sağlayın. Bu örnekte, kullanıcıdan iki değer ve
inputs[]içinde tanımlanan bir matematik işlemi girmesini isteyin. Hesaplanan sonucuoutputs[]içinde tanımlandığı şekilde çıkış olarak verin.Girişler ve çıkışlar hakkında daha fazla bilgi edinmek için Giriş değişkenleri ve Çıkış değişkenleri başlıklı makalelere bakın. Akışların hatasız çalıştığından emin olmak için giriş değişkenlerini doğrulayın.
Hesap makinesi adımının manifest dosyası:
JSON
{
"timeZone": "America/Los_Angeles",
"exceptionLogging": "STACKDRIVER",
"runtimeVersion": "V8",
"addOns": {
"common": {
"name": "Calculator",
"logoUrl": "https://www.gstatic.com/images/branding/productlogos/calculator_search/v1/web-24dp/logo_calculator_search_color_1x_web_24dp.png",
"useLocaleFromApp": true
},
"flows": {
"workflowElements": [
{
"id": "actionElement",
"state": "ACTIVE",
"name": "Calculate",
"description": "Asks the user for two values and a math operation, then performs the math operation on the values and outputs the result.",
"workflowAction": {
"inputs": [
{
"id": "value1",
"description": "value1",
"cardinality": "SINGLE",
"dataType": {
"basicType": "INTEGER"
}
},
{
"id": "value2",
"description": "value2",
"cardinality": "SINGLE",
"dataType": {
"basicType": "INTEGER"
}
},
{
"id": "operation",
"description": "operation",
"cardinality": "SINGLE",
"dataType": {
"basicType": "STRING"
}
}
],
"outputs": [
{
"id": "result",
"description": "Calculated result",
"cardinality": "SINGLE",
"dataType": {
"basicType": "INTEGER"
}
}
],
"onConfigFunction": "onConfigCalculate",
"onExecuteFunction": "onExecuteCalculate"
}
}
]
}
}
}
Ardından, adımı kodda tanımlayarak destekleyici kodu yazın.
Adımı kodda tanımlama
Uygulama kodunda aşağıdakileri yapın:
Bu örnekte
onConfigCalculate()olarak adlandırılanonConfigFunctionöğesini yazın. Kullanıcılar adımı bir akışa eklediğinde akış oluşturucuda adımın çeşitli yönlerini yapılandırabilir.onConfigFunction, kullanıcıdan gerekli bilgileri toplamak için bir yapılandırma kartı tanımlar.Kartlar, eklentilerdeki kullanıcı arayüzlerinin yapı taşlarıdır. Kartlar, tanımlanmış bir düzeni, düğmeler gibi etkileşimli kullanıcı arayüzü öğelerini ve resimler gibi rich media'yı destekler. Kartlar, adımın çalışması için gereken verileri (ör. e-posta göndermek için e-posta adresi) kullanıcıdan almanın bir yoludur.
OnConfigFunction, kart içeren birRenderActionsnesnesi döndürür. Bu kart, kullanıcıların adımın verilerini ayarladığı kullanıcı arayüzünü tanımlar. Bu örnekteonConfigFunction, kullanıcıdan iki değer ve bir matematik işlemi isteyen bir kart oluşturuyor.Bu örnekte
onExecuteFunctionadlıonExecuteCalculate()yazın. Bir akışta adımınız çalıştırıldığındaOnExecuteFunctionçalıştırılır. Kullanıcının yapılandırma sırasındaonConfigurationFunctionbölümünde tanımlandığı şekilde ayarladığı tüm giriş değerleriOnExecuteFunctionbölümüne iletilir.OnExecuteFunction(), sağlanan girişleri kullanarak görevini eşzamanlı olarak yürütecek şekilde yaz. Akışınızın manifest dosyasında tanımlanan tüm çıkışlarınOnExecuteFunction()tarafından döndürülmesi gerektiğini unutmayın. Aksi takdirde hata oluşur.
Bu kod örneğinde, sağlanan değişkenleri adımın çıkışı olarak oluşturan ve gönderen destekleyici bir işlev (outputVariables()) yer alıyor.
Adımınız test edilmeye hazır.
Hesap makinesi adımının kodu aşağıda verilmiştir:
Apps Komut Dosyası
/**
* Generates and displays a configuration card for the sample calculation step.
*
* This function creates a card with input fields for two values and a drop-down
* for selecting an arithmetic operation. The card also includes a "Save"
* button to save the step configuration for the workflow.
*
* The input fields are configured to let the user select outputs from previous
* workflow steps as input values using the `hostAppDataSource` property.
*/
function onConfigCalculate() {
var card = {
"sections": [
{
"header": "Step example: Calculate",
"widgets": [
{
"textInput": {
"name": "value1",
"label": "First value",
"hostAppDataSource" : {
"workflowDataSource" : {
"includeVariables" : true
}
}
}
},
{
"selectionInput": {
"name": "operation",
"label": "Operation",
"type": "DROPDOWN",
"items": [
{
"text": "+",
"value": "+",
},
{
"text": "-",
"value": "-",
},
{
"text": "x",
"value": "x",
},
{
"text": "/",
"value": "/",
}
]
}
},
{
"textInput": {
"name": "value2",
"label": "Second value",
"hostAppDataSource" : {
"workflowDataSource" : {
"includeVariables" : true
}
}
}
}
]
}
]
};
return {
"action": {
"navigations": [{
"push_card": card
}]
}
};
}
/**
* Returns output variables from a step.
*
* This function constructs an object that, when returned, sends the
* provided variable values as output from the current step.
* The variable values are logged to the console for debugging purposes.
*/
function outputVariables(variableValues) {
var renderAction = {
"hostAppAction" : {
"workflowAction" : {
"returnOutputVariablesAction" : {
"variables" : variableValues
}
}
}
};
console.log("renderAction: " + JSON.stringify(renderAction));
return renderAction;
}
/**
* Executes the calculation step based on the inputs from a flow event.
*
* This function retrieves input values and the operation from the flow event,
* performs the calculation, and returns the result as an output variable.
* The function logs the event for debugging purposes.
*/
function onExecuteCalculate(event) {
console.log("output: " + JSON.stringify(event));
var calculatedValue = 0;
var value1 = event.workflow.actionInvocation.inputs["value1"].integerValues[0];
var value2 = event.workflow.actionInvocation.inputs["value2"].integerValues[0];
var operation = event.workflow.actionInvocation.inputs["operation"].stringValues[0];
if (operation == "+") {
calculatedValue = value1 + value2;
} else if (operation == "-") {
calculatedValue = value1 - value2;
} else if (operation == "x") {
calculatedValue = value1 * value2;
} else if (operation == "/") {
calculatedValue = value1 / value2;
}
return outputVariables([{
"variableId": "result",
"variableData": {
"integerValues": [
calculatedValue
]
},
}]);
}
Adımınızı test etme
Adımınızı test etmek için eklentinizde bir test dağıtımı ayarlayın, adımı bir akışa ekleyin ve ardından akışı çalıştırın.
Eklentiniz için test dağıtımı oluşturun:
- Komut dosyası projesini Apps Komut Dosyası Düzenleyicisi'nde açın.
- Dağıt > Dağıtımları test et'i tıklayın.
- Yükle'yi tıklayın.
- En altta Bitti'yi tıklayın.
Apps Komut Dosyası projesini hesaplarıyla paylaşarak (düzenleme erişimi gerekir) diğer kullanıcıların eklentiyi test etmesine izin verebilirsiniz. Ardından, kullanıcılardan önceki adımları uygulamalarını isteyin.
Eklenti yüklendikten sonra Akışlar'da hemen kullanılabilir. Eklentinin görünmesi için Flow'ları yenilemeniz gerekebilir. Eklentiyi kullanmadan önce yetkilendirmeniz de gerekir.
Test dağıtımları hakkında daha fazla bilgi edinmek için Yayınlanmamış bir eklentiyi yükleme başlıklı makaleyi inceleyin.
Akışlar'ı açın.
Adımınızı içeren bir akış oluşturun:
- Yeni akış'ı tıklayın.
- Akışın nasıl başlayacağını seçin. Bir adımı test ederken kendiniz başlatabileceğiniz bir başlangıç seçmeniz iyi bir fikirdir (ör. kendinize e-posta gönderme). Adımınız için bir giriş değişkeni gerekiyorsa giriş değişkenini başlatıcının çıkışının bir parçası olarak yapılandırın.
- Adım ekle'yi tıklayın. Hesapla adlı oluşturduğunuz veya güncellediğiniz adımı seçin.
- Adımınızı yapılandırın. Hesaplama adımı için iki değer ve bir matematik işlemi seçin. Adım otomatik olarak kaydedilir.
- Adımınızın çıkışını test etmek için başka bir adım ekleyin. Örneğin, bir e-posta iletisine çıkış eklemek için Gmail'in İleti gönderme adımını ekleyebilirsiniz. İleti bölümünde Değişkenler'i tıklayın ve adımınızın çıkışını seçin. Hesaplama adımında Değişkenler > 2. Adım: Hesaplanan sonuç > Hesaplanan sonuç'u seçin. Değişken, Mesaj alanında çip olarak görünür.
- Aç'ı tıklayın. Akışınız çalıştırılmaya hazır.
Akışınızın başlatıcısını tetikleyerek akışı çalıştırın. Örneğin, akışınız e-posta aldığınızda başlıyorsa kendinize bir e-posta gönderin.
Akışın beklendiği gibi çalıştığını doğrulayın. Akış oluşturucunun Etkinlik sekmesini ziyaret ederek günlükleri kontrol edin. Etkinlik sekmesinde nasıl özel günlük oluşturacağınızı öğrenmek için Etkinlik günlükleri başlıklı makaleyi inceleyin.
İlgili konular
- Giriş değişkenleri
- Giriş değişkenini doğrulama
- Çıkış değişkenleri
- Özel kaynak tanımlama
- Dinamik değişkenler
- Etkinlikleri ve hataları günlüğe kaydetme
- Flows etkinlik nesnesi