How to use the camunda-external-task-client-js.Client function in camunda-external-task-client-js

To help you get started, we’ve selected a few camunda-external-task-client-js examples, based on popular ways it is used in public projects.

github camunda / camunda-external-task-client-js / examples / granting-loans / index.js View on Github external
const {
  Client,
  logger,
  Variables
} = require("camunda-external-task-client-js");

// configuration for the Client:
//  - 'baseUrl': url to the Workflow Engine
//  - 'logger': utility to automatically log important events
const config = {
  baseUrl: "http://localhost:8080/engine-rest",
  use: logger
};

// create a Client instance with custom configuration
const client = new Client(config);

// create a handler for the task
const handler = async ({ task, taskService }) => {
  // get task variable 'defaultScore'
  const defaultScore = task.variables.get("defaultScore");

  // set process variable 'creditScores'
  const creditScores = [defaultScore, 9, 1, 4, 10];
  const processVariables = new Variables()
    .set("creditScores", creditScores)
    .set("bar", new Date());

  // complete the task
  try {
    await taskService.complete(task, processVariables);
    console.log("I completed my task successfully!!");
github camunda / camunda-external-task-client-js / examples / order / index.js View on Github external
Client,
  logger,
  Variables,
  File
} = require("camunda-external-task-client-js");

// configuration for the Client:
//  - 'baseUrl': url to the Workflow Engine
//  - 'logger': utility to automatically log important events
const config = {
  baseUrl: "http://localhost:8080/engine-rest",
  use: logger
};

// create a Client instance with custom configuration
const client = new Client(config);

// susbscribe to the topic: 'invoiceCreator'
client.subscribe("invoiceCreator", async function({ task, taskService }) {
  // Put your business logic
  // complete the task
  const date = new Date();
  const invoice = await new File({ localPath: "./assets/invoice.txt" }).load();
  const minute = date.getMinutes();
  const variables = new Variables().setAll({ invoice, date });

  // check if minute is even
  if (minute % 2 === 0) {
    // for even minutes, store variables in the process scope
    await taskService.complete(task, variables);
  } else {
    // for odd minutes, store variables in the task local scope
github berndruecker / flowing-retail / rest / java / payment-camunda / node-customer-credit-worker / index.js View on Github external
var request = require('request');
const { Client, Variables } = require("camunda-external-task-client-js");

const config = { baseUrl: "http://localhost:8100/rest/engine/default", interval: 50, asyncResponseTimeout: 10000};
const client = new Client(config);

client.subscribe("customer-credit", async function({ task, taskService }) {
  var remainingAmount = 0;
  if (Math.random() > 0.3) {
    remainingAmount = 15;   
  }

  const processVariables = new Variables();
  processVariables.set("remainingAmount", remainingAmount);

  console.log('[%s] done for process instance %s with remainingAmount=%s', task.topicName, task.processInstanceId, remainingAmount);
  await taskService.complete(task, processVariables);
});

client.subscribe("customer-credit-refund", async function({ task, taskService }) {
  console.log('[%s] done for process instance %s', task.topicName, task.processInstanceId);
github berndruecker / flowing-retail / rest / csharp / payment / NodeJs-CustomeCreditWorker / index.js View on Github external
var request = require('request');
const { Client, Variables } = require("camunda-external-task-client-js");

const config = { baseUrl: "http://localhost:8080/engine-rest/engine/default/", interval: 50};
const client = new Client(config);

client.subscribe("customer-credit", async function({ task, taskService }) {
  var remainingAmount = 0;
  if (Math.random() > 0.3) {
    remainingAmount = 15;   
  }

  const processVariables = new Variables();
  processVariables.set("remainingAmount", remainingAmount);

  console.log('[%s] done for process instance %s with remainingAmount=%s', task.topicName, task.processInstanceId, remainingAmount);
  await taskService.complete(task, processVariables);
});

client.subscribe("customer-credit-refund", async function({ task, taskService }) {
  console.log('[%s] done for process instance %s', task.topicName, task.processInstanceId);

camunda-external-task-client-js

Implement your [BPMN Service Task](https://docs.camunda.org/manual/latest/user-guide/process-engine/external-tasks/) in NodeJS.

Apache-2.0
Latest version published 6 months ago

Package Health Score

75 / 100
Full package analysis

Similar packages