Cognigy

Cognigy.AI Docs

COGNIGY.AI is the Conversational AI Platform focused on the needs of large enterprises to develop, deploy and run Conversational AI’s on any conversational channel.

Given the arising need of voice interfaces as the most natural way of communicating with brands, Cognigy was founded in 2016 by Sascha Poggemann and Phil Heltewig. Our mission: to enable all devices and applications to intelligently communicate with their users via naturally spoken or written dialogue.

Get Started

The Input is a short term JSON data object that is generated each time a message is sent to Cognigy.AI.

The input object contains general information about the message such as the Time the message was received and the Channel from where the message was sent. More specific results from the NLU intent mapping process are also available such as the Intent that was selected, the Slots that were identified and many other useful pieces of information.

The input object is passed to the agent's Flow to decide on the next action to take. For more information about the lifespan of the input, see the CognigyScript page.

📘

Intent Default Replys override flow logic

If an intent is configured with a default reply, this will override the agent's flow logic and automatically be delivered as the response.

Inspect the current Input object from the INFO tab of the Interaction Panel

Properties

The Input object contains the following properties (for text input).

Key

Description

text

The text of the message received.

intent

The detected Intent, can be null.

intentScore

The detected Intent's score.

intentFlow

The flow containing the detected intent.

slots

Contains the detected slots ranging from automatic to custom lexicon libraries.

nlu

Contains the detailed NLU processing results. See [NLU Properties] for detailed information.

mode

The type of input received by Cognigy.AI. Can be either "TextOnly" or "TextData".

type

The type of input sentence as determined by the NLU (Statement, Command, Greeting, BGreeting, whQuestion, howQuestion, ynQuestion, pAnswer, nAnswer)

question

States if a question was received as the input text and what type of question was asked.

intentOutOfState

If a state is active, this property contains the detected intent that has been excluded by the state.

currentTime

The timestamp of when the message was received by Cognigy.AI.

state

The current state within the session. By default, it will contain the value "default". Other states can be defined. See State for more information.

channel

The channel from which the message was received, e.g. a facebook endpoint has the value "facebook".

For our more generic endpoint types like "socket", "webhook" and "rest", this value can be defined. This property will also be available in the ODATA records to enable channel based analytics filtering.

endpointType

The type of endpoint through which the message was recieved, e.g. alexa, facebook, dialogflow, etc. This value cannot be changed.

entrypoint

The flow node id that will receive and process the input object.

userId

The current user's ID. This is what Cognigy.AI uses to identify each user as a reference to their individual contact profile.

See Contact Profiles for more information.

inputId

A unique ID that is generated for each message received by Cognigy.AI.

sessionId

The current session ID. This is either provided by a channel or generated by Cognigy.AI. Most endpoints allow defining an individual session expiration (TTL).

flowName

The name of the active flow which will process the input data and decide the next action to take.

URLToken

A unique ID used to identify the specific endpoint .

frustration

A score for how many misunderstood message have been received by the NLU since the last understood message

completedGoals

An object containing the names of the goals completed on execution of the flow logic.

execution

The number of messages recieved so far in the current session.

data

The data object that was sent as a payload to the user input. This object can contain a "request" property that stores the original request from the external channel, e.g. If a facebook endpoint is used, input.data.request will contain the original HTTP request content from facebook.

understood

A boolean flag which determines whether the NLU understood the users message. The flag is set to true when an intent/slot was found or if the type of sentence was pAnswer, nAnswer or Greeting - otherwise the flag will be false.

language

The locale language that was used to process the input message.

traceId

A unique identifier for the specific user input.

localeId

The unique ID for the current locale used to process the input message.

conditionalEntrypointWasExecuted

A boolean variable that displays "true" if the flow was executed on a conditional node.

NLU Properties

The detailed NLU results are published to the nlu variable which contains the following properties:

Key

Description

intentMapperResults

Provides specific details about the NLU intent mapping results that includes a summary of the intent scoring for each of the trained intents located in the scores child property.

intentFlow

A unique id assigned to the flow containing the selected intent.

intentId

A unique id assigned to the intent that was selected by the NLU.

detailedSlots

Contains the detected slots ranging from automatic to custom lexicon libraries.

tokens

Provides an array containing each word of the input sentence as a string element.

Accessing the Input Object

Flow nodes can dynamically access Input properties via Tokens tokens or CognigyScript i.e. {{input.property}}. The Cognigy Script used to access the input object follows the dot-notation property.child.child.

Example: {{input.text}} would return the text message that was sent to the Flow.

Updated about a month ago


What's Next

State

Input


Suggested Edits are limited on API Reference Pages

You can only suggest edits to Markdown body content, but not to the API spec.