Package Exports
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (conv-context) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
Conversation Context
A simple class that helps to handle bot conversation context.
Getting started
const Context = require('conv-context');
const context = new Context(contextData, thread);
Resolve context from contextData
// resolver - optional resolver function
const resolvedContext = await context.resolve(resolver=defaultResolver);
Custom resolver (binded to the step's 'this')
const resolver = async function (output, store) {
// your code here
// ...
};
Get context data
// get context for the 'name' entity. The path is also accepted: 'path.to.data'
context.get('name', data, defaultValue);
// get context from step with Id === stepId
context.getStepContext(stepId)
// find step context by some filter criteria
context.findStepContext(query={})
// find step Id by some filter criteria
context.findStepId(query={})
// get step contexts by some filter criteria
context.filterStepContext(query={})
Set context data
// set context for the 'name' entity. The path is also accepted: 'path.to.data'
context.set('name', data);
// set step context
context.setStepContext(data)
Save context in the session and shared storage
// save context data to session and shared (optional) storage
await context.save(shared=true, ttl=null)
helper methods for each storage
// save session data
context.setSession();
// save shared session data
await context.setShared(ttl);