fh-wfm-result

0.2.4 • Public • Published

FeedHenry WFM Result

A result module for WFM, for working with the results of pushing a workorder through a workflow.

Client-side usage

Setup

This module can be initialised by

var resultModule = require('fh-wfm-result');
 
//Initialising the result module with a mediator. This will set up all of the subscribers for the result module.
resultModule(mediator);
 
//The result mediator topics are now subscribed.
mediator.subscribe("done:wfm:results:list", function(arrayOfResults) {
  ...
  console.log("All Results", arrayOfResults);
  ...
});
 
mediator.publish("wfm:results:list");

Integration

Topic Subscriptions

wfm:result:create

Description

Creating a new Result

Example
var parameters = {
  resultToCreate: {
    //A Valid JSON Object
  },
  //Optional topic unique identifier.
  topicUid: "uniquetopicid"
}
 
mediator.publish("wfm:result:create", parameters);

wfm:result:read

Description

Read a single Result

Example
var parameters = {
  id: "resultId",
  //Optional topic unique identifier.
  topicUid: "uniquetopicid"
}
 
mediator.publish("wfm:result:read", parameters);

wfm:result:update

Description

Update a single Result

Example
var parameters = {
  resultToUpdate: {
    ...
    id: "resultId"
    ...
  },
  //Optional topic unique identifier.
  topicUid: "uniquetopicid"
}
 
mediator.publish("wfm:result:update", parameters);

wfm:result:remove

Description

Remove a single Result

Example
var parameters = {
  id: "resultId",
  //Optional topic unique identifier.
  topicUid: "uniquetopicid"
}
 
mediator.publish("wfm:result:remove", parameters);

wfm:result:list

Description

List All Results

Example
var parameters = {
  //Optional topic unique identifier.
  topicUid: "uniquetopicid"
}
 
mediator.publish("wfm:result:list", parameters);

Published Topics

The following topics are published by this module. Developers are free to implement these topics subscribers, or use a module that already has these subscribers implement (E.g. the raincatcher-sync module).

Topic Description
wfm:sync:results:create Create a new item in the sync results collection
wfm:sync:results:update Update an existing item in the sync results collection
wfm:sync:results:list List all items in the sync results collection
wfm:sync:results:remove Remove an existing item from the sync results collection
wfm:sync:results:read Read a single item from the sync results collection
wfm:sync:results:start Start the sync process for sync results collection
wfm:sync:results:stop Stop the sync process for sync results collection
wfm:sync:results:force_sync Force a sync cycle from client to cloud for sync results collection

Topic Subscriptions

Topic Description
done:wfm:sync:results:create A result was created in the results dataset
error:wfm:sync:results:create An error occurred when creating an item in the results dataset.
done:wfm:sync:results:update A result was updated in the results dataset
error:wfm:sync:results:update An error occurred when updating an item in the results dataset.
done:wfm:sync:results:list A list of the items in the results dataset completed
error:wfm:sync:results:list An error occurred when listing items in the results dataset.
done:wfm:sync:results:remove A result was removed from the results dataset
error:wfm:sync:results:remove An error occurred when removing an item in the results dataset.
done:wfm:sync:results:read A item was read correctly from the results dataset
error:wfm:sync:results:read An error occurred when reading an item in the results dataset.
done:wfm:sync:results:start The sync process started for the results dataset.
error:wfm:sync:results:start An error occurred when starting the results dataset.
done:wfm:sync:results:stop The sync process stopped for the results dataset.
error:wfm:sync:results:stop An error occurred when stopping the results dataset sync process.
done:wfm:sync:results:force_sync A force sync process completed for the results dataset.
error:wfm:sync:results:force_sync An error occurred when forcing the sync process for the results dataset.

Usage in an express backend

Setup

The server-side component of this WFM module exports a function that takes express and mediator instances as parameters, as in:

var express = require('express')
  , app = express()
  , mbaasExpress = mbaasApi.mbaasExpress()
  , mediator = require('fh-wfm-mediator/lib/mediator')
  ;
 
// configure the express app
...
 
// setup the wfm result sync server
require('fh-wfm-result/lib/server')(mediator, app, mbaasApi);
 

Integration

Check this demo cloud application

Readme

Keywords

Package Sidebar

Install

npm i fh-wfm-result

Weekly Downloads

69

Version

0.2.4

License

MIT

Last publish

Collaborators

  • feedhenry
  • feedhenry-dev
  • grdryn
  • jbriones