blob: ea3ea42fac0947776dd47a29924bb1d24e880acb [file] [log] [blame]
<!DOCTYPE HTML>
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (11.0.2) on Fri May 07 16:35:12 PDT 2021 -->
<title>NCDialogFlowItem (Apache NLPCraft 0.7.5)</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="dc.created" content="2021-05-07">
<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../jquery/jquery-ui.css" title="Style">
<script type="text/javascript" src="../../../../script.js"></script>
<script type="text/javascript" src="../../../../jquery/jszip/dist/jszip.min.js"></script>
<script type="text/javascript" src="../../../../jquery/jszip-utils/dist/jszip-utils.min.js"></script>
<!--[if IE]>
<script type="text/javascript" src="../../../../jquery/jszip-utils/dist/jszip-utils-ie.min.js"></script>
<![endif]-->
<script type="text/javascript" src="../../../../jquery/jquery-3.3.1.js"></script>
<script type="text/javascript" src="../../../../jquery/jquery-migrate-3.0.1.js"></script>
<script type="text/javascript" src="../../../../jquery/jquery-ui.js"></script>
</head>
<body>
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="NCDialogFlowItem (Apache NLPCraft 0.7.5)";
}
}
catch(err) {
}
//-->
var data = {"i0":6,"i1":6,"i2":6,"i3":6,"i4":6,"i5":6,"i6":6,"i7":6,"i8":6,"i9":6,"i10":6,"i11":6,"i12":6,"i13":6};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],4:["t3","Abstract Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
var pathtoroot = "../../../../";
var useModuleDirectories = true;
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<header role="banner">
<nav role="navigation">
<div class="fixedNav"><link href="https://stackpath.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css" rel="stylesheet"> <script src="https://nlpcraft.apache.org/javadoc/resources/sh/scripts/XRegExp.js" type="text/javascript"></script> <script src="https://nlpcraft.apache.org/javadoc/resources/sh/scripts/shCore.js" type="text/javascript"></script> <script src="https://nlpcraft.apache.org/javadoc/resources/sh/scripts/shAutoloader.js" type="text/javascript"></script> <link href="https://nlpcraft.apache.org/javadoc/resources/sh/styles/shCoreNLPCraft.css" rel="stylesheet" type="text/css" title="Style"> <link href="https://nlpcraft.apache.org/javadoc/resources/sh/styles/shThemeNLPCraft.css" rel="stylesheet" type="text/css" title="Style"> <link href="https://fonts.googleapis.com/css?family=Roboto+Mono" rel="stylesheet"> <link href="https://fonts.googleapis.com/css?family=Roboto" rel="stylesheet"> <script async defer src="https://buttons.github.io/buttons.js"></script>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a id="navbar.top">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a id="navbar.top.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/NCDialogFlowItem.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../index-all.html">Index</a></li>
<li><a href="../../../../help-doc.html">Help</a></li>
</ul>
<div class="aboutLanguage">Apache NLPCraft <span style="font-size: 80%">0.7.5</span></div>
</div>
<div class="subNav">
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../allclasses.html">All&nbsp;Classes</a></li>
</ul>
<ul class="navListSearch">
<li><label for="search">SEARCH:</label>
<input type="text" id="search" value="search" disabled="disabled">
<input type="reset" id="reset" value="reset" disabled="disabled">
</li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_top");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a id="skip.navbar.top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
</div>
<div class="navPadding">&nbsp;</div>
<script type="text/javascript"><!--
$('.navPadding').css('padding-top', $('.fixedNav').css("height"));
//-->
</script>
</nav>
</header>
<!-- ======== START OF CLASS DATA ======== -->
<main role="main">
<div class="header">
<div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">org.apache.nlpcraft.model</a></div>
<h2 title="Interface NCDialogFlowItem" class="title">Interface NCDialogFlowItem</h2>
</div>
<div class="contentContainer">
<div class="description">
<ul class="blockList">
<li class="blockList">
<hr>
<pre>public interface <span class="typeNameLabel">NCDialogFlowItem</span></pre>
<div class="block">An item of the dialog flow. Dialog flow is a chronologically ordered list of dialog flow
items. Each item represents a snapshot of winning intent's match and its associated data. List of instances
of this interface is passed into a custom user-defined dialog flow match method.
<p>
Read full documentation in <a target=_ href="https://nlpcraft.apache.org/intent-matching.html">Intent Matching</a> section and review
<a target=_ href="https://github.com/apache/incubator-nlpcraft/tree/master/nlpcraft/src/main/scala/org/apache/nlpcraft/examples/">examples</a>.</div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ========== METHOD SUMMARY =========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="method.summary">
<!-- -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t3" class="tableTab"><span><a href="javascript:show(4);">Abstract Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Method</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/Optional.html?is-external=true" title="class or interface in java.util" class="externalLink">Optional</a>&lt;<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getClientAgent()">getClientAgent</a></span>()</code></th>
<td class="colLast">
<div class="block">Gets string representation of the user client agent that made the initial REST
request .</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code><a href="NCCompany.html" title="interface in org.apache.nlpcraft.model">NCCompany</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getCompany()">getCompany</a></span>()</code></th>
<td class="colLast">
<div class="block">Gets descriptor of the user's company on behalf of which the input request was submitted.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getIntentId()">getIntentId</a></span>()</code></th>
<td class="colLast">
<div class="block">Gets ID of the matched intent.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/List.html?is-external=true" title="class or interface in java.util" class="externalLink">List</a>&lt;<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/List.html?is-external=true" title="class or interface in java.util" class="externalLink">List</a>&lt;<a href="NCToken.html" title="interface in org.apache.nlpcraft.model">NCToken</a>&gt;&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getIntentTokens()">getIntentTokens</a></span>()</code></th>
<td class="colLast">
<div class="block">Gets a subset of tokens representing matched intent.</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getNormalizedText()">getNormalizedText</a></span>()</code></th>
<td class="colLast">
<div class="block">Gets normalized text of the user input.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>long</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getReceiveTimestamp()">getReceiveTimestamp</a></span>()</code></th>
<td class="colLast">
<div class="block">Gets UTC/GMT timestamp in milliseconds when user input was received.</div>
</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/Optional.html?is-external=true" title="class or interface in java.util" class="externalLink">Optional</a>&lt;<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getRemoteAddress()">getRemoteAddress</a></span>()</code></th>
<td class="colLast">
<div class="block">Gets optional address of the remote client that made the initial REST request.</div>
</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/Map.html?is-external=true" title="class or interface in java.util" class="externalLink">Map</a>&lt;<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>,&#8203;<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a>&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getRequestData()">getRequestData</a></span>()</code></th>
<td class="colLast">
<div class="block">Gets optional JSON data passed in with the user request.</div>
</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getServerRequestId()">getServerRequestId</a></span>()</code></th>
<td class="colLast">
<div class="block">Gets globally unique server ID of the input request.</div>
</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/List.html?is-external=true" title="class or interface in java.util" class="externalLink">List</a>&lt;<a href="NCToken.html" title="interface in org.apache.nlpcraft.model">NCToken</a>&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getTermTokens(int)">getTermTokens</a></span>&#8203;(int&nbsp;idx)</code></th>
<td class="colLast">
<div class="block">Gets tokens for given term.</div>
</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/List.html?is-external=true" title="class or interface in java.util" class="externalLink">List</a>&lt;<a href="NCToken.html" title="interface in org.apache.nlpcraft.model">NCToken</a>&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getTermTokens(java.lang.String)">getTermTokens</a></span>&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;termId)</code></th>
<td class="colLast">
<div class="block">Gets tokens for given term.</div>
</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code><a href="NCUser.html" title="interface in org.apache.nlpcraft.model">NCUser</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getUser()">getUser</a></span>()</code></th>
<td class="colLast">
<div class="block">Gets descriptor of the user on behalf of which the input request was submitted.</div>
</td>
</tr>
<tr id="i12" class="altColor">
<td class="colFirst"><code><a href="NCVariant.html" title="interface in org.apache.nlpcraft.model">NCVariant</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getVariant()">getVariant</a></span>()</code></th>
<td class="colLast">
<div class="block">Gets sentence parsing variant that produced the matching for the winning intent.</div>
</td>
</tr>
<tr id="i13" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isAmbiguous()">isAmbiguous</a></span>()</code></th>
<td class="colLast">
<div class="block">Indicates whether or not the intent match was ambiguous (not exact).</div>
</td>
</tr>
</table>
</li>
</ul>
</section>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ METHOD DETAIL ========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a id="getIntentId()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getIntentId</h4>
<pre class="methodSignature"><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;getIntentId()</pre>
<div class="block">Gets ID of the matched intent.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>ID of the matched intent.</dd>
</dl>
</li>
</ul>
<a id="getIntentTokens()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getIntentTokens</h4>
<pre class="methodSignature"><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/List.html?is-external=true" title="class or interface in java.util" class="externalLink">List</a>&lt;<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/List.html?is-external=true" title="class or interface in java.util" class="externalLink">List</a>&lt;<a href="NCToken.html" title="interface in org.apache.nlpcraft.model">NCToken</a>&gt;&gt;&nbsp;getIntentTokens()</pre>
<div class="block">Gets a subset of tokens representing matched intent. This subset is grouped by the matched terms
where a <code>null</code> sub-list defines an optional term. Order and index of sub-lists corresponds
to the order and index of terms in the matching intent. Number of sub-lists will always be the same
as the number of terms in the matched intent.
<p>
Note that unlike <a href="#getVariant()"><code>getVariant()</code></a> method
this method returns only subset of the tokens that were part of the matched intent. Specifically, it will
not return tokens for free words, stopwords or unmatched ("dangling") tokens.
<p>
Consider using <a href="NCIntentTerm.html" title="annotation in org.apache.nlpcraft.model"><code>NCIntentTerm</code></a> annotation instead for simpler access to intent tokens.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>List of list of tokens representing matched intent.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="#getVariant()"><code>getVariant()</code></a>,
<a href="NCIntentTerm.html" title="annotation in org.apache.nlpcraft.model"><code>NCIntentTerm</code></a></dd>
</dl>
</li>
</ul>
<a id="getTermTokens(int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getTermTokens</h4>
<pre class="methodSignature"><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/List.html?is-external=true" title="class or interface in java.util" class="externalLink">List</a>&lt;<a href="NCToken.html" title="interface in org.apache.nlpcraft.model">NCToken</a>&gt;&nbsp;getTermTokens&#8203;(int&nbsp;idx)</pre>
<div class="block">Gets tokens for given term. This is a companion method for <a href="#getIntentTokens()"><code>getIntentTokens()</code></a>.
<p>
Consider using <a href="NCIntentTerm.html" title="annotation in org.apache.nlpcraft.model"><code>NCIntentTerm</code></a> annotation instead for simpler access to intent tokens.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>idx</code> - Index of the term (starting from <code>0</code>).</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>List of tokens, potentially <code>null</code>, for given term.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="NCIntentTerm.html" title="annotation in org.apache.nlpcraft.model"><code>NCIntentTerm</code></a>,
<a href="#getTermTokens(java.lang.String)"><code>getTermTokens(String)</code></a></dd>
</dl>
</li>
</ul>
<a id="getTermTokens(java.lang.String)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getTermTokens</h4>
<pre class="methodSignature"><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/List.html?is-external=true" title="class or interface in java.util" class="externalLink">List</a>&lt;<a href="NCToken.html" title="interface in org.apache.nlpcraft.model">NCToken</a>&gt;&nbsp;getTermTokens&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;termId)</pre>
<div class="block">Gets tokens for given term. This is a companion method for <a href="#getIntentTokens()"><code>getIntentTokens()</code></a>.
<p>
Consider using <a href="NCIntentTerm.html" title="annotation in org.apache.nlpcraft.model"><code>NCIntentTerm</code></a> annotation instead for simpler access to intent tokens.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>termId</code> - ID of the term for which to get tokens.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>List of tokens, potentially <code>null</code>, for given term.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="NCIntentTerm.html" title="annotation in org.apache.nlpcraft.model"><code>NCIntentTerm</code></a>,
<a href="#getTermTokens(int)"><code>getTermTokens(int)</code></a></dd>
</dl>
</li>
</ul>
<a id="getVariant()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getVariant</h4>
<pre class="methodSignature"><a href="NCVariant.html" title="interface in org.apache.nlpcraft.model">NCVariant</a>&nbsp;getVariant()</pre>
<div class="block">Gets sentence parsing variant that produced the matching for the winning intent. Returned variant is one of the
variants provided by <a href="NCContext.html#getVariants()"><code>NCContext.getVariants()</code></a> methods. Note that tokens returned by this method are
a superset of the tokens returned by <a href="#getIntentTokens()"><code>getIntentTokens()</code></a> method, i.e. not all tokens
from this variant may have been used in matching of the winning intent.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Sentence parsing variant that produced the matching for the winning intent.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="#getIntentTokens()"><code>getIntentTokens()</code></a></dd>
</dl>
</li>
</ul>
<a id="isAmbiguous()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isAmbiguous</h4>
<pre class="methodSignature">boolean&nbsp;isAmbiguous()</pre>
<div class="block">Indicates whether or not the intent match was ambiguous (not exact).
<p>
An exact match means that for the intent to match it has to use all non-free word tokens
in the user input, i.e. only free word tokens can be left unused after the match. An ambiguous match
doesn't have this restriction. Note that an ambiguous match should be used with a great care.
An ambiguous match completely ignores extra found user or system tokens (which are not part
of the intent template) which could have altered the matching outcome had they been considered.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><code>True</code> if the intent match was exact, <code>false</code> otherwise.</dd>
</dl>
</li>
</ul>
<a id="getUser()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getUser</h4>
<pre class="methodSignature"><a href="NCUser.html" title="interface in org.apache.nlpcraft.model">NCUser</a>&nbsp;getUser()</pre>
<div class="block">Gets descriptor of the user on behalf of which the input request was submitted.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>User descriptor.</dd>
</dl>
</li>
</ul>
<a id="getCompany()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCompany</h4>
<pre class="methodSignature"><a href="NCCompany.html" title="interface in org.apache.nlpcraft.model">NCCompany</a>&nbsp;getCompany()</pre>
<div class="block">Gets descriptor of the user's company on behalf of which the input request was submitted.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>User company descriptor.</dd>
</dl>
</li>
</ul>
<a id="getServerRequestId()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getServerRequestId</h4>
<pre class="methodSignature"><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;getServerRequestId()</pre>
<div class="block">Gets globally unique server ID of the input request.
<p>
Server request is defined as a processing of a one user input request.
Note that the model can be accessed multiple times during processing of a single user request
and therefore multiple instances of this interface can return the same server
request ID. In fact, users of this interfaces can use this fact by using this ID,
for example, as a map key for a session scoped storage.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Server request ID.</dd>
</dl>
</li>
</ul>
<a id="getNormalizedText()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getNormalizedText</h4>
<pre class="methodSignature"><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;getNormalizedText()</pre>
<div class="block">Gets normalized text of the user input.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Normalized text of the user input.</dd>
</dl>
</li>
</ul>
<a id="getReceiveTimestamp()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getReceiveTimestamp</h4>
<pre class="methodSignature">long&nbsp;getReceiveTimestamp()</pre>
<div class="block">Gets UTC/GMT timestamp in milliseconds when user input was received.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>UTC/GMT timestamp in milliseconds when user input was received.</dd>
</dl>
</li>
</ul>
<a id="getRemoteAddress()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getRemoteAddress</h4>
<pre class="methodSignature"><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/Optional.html?is-external=true" title="class or interface in java.util" class="externalLink">Optional</a>&lt;<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&gt;&nbsp;getRemoteAddress()</pre>
<div class="block">Gets optional address of the remote client that made the initial REST request.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Optional address of the remote client.</dd>
</dl>
</li>
</ul>
<a id="getClientAgent()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getClientAgent</h4>
<pre class="methodSignature"><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/Optional.html?is-external=true" title="class or interface in java.util" class="externalLink">Optional</a>&lt;<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&gt;&nbsp;getClientAgent()</pre>
<div class="block">Gets string representation of the user client agent that made the initial REST
request .</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>User agent string from user client (web browser, REST client, etc.).</dd>
</dl>
</li>
</ul>
<a id="getRequestData()">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>getRequestData</h4>
<pre class="methodSignature"><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/Map.html?is-external=true" title="class or interface in java.util" class="externalLink">Map</a>&lt;<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>,&#8203;<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a>&gt;&nbsp;getRequestData()</pre>
<div class="block">Gets optional JSON data passed in with the user request.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Optional JSON data, can be empty but never <code>null</code>.</dd>
</dl>
</li>
</ul>
</li>
</ul>
</section>
</li>
</ul>
</div>
</div>
</main>
<!-- ========= END OF CLASS DATA ========= -->
<footer role="contentinfo">
<nav role="navigation">
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a id="navbar.bottom">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a id="navbar.bottom.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/NCDialogFlowItem.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../index-all.html">Index</a></li>
<li><a href="../../../../help-doc.html">Help</a></li>
</ul>
<div class="aboutLanguage"><span style="vertical-align: super">Apache NLPCraft <span style="font-size: 80%">0.7.5</span></span> <a style="vertical-align: super; margin-right: 10px" href="https://github.com/apache/incubator-nlpcraft" target="github"><i class="fa fa-github github-logo"></i></a> <a class="github-button" href="https://github.com/apache/incubator-nlpcraft/tree/master/nlpcraft-examples" data-icon="octicon-eye" aria-label="NLPCraft Examples">Examples</a> <a class="github-button" href="https://github.com/apache/incubator-nlpcraft" data-icon="octicon-star" aria-label="Star on GitHub">Star</a> <a class="github-button" href="https://github.com/apache/incubator-nlpcraft/fork" data-icon="octicon-repo-forked" aria-label="Fork on GitHub">Fork</a> <script type="text/javascript"> SyntaxHighlighter.defaults["auto-links"] = false; SyntaxHighlighter.defaults["tab-size"] = 2; SyntaxHighlighter.autoloader( 'java https://nlpcraft.apache.org/javadoc/resources/sh/scripts/shBrushJava.js', 'js jscript javascript https://nlpcraft.apache.org/javadoc/resources/sh/scripts/shBrushJScript.js', 'text plain https://nlpcraft.apache.org/javadoc/resources/sh/scripts/shBrushPlain.js', 'py python https://nlpcraft.apache.org/javadoc/resources/sh/scripts/shBrushPython.js', 'ruby rails ror rb https://nlpcraft.apache.org/javadoc/resources/sh/scripts/shBrushRuby.js', 'scala https://nlpcraft.apache.org/javadoc/resources/sh/scripts/shBrushScala.js', 'sql https://nlpcraft.apache.org/javadoc/resources/sh/scripts/shBrushSql.js', 'xml xhtml xslt html https://nlpcraft.apache.org/javadoc/resources/sh/scripts/shBrushXml.js' ); SyntaxHighlighter.all(); </script></div>
</div>
<div class="subNav">
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../allclasses.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_bottom");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a id="skip.navbar.bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</nav>
<p class="legalCopy"><small><center> <br/> <span style="font-size: larger">Copyright &#169; 2021 Apache Software Foundation</span> <br/> <br/> <img src="https://www.apache.org/img/ASF20thAnniversary.jpg" height="64px" alt="ASF Logo"> </center></small></p>
</footer>
</body>
</html>