About
WORK IN PROGRESS
Reference implementation of:
FTN22: FutoIn Interface - Message Bot
Version: 0.x
Author: Andrey Galkin
Installation for Node.js
Command line:
$ npm install @futoin/msgbot --save
API documentation
Classes
- CommandRouterFace
FTN22: Command Router Face
- CommandRouterService
Command Router Service
- PushHandlerFace
FTN22: Push Handler Face
- PushHandlerService
Push Handler Service base
- PushRouterService
Push Router Service base
- ReactHandlerFace
FTN22: React Handler Face
- ReactHandlerService
React Handler Service base
- ServerFace
FTN22: Server Face
- ServerHelpers
FTN22: Server-specific helpers
- ServerService
Server Service
- ServiceApp
Basic bot service app.
Actual bot implementation is expected to inherit this class and override
registration functions.
- BaseFace
Base Face with neutral common registration functionality
- BaseService
Base Service with common registration logic
CommandRouterFace
FTN22: Command Router Face
Kind: global class
CommandRouterService
Command Router Service
Kind: global class
new CommandRouterService(options)
C-tor
| options | object | passed to superclass c-tor |
PushHandlerFace
FTN22: Push Handler Face
Kind: global class
PushHandlerService
Push Handler Service base
Kind: global class
PushRouterService
Push Router Service base
Kind: global class
ReactHandlerFace
FTN22: React Handler Face
Kind: global class
ReactHandlerService
React Handler Service base
Kind: global class
ServerFace
FTN22: Server Face
Kind: global class
serverFace.getFlavour(asi)
Get type of database
Kind: instance method of ServerFace
| asi | AsyncSteps | steps interface |
Get native server helpers
Kind: instance method of ServerFace
Returns: ServerHelpers - - driver implementation
serverFace.systemIface()
Get native message system interface implementation
Kind: instance method of ServerFace
ServerFace.register(asi, ccm, name, endpoint, [credentials], [options])
CCM registration helper
Kind: static method of ServerFace
| asi | AsyncSteps | | steps interface |
| ccm | AdvancedCCM | | CCM instance |
| name | string | | CCM registration name |
| endpoint | * | | see AdvancedCCM#register |
| [credentials] | * | | see AdvancedCCM#register |
| [options] | object | {} | interface options |
| [options.version] | string | "<latest>" | interface version to use |
ServerHelpers
FTN22: Server-specific helpers
Kind: global class
serverHelpers.bold(str) ⇒ string
Get bold text
Kind: instance method of ServerHelpers
Returns: string - bold output
serverHelpers.italic(str) ⇒ string
Get italic text
Kind: instance method of ServerHelpers
Returns: string - italic output
serverHelpers.color(str, hexcolor) ⇒ string
Get colored text
Kind: instance method of ServerHelpers
Returns: string - colored output
| str | string | input |
| hexcolor | string | color code |
serverHelpers.imgUrl(url) ⇒ string
Get image URL embedded into text
Kind: instance method of ServerHelpers
Returns: string - URL output
serverHelpers.emoji(name) ⇒ string
Get emoji embedded into text
Kind: instance method of ServerHelpers
Returns: string - emoji output
serverHelpers.line() ⇒ string
Get new line
Kind: instance method of ServerHelpers
Returns: string - new line
serverHelpers.menion(ext_id) ⇒ string
Get actor mention into text
Kind: instance method of ServerHelpers
Returns: string - mention output
| ext_id | string | input actor ID |
Add native helper driver
Kind: static method of ServerHelpers
| flavour | string | system flavour |
| impl | ServerHelpers | driver implementation |
ServerHelpers.getDriver(flavour) ⇒ ServerHelpers
Get native helper driver
Kind: static method of ServerHelpers
Returns: ServerHelpers - driver implementation
| flavour | string | system flavour |
ServerService
Server Service
Kind: global class
ServiceApp
Basic bot service app.
Actual bot implementation is expected to inherit this class and override
registration functions.
Kind: global class
new ServiceApp(asi, options)
C-tor
| asi | AsyncSteps | | AsyncSteps interface |
| options | object | {} | options |
| [options.ccm] | AdvancedCCM | | external CCM instance |
| [options.executor] | Executor | | external executor instance |
| [options.ccmOptions] | object | | auto-CCM options |
| [options.notExpectedHandler] | callable | | 'notExpected' error handler |
| [options.executorOptions] | object | | private auto-Executor options |
serviceApp.ccm() ⇒ AdvancedCCM
CCM instance accessor
Kind: instance method of ServiceApp
Returns: AdvancedCCM - instance
serviceApp.executor() ⇒ Executor
Executor instance accessor
Kind: instance method of ServiceApp
Returns: Executor - instance
serviceApp.close([done])
Shutdown of app and related instances
Kind: instance method of ServiceApp
| [done] | callable | | done callback |
serviceApp.newExecutor() ⇒ Executor
Create an instance of executor which is useful to register
services.
Kind: instance method of ServiceApp
Returns: Executor - instance
serviceApp._register_logsvc(asi, options)
Override to register custom log service
Kind: instance abstract method of ServiceApp
| asi | AsyncSteps | | AsyncSteps interface |
| options | object | {} | options |
serviceApp._register_handlers(asi, options)
Override to register custom business logic.
Kind: instance abstract method of ServiceApp
| asi | AsyncSteps | | AsyncSteps interface |
| options | object | {} | options |
serviceApp._register_servers(asi, options)
Override to register servers.
Kind: instance abstract method of ServiceApp
| asi | AsyncSteps | | AsyncSteps interface |
| options | object | {} | options |
BaseFace
Base Face with neutral common registration functionality
Kind: global class
Note: Not official API
BaseFace.LATEST_VERSION
Latest supported FTN13 version
Kind: static property of BaseFace
BaseFace.PING_VERSION
Latest supported FTN4 version
Kind: static property of BaseFace
BaseFace.register(as, ccm, name, endpoint, [credentials], [options])
CCM registration helper
Kind: static method of BaseFace
| as | AsyncSteps | | steps interface |
| ccm | AdvancedCCM | | CCM instance |
| name | string | | CCM registration name |
| endpoint | * | | see AdvancedCCM#register |
| [credentials] | * | | see AdvancedCCM#register |
| [options] | object | {} | interface options |
| [options.version] | string | "1.0" | interface version to use |
BaseService
Base Service with common registration logic
Kind: global class
new BaseService(options)
C-tor
| options | object | passed to superclass c-tor |
BaseService.register(as, executor, options) ⇒ BaseService
Register Service with Executor
Kind: static method of BaseService
Returns: BaseService - instance
| as | AsyncSteps | steps interface |
| executor | Executor | executor instance |
| options | object | implementation defined options |
documented by jsdoc-to-markdown.