Page tree
Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 12 Next »

Camunda

Camunda is a workflow and decision automation platform. It's similar to Openedge BPM.


Current Camunda Akioma Environment is: https://camunda.akiomacloud.de/

The installation was done as docker image on our docker server. Current user: "demo" password is our common password.


For the Camunda integrationwe used their REST API, which allows end users to quickly create/delete/fetch tasks/processes etc.

For more info regarding the Camunda API see: https://docs.camunda.org/manual/7.3/api-references/rest/

More information regarding Kinvey Flex Services here: Kinvey Flex Services

Example:

const sdk = require('kinvey-flex-sdk');
const DigestFetch = require('digest-fetch');

Class CamundaService {

        constructor(){
            this.client = new DigestFetch(userName, password);
            this.logger = flex.logger;

}

getAll (context, complete, modules) {
    this.logger.info('getAll Context:' + JSON.stringify(context));
    const backendUrl = "url to camunda backend";
    this.client.fetch(backendUrl)
        .then(response => response.json())
        .then(data => {
        data.forEach(item => {
            item._id = item.id;
        });
        complete().setBody(data).ok().next();
    })
    .catch(e => console.error(e));
}

}

sdk.service((err, flex) => {
        const data = flex.data;               //get data object
        const flexLogger = flex.logger; //get logger

        const camundaFlexServive = data.serviceObject('task'); //get service object from data object
        camundaService = new CamundaService(key, flex);       //instantiate new service class
        camundaFlexServive.onGetAll(camundaService.getAll.bind(camundaService)); //bind handler function to getAll event

}

  • No labels