npm i @villedemontreal/workit-stepfunction-client
TODO: update for step-function lib
import { BasicAuthInterceptor, Client as CamundaExternalClient } from 'camunda-external-task-client-js';
const basicOauth = { username: 'admin', password: 'admin123' };
const config = {
maxTasks: 32,
workerId: 'demo',
baseUrl: `http://localhost:8080/engine-rest`,
topicName: 'topic_demo',
bpmnKey: 'BPMN_DEMO',
autoPoll: false,
interceptors: [new BasicAuthInterceptor(basicOauth)]
};
const clientLib: ICamundaClient = new CamundaExternalClient(config);
const client = new CamundaBpmClient(config, clientLib);
await client.deployWorkflow('deploy-your.bpmn');
await client.createWorkflowInstance({
bpmnProcessId: "BPMN_DEMO",
variables: {
amount: 1000,
hello: "world"
}
});
await client.subscribe(async (message, service) => {
// do something
});
// client contains other useful methods
import { NodeTracer } from '@opentelemetry/node';
import { BasicAuthInterceptor, Client as CamundaExternalClient } from 'camunda-external-task-client-js';
import { FailureStrategySimple, SCProcessHandler, SuccessStrategySimple, Worker } from '@villedemontreal/workit-core';
const clientLib: ICamundaClient = new CamundaExternalClient(config);
const client = new CamundaBpmClient(config, clientLib);
const successHandler = new SuccessStrategySimple();
const failureHandler = new FailureStrategySimple();
const tracer = new NodeTracer();
const processHandler = new SCProcessHandler(successHandler, failureHandler, tracer);
const worker = new Worker(client, processHandler);
worker.start();
worker.run();
- Get started in 2 minutes.
- Documentation is available in this folder
- Comprehensive API documentation is available online and in the
docs
subdirectory
See the list of contributors who participated in this project.
Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us.
This project is licensed under the MIT License - see the LICENSE file for details