[**@s4ai/core Documentation v0.3.23**](../../../README.md)

***

[@s4ai/core Documentation](../../../modules.md) / [@s4ai/core](../README.md) / NLPIntentProcessor

# Class: NLPIntentProcessor

Defined in: intelligence/nlp-intent-processor.js:39

## Extends

- [`Revenue`](../business/variables/Revenue.md)

## Constructors

### Constructor

> **new NLPIntentProcessor**(`config?`): `NLPIntentProcessor`

Defined in: intelligence/nlp-intent-processor.js:40

#### Parameters

##### config?

#### Returns

`NLPIntentProcessor`

#### Overrides

`EventEmitter.constructor`

## Properties

### actionHandlers

> **actionHandlers**: `Map`\<`any`, `any`\>

Defined in: intelligence/nlp-intent-processor.js:45

***

### contextMemory

> **contextMemory**: `object`

Defined in: intelligence/nlp-intent-processor.js:43

***

### entityExtractor

> **entityExtractor**: `any`

Defined in: intelligence/nlp-intent-processor.js:44

***

### language

> **language**: `any`

Defined in: intelligence/nlp-intent-processor.js:48

***

### maxContextMemory

> **maxContextMemory**: `any`

Defined in: intelligence/nlp-intent-processor.js:47

***

### patterns

> **patterns**: `any`[]

Defined in: intelligence/nlp-intent-processor.js:42

***

### sessionHistory

> **sessionHistory**: `any`[]

Defined in: intelligence/nlp-intent-processor.js:46

## Methods

### addToContextMemory()

> **addToContextMemory**(`intent`): `void`

Defined in: intelligence/nlp-intent-processor.js:163

#### Parameters

##### intent

`any`

#### Returns

`void`

***

### clearContext()

> **clearContext**(): `void`

Defined in: intelligence/nlp-intent-processor.js:248

#### Returns

`void`

***

### defaultEntityExtractor()

> **defaultEntityExtractor**(): `object`

Defined in: intelligence/nlp-intent-processor.js:227

#### Returns

`object`

***

### executeIntent()

> **executeIntent**(`intent`): `Promise`\<\{ `error?`: `undefined`; `result`: `any`; `success`: `boolean`; \} \| \{ `error`: `any`; `result?`: `undefined`; `success`: `boolean`; \}\>

Defined in: intelligence/nlp-intent-processor.js:182

#### Parameters

##### intent

`any`

#### Returns

`Promise`\<\{ `error?`: `undefined`; `result`: `any`; `success`: `boolean`; \} \| \{ `error`: `any`; `result?`: `undefined`; `success`: `boolean`; \}\>

***

### extractEntities()

> **extractEntities**(`text`, `parameters`): `Promise`\<\{ \}\>

Defined in: intelligence/nlp-intent-processor.js:104

#### Parameters

##### text

`any`

##### parameters

`any`

#### Returns

`Promise`\<\{ \}\>

***

### getContextSummary()

> **getContextSummary**(): `object`

Defined in: intelligence/nlp-intent-processor.js:232

#### Returns

`object`

##### memory

> **memory**: `object`

##### sessionLength

> **sessionLength**: `number`

##### topIntents

> **topIntents**: `object`[]

***

### getMetrics()

> **getMetrics**(): `object`

Defined in: intelligence/nlp-intent-processor.js:254

#### Returns

`object`

##### contextSize

> **contextSize**: `number`

##### sessionLength

> **sessionLength**: `number`

##### successRate

> **successRate**: `string`

##### totalMatches

> **totalMatches**: `any`

##### totalPatterns

> **totalPatterns**: `number`

##### totalSuccesses

> **totalSuccesses**: `any`

***

### identifyEntityType()

> **identifyEntityType**(`key`, `value`): `Promise`\<`string`\>

Defined in: intelligence/nlp-intent-processor.js:119

#### Parameters

##### key

`any`

##### value

`any`

#### Returns

`Promise`\<`string`\>

***

### inferFromContext()

> **inferFromContext**(`text`): `Promise`\<\{ `confidence`: `number`; `intent`: `string`; `parentIntent`: `any`; `text`: `any`; `timestamp`: `number`; \} \| `null`\>

Defined in: intelligence/nlp-intent-processor.js:135

#### Parameters

##### text

`any`

#### Returns

`Promise`\<\{ `confidence`: `number`; `intent`: `string`; `parentIntent`: `any`; `text`: `any`; `timestamp`: `number`; \} \| `null`\>

***

### parseIntent()

> **parseIntent**(`userInput`): `Promise`\<\{ `confidence`: `any`; `entities`: \{ \}; `intent`: `any`; `parameters`: `any`; `text`: `any`; `timestamp`: `number`; \} \| \{ `confidence`: `number`; `intent`: `string`; `parentIntent`: `any`; `text`: `any`; `timestamp`: `number`; \} \| \{ `confidence`: `number`; `intent`: `string`; `text`: `any`; \}\>

Defined in: intelligence/nlp-intent-processor.js:62

#### Parameters

##### userInput

`any`

#### Returns

`Promise`\<\{ `confidence`: `any`; `entities`: \{ \}; `intent`: `any`; `parameters`: `any`; `text`: `any`; `timestamp`: `number`; \} \| \{ `confidence`: `number`; `intent`: `string`; `parentIntent`: `any`; `text`: `any`; `timestamp`: `number`; \} \| \{ `confidence`: `number`; `intent`: `string`; `text`: `any`; \}\>

***

### processCommand()

> **processCommand**(`userInput`): `Promise`\<\{ `error?`: `undefined`; `result`: `any`; `success`: `boolean`; \} \| \{ `error`: `any`; `result?`: `undefined`; `success`: `boolean`; \} \| \{ `confidence`: `any`; `error`: `string`; `success`: `boolean`; \}\>

Defined in: intelligence/nlp-intent-processor.js:213

#### Parameters

##### userInput

`any`

#### Returns

`Promise`\<\{ `error?`: `undefined`; `result`: `any`; `success`: `boolean`; \} \| \{ `error`: `any`; `result?`: `undefined`; `success`: `boolean`; \} \| \{ `confidence`: `any`; `error`: `string`; `success`: `boolean`; \}\>

***

### registerActionHandler()

> **registerActionHandler**(`intent`, `handler`): `void`

Defined in: intelligence/nlp-intent-processor.js:57

#### Parameters

##### intent

`any`

##### handler

`any`

#### Returns

`void`

***

### registerPattern()

> **registerPattern**(`pattern`, `intent`, `parameterMap`): `void`

Defined in: intelligence/nlp-intent-processor.js:51

#### Parameters

##### pattern

`any`

##### intent

`any`

##### parameterMap

`any`

#### Returns

`void`
