new ContextManager()
    The Bravey context manager. Contexts are handled as tags for multiple NLP instances. It store user sessions contexts and query the right NLP when asked.
    Parameters:
| Name | Type | Attributes | Description | 
|---|---|---|---|
| extensions.sessionManager | SessionManager | <optional> | An instance of a session manager. Bravey.SessionManager.InMemorySessionManager is used when not specified. | 
- Source:
Methods
addNlp(nlp, contexttagsopt, methodopt)
    Add a NLP instance to the context manager.
    Parameters:
| Name | Type | Attributes | Default | Description | 
|---|---|---|---|---|
| nlp | NLP | The NLP instance. | ||
| contexttags | Array.<String> | <optional> | ["default"] | Related contexts tags. | 
| method | String | <optional> | Method to be used with NLP test. (see Bravey.Nlp.test) | 
- Source:
clearSessionIdData(sessionid) → {boolean}
    Empty context data for the specified session ID.
    Parameters:
| Name | Type | Description | 
|---|---|---|
| sessionid | string | The session ID. | 
- Source:
Returns:
    True if sessionid is found and context is set.
- Type
- boolean
getSessionIdData(sessionid) → {Array.<string>}
    Get context data for the specified session ID.
    Parameters:
| Name | Type | Description | 
|---|---|---|
| sessionid | string | The session ID. | 
- Source:
Returns:
    The related data.
- Type
- Array.<string>
removeContext(contexttag)
    Remove a context.
    Parameters:
| Name | Type | Description | 
|---|---|---|
| contexttag | Array.<String> | Tag to be deleted | 
- Source:
removeNlp(nlp, contexttagsopt)
    Remove a NLP instance to the context manager.
    Parameters:
| Name | Type | Attributes | Default | Description | 
|---|---|---|---|---|
| nlp | NLP | The NLP instance. | ||
| contexttags | Array.<String> | <optional> | all | Related contexts tags. Will be removed from all contexts if empty. | 
- Source:
reserveSessionId(id) → {string}
    Reserves a new session ID. It also clear expired sessions.
    Parameters:
| Name | Type | Description | 
|---|---|---|
| id | string | The session ID to be reserved. Generates a new one if not defined. | 
Returns:
    The new session ID.
- Type
- string
setSessionIdContext(sessionid, contexttag) → {boolean}
    Set the context for a given session ID.
    Parameters:
| Name | Type | Description | 
|---|---|---|
| sessionid | String | User session ID. | 
| contexttag | Array.<String> | Tag to be deleted | 
- Source:
Returns:
    True if sessionid is found and context is set.
- Type
- boolean
setSessionIdData(sessionid, data) → {boolean}
    Set context data for the specified session ID.
    Parameters:
| Name | Type | Description | 
|---|---|---|
| sessionid | string | The session ID. | 
| data | Object | Key/value pair for data to be set. | 
- Source:
Returns:
    True if sessionid is found and context is set.
- Type
- boolean
testByContext(text, textopt) → {ContextManagerResultByContext}
    Check if a given sentence matches an intent and extracts its entities using the specified contexts.
    Parameters:
| Name | Type | Attributes | Default | Description | 
|---|---|---|---|---|
| text | string | The sentence to be processed. | ||
| text | Array.<string> | <optional> | ["default"] | The context tags. | 
Returns:
    When an intent is found.
    
        
            
    
    testBySessionId(text, textopt) → {ContextManagerResultBySessionId|false}
    Check if a given sentence matches an intent and extracts its entities using the specified user session ID. When not specified, a new session ID is generated.
    Parameters:
| Name | Type | Attributes | Default | Description | 
|---|---|---|---|---|
| text | string | The sentence to be processed. | ||
| text | string | <optional> | <new session id> | The user session id. | 
Returns:
- 
When an intent is found.
- 
When the sentence doesn't match any intent.- Type
- false