@vtfk/e18
v2.1.5
Published
## Usage
Downloads
12
Readme
E18
Usage
Requires Node.js of minimum v14
Add E18_URL
, E18_KEY
and E18_SYSTEM
to your environment variables
If you don't want your API to add statistics when E18
info is missing, set E18_EMPTY_JOB
as false in your environment variables
New job
No E18 info in body
Job will have system
and type
set to unknown and projectId
set to 0
*Task will have system
set to E18_SYSTEM and method
set to functionName
const { create } = require('@vtfk/e18')
const options = { // request property from route
body: {
something: 'helloworld'
}
}
const result = {
status: 'waiting|running|suspended|completed|failed',
message: 'Finished or whateter|Failed or whatever',
error: {} // should be set when status is failed
data: {} // should be set when status is completed
}
await create(options, result, context)
Passing "system", "type" and "projectId" info in body
Job will have system
set to jobSystem and type
set to jobType and projectId
set to jobProjectId
*Task will have system
set to E18_SYSTEM and method
set to functionName
const { create } = require('@vtfk/e18')
const options = { // request property from route
body: {
e18: {
jobSystem: '<system-who-called-this-system>', // can be passed when no other e18 info is passed to set "system" on job
jobType: '<type-of-calling-system>', // can be passed when no other e18 info is passed to set "type" on job
jobProjectId: 42 // can be passed when no other e18 info is passed to set "projectId" on job
}
}
}
const result = {
status: 'waiting|running|suspended|completed|failed',
message: 'Finished or whateter|Failed or whatever',
error: {} // should be set when status is failed
data: {} // should be set when status is completed
}
await create(options, result, context)
No E18 info in headers
Job will have system
and type
set to unknown and projectId
set to 0
*Task will have system
set to E18_SYSTEM and method
set to functionName
const { create } = require('@vtfk/e18')
const options = { // request property from route
headers: {
something: 'helloworld'
}
}
const result = {
status: 'waiting|running|suspended|completed|failed',
message: 'Finished or whateter|Failed or whatever',
error: {} // should be set when status is failed
data: {} // should be set when status is completed
}
await create(options, result, context)
Passing "system", "type" and "projectId" info in headers
Job will have system
set to e18jobsystem and type
set to e18jobtype and projectId
set to e18jobprojectid
*Task will have system
set to E18_SYSTEM and method
set to functionName
const { create } = require('@vtfk/e18')
const options = { // request property from route
headers: {
e18jobsystem: '<system-who-called-this-system>', // can be passed when no other e18 info is passed to set "system" on job
e18jobtype: '<type-of-calling-system>', // can be passed when no other e18 info is passed to set "type" on job
e18jobprojectid: 42 // can be passed when no other e18 info is passed to set "projectId" on job
}
}
const result = {
status: 'waiting|running|suspended|completed|failed',
message: 'Finished or whateter|Failed or whatever',
error: {} // should be set when status is failed
data: {} // should be set when status is completed
}
await create(options, result, context)
New task
Passing E18 info in body
Task will have system
set to E18_SYSTEM (if present) otherwise set to system passed in body.
Task wlll have method
set to functionName (if present) otherwise set to method passed in body
const { create } = require('@vtfk/e18')
const options = { // request property from route
body: {
e18: {
jobId: 'MongoDB_ObjectId',
system: '<system-to-call>', // will be overridden if system has set E18_SYSTEM
method: '<route>' // endpoint called on "system". only used if functionName not found
}
}
}
const result = {
status: 'waiting|running|suspended|completed|failed',
message: 'Finished or whateter|Failed or whatever',
error: {} // should be set when status is failed
data: {} // should be set when status is completed
}
await create(options, result, context)
Passing E18 info in headers as JSON
Task will have system
set to E18_SYSTEM (if present) otherwise set to system passed in body.
Task wlll have method
set to functionName (if present) otherwise set to method passed in body
const { create } = require('@vtfk/e18')
const options = { // request property from route
headers: {
e18jobid: 'MongoDB_ObjectId',
e18task: {
system: '<system-to-call>', // will be overridden if system has set E18_SYSTEM
method: '<route>' // endpoint called on "system". only used if functionName not found
}
}
}
const result = {
status: 'waiting|running|suspended|completed|failed',
message: 'Finished or whateter|Failed or whatever',
error: {} // should be set when status is failed
data: {} // should be set when status is completed
}
await create(options, result, context)
Passing E18 info in headers as JSON and "task" as stringified JSON
Task will have system
set to E18_SYSTEM (if present) otherwise set to system passed in body.
Task wlll have method
set to functionName (if present) otherwise set to method passed in body
const { create } = require('@vtfk/e18')
const options = { // request property from route
headers: {
e18jobid: 'MongoDB_ObjectId',
e18task: '{"system":"<system-to-call>","method":"<route>"}'
}
}
const result = {
status: 'waiting|running|suspended|completed|failed',
message: 'Finished or whateter|Failed or whatever',
error: {} // should be set when status is failed
data: {} // should be set when status is completed
}
await create(options, result, context)
New operation on existing task
Passing E18 in body
const { create } = require('@vtfk/e18')
const options = { // request property from route
body: {
e18: {
jobId: 'MongoDB_ObjectId',
taskId: 'MongoDB_ObjectId'
}
}
}
const result = {
status: 'completed|failed',
message: 'Finished or whateter|Failed or whatever',
error: {} // should be set when status is failed
data: {} // should be set when status is completed
}
await create(options, result, context)
Passing E18 in headers
const { create } = require('@vtfk/e18')
const options = { // request property from route
headers: {
e18jobid: 'MongoDB_ObjectId',
e18taskid: 'MongoDB_ObjectId'
}
}
const result = {
status: 'completed|failed',
message: 'Finished or whateter|Failed or whatever',
error: {} // should be set when status is failed
data: {} // should be set when status is completed
}
await create(options, result, context)