One or more condition key/value pairs.
Collection of condition types assigned to named keys.
Collection of NLU matching criteria by key
Collection of NaturalLanguageResult instances by key
Collection of raw NLU results by key (also used for matched subset)
Collection of allowed adapter types for loading.
Keep all created bits, for getting by their ID as key
Await helper, pauses for event loop
Event Emitter for listening to bot events.
Global path to process any state not within specific isolated context.
Winston logger provides a logging interface common to many Node apps, with custom levels, filters, and outputs, and service integrations. It will also handle exceptions and exit after logging (except middleware).
By default, all log items will write to console and a combined log file, errors also write to a an error log file. Log level can be set globally or for each transport:
Collection of allowed middleware types for loading.
Access the settings instance, to replace options and reload config
Utility for converting option keys, from foo-bar to fooBar
Get the next value in global counter
Key for counter, prepend to return value
Magic function to un-weird weird things.
Build a regular expression that matches text prefixed with the bot's name
Build a regular expression for bot's name combined with another regex
Execute a bit using its ID, providing current bot state
Return config directly, without updating those in the settings instance
Find out where the loading or shutdown process is at.
Utility for converting option keys, from fooBar to foo-bar
Type guard to check type of Condition.
Type guard to check type of ConditionCollection
Load all components. Extensions/adapters can interrupt or modify the stack before start.
Require adapter module from local path or NPM package. If a module name is given, it will be required as normal or from the parent module path. If that fails, attempt to load from the included adapters path. If local path given, attempt to resolve a number of possible locations in case bBot running from tests or as a local dependency (in development).
Stop temporarily. Allow start to be called again without reloading
Generate a random unique ID value
Optionally prepend ID type
Scrub it clean! Would allow redefining classes before calling start again, mostly for tests.
Private helper for setting and logging loading status.
Add new bit to collection, returning its ID
Make it stop! Stops responding but keeps history and loaded components. Will wait until started if shutdown called while starting.
Make it go!
Create a promise wrapper, that rejects if timeout met before resolved
Get a user by ID. If found and given meta, updates and returns updated user. if given meta and ID not found, creates new user.
Get all users in memory
Get users by their name.
Maintain a list of global counters against their prefix key
Initial array of config options, can be extended prior and post load.
Save tracking vars
Internal index for loading status
Generated using TypeDoc