NestJS Connector for the Node.JS External Task Client

Hi,

With nestjs-cambpm, I created a Nest.JS Connector for the Node.JS External Task Client.

NestJS is a Node.JS framework that helps to build scalable server-side applications.

The extension is based on…

… the official Node.JS External Task Client maintained by Camunda
… a community-driven TypeScript Definition of the Node.JS External Task Client

You can check it out and find an example here:

Let me know what you are thinking about it. :slightly_smiling_face:

Best,
Tassilo

4 Likes

hi @tasso94,

i got error for camunda-external-task-client-js.

my environment is
node : 10.19.0

please give me advice…

thanks :rocket:

1 Like

Hi @budiman_rahardjo,

Thank you for your question.

It seems that the HTTP client got we use in the External Task Client requires a higher NodeJS version. According to this issue, NodeJS 12+ should work fine.

Let me know if this helps.

Best,
Tassilo

hi @tasso94,

thanks for your feedback,
today i have upgrade my node version to. 14.15.0 but the problem still same :flushed:,

what shoud i check for this problem?
this package.json in my environment

{
“name”: “project”,
“version”: “1.0.0”,
“description”: “sinta web service”,
“author”: “MAB”,
“license”: “MIT”,
“scripts”: {
“format”: “prettier --write “**/*.ts””,
“start”: “ts-node -r tsconfig-paths/register src/main.ts”,
“start:dev”: “nodemon”,
“prestart:prod”: “tsc”,
“start:prod”: “node dist/main.js”,
“start:hmr”: “node dist/server”,
“test”: “jest”,
“test:cov”: “jest --coverage”,
“test:e2e”: “jest --config ./test/jest-e2e.json”,
“webpack”: “webpack --config webpack.config.js”
},
“dependencies”: {
@nest-modules/mailer”: “^0.4.1”,
@nestjs/common”: “^7.4.2”,
@nestjs/core”: “^7.4.2”,
@nestjs/jwt”: “^0.1.3”,
@nestjs/microservices”: “^5.1.0”,
@nestjs/passport”: “^1.1.0”,
@nestjs/swagger”: “^2.5.1”,
@nestjs/typeorm”: “^5.1.0”,
@yops/nest-mailer”: “^0.1.33”,
“accounting”: “^0.4.1”,
“apicache”: “^1.5.2”,
“automapper-ts”: “^1.9.0”,
“camunda-external-task-client-js”: “^2.0.0”,
“cls-hooked”: “^4.2.2”,
“config”: “^2.0.1”,
“connect-timeout”: “^1.9.0”,
“copy”: “^0.3.2”,
“csurf”: “^1.9.0”,
“excel4node”: “^1.7.0”,
“express-rate-limit”: “^3.1.0”,
“fastify-formbody”: “^2.0.0”,
“helmet”: “^3.13.0”,
“ical-generator”: “^1.11.0”,
“ics”: “^2.22.1”,
“json2csv”: “^4.3.5”,
“jsonwebtoken”: “^8.3.0”,
“lodash”: “^4.17.10”,
“make-dir”: “^3.0.0”,
“md5”: “^2.2.1”,
“moment”: “^2.22.2”,
“move-file”: “^1.2.0”,
“multer”: “^1.4.1”,
“nest-schedule”: “^0.4.6”,
“nestjs-cambpm”: “0.0.3”,
“nestjs-standard-middleware”: “^1.2.4”,
“node”: “^8.9.4”,
“nodemailer”: “^4.7.0”,
“oracledb”: “^2.2.0”,
“passport”: “^0.4.0”,
“passport-jwt”: “^4.0.0”,
“redis”: “^2.8.0”,
“reflect-metadata”: “^0.1.12”,
“rename-overwrite”: “^2.0.1”,
“rxjs”: “^6.0.0”,
“smtp”: “^0.1.4”,
“ssl-root-cas”: “^1.3.1”,
“supertest”: “^3.1.0”,
“typeorm”: “0.2.9”,
“typescript”: “^2.6.2”,
“uniqid”: “^5.0.3”
},
“devDependencies”: {
@nestjs/cli”: “^7.4.1”,
@nestjs/schematics”: “^7.0.1”,
@nestjs/testing”: “^5.0.0”,
@types/config”: “0.0.34”,
@types/express”: “^4.0.39”,
@types/jest”: “^21.1.8”,
@types/lodash”: “^4.14.116”,
@types/node”: “^9.3.0”,
@types/supertest”: “^2.0.4”,
“jest”: “^21.2.1”,
“nodemon”: “^1.14.1”,
“prettier”: “^1.11.1”,
“supertest”: “^3.0.0”,
“ts-jest”: “^21.2.4”,
“ts-loader”: “^4.1.0”,
“ts-node”: “^4.1.0”,
“tsconfig-paths”: “^3.1.1”,
“tslint”: “5.3.2”,
“webpack”: “^4.2.0”,
“webpack-cli”: “^2.0.13”,
“webpack-node-externals”: “^1.6.0”
},
“jest”: {
“moduleFileExtensions”: [
“js”,
“json”,
“ts”
],
“rootDir”: “src”,
“testRegex”: “.spec.ts$”,
“transform”: {
“^.+\.(t|j)s$”: “ts-jest”
},
“coverageDirectory”: “…/coverage”
}
}

thanks :rocket::rocket::rocket:
Rahardjo

Hi @budiman_rahardjo,

Can you provide a minimal project which reproduces the problem?
Like this, I can debug it at my end. :slight_smile:

Best,
Tassilo

Hi @tasso94, I have two questions:

  • How can I access Client?

  • Can I have more than one Client in a NestJs app?

Thanks for your work :slight_smile: