1
0
mirror of https://github.com/InsanusMokrassar/TelegramBotAPI.git synced 2024-11-16 13:23:47 +00:00
tgbotapi/docs/dev.inmo.tgbotapi.extensions.behaviour_builder/index.html
2022-12-31 10:14:54 +00:00

657 lines
151 KiB
HTML

<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1" charset="UTF-8">
<title>dev.inmo.tgbotapi.extensions.behaviour_builder</title>
<link href="../../images/logo-icon.svg" rel="icon" type="image/svg">
<script>var pathToRoot = "../../";</script>
<script>const storage = localStorage.getItem("dokka-dark-mode")
if (storage == null) {
const osDarkSchemePreferred = window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches
if (osDarkSchemePreferred === true) {
document.getElementsByTagName("html")[0].classList.add("theme-dark")
}
} else {
const savedDarkMode = JSON.parse(storage)
if(savedDarkMode === true) {
document.getElementsByTagName("html")[0].classList.add("theme-dark")
}
}
</script>
<script type="text/javascript" src="../../scripts/sourceset_dependencies.js" async="async"></script>
<link href="../../styles/style.css" rel="Stylesheet">
<link href="../../styles/jetbrains-mono.css" rel="Stylesheet">
<link href="../../styles/main.css" rel="Stylesheet">
<link href="../../styles/prism.css" rel="Stylesheet">
<link href="../../styles/logo-styles.css" rel="Stylesheet">
<script type="text/javascript" src="../../scripts/clipboard.js" async="async"></script>
<script type="text/javascript" src="../../scripts/navigation-loader.js" async="async"></script>
<script type="text/javascript" src="../../scripts/platform-content-handler.js" async="async"></script>
<script type="text/javascript" src="../../scripts/main.js" defer="defer"></script>
<script type="text/javascript" src="../../scripts/prism.js" async="async"></script>
<script type="text/javascript" src="../../scripts/symbol-parameters-wrapper_deferred.js" defer="defer"></script>
</head>
<body>
<div class="navigation-wrapper" id="navigation-wrapper">
<div id="leftToggler"><span class="icon-toggler"></span></div>
<div class="library-name">
<a href="../../index.html">
<span>docs</span>
</a>
</div>
<div>
5.0.0 </div>
<div class="pull-right d-flex">
<div class="filter-section" id="filter-section">
<button class="platform-tag platform-selector common-like" data-active="" data-filter=":docs:dokkaHtml/commonMain">common</button>
<button class="platform-tag platform-selector js-like" data-active="" data-filter=":docs:dokkaHtml/jsMain">js</button>
<button class="platform-tag platform-selector jvm-like" data-active="" data-filter=":docs:dokkaHtml/jvmMain">jvm</button>
</div>
<button id="theme-toggle-button"><span id="theme-toggle"></span></button>
<div id="searchBar"></div>
</div>
</div>
<div id="container">
<div id="leftColumn">
<div id="sideMenu"></div>
</div>
<div id="main">
<div class="main-content" id="content" pageIds="docs::dev.inmo.tgbotapi.extensions.behaviour_builder////PointingToDeclaration//134499397">
<div class="breadcrumbs"><a href="../../index.html">docs</a><span class="delimiter">/</span><span class="current">dev.inmo.tgbotapi.extensions.behaviour_builder</span></div>
<div class="cover ">
<h1 class="cover"><span><span>Package-level</span></span> <span><span>declarations</span></span></h1>
</div>
<div class="tabbedcontent">
<div class="tabs-section" tabs-section="tabs-section"><button class="section-tab" data-active="" data-togglable="Types">Types</button><button class="section-tab" data-togglable="Functions">Functions</button><button class="section-tab" data-togglable="Properties">Properties</button></div>
<div class="tabs-section-body">
<h2 class="">Types</h2>
<div class="table" data-togglable="Types"><a data-name="1816604265%2FClasslikes%2F-1982836883" anchor-label="BehaviourContext" id="1816604265%2FClasslikes%2F-1982836883" data-filterable-set=":docs:dokkaHtml/commonMain"></a>
<div class="table-row" data-filterable-current=":docs:dokkaHtml/commonMain" data-filterable-set=":docs:dokkaHtml/commonMain">
<div class="main-subrow keyValue ">
<div class=""><span class="inline-flex">
<div><a href="-behaviour-context/index.html"><span>Behaviour</span><wbr></wbr><span><span>Context</span></span></a></div>
<span class="anchor-wrapper"><span class="anchor-icon" pointing-to="1816604265%2FClasslikes%2F-1982836883"></span>
<div class="copy-popup-wrapper "><span class="copy-popup-icon"></span><span>Link copied to clipboard</span></div>
</span></span></div>
<div>
<div class="title">
<div class="platform-hinted " data-platform-hinted="data-platform-hinted"><div class="content sourceset-dependent-content" data-active="" data-togglable=":docs:dokkaHtml/commonMain"><div class="symbol monospace"><span class="token keyword">interface </span><a href="-behaviour-context/index.html">BehaviourContext</a> : <a href="../dev.inmo.tgbotapi.updateshandlers/-flows-updates-filter/index.html">FlowsUpdatesFilter</a>, <a href="../dev.inmo.tgbotapi.bot/-requests-executor/index.html">RequestsExecutor</a>, <span data-unresolved-link="kotlinx.coroutines/CoroutineScope///PointingToDeclaration/">CoroutineScope</span></div><div class="brief "><p class="paragraph">This class contains all necessary tools for work with bots and especially <a href="build-behaviour.html">buildBehaviour</a></p></div></div></div>
</div>
</div>
</div>
</div>
<a data-name="-1930437658%2FClasslikes%2F-1982836883" anchor-label="BehaviourContextAndTwoTypesReceiver" id="-1930437658%2FClasslikes%2F-1982836883" data-filterable-set=":docs:dokkaHtml/commonMain"></a>
<div class="table-row" data-filterable-current=":docs:dokkaHtml/commonMain" data-filterable-set=":docs:dokkaHtml/commonMain">
<div class="main-subrow keyValue ">
<div class=""><span class="inline-flex">
<div><a href="index.html#-1930437658%2FClasslikes%2F-1982836883"><span>Behaviour</span><wbr></wbr><span>Context</span><wbr></wbr><span>And</span><wbr></wbr><span>Two</span><wbr></wbr><span>Types</span><wbr></wbr><span><span>Receiver</span></span></a></div>
<span class="anchor-wrapper"><span class="anchor-icon" pointing-to="-1930437658%2FClasslikes%2F-1982836883"></span>
<div class="copy-popup-wrapper "><span class="copy-popup-icon"></span><span>Link copied to clipboard</span></div>
</span></span></div>
<div>
<div class="title">
<div class="platform-hinted " data-platform-hinted="data-platform-hinted"><div class="content sourceset-dependent-content" data-active="" data-togglable=":docs:dokkaHtml/commonMain"><div class="symbol monospace"><span class="token keyword">typealias </span><a href="index.html#-1930437658%2FClasslikes%2F-1982836883">BehaviourContextAndTwoTypesReceiver</a><span class="token operator">&lt;</span><span class="token keyword"></span><a href="index.html#-1930437658%2FClasslikes%2F-1982836883">T</a><span class="token punctuation">, </span><span class="token keyword"></span><a href="index.html#-1930437658%2FClasslikes%2F-1982836883">I1</a><span class="token punctuation">, </span><span class="token keyword"></span><a href="index.html#-1930437658%2FClasslikes%2F-1982836883">I2</a><span class="token operator">&gt;</span><span class="token operator"> = </span><a href="index.html#-1990833289%2FClasslikes%2F-1982836883">CustomBehaviourContextAndTwoTypesReceiver</a><span class="token operator">&lt;</span><span class="token keyword"></span><a href="-behaviour-context/index.html">BehaviourContext</a><span class="token punctuation">, </span><span class="token keyword"></span><a href="index.html#-1930437658%2FClasslikes%2F-1982836883">T</a><span class="token punctuation">, </span><span class="token keyword"></span><a href="index.html#-1930437658%2FClasslikes%2F-1982836883">I1</a><span class="token punctuation">, </span><span class="token keyword"></span><a href="index.html#-1930437658%2FClasslikes%2F-1982836883">I2</a><span class="token operator">&gt;</span></div></div></div>
</div>
</div>
</div>
</div>
<a data-name="-1477624743%2FClasslikes%2F-1982836883" anchor-label="BehaviourContextAndTypeReceiver" id="-1477624743%2FClasslikes%2F-1982836883" data-filterable-set=":docs:dokkaHtml/commonMain"></a>
<div class="table-row" data-filterable-current=":docs:dokkaHtml/commonMain" data-filterable-set=":docs:dokkaHtml/commonMain">
<div class="main-subrow keyValue ">
<div class=""><span class="inline-flex">
<div><a href="index.html#-1477624743%2FClasslikes%2F-1982836883"><span>Behaviour</span><wbr></wbr><span>Context</span><wbr></wbr><span>And</span><wbr></wbr><span>Type</span><wbr></wbr><span><span>Receiver</span></span></a></div>
<span class="anchor-wrapper"><span class="anchor-icon" pointing-to="-1477624743%2FClasslikes%2F-1982836883"></span>
<div class="copy-popup-wrapper "><span class="copy-popup-icon"></span><span>Link copied to clipboard</span></div>
</span></span></div>
<div>
<div class="title">
<div class="platform-hinted " data-platform-hinted="data-platform-hinted"><div class="content sourceset-dependent-content" data-active="" data-togglable=":docs:dokkaHtml/commonMain"><div class="symbol monospace"><span class="token keyword">typealias </span><a href="index.html#-1477624743%2FClasslikes%2F-1982836883">BehaviourContextAndTypeReceiver</a><span class="token operator">&lt;</span><span class="token keyword"></span><a href="index.html#-1477624743%2FClasslikes%2F-1982836883">T</a><span class="token punctuation">, </span><span class="token keyword"></span><a href="index.html#-1477624743%2FClasslikes%2F-1982836883">I</a><span class="token operator">&gt;</span><span class="token operator"> = </span><a href="index.html#-1311499158%2FClasslikes%2F-1982836883">CustomBehaviourContextAndTypeReceiver</a><span class="token operator">&lt;</span><span class="token keyword"></span><a href="-behaviour-context/index.html">BehaviourContext</a><span class="token punctuation">, </span><span class="token keyword"></span><a href="index.html#-1477624743%2FClasslikes%2F-1982836883">T</a><span class="token punctuation">, </span><span class="token keyword"></span><a href="index.html#-1477624743%2FClasslikes%2F-1982836883">I</a><span class="token operator">&gt;</span></div></div></div>
</div>
</div>
</div>
</div>
<a data-name="1125173050%2FClasslikes%2F-1982836883" anchor-label="BehaviourContextReceiver" id="1125173050%2FClasslikes%2F-1982836883" data-filterable-set=":docs:dokkaHtml/commonMain"></a>
<div class="table-row" data-filterable-current=":docs:dokkaHtml/commonMain" data-filterable-set=":docs:dokkaHtml/commonMain">
<div class="main-subrow keyValue ">
<div class=""><span class="inline-flex">
<div><a href="index.html#1125173050%2FClasslikes%2F-1982836883"><span>Behaviour</span><wbr></wbr><span>Context</span><wbr></wbr><span><span>Receiver</span></span></a></div>
<span class="anchor-wrapper"><span class="anchor-icon" pointing-to="1125173050%2FClasslikes%2F-1982836883"></span>
<div class="copy-popup-wrapper "><span class="copy-popup-icon"></span><span>Link copied to clipboard</span></div>
</span></span></div>
<div>
<div class="title">
<div class="platform-hinted " data-platform-hinted="data-platform-hinted"><div class="content sourceset-dependent-content" data-active="" data-togglable=":docs:dokkaHtml/commonMain"><div class="symbol monospace"><span class="token keyword">typealias </span><a href="index.html#1125173050%2FClasslikes%2F-1982836883">BehaviourContextReceiver</a><span class="token operator">&lt;</span><span class="token keyword"></span><a href="index.html#1125173050%2FClasslikes%2F-1982836883">T</a><span class="token operator">&gt;</span><span class="token operator"> = </span><a href="index.html#-1892390839%2FClasslikes%2F-1982836883">CustomBehaviourContextReceiver</a><span class="token operator">&lt;</span><span class="token keyword"></span><a href="-behaviour-context/index.html">BehaviourContext</a><span class="token punctuation">, </span><span class="token keyword"></span><a href="index.html#1125173050%2FClasslikes%2F-1982836883">T</a><span class="token operator">&gt;</span></div></div></div>
</div>
</div>
</div>
</div>
<a data-name="2123182527%2FClasslikes%2F-1982836883" anchor-label="BehaviourContextWithFSM" id="2123182527%2FClasslikes%2F-1982836883" data-filterable-set=":docs:dokkaHtml/commonMain"></a>
<div class="table-row" data-filterable-current=":docs:dokkaHtml/commonMain" data-filterable-set=":docs:dokkaHtml/commonMain">
<div class="main-subrow keyValue ">
<div class=""><span class="inline-flex">
<div><a href="-behaviour-context-with-f-s-m/index.html"><span>Behaviour</span><wbr></wbr><span>Context</span><wbr></wbr><span>With</span><wbr></wbr><span><span>FSM</span></span></a></div>
<span class="anchor-wrapper"><span class="anchor-icon" pointing-to="2123182527%2FClasslikes%2F-1982836883"></span>
<div class="copy-popup-wrapper "><span class="copy-popup-icon"></span><span>Link copied to clipboard</span></div>
</span></span></div>
<div>
<div class="title">
<div class="platform-hinted " data-platform-hinted="data-platform-hinted"><div class="content sourceset-dependent-content" data-active="" data-togglable=":docs:dokkaHtml/commonMain"><div class="symbol monospace"><span class="token keyword">interface </span><a href="-behaviour-context-with-f-s-m/index.html">BehaviourContextWithFSM</a><span class="token operator">&lt;</span><span class="token keyword"></span><a href="-behaviour-context-with-f-s-m/index.html">T</a><span class="token operator"> : </span><span data-unresolved-link="dev.inmo.micro_utils.fsm.common/State///PointingToDeclaration/">State</span><span class="token operator">&gt;</span> : <a href="-behaviour-context/index.html">BehaviourContext</a>, <span data-unresolved-link="dev.inmo.micro_utils.fsm.common/StatesMachine///PointingToDeclaration/">StatesMachine</span><span class="token operator">&lt;</span><span class="token keyword"></span><a href="-behaviour-context-with-f-s-m/index.html">T</a><span class="token operator">&gt; </span></div><div class="brief "><p class="paragraph">Interface which combine <a href="-behaviour-context/index.html">BehaviourContext</a> and <span data-unresolved-link="dev.inmo.micro_utils.fsm.common/StatesMachine///PointingToDeclaration/">StatesMachine</span>. Subcontext of triggers and states contexts must have one common flow of updates and must not lose updates between updates</p></div></div></div>
</div>
</div>
</div>
</div>
<a data-name="-1968170779%2FClasslikes%2F-1982836883" anchor-label="BehaviourWithFSMStateHandler" id="-1968170779%2FClasslikes%2F-1982836883" data-filterable-set=":docs:dokkaHtml/commonMain"></a>
<div class="table-row" data-filterable-current=":docs:dokkaHtml/commonMain" data-filterable-set=":docs:dokkaHtml/commonMain">
<div class="main-subrow keyValue ">
<div class=""><span class="inline-flex">
<div><a href="-behaviour-with-f-s-m-state-handler/index.html"><span>Behaviour</span><wbr></wbr><span>With</span><wbr></wbr><span>FSMState</span><wbr></wbr><span><span>Handler</span></span></a></div>
<span class="anchor-wrapper"><span class="anchor-icon" pointing-to="-1968170779%2FClasslikes%2F-1982836883"></span>
<div class="copy-popup-wrapper "><span class="copy-popup-icon"></span><span>Link copied to clipboard</span></div>
</span></span></div>
<div>
<div class="title">
<div class="platform-hinted " data-platform-hinted="data-platform-hinted"><div class="content sourceset-dependent-content" data-active="" data-togglable=":docs:dokkaHtml/commonMain"><div class="symbol monospace"><span class="token keyword">fun </span><span class="token keyword">interface </span><a href="-behaviour-with-f-s-m-state-handler/index.html">BehaviourWithFSMStateHandler</a><span class="token operator">&lt;</span><span class="token keyword"></span><a href="-behaviour-with-f-s-m-state-handler/index.html">I</a><span class="token operator"> : </span><a href="-behaviour-with-f-s-m-state-handler/index.html">O</a><span class="token punctuation">, </span><span class="token keyword"></span><a href="-behaviour-with-f-s-m-state-handler/index.html">O</a><span class="token operator"> : </span><span data-unresolved-link="dev.inmo.micro_utils.fsm.common/State///PointingToDeclaration/">State</span><span class="token operator">&gt;</span> : <span data-unresolved-link="dev.inmo.micro_utils.fsm.common/StatesHandler///PointingToDeclaration/">StatesHandler</span><span class="token operator">&lt;</span><span class="token keyword"></span><a href="-behaviour-with-f-s-m-state-handler/index.html">I</a><span class="token punctuation">, </span><span class="token keyword"></span><a href="-behaviour-with-f-s-m-state-handler/index.html">O</a><span class="token operator">&gt; </span></div></div></div>
</div>
</div>
</div>
</div>
<a data-name="-382933607%2FClasslikes%2F-1982836883" anchor-label="BehaviourWithFSMStateHandlerHolder" id="-382933607%2FClasslikes%2F-1982836883" data-filterable-set=":docs:dokkaHtml/commonMain"></a>
<div class="table-row" data-filterable-current=":docs:dokkaHtml/commonMain" data-filterable-set=":docs:dokkaHtml/commonMain">
<div class="main-subrow keyValue ">
<div class=""><span class="inline-flex">
<div><a href="-behaviour-with-f-s-m-state-handler-holder/index.html"><span>Behaviour</span><wbr></wbr><span>With</span><wbr></wbr><span>FSMState</span><wbr></wbr><span>Handler</span><wbr></wbr><span><span>Holder</span></span></a></div>
<span class="anchor-wrapper"><span class="anchor-icon" pointing-to="-382933607%2FClasslikes%2F-1982836883"></span>
<div class="copy-popup-wrapper "><span class="copy-popup-icon"></span><span>Link copied to clipboard</span></div>
</span></span></div>
<div>
<div class="title">
<div class="platform-hinted " data-platform-hinted="data-platform-hinted"><div class="content sourceset-dependent-content" data-active="" data-togglable=":docs:dokkaHtml/commonMain"><div class="symbol monospace"><span class="token keyword">class </span><a href="-behaviour-with-f-s-m-state-handler-holder/index.html">BehaviourWithFSMStateHandlerHolder</a><span class="token operator">&lt;</span><span class="token keyword"></span><a href="-behaviour-with-f-s-m-state-handler-holder/index.html">I</a><span class="token operator"> : </span><a href="-behaviour-with-f-s-m-state-handler-holder/index.html">O</a><span class="token punctuation">, </span><span class="token keyword"></span><a href="-behaviour-with-f-s-m-state-handler-holder/index.html">O</a><span class="token operator"> : </span><span data-unresolved-link="dev.inmo.micro_utils.fsm.common/State///PointingToDeclaration/">State</span><span class="token operator">&gt;</span><span class="token punctuation">(</span><span class="parameters "><span class="parameter ">inputKlass<span class="token operator">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.reflect/-k-class/index.html">KClass</a><span class="token operator">&lt;</span><span class="token keyword"></span><a href="-behaviour-with-f-s-m-state-handler-holder/index.html">I</a><span class="token operator">&gt;</span><span class="token punctuation">, </span></span><span class="parameter ">strict<span class="token operator">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html">Boolean</a><span class="token operator"> = </span><span class="token boolean">false</span><span class="token punctuation">, </span></span><span class="parameter ">delegateTo<span class="token operator">: </span><a href="-behaviour-with-f-s-m-state-handler/index.html">BehaviourWithFSMStateHandler</a><span class="token operator">&lt;</span><span class="token keyword"></span><a href="-behaviour-with-f-s-m-state-handler-holder/index.html">I</a><span class="token punctuation">, </span><span class="token keyword"></span><a href="-behaviour-with-f-s-m-state-handler-holder/index.html">O</a><span class="token operator">&gt;</span></span></span><span class="token punctuation">)</span> : <span data-unresolved-link="dev.inmo.micro_utils.fsm.common/CheckableHandlerHolder///PointingToDeclaration/">CheckableHandlerHolder</span><span class="token operator">&lt;</span><span class="token keyword"></span><a href="-behaviour-with-f-s-m-state-handler-holder/index.html">O</a><span class="token punctuation">, </span><span class="token keyword"></span><a href="-behaviour-with-f-s-m-state-handler-holder/index.html">O</a><span class="token operator">&gt; </span>, <a href="-behaviour-with-f-s-m-state-handler/index.html">BehaviourWithFSMStateHandler</a><span class="token operator">&lt;</span><span class="token keyword"></span><a href="-behaviour-with-f-s-m-state-handler-holder/index.html">O</a><span class="token punctuation">, </span><span class="token keyword"></span><a href="-behaviour-with-f-s-m-state-handler-holder/index.html">O</a><span class="token operator">&gt; </span></div><div class="brief "><p class="paragraph">Special holder for <a href="-behaviour-context-with-f-s-m/index.html">BehaviourContextWithFSM</a>. This holder helps <a href="-behaviour-context-with-f-s-m/index.html">BehaviourContextWithFSM</a> to understand whether it can handle input <span data-unresolved-link="dev.inmo.micro_utils.fsm.common/State///PointingToDeclaration/">State</span> with <span data-unresolved-link="dev.inmo.tgbotapi.extensions.behaviour_builder/BehaviourWithFSMStateHandlerHolder/delegateTo/#/PointingToDeclaration/">delegateTo</span> or not</p></div></div></div>
</div>
</div>
</div>
</div>
<a data-name="-1990833289%2FClasslikes%2F-1982836883" anchor-label="CustomBehaviourContextAndTwoTypesReceiver" id="-1990833289%2FClasslikes%2F-1982836883" data-filterable-set=":docs:dokkaHtml/commonMain"></a>
<div class="table-row" data-filterable-current=":docs:dokkaHtml/commonMain" data-filterable-set=":docs:dokkaHtml/commonMain">
<div class="main-subrow keyValue ">
<div class=""><span class="inline-flex">
<div><a href="index.html#-1990833289%2FClasslikes%2F-1982836883"><span>Custom</span><wbr></wbr><span>Behaviour</span><wbr></wbr><span>Context</span><wbr></wbr><span>And</span><wbr></wbr><span>Two</span><wbr></wbr><span>Types</span><wbr></wbr><span><span>Receiver</span></span></a></div>
<span class="anchor-wrapper"><span class="anchor-icon" pointing-to="-1990833289%2FClasslikes%2F-1982836883"></span>
<div class="copy-popup-wrapper "><span class="copy-popup-icon"></span><span>Link copied to clipboard</span></div>
</span></span></div>
<div>
<div class="title">
<div class="platform-hinted " data-platform-hinted="data-platform-hinted"><div class="content sourceset-dependent-content" data-active="" data-togglable=":docs:dokkaHtml/commonMain"><div class="symbol monospace"><span class="token keyword">typealias </span><a href="index.html#-1990833289%2FClasslikes%2F-1982836883">CustomBehaviourContextAndTwoTypesReceiver</a><span class="token operator">&lt;</span><span class="token keyword"></span><a href="index.html#-1990833289%2FClasslikes%2F-1982836883">BC</a><span class="token punctuation">, </span><span class="token keyword"></span><a href="index.html#-1990833289%2FClasslikes%2F-1982836883">T</a><span class="token punctuation">, </span><span class="token keyword"></span><a href="index.html#-1990833289%2FClasslikes%2F-1982836883">I1</a><span class="token punctuation">, </span><span class="token keyword"></span><a href="index.html#-1990833289%2FClasslikes%2F-1982836883">I2</a><span class="token operator">&gt;</span><span class="token operator"> = </span><span class="token keyword">suspend </span><span class="token keyword"></span><a href="index.html#-1990833289%2FClasslikes%2F-1982836883">BC</a><span class="token punctuation">.</span><span class="token punctuation">(</span><span class="token keyword"></span><a href="index.html#-1990833289%2FClasslikes%2F-1982836883">I1</a><span class="token punctuation">, </span><span class="token keyword"></span><a href="index.html#-1990833289%2FClasslikes%2F-1982836883">I2</a><span class="token punctuation">)</span><span class="token operator"> -&gt; </span><span class="token keyword"></span><a href="index.html#-1990833289%2FClasslikes%2F-1982836883">T</a></div></div></div>
</div>
</div>
</div>
</div>
<a data-name="-1311499158%2FClasslikes%2F-1982836883" anchor-label="CustomBehaviourContextAndTypeReceiver" id="-1311499158%2FClasslikes%2F-1982836883" data-filterable-set=":docs:dokkaHtml/commonMain"></a>
<div class="table-row" data-filterable-current=":docs:dokkaHtml/commonMain" data-filterable-set=":docs:dokkaHtml/commonMain">
<div class="main-subrow keyValue ">
<div class=""><span class="inline-flex">
<div><a href="index.html#-1311499158%2FClasslikes%2F-1982836883"><span>Custom</span><wbr></wbr><span>Behaviour</span><wbr></wbr><span>Context</span><wbr></wbr><span>And</span><wbr></wbr><span>Type</span><wbr></wbr><span><span>Receiver</span></span></a></div>
<span class="anchor-wrapper"><span class="anchor-icon" pointing-to="-1311499158%2FClasslikes%2F-1982836883"></span>
<div class="copy-popup-wrapper "><span class="copy-popup-icon"></span><span>Link copied to clipboard</span></div>
</span></span></div>
<div>
<div class="title">
<div class="platform-hinted " data-platform-hinted="data-platform-hinted"><div class="content sourceset-dependent-content" data-active="" data-togglable=":docs:dokkaHtml/commonMain"><div class="symbol monospace"><span class="token keyword">typealias </span><a href="index.html#-1311499158%2FClasslikes%2F-1982836883">CustomBehaviourContextAndTypeReceiver</a><span class="token operator">&lt;</span><span class="token keyword"></span><a href="index.html#-1311499158%2FClasslikes%2F-1982836883">BC</a><span class="token punctuation">, </span><span class="token keyword"></span><a href="index.html#-1311499158%2FClasslikes%2F-1982836883">T</a><span class="token punctuation">, </span><span class="token keyword"></span><a href="index.html#-1311499158%2FClasslikes%2F-1982836883">I</a><span class="token operator">&gt;</span><span class="token operator"> = </span><span class="token keyword">suspend </span><span class="token keyword"></span><a href="index.html#-1311499158%2FClasslikes%2F-1982836883">BC</a><span class="token punctuation">.</span><span class="token punctuation">(</span><span class="token keyword"></span><a href="index.html#-1311499158%2FClasslikes%2F-1982836883">I</a><span class="token punctuation">)</span><span class="token operator"> -&gt; </span><span class="token keyword"></span><a href="index.html#-1311499158%2FClasslikes%2F-1982836883">T</a></div></div></div>
</div>
</div>
</div>
</div>
<a data-name="-1892390839%2FClasslikes%2F-1982836883" anchor-label="CustomBehaviourContextReceiver" id="-1892390839%2FClasslikes%2F-1982836883" data-filterable-set=":docs:dokkaHtml/commonMain"></a>
<div class="table-row" data-filterable-current=":docs:dokkaHtml/commonMain" data-filterable-set=":docs:dokkaHtml/commonMain">
<div class="main-subrow keyValue ">
<div class=""><span class="inline-flex">
<div><a href="index.html#-1892390839%2FClasslikes%2F-1982836883"><span>Custom</span><wbr></wbr><span>Behaviour</span><wbr></wbr><span>Context</span><wbr></wbr><span><span>Receiver</span></span></a></div>
<span class="anchor-wrapper"><span class="anchor-icon" pointing-to="-1892390839%2FClasslikes%2F-1982836883"></span>
<div class="copy-popup-wrapper "><span class="copy-popup-icon"></span><span>Link copied to clipboard</span></div>
</span></span></div>
<div>
<div class="title">
<div class="platform-hinted " data-platform-hinted="data-platform-hinted"><div class="content sourceset-dependent-content" data-active="" data-togglable=":docs:dokkaHtml/commonMain"><div class="symbol monospace"><span class="token keyword">typealias </span><a href="index.html#-1892390839%2FClasslikes%2F-1982836883">CustomBehaviourContextReceiver</a><span class="token operator">&lt;</span><span class="token keyword"></span><a href="index.html#-1892390839%2FClasslikes%2F-1982836883">BC</a><span class="token punctuation">, </span><span class="token keyword"></span><a href="index.html#-1892390839%2FClasslikes%2F-1982836883">T</a><span class="token operator">&gt;</span><span class="token operator"> = </span><span class="token keyword">suspend </span><span class="token keyword"></span><a href="index.html#-1892390839%2FClasslikes%2F-1982836883">BC</a><span class="token punctuation">.</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token operator"> -&gt; </span><span class="token keyword"></span><a href="index.html#-1892390839%2FClasslikes%2F-1982836883">T</a></div></div></div>
</div>
</div>
</div>
</div>
<a data-name="1252781460%2FClasslikes%2F-1982836883" anchor-label="DefaultBehaviourContext" id="1252781460%2FClasslikes%2F-1982836883" data-filterable-set=":docs:dokkaHtml/commonMain"></a>
<div class="table-row" data-filterable-current=":docs:dokkaHtml/commonMain" data-filterable-set=":docs:dokkaHtml/commonMain">
<div class="main-subrow keyValue ">
<div class=""><span class="inline-flex">
<div><a href="-default-behaviour-context/index.html"><span>Default</span><wbr></wbr><span>Behaviour</span><wbr></wbr><span><span>Context</span></span></a></div>
<span class="anchor-wrapper"><span class="anchor-icon" pointing-to="1252781460%2FClasslikes%2F-1982836883"></span>
<div class="copy-popup-wrapper "><span class="copy-popup-icon"></span><span>Link copied to clipboard</span></div>
</span></span></div>
<div>
<div class="title">
<div class="platform-hinted " data-platform-hinted="data-platform-hinted"><div class="content sourceset-dependent-content" data-active="" data-togglable=":docs:dokkaHtml/commonMain"><div class="symbol monospace"><span class="token keyword">class </span><a href="-default-behaviour-context/index.html">DefaultBehaviourContext</a><span class="token punctuation">(</span><span class="parameters "><span class="parameter "><span class="token keyword">val </span>bot<span class="token operator">: </span><a href="../dev.inmo.tgbotapi.bot/index.html#-1167693203%2FClasslikes%2F-1982836883">TelegramBot</a><span class="token punctuation">, </span></span><span class="parameter "><span class="token keyword">val </span>scope<span class="token operator">: </span><span data-unresolved-link="kotlinx.coroutines/CoroutineScope///PointingToDeclaration/">CoroutineScope</span><span class="token punctuation">, </span></span><span class="parameter ">broadcastChannelsSize<span class="token operator">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html">Int</a><span class="token operator"> = </span><span class="token constant">100</span><span class="token punctuation">, </span></span><span class="parameter ">onBufferOverflow<span class="token operator">: </span><span data-unresolved-link="kotlinx.coroutines.channels/BufferOverflow///PointingToDeclaration/">BufferOverflow</span><span class="token operator"> = </span>BufferOverflow.SUSPEND<span class="token punctuation">, </span></span><span class="parameter ">upstreamUpdatesFlow<span class="token operator">: </span><span data-unresolved-link="kotlinx.coroutines.flow/Flow///PointingToDeclaration/">Flow</span><span class="token operator">&lt;</span><span class="token keyword"></span><a href="../dev.inmo.tgbotapi.types.update.abstracts/-update/index.html">Update</a><span class="token operator">&gt;</span><span class="token operator">?</span><span class="token operator"> = </span>null<span class="token punctuation">, </span></span><span class="parameter "><span class="token keyword">val </span>triggersHolder<span class="token operator">: </span><a href="../dev.inmo.tgbotapi.extensions.behaviour_builder.utils.handlers_registrar/-triggers-holder/index.html">TriggersHolder</a><span class="token operator"> = </span>TriggersHolder()</span></span><span class="token punctuation">)</span> : <a href="../dev.inmo.tgbotapi.updateshandlers/-abstract-flows-updates-filter/index.html">AbstractFlowsUpdatesFilter</a>, <a href="../dev.inmo.tgbotapi.bot/-requests-executor/index.html">RequestsExecutor</a>, <span data-unresolved-link="kotlinx.coroutines/CoroutineScope///PointingToDeclaration/">CoroutineScope</span>, <a href="-behaviour-context/index.html">BehaviourContext</a></div></div></div>
</div>
</div>
</div>
</div>
<a data-name="-621405132%2FClasslikes%2F-1982836883" anchor-label="DefaultBehaviourContextWithFSM" id="-621405132%2FClasslikes%2F-1982836883" data-filterable-set=":docs:dokkaHtml/commonMain"></a>
<div class="table-row" data-filterable-current=":docs:dokkaHtml/commonMain" data-filterable-set=":docs:dokkaHtml/commonMain">
<div class="main-subrow keyValue ">
<div class=""><span class="inline-flex">
<div><a href="-default-behaviour-context-with-f-s-m/index.html"><span>Default</span><wbr></wbr><span>Behaviour</span><wbr></wbr><span>Context</span><wbr></wbr><span>With</span><wbr></wbr><span><span>FSM</span></span></a></div>
<span class="anchor-wrapper"><span class="anchor-icon" pointing-to="-621405132%2FClasslikes%2F-1982836883"></span>
<div class="copy-popup-wrapper "><span class="copy-popup-icon"></span><span>Link copied to clipboard</span></div>
</span></span></div>
<div>
<div class="title">
<div class="platform-hinted " data-platform-hinted="data-platform-hinted"><div class="content sourceset-dependent-content" data-active="" data-togglable=":docs:dokkaHtml/commonMain"><div class="symbol monospace"><span class="token keyword">class </span><a href="-default-behaviour-context-with-f-s-m/index.html">DefaultBehaviourContextWithFSM</a><span class="token operator">&lt;</span><span class="token keyword"></span><a href="-default-behaviour-context-with-f-s-m/index.html">T</a><span class="token operator"> : </span><span data-unresolved-link="dev.inmo.micro_utils.fsm.common/State///PointingToDeclaration/">State</span><span class="token operator">&gt;</span><span class="token punctuation">(</span><span class="parameters "><span class="parameter ">behaviourContext<span class="token operator">: </span><a href="-behaviour-context/index.html">BehaviourContext</a><span class="token punctuation">, </span></span><span class="parameter ">statesManager<span class="token operator">: </span><span data-unresolved-link="dev.inmo.micro_utils.fsm.common/StatesManager///PointingToDeclaration/">StatesManager</span><span class="token operator">&lt;</span><span class="token keyword"></span><a href="-default-behaviour-context-with-f-s-m/index.html">T</a><span class="token operator">&gt;</span><span class="token punctuation">, </span></span><span class="parameter ">handlers<span class="token operator">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html">List</a><span class="token operator">&lt;</span><span class="token keyword"></span><a href="-behaviour-with-f-s-m-state-handler-holder/index.html">BehaviourWithFSMStateHandlerHolder</a><span class="token operator">&lt;</span><span class="token operator">*</span><span class="token punctuation">, </span><span class="token keyword"></span><a href="-default-behaviour-context-with-f-s-m/index.html">T</a><span class="token operator">&gt;</span><span class="token operator">&gt;</span><span class="token punctuation">, </span></span><span class="parameter ">onStateHandlingErrorHandler<span class="token operator">: </span><span data-unresolved-link="dev.inmo.micro_utils.fsm.common.utils/StateHandlingErrorHandler///PointingToDeclaration/">StateHandlingErrorHandler</span><span class="token operator">&lt;</span><span class="token keyword"></span><a href="-default-behaviour-context-with-f-s-m/index.html">T</a><span class="token operator">&gt;</span><span class="token operator"> = </span>defaultStateHandlingErrorHandler()</span></span><span class="token punctuation">)</span> : <a href="-behaviour-context/index.html">BehaviourContext</a>, <a href="-behaviour-context-with-f-s-m/index.html">BehaviourContextWithFSM</a><span class="token operator">&lt;</span><span class="token keyword"></span><a href="-default-behaviour-context-with-f-s-m/index.html">T</a><span class="token operator">&gt; </span></div><div class="brief "><p class="paragraph">Default realization of <a href="-behaviour-context-with-f-s-m/index.html">BehaviourContextWithFSM</a>. It uses <span data-unresolved-link="dev.inmo.tgbotapi.extensions.behaviour_builder/DefaultBehaviourContextWithFSM/behaviourContext/#/PointingToDeclaration/">behaviourContext</span> as a base for this object as <a href="-behaviour-context/index.html">BehaviourContext</a>, but managing substates contexts updates for avoiding of updates lost between states</p></div></div></div>
</div>
</div>
</div>
</div>
</div>
<h2 class="">Functions</h2>
<div class="table" data-togglable="Functions"><a data-name="581293077%2FFunctions%2F-1982836883" anchor-label="asAction" id="581293077%2FFunctions%2F-1982836883" data-filterable-set=":docs:dokkaHtml/commonMain"></a>
<div class="table-row" data-filterable-current=":docs:dokkaHtml/commonMain" data-filterable-set=":docs:dokkaHtml/commonMain">
<div class="main-subrow keyValue ">
<div class=""><span class="inline-flex">
<div><a href="as-action.html"><span>as</span><wbr></wbr><span><span>Action</span></span></a></div>
<span class="anchor-wrapper"><span class="anchor-icon" pointing-to="581293077%2FFunctions%2F-1982836883"></span>
<div class="copy-popup-wrapper "><span class="copy-popup-icon"></span><span>Link copied to clipboard</span></div>
</span></span></div>
<div>
<div class="title">
<div class="platform-hinted " data-platform-hinted="data-platform-hinted"><div class="content sourceset-dependent-content" data-active="" data-togglable=":docs:dokkaHtml/commonMain"><div class="symbol monospace"><span class="token keyword">inline </span><span class="token keyword">fun </span><span class="token operator">&lt;</span><span class="token keyword"></span><a href="as-action.html">T</a><span class="token operator">&gt; </span><span data-unresolved-link="kotlinx.coroutines/Deferred///PointingToDeclaration/">Deferred</span><span class="token operator">&lt;</span><span class="token keyword"></span><a href="as-action.html">T</a><span class="token operator">&gt;</span><span class="token punctuation">.</span><a href="as-action.html"><span class="token function">asAction</span></a><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token operator">: </span><span data-unresolved-link="dev.inmo.micro_utils.coroutines/DeferredAction///PointingToDeclaration/">DeferredAction</span><span class="token operator">&lt;</span><span class="token keyword"></span><a href="as-action.html">T</a><span class="token punctuation">, </span><span class="token keyword"></span><a href="as-action.html">T</a><span class="token operator">&gt;</span></div></div></div>
</div>
</div>
</div>
</div>
<a data-name="2038088598%2FFunctions%2F-1982836883" anchor-label="BehaviourContext" id="2038088598%2FFunctions%2F-1982836883" data-filterable-set=":docs:dokkaHtml/commonMain"></a>
<div class="table-row" data-filterable-current=":docs:dokkaHtml/commonMain" data-filterable-set=":docs:dokkaHtml/commonMain">
<div class="main-subrow keyValue ">
<div class=""><span class="inline-flex">
<div><a href="-behaviour-context.html"><span>Behaviour</span><wbr></wbr><span><span>Context</span></span></a></div>
<span class="anchor-wrapper"><span class="anchor-icon" pointing-to="2038088598%2FFunctions%2F-1982836883"></span>
<div class="copy-popup-wrapper "><span class="copy-popup-icon"></span><span>Link copied to clipboard</span></div>
</span></span></div>
<div>
<div class="title">
<div class="platform-hinted " data-platform-hinted="data-platform-hinted"><div class="content sourceset-dependent-content" data-active="" data-togglable=":docs:dokkaHtml/commonMain"><div class="symbol monospace"><span class="token keyword"></span><span class="token keyword">fun </span><a href="-behaviour-context.html"><span class="token function">BehaviourContext</span></a><span class="token punctuation">(</span><span class="parameters "><span class="parameter ">bot<span class="token operator">: </span><a href="../dev.inmo.tgbotapi.bot/index.html#-1167693203%2FClasslikes%2F-1982836883">TelegramBot</a><span class="token punctuation">, </span></span><span class="parameter ">scope<span class="token operator">: </span><span data-unresolved-link="kotlinx.coroutines/CoroutineScope///PointingToDeclaration/">CoroutineScope</span><span class="token punctuation">, </span></span><span class="parameter ">flowsUpdatesFilter<span class="token operator">: </span><a href="../dev.inmo.tgbotapi.updateshandlers/-flows-updates-filter/index.html">FlowsUpdatesFilter</a><span class="token operator"> = </span>FlowsUpdatesFilter()<span class="token punctuation">, </span></span><span class="parameter ">triggersHolder<span class="token operator">: </span><a href="../dev.inmo.tgbotapi.extensions.behaviour_builder.utils.handlers_registrar/-triggers-holder/index.html">TriggersHolder</a><span class="token operator"> = </span>TriggersHolder()</span></span><span class="token punctuation">)</span><span class="token operator">: </span><a href="-default-behaviour-context/index.html">DefaultBehaviourContext</a></div><div class="symbol monospace"><span class="token keyword">inline </span><span class="token keyword">fun </span><span class="token operator">&lt;</span><span class="token keyword"></span><a href="-behaviour-context.html">T</a><span class="token operator">&gt; </span><a href="-behaviour-context.html"><span class="token function">BehaviourContext</span></a><span class="token punctuation">(</span><span class="parameters "><span class="parameter ">bot<span class="token operator">: </span><a href="../dev.inmo.tgbotapi.bot/index.html#-1167693203%2FClasslikes%2F-1982836883">TelegramBot</a><span class="token punctuation">, </span></span><span class="parameter ">scope<span class="token operator">: </span><span data-unresolved-link="kotlinx.coroutines/CoroutineScope///PointingToDeclaration/">CoroutineScope</span><span class="token punctuation">, </span></span><span class="parameter ">flowsUpdatesFilter<span class="token operator">: </span><a href="../dev.inmo.tgbotapi.updateshandlers/-flows-updates-filter/index.html">FlowsUpdatesFilter</a><span class="token operator"> = </span>FlowsUpdatesFilter()<span class="token punctuation">, </span></span><span class="parameter ">triggersHolder<span class="token operator">: </span><a href="../dev.inmo.tgbotapi.extensions.behaviour_builder.utils.handlers_registrar/-triggers-holder/index.html">TriggersHolder</a><span class="token operator"> = </span>TriggersHolder()<span class="token punctuation">, </span></span><span class="parameter "><span class="token keyword">crossinline </span>block<span class="token operator">: </span><span class="token keyword"></span><a href="-behaviour-context/index.html">BehaviourContext</a><span class="token punctuation">.</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token operator"> -&gt; </span><span class="token keyword"></span><a href="-behaviour-context.html">T</a></span></span><span class="token punctuation">)</span><span class="token operator">: </span><a href="-behaviour-context.html">T</a></div></div></div>
</div>
</div>
</div>
</div>
<a data-name="-1655108055%2FFunctions%2F-1982836883" anchor-label="BehaviourContextAndTwoTypesReceiver" id="-1655108055%2FFunctions%2F-1982836883" data-filterable-set=":docs:dokkaHtml/commonMain"></a>
<div class="table-row" data-filterable-current=":docs:dokkaHtml/commonMain" data-filterable-set=":docs:dokkaHtml/commonMain">
<div class="main-subrow keyValue ">
<div class=""><span class="inline-flex">
<div><a href="-behaviour-context-and-two-types-receiver.html"><span>Behaviour</span><wbr></wbr><span>Context</span><wbr></wbr><span>And</span><wbr></wbr><span>Two</span><wbr></wbr><span>Types</span><wbr></wbr><span><span>Receiver</span></span></a></div>
<span class="anchor-wrapper"><span class="anchor-icon" pointing-to="-1655108055%2FFunctions%2F-1982836883"></span>
<div class="copy-popup-wrapper "><span class="copy-popup-icon"></span><span>Link copied to clipboard</span></div>
</span></span></div>
<div>
<div class="title">
<div class="platform-hinted " data-platform-hinted="data-platform-hinted"><div class="content sourceset-dependent-content" data-active="" data-togglable=":docs:dokkaHtml/commonMain"><div class="symbol monospace"><span class="token keyword">inline </span><span class="token keyword">fun </span><span class="token operator">&lt;</span><span class="token keyword"></span><a href="-behaviour-context-and-two-types-receiver.html">T</a><span class="token punctuation">, </span><span class="token keyword"></span><a href="-behaviour-context-and-two-types-receiver.html">I1</a><span class="token punctuation">, </span><span class="token keyword"></span><a href="-behaviour-context-and-two-types-receiver.html">I2</a><span class="token operator">&gt; </span><a href="-behaviour-context-and-two-types-receiver.html"><span class="token function">BehaviourContextAndTwoTypesReceiver</span></a><span class="token punctuation">(</span><span class="parameters "><span class="parameter "><span class="token keyword">noinline </span>block<span class="token operator">: </span><a href="index.html#-1930437658%2FClasslikes%2F-1982836883">BehaviourContextAndTwoTypesReceiver</a><span class="token operator">&lt;</span><span class="token keyword"></span><a href="-behaviour-context-and-two-types-receiver.html">T</a><span class="token punctuation">, </span><span class="token keyword"></span><a href="-behaviour-context-and-two-types-receiver.html">I1</a><span class="token punctuation">, </span><span class="token keyword"></span><a href="-behaviour-context-and-two-types-receiver.html">I2</a><span class="token operator">&gt;</span></span></span><span class="token punctuation">)</span><span class="token operator">: </span><span class="token keyword">suspend </span><span class="token keyword"></span><a href="-behaviour-context/index.html">BehaviourContext</a><span class="token punctuation">.</span><span class="token punctuation">(</span><span class="token keyword"></span><a href="-behaviour-context-and-two-types-receiver.html">I1</a><span class="token punctuation">, </span><span class="token keyword"></span><a href="-behaviour-context-and-two-types-receiver.html">I2</a><span class="token punctuation">)</span><span class="token operator"> -&gt; </span><span class="token keyword"></span><a href="-behaviour-context-and-two-types-receiver.html">T</a></div></div></div>
</div>
</div>
</div>
</div>
<a data-name="1360016445%2FFunctions%2F-1982836883" anchor-label="BehaviourContextAndTypeReceiver" id="1360016445%2FFunctions%2F-1982836883" data-filterable-set=":docs:dokkaHtml/commonMain"></a>
<div class="table-row" data-filterable-current=":docs:dokkaHtml/commonMain" data-filterable-set=":docs:dokkaHtml/commonMain">
<div class="main-subrow keyValue ">
<div class=""><span class="inline-flex">
<div><a href="-behaviour-context-and-type-receiver.html"><span>Behaviour</span><wbr></wbr><span>Context</span><wbr></wbr><span>And</span><wbr></wbr><span>Type</span><wbr></wbr><span><span>Receiver</span></span></a></div>
<span class="anchor-wrapper"><span class="anchor-icon" pointing-to="1360016445%2FFunctions%2F-1982836883"></span>
<div class="copy-popup-wrapper "><span class="copy-popup-icon"></span><span>Link copied to clipboard</span></div>
</span></span></div>
<div>
<div class="title">
<div class="platform-hinted " data-platform-hinted="data-platform-hinted"><div class="content sourceset-dependent-content" data-active="" data-togglable=":docs:dokkaHtml/commonMain"><div class="symbol monospace"><span class="token keyword">inline </span><span class="token keyword">fun </span><span class="token operator">&lt;</span><span class="token keyword"></span><a href="-behaviour-context-and-type-receiver.html">T</a><span class="token punctuation">, </span><span class="token keyword"></span><a href="-behaviour-context-and-type-receiver.html">I</a><span class="token operator">&gt; </span><a href="-behaviour-context-and-type-receiver.html"><span class="token function">BehaviourContextAndTypeReceiver</span></a><span class="token punctuation">(</span><span class="parameters "><span class="parameter "><span class="token keyword">noinline </span>block<span class="token operator">: </span><a href="index.html#-1477624743%2FClasslikes%2F-1982836883">BehaviourContextAndTypeReceiver</a><span class="token operator">&lt;</span><span class="token keyword"></span><a href="-behaviour-context-and-type-receiver.html">T</a><span class="token punctuation">, </span><span class="token keyword"></span><a href="-behaviour-context-and-type-receiver.html">I</a><span class="token operator">&gt;</span></span></span><span class="token punctuation">)</span><span class="token operator">: </span><span class="token keyword">suspend </span><span class="token keyword"></span><a href="-behaviour-context/index.html">BehaviourContext</a><span class="token punctuation">.</span><span class="token punctuation">(</span><span class="token keyword"></span><a href="-behaviour-context-and-type-receiver.html">I</a><span class="token punctuation">)</span><span class="token operator"> -&gt; </span><span class="token keyword"></span><a href="-behaviour-context-and-type-receiver.html">T</a></div></div></div>
</div>
</div>
</div>
</div>
<a data-name="1838350601%2FFunctions%2F-1982836883" anchor-label="BehaviourContextReceiver" id="1838350601%2FFunctions%2F-1982836883" data-filterable-set=":docs:dokkaHtml/commonMain"></a>
<div class="table-row" data-filterable-current=":docs:dokkaHtml/commonMain" data-filterable-set=":docs:dokkaHtml/commonMain">
<div class="main-subrow keyValue ">
<div class=""><span class="inline-flex">
<div><a href="-behaviour-context-receiver.html"><span>Behaviour</span><wbr></wbr><span>Context</span><wbr></wbr><span><span>Receiver</span></span></a></div>
<span class="anchor-wrapper"><span class="anchor-icon" pointing-to="1838350601%2FFunctions%2F-1982836883"></span>
<div class="copy-popup-wrapper "><span class="copy-popup-icon"></span><span>Link copied to clipboard</span></div>
</span></span></div>
<div>
<div class="title">
<div class="platform-hinted " data-platform-hinted="data-platform-hinted"><div class="content sourceset-dependent-content" data-active="" data-togglable=":docs:dokkaHtml/commonMain"><div class="symbol monospace"><span class="token keyword">inline </span><span class="token keyword">fun </span><span class="token operator">&lt;</span><span class="token keyword"></span><a href="-behaviour-context-receiver.html">T</a><span class="token operator">&gt; </span><a href="-behaviour-context-receiver.html"><span class="token function">BehaviourContextReceiver</span></a><span class="token punctuation">(</span><span class="parameters "><span class="parameter "><span class="token keyword">noinline </span>block<span class="token operator">: </span><a href="index.html#1125173050%2FClasslikes%2F-1982836883">BehaviourContextReceiver</a><span class="token operator">&lt;</span><span class="token keyword"></span><a href="-behaviour-context-receiver.html">T</a><span class="token operator">&gt;</span></span></span><span class="token punctuation">)</span><span class="token operator">: </span><span class="token keyword">suspend </span><span class="token keyword"></span><a href="-behaviour-context/index.html">BehaviourContext</a><span class="token punctuation">.</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token operator"> -&gt; </span><span class="token keyword"></span><a href="-behaviour-context-receiver.html">T</a></div></div></div>
</div>
</div>
</div>
</div>
<a data-name="-70742833%2FFunctions%2F-1982836883" anchor-label="BehaviourWithFSMStateHandlerHolder" id="-70742833%2FFunctions%2F-1982836883" data-filterable-set=":docs:dokkaHtml/commonMain"></a>
<div class="table-row" data-filterable-current=":docs:dokkaHtml/commonMain" data-filterable-set=":docs:dokkaHtml/commonMain">
<div class="main-subrow keyValue ">
<div class=""><span class="inline-flex">
<div><a href="-behaviour-with-f-s-m-state-handler-holder.html"><span>Behaviour</span><wbr></wbr><span>With</span><wbr></wbr><span>FSMState</span><wbr></wbr><span>Handler</span><wbr></wbr><span><span>Holder</span></span></a></div>
<span class="anchor-wrapper"><span class="anchor-icon" pointing-to="-70742833%2FFunctions%2F-1982836883"></span>
<div class="copy-popup-wrapper "><span class="copy-popup-icon"></span><span>Link copied to clipboard</span></div>
</span></span></div>
<div>
<div class="title">
<div class="platform-hinted " data-platform-hinted="data-platform-hinted"><div class="content sourceset-dependent-content" data-active="" data-togglable=":docs:dokkaHtml/commonMain"><div class="symbol monospace"><span class="token keyword">inline </span><span class="token keyword">fun </span><span class="token operator">&lt;</span><span class="token keyword"></span><a href="-behaviour-with-f-s-m-state-handler-holder.html">I</a><span class="token operator"> : </span><a href="-behaviour-with-f-s-m-state-handler-holder.html">O</a><span class="token punctuation">, </span><span class="token keyword"></span><a href="-behaviour-with-f-s-m-state-handler-holder.html">O</a><span class="token operator"> : </span><span data-unresolved-link="dev.inmo.micro_utils.fsm.common/State///PointingToDeclaration/">State</span><span class="token operator">&gt; </span><a href="-behaviour-with-f-s-m-state-handler-holder.html"><span class="token function">BehaviourWithFSMStateHandlerHolder</span></a><span class="token punctuation">(</span><span class="parameters "><span class="parameter ">strict<span class="token operator">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html">Boolean</a><span class="token operator"> = </span><span class="token boolean">false</span><span class="token punctuation">, </span></span><span class="parameter ">delegateTo<span class="token operator">: </span><a href="-behaviour-with-f-s-m-state-handler/index.html">BehaviourWithFSMStateHandler</a><span class="token operator">&lt;</span><span class="token keyword"></span><a href="-behaviour-with-f-s-m-state-handler-holder.html">I</a><span class="token punctuation">, </span><span class="token keyword"></span><a href="-behaviour-with-f-s-m-state-handler-holder.html">O</a><span class="token operator">&gt;</span></span></span><span class="token punctuation">)</span><span class="token operator">: </span><a href="-behaviour-with-f-s-m-state-handler-holder/index.html">BehaviourWithFSMStateHandlerHolder</a><span class="token operator">&lt;</span><span class="token keyword"></span><a href="-behaviour-with-f-s-m-state-handler-holder.html">I</a><span class="token punctuation">, </span><span class="token keyword"></span><a href="-behaviour-with-f-s-m-state-handler-holder.html">O</a><span class="token operator">&gt;</span></div></div></div>
</div>
</div>
</div>
</div>
<a data-name="-1866313263%2FFunctions%2F-1982836883" anchor-label="buildBehaviour" id="-1866313263%2FFunctions%2F-1982836883" data-filterable-set=":docs:dokkaHtml/commonMain"></a>
<div class="table-row" data-filterable-current=":docs:dokkaHtml/commonMain" data-filterable-set=":docs:dokkaHtml/commonMain">
<div class="main-subrow keyValue ">
<div class=""><span class="inline-flex">
<div><a href="build-behaviour.html"><span>build</span><wbr></wbr><span><span>Behaviour</span></span></a></div>
<span class="anchor-wrapper"><span class="anchor-icon" pointing-to="-1866313263%2FFunctions%2F-1982836883"></span>
<div class="copy-popup-wrapper "><span class="copy-popup-icon"></span><span>Link copied to clipboard</span></div>
</span></span></div>
<div>
<div class="title">
<div class="platform-hinted " data-platform-hinted="data-platform-hinted"><div class="content sourceset-dependent-content" data-active="" data-togglable=":docs:dokkaHtml/commonMain"><div class="symbol monospace"><span class="token keyword">suspend </span><span class="token keyword">fun </span><a href="../dev.inmo.tgbotapi.bot/index.html#-1167693203%2FClasslikes%2F-1982836883">TelegramBot</a><span class="token punctuation">.</span><a href="build-behaviour.html"><span class="token function">buildBehaviour</span></a><span class="token punctuation">(</span><span class="parameters "><span class="parameter ">flowUpdatesFilter<span class="token operator">: </span><a href="../dev.inmo.tgbotapi.updateshandlers/-flows-updates-filter/index.html">FlowsUpdatesFilter</a><span class="token operator"> = </span>FlowsUpdatesFilter()<span class="token punctuation">, </span></span><span class="parameter ">scope<span class="token operator">: </span><span data-unresolved-link="kotlinx.coroutines/CoroutineScope///PointingToDeclaration/">CoroutineScope</span><span class="token operator"> = </span>defaultCoroutineScopeProvider()<span class="token punctuation">, </span></span><span class="parameter ">defaultExceptionsHandler<span class="token operator">: </span><span data-unresolved-link="dev.inmo.micro_utils.coroutines/ExceptionHandler///PointingToDeclaration/">ExceptionHandler</span><span class="token operator">&lt;</span><span class="token keyword"></span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html">Unit</a><span class="token operator">&gt;</span><span class="token operator">?</span><span class="token operator"> = </span>null<span class="token punctuation">, </span></span><span class="parameter ">block<span class="token operator">: </span><a href="index.html#1125173050%2FClasslikes%2F-1982836883">BehaviourContextReceiver</a><span class="token operator">&lt;</span><span class="token keyword"></span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html">Unit</a><span class="token operator">&gt;</span></span></span><span class="token punctuation">)</span><span class="token operator">: </span><a href="-behaviour-context/index.html">BehaviourContext</a></div><div class="brief "><p class="paragraph">Use this method in case you wish to make some additional actions with <a href="build-behaviour.html">flowUpdatesFilter</a>.</p></div></div></div>
</div>
</div>
</div>
</div>
<a data-name="1113907897%2FFunctions%2F-1982836883" anchor-label="buildBehaviourWithFSM" id="1113907897%2FFunctions%2F-1982836883" data-filterable-set=":docs:dokkaHtml/commonMain"></a>
<div class="table-row" data-filterable-current=":docs:dokkaHtml/commonMain" data-filterable-set=":docs:dokkaHtml/commonMain">
<div class="main-subrow keyValue ">
<div class=""><span class="inline-flex">
<div><a href="build-behaviour-with-f-s-m.html"><span>build</span><wbr></wbr><span>Behaviour</span><wbr></wbr><span>With</span><wbr></wbr><span><span>FSM</span></span></a></div>
<span class="anchor-wrapper"><span class="anchor-icon" pointing-to="1113907897%2FFunctions%2F-1982836883"></span>
<div class="copy-popup-wrapper "><span class="copy-popup-icon"></span><span>Link copied to clipboard</span></div>
</span></span></div>
<div>
<div class="title">
<div class="platform-hinted " data-platform-hinted="data-platform-hinted"><div class="content sourceset-dependent-content" data-active="" data-togglable=":docs:dokkaHtml/commonMain"><div class="symbol monospace"><span class="token keyword">suspend </span><span class="token keyword">fun </span><span class="token operator">&lt;</span><span class="token keyword"></span><a href="build-behaviour-with-f-s-m.html">T</a><span class="token operator"> : </span><span data-unresolved-link="dev.inmo.micro_utils.fsm.common/State///PointingToDeclaration/">State</span><span class="token operator">&gt; </span><a href="../dev.inmo.tgbotapi.bot/index.html#-1167693203%2FClasslikes%2F-1982836883">TelegramBot</a><span class="token punctuation">.</span><a href="build-behaviour-with-f-s-m.html"><span class="token function">buildBehaviourWithFSM</span></a><span class="token punctuation">(</span><span class="parameters "><span class="parameter ">flowUpdatesFilter<span class="token operator">: </span><a href="../dev.inmo.tgbotapi.updateshandlers/-flows-updates-filter/index.html">FlowsUpdatesFilter</a><span class="token punctuation">, </span></span><span class="parameter ">scope<span class="token operator">: </span><span data-unresolved-link="kotlinx.coroutines/CoroutineScope///PointingToDeclaration/">CoroutineScope</span><span class="token operator"> = </span>defaultCoroutineScopeProvider()<span class="token punctuation">, </span></span><span class="parameter ">defaultExceptionsHandler<span class="token operator">: </span><span data-unresolved-link="dev.inmo.micro_utils.coroutines/ExceptionHandler///PointingToDeclaration/">ExceptionHandler</span><span class="token operator">&lt;</span><span class="token keyword"></span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html">Unit</a><span class="token operator">&gt;</span><span class="token operator">?</span><span class="token operator"> = </span>null<span class="token punctuation">, </span></span><span class="parameter ">statesManager<span class="token operator">: </span><span data-unresolved-link="dev.inmo.micro_utils.fsm.common/StatesManager///PointingToDeclaration/">StatesManager</span><span class="token operator">&lt;</span><span class="token keyword"></span><a href="build-behaviour-with-f-s-m.html">T</a><span class="token operator">&gt;</span><span class="token operator"> = </span>DefaultStatesManager(InMemoryDefaultStatesManagerRepo())<span class="token punctuation">, </span></span><span class="parameter ">presetHandlers<span class="token operator">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html">List</a><span class="token operator">&lt;</span><span class="token keyword"></span><a href="-behaviour-with-f-s-m-state-handler-holder/index.html">BehaviourWithFSMStateHandlerHolder</a><span class="token operator">&lt;</span><span class="token operator">*</span><span class="token punctuation">, </span><span class="token keyword"></span><a href="build-behaviour-with-f-s-m.html">T</a><span class="token operator">&gt;</span><span class="token operator">&gt;</span><span class="token operator"> = </span>listOf()<span class="token punctuation">, </span></span><span class="parameter ">onStateHandlingErrorHandler<span class="token operator">: </span><span data-unresolved-link="dev.inmo.micro_utils.fsm.common.utils/StateHandlingErrorHandler///PointingToDeclaration/">StateHandlingErrorHandler</span><span class="token operator">&lt;</span><span class="token keyword"></span><a href="build-behaviour-with-f-s-m.html">T</a><span class="token operator">&gt;</span><span class="token operator"> = </span>defaultStateHandlingErrorHandler()<span class="token punctuation">, </span></span><span class="parameter ">block<span class="token operator">: </span><a href="index.html#-1892390839%2FClasslikes%2F-1982836883">CustomBehaviourContextReceiver</a><span class="token operator">&lt;</span><span class="token keyword"></span><a href="-default-behaviour-context-with-f-s-m/index.html">DefaultBehaviourContextWithFSM</a><span class="token operator">&lt;</span><span class="token keyword"></span><a href="build-behaviour-with-f-s-m.html">T</a><span class="token operator">&gt;</span><span class="token punctuation">, </span><span class="token keyword"></span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html">Unit</a><span class="token operator">&gt;</span></span></span><span class="token punctuation">)</span><span class="token operator">: </span><a href="-default-behaviour-context-with-f-s-m/index.html">DefaultBehaviourContextWithFSM</a><span class="token operator">&lt;</span><span class="token keyword"></span><a href="build-behaviour-with-f-s-m.html">T</a><span class="token operator">&gt;</span></div><div class="brief "><p class="paragraph">Creates <a href="-behaviour-context-with-f-s-m/index.html">BehaviourContextWithFSM</a> via creating of <a href="-default-behaviour-context/index.html">DefaultBehaviourContext</a> with <span data-unresolved-link="dev.inmo.tgbotapi.extensions.behaviour_builder//&amp;lt;this&amp;gt;/#/PointingToCallableParameters(-1)/">this</span> as <a href="../dev.inmo.tgbotapi.bot/index.html#-1167693203%2FClasslikes%2F-1982836883">TelegramBot</a>, <a href="build-behaviour-with-f-s-m.html">scope</a> as target scope for that <a href="-default-behaviour-context/index.html">DefaultBehaviourContext</a> and <a href="../dev.inmo.tgbotapi.updateshandlers/-flows-updates-filter/all-updates-flow.html">FlowsUpdatesFilter.allUpdatesFlow</a> of <a href="build-behaviour-with-f-s-m.html">flowUpdatesFilter</a> as <span data-unresolved-link="dev.inmo.tgbotapi.extensions.behaviour_builder/DefaultBehaviourContext/upstreamUpdatesFlow/#/PointingToDeclaration/">DefaultBehaviourContext.upstreamUpdatesFlow</span>. Pass <a href="build-behaviour-with-f-s-m.html">statesManager</a> to customize some internal logic of states changes. Pass <a href="build-behaviour-with-f-s-m.html">presetHandlers</a> in case you have some list of <a href="-behaviour-with-f-s-m-state-handler-holder/index.html">BehaviourWithFSMStateHandlerHolder</a> with presets. Use this method in case you wish to make some additional actions with <a href="build-behaviour-with-f-s-m.html">flowUpdatesFilter</a>.</p></div><div class="symbol monospace"><span class="token keyword">suspend </span><span class="token keyword">fun </span><span class="token operator">&lt;</span><span class="token keyword"></span><a href="build-behaviour-with-f-s-m.html">T</a><span class="token operator"> : </span><span data-unresolved-link="dev.inmo.micro_utils.fsm.common/State///PointingToDeclaration/">State</span><span class="token operator">&gt; </span><a href="../dev.inmo.tgbotapi.bot/index.html#-1167693203%2FClasslikes%2F-1982836883">TelegramBot</a><span class="token punctuation">.</span><a href="build-behaviour-with-f-s-m.html"><span class="token function">buildBehaviourWithFSM</span></a><span class="token punctuation">(</span><span class="parameters "><span class="parameter ">upstreamUpdatesFlow<span class="token operator">: </span><span data-unresolved-link="kotlinx.coroutines.flow/Flow///PointingToDeclaration/">Flow</span><span class="token operator">&lt;</span><span class="token keyword"></span><a href="../dev.inmo.tgbotapi.types.update.abstracts/-update/index.html">Update</a><span class="token operator">&gt;</span><span class="token operator">?</span><span class="token operator"> = </span>null<span class="token punctuation">, </span></span><span class="parameter ">scope<span class="token operator">: </span><span data-unresolved-link="kotlinx.coroutines/CoroutineScope///PointingToDeclaration/">CoroutineScope</span><span class="token operator"> = </span>defaultCoroutineScopeProvider()<span class="token punctuation">, </span></span><span class="parameter ">defaultExceptionsHandler<span class="token operator">: </span><span data-unresolved-link="dev.inmo.micro_utils.coroutines/ExceptionHandler///PointingToDeclaration/">ExceptionHandler</span><span class="token operator">&lt;</span><span class="token keyword"></span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html">Unit</a><span class="token operator">&gt;</span><span class="token operator">?</span><span class="token operator"> = </span>null<span class="token punctuation">, </span></span><span class="parameter ">statesManager<span class="token operator">: </span><span data-unresolved-link="dev.inmo.micro_utils.fsm.common/StatesManager///PointingToDeclaration/">StatesManager</span><span class="token operator">&lt;</span><span class="token keyword"></span><a href="build-behaviour-with-f-s-m.html">T</a><span class="token operator">&gt;</span><span class="token operator"> = </span>DefaultStatesManager(InMemoryDefaultStatesManagerRepo())<span class="token punctuation">, </span></span><span class="parameter ">presetHandlers<span class="token operator">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html">List</a><span class="token operator">&lt;</span><span class="token keyword"></span><a href="-behaviour-with-f-s-m-state-handler-holder/index.html">BehaviourWithFSMStateHandlerHolder</a><span class="token operator">&lt;</span><span class="token operator">*</span><span class="token punctuation">, </span><span class="token keyword"></span><a href="build-behaviour-with-f-s-m.html">T</a><span class="token operator">&gt;</span><span class="token operator">&gt;</span><span class="token operator"> = </span>listOf()<span class="token punctuation">, </span></span><span class="parameter ">onStateHandlingErrorHandler<span class="token operator">: </span><span data-unresolved-link="dev.inmo.micro_utils.fsm.common.utils/StateHandlingErrorHandler///PointingToDeclaration/">StateHandlingErrorHandler</span><span class="token operator">&lt;</span><span class="token keyword"></span><a href="build-behaviour-with-f-s-m.html">T</a><span class="token operator">&gt;</span><span class="token operator"> = </span>defaultStateHandlingErrorHandler()<span class="token punctuation">, </span></span><span class="parameter ">block<span class="token operator">: </span><a href="index.html#-1892390839%2FClasslikes%2F-1982836883">CustomBehaviourContextReceiver</a><span class="token operator">&lt;</span><span class="token keyword"></span><a href="-default-behaviour-context-with-f-s-m/index.html">DefaultBehaviourContextWithFSM</a><span class="token operator">&lt;</span><span class="token keyword"></span><a href="build-behaviour-with-f-s-m.html">T</a><span class="token operator">&gt;</span><span class="token punctuation">, </span><span class="token keyword"></span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html">Unit</a><span class="token operator">&gt;</span></span></span><span class="token punctuation">)</span><span class="token operator">: </span><a href="-default-behaviour-context-with-f-s-m/index.html">DefaultBehaviourContextWithFSM</a><span class="token operator">&lt;</span><span class="token keyword"></span><a href="build-behaviour-with-f-s-m.html">T</a><span class="token operator">&gt;</span></div><div class="brief "><p class="paragraph">Creates <a href="-behaviour-context-with-f-s-m/index.html">BehaviourContextWithFSM</a> via creating of <a href="-default-behaviour-context/index.html">DefaultBehaviourContext</a> with <span data-unresolved-link="dev.inmo.tgbotapi.extensions.behaviour_builder//&amp;lt;this&amp;gt;/#/PointingToCallableParameters(-1)/">this</span> as <a href="../dev.inmo.tgbotapi.bot/index.html#-1167693203%2FClasslikes%2F-1982836883">TelegramBot</a>, <a href="build-behaviour-with-f-s-m.html">scope</a> as target scope for that <a href="-default-behaviour-context/index.html">DefaultBehaviourContext</a> and <a href="build-behaviour-with-f-s-m.html">upstreamUpdatesFlow</a>. Pass <a href="build-behaviour-with-f-s-m.html">statesManager</a> to customize some internal logic of states changes. Pass <a href="build-behaviour-with-f-s-m.html">presetHandlers</a> in case you have some list of <a href="-behaviour-with-f-s-m-state-handler-holder/index.html">BehaviourWithFSMStateHandlerHolder</a> with presets.</p></div></div></div>
</div>
</div>
</div>
</div>
<a data-name="-1854641138%2FFunctions%2F-1982836883" anchor-label="buildBehaviourWithFSMAndStartLongPolling" id="-1854641138%2FFunctions%2F-1982836883" data-filterable-set=":docs:dokkaHtml/commonMain"></a>
<div class="table-row" data-filterable-current=":docs:dokkaHtml/commonMain" data-filterable-set=":docs:dokkaHtml/commonMain">
<div class="main-subrow keyValue ">
<div class=""><span class="inline-flex">
<div><a href="build-behaviour-with-f-s-m-and-start-long-polling.html"><span>build</span><wbr></wbr><span>Behaviour</span><wbr></wbr><span>With</span><wbr></wbr><span>FSMAnd</span><wbr></wbr><span>Start</span><wbr></wbr><span>Long</span><wbr></wbr><span><span>Polling</span></span></a></div>
<span class="anchor-wrapper"><span class="anchor-icon" pointing-to="-1854641138%2FFunctions%2F-1982836883"></span>
<div class="copy-popup-wrapper "><span class="copy-popup-icon"></span><span>Link copied to clipboard</span></div>
</span></span></div>
<div>
<div class="title">
<div class="platform-hinted " data-platform-hinted="data-platform-hinted"><div class="content sourceset-dependent-content" data-active="" data-togglable=":docs:dokkaHtml/commonMain"><div class="symbol monospace"><span class="token keyword">suspend </span><span class="token keyword">fun </span><span class="token operator">&lt;</span><span class="token keyword"></span><a href="build-behaviour-with-f-s-m-and-start-long-polling.html">T</a><span class="token operator"> : </span><span data-unresolved-link="dev.inmo.micro_utils.fsm.common/State///PointingToDeclaration/">State</span><span class="token operator">&gt; </span><a href="../dev.inmo.tgbotapi.bot/index.html#-1167693203%2FClasslikes%2F-1982836883">TelegramBot</a><span class="token punctuation">.</span><a href="build-behaviour-with-f-s-m-and-start-long-polling.html"><span class="token function">buildBehaviourWithFSMAndStartLongPolling</span></a><span class="token punctuation">(</span><span class="parameters "><span class="parameter ">scope<span class="token operator">: </span><span data-unresolved-link="kotlinx.coroutines/CoroutineScope///PointingToDeclaration/">CoroutineScope</span><span class="token operator"> = </span>defaultCoroutineScopeProvider()<span class="token punctuation">, </span></span><span class="parameter ">defaultExceptionsHandler<span class="token operator">: </span><span data-unresolved-link="dev.inmo.micro_utils.coroutines/ExceptionHandler///PointingToDeclaration/">ExceptionHandler</span><span class="token operator">&lt;</span><span class="token keyword"></span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html">Unit</a><span class="token operator">&gt;</span><span class="token operator">?</span><span class="token operator"> = </span>null<span class="token punctuation">, </span></span><span class="parameter ">statesManager<span class="token operator">: </span><span data-unresolved-link="dev.inmo.micro_utils.fsm.common/StatesManager///PointingToDeclaration/">StatesManager</span><span class="token operator">&lt;</span><span class="token keyword"></span><a href="build-behaviour-with-f-s-m-and-start-long-polling.html">T</a><span class="token operator">&gt;</span><span class="token operator"> = </span>DefaultStatesManager(InMemoryDefaultStatesManagerRepo())<span class="token punctuation">, </span></span><span class="parameter ">presetHandlers<span class="token operator">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html">List</a><span class="token operator">&lt;</span><span class="token keyword"></span><a href="-behaviour-with-f-s-m-state-handler-holder/index.html">BehaviourWithFSMStateHandlerHolder</a><span class="token operator">&lt;</span><span class="token operator">*</span><span class="token punctuation">, </span><span class="token keyword"></span><a href="build-behaviour-with-f-s-m-and-start-long-polling.html">T</a><span class="token operator">&gt;</span><span class="token operator">&gt;</span><span class="token operator"> = </span>listOf()<span class="token punctuation">, </span></span><span class="parameter ">onStateHandlingErrorHandler<span class="token operator">: </span><span data-unresolved-link="dev.inmo.micro_utils.fsm.common.utils/StateHandlingErrorHandler///PointingToDeclaration/">StateHandlingErrorHandler</span><span class="token operator">&lt;</span><span class="token keyword"></span><a href="build-behaviour-with-f-s-m-and-start-long-polling.html">T</a><span class="token operator">&gt;</span><span class="token operator"> = </span>defaultStateHandlingErrorHandler()<span class="token punctuation">, </span></span><span class="parameter ">block<span class="token operator">: </span><a href="index.html#-1892390839%2FClasslikes%2F-1982836883">CustomBehaviourContextReceiver</a><span class="token operator">&lt;</span><span class="token keyword"></span><a href="-default-behaviour-context-with-f-s-m/index.html">DefaultBehaviourContextWithFSM</a><span class="token operator">&lt;</span><span class="token keyword"></span><a href="build-behaviour-with-f-s-m-and-start-long-polling.html">T</a><span class="token operator">&gt;</span><span class="token punctuation">, </span><span class="token keyword"></span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html">Unit</a><span class="token operator">&gt;</span></span></span><span class="token punctuation">)</span><span class="token operator">: </span><span data-unresolved-link="kotlinx.coroutines/Job///PointingToDeclaration/">Job</span></div><div class="symbol monospace"><span class="token keyword">suspend </span><span class="token keyword">fun </span><span class="token operator">&lt;</span><span class="token keyword"></span><a href="build-behaviour-with-f-s-m-and-start-long-polling.html">T</a><span class="token operator"> : </span><span data-unresolved-link="dev.inmo.micro_utils.fsm.common/State///PointingToDeclaration/">State</span><span class="token operator">&gt; </span><a href="../dev.inmo.tgbotapi.bot/index.html#-1167693203%2FClasslikes%2F-1982836883">TelegramBot</a><span class="token punctuation">.</span><a href="build-behaviour-with-f-s-m-and-start-long-polling.html"><span class="token function">buildBehaviourWithFSMAndStartLongPolling</span></a><span class="token punctuation">(</span><span class="parameters "><span class="parameter ">upstreamUpdatesFlow<span class="token operator">: </span><span data-unresolved-link="kotlinx.coroutines.flow/Flow///PointingToDeclaration/">Flow</span><span class="token operator">&lt;</span><span class="token keyword"></span><a href="../dev.inmo.tgbotapi.types.update.abstracts/-update/index.html">Update</a><span class="token operator">&gt;</span><span class="token operator">?</span><span class="token operator"> = </span>null<span class="token punctuation">, </span></span><span class="parameter ">scope<span class="token operator">: </span><span data-unresolved-link="kotlinx.coroutines/CoroutineScope///PointingToDeclaration/">CoroutineScope</span><span class="token operator"> = </span>defaultCoroutineScopeProvider()<span class="token punctuation">, </span></span><span class="parameter ">defaultExceptionsHandler<span class="token operator">: </span><span data-unresolved-link="dev.inmo.micro_utils.coroutines/ExceptionHandler///PointingToDeclaration/">ExceptionHandler</span><span class="token operator">&lt;</span><span class="token keyword"></span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html">Unit</a><span class="token operator">&gt;</span><span class="token operator">?</span><span class="token operator"> = </span>null<span class="token punctuation">, </span></span><span class="parameter ">statesManager<span class="token operator">: </span><span data-unresolved-link="dev.inmo.micro_utils.fsm.common/StatesManager///PointingToDeclaration/">StatesManager</span><span class="token operator">&lt;</span><span class="token keyword"></span><a href="build-behaviour-with-f-s-m-and-start-long-polling.html">T</a><span class="token operator">&gt;</span><span class="token operator"> = </span>DefaultStatesManager(InMemoryDefaultStatesManagerRepo())<span class="token punctuation">, </span></span><span class="parameter ">presetHandlers<span class="token operator">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html">List</a><span class="token operator">&lt;</span><span class="token keyword"></span><a href="-behaviour-with-f-s-m-state-handler-holder/index.html">BehaviourWithFSMStateHandlerHolder</a><span class="token operator">&lt;</span><span class="token operator">*</span><span class="token punctuation">, </span><span class="token keyword"></span><a href="build-behaviour-with-f-s-m-and-start-long-polling.html">T</a><span class="token operator">&gt;</span><span class="token operator">&gt;</span><span class="token operator"> = </span>listOf()<span class="token punctuation">, </span></span><span class="parameter ">onStateHandlingErrorHandler<span class="token operator">: </span><span data-unresolved-link="dev.inmo.micro_utils.fsm.common.utils/StateHandlingErrorHandler///PointingToDeclaration/">StateHandlingErrorHandler</span><span class="token operator">&lt;</span><span class="token keyword"></span><a href="build-behaviour-with-f-s-m-and-start-long-polling.html">T</a><span class="token operator">&gt;</span><span class="token operator"> = </span>defaultStateHandlingErrorHandler()<span class="token punctuation">, </span></span><span class="parameter ">block<span class="token operator">: </span><a href="index.html#-1892390839%2FClasslikes%2F-1982836883">CustomBehaviourContextReceiver</a><span class="token operator">&lt;</span><span class="token keyword"></span><a href="-default-behaviour-context-with-f-s-m/index.html">DefaultBehaviourContextWithFSM</a><span class="token operator">&lt;</span><span class="token keyword"></span><a href="build-behaviour-with-f-s-m-and-start-long-polling.html">T</a><span class="token operator">&gt;</span><span class="token punctuation">, </span><span class="token keyword"></span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html">Unit</a><span class="token operator">&gt;</span></span></span><span class="token punctuation">)</span><span class="token operator">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-pair/index.html">Pair</a><span class="token operator">&lt;</span><span class="token keyword"></span><a href="-default-behaviour-context-with-f-s-m/index.html">DefaultBehaviourContextWithFSM</a><span class="token operator">&lt;</span><span class="token keyword"></span><a href="build-behaviour-with-f-s-m-and-start-long-polling.html">T</a><span class="token operator">&gt;</span><span class="token punctuation">, </span><span class="token keyword"></span><span data-unresolved-link="kotlinx.coroutines/Job///PointingToDeclaration/">Job</span><span class="token operator">&gt;</span></div><div class="brief "><p class="paragraph">Use <a href="build-behaviour-with-f-s-m.html">buildBehaviourWithFSM</a> to create <a href="-behaviour-context-with-f-s-m/index.html">BehaviourContextWithFSM</a> and launch getting of updates using <a href="../dev.inmo.tgbotapi.extensions.utils.updates.retrieving/long-polling.html">longPolling</a>. For <a href="../dev.inmo.tgbotapi.extensions.utils.updates.retrieving/long-polling.html">longPolling</a> will be used result <a href="-behaviour-context-with-f-s-m/index.html">BehaviourContextWithFSM</a> for both parameters flowsUpdatesFilter and scope</p></div></div></div>
</div>
</div>
</div>
</div>
<a data-name="-2053773127%2FFunctions%2F-1982836883" anchor-label="buildBehaviourWithLongPolling" id="-2053773127%2FFunctions%2F-1982836883" data-filterable-set=":docs:dokkaHtml/commonMain"></a>
<div class="table-row" data-filterable-current=":docs:dokkaHtml/commonMain" data-filterable-set=":docs:dokkaHtml/commonMain">
<div class="main-subrow keyValue ">
<div class=""><span class="inline-flex">
<div><a href="build-behaviour-with-long-polling.html"><span>build</span><wbr></wbr><span>Behaviour</span><wbr></wbr><span>With</span><wbr></wbr><span>Long</span><wbr></wbr><span><span>Polling</span></span></a></div>
<span class="anchor-wrapper"><span class="anchor-icon" pointing-to="-2053773127%2FFunctions%2F-1982836883"></span>
<div class="copy-popup-wrapper "><span class="copy-popup-icon"></span><span>Link copied to clipboard</span></div>
</span></span></div>
<div>
<div class="title">
<div class="platform-hinted " data-platform-hinted="data-platform-hinted"><div class="content sourceset-dependent-content" data-active="" data-togglable=":docs:dokkaHtml/commonMain"><div class="symbol monospace"><span class="token keyword">suspend </span><span class="token keyword">fun </span><a href="../dev.inmo.tgbotapi.bot/index.html#-1167693203%2FClasslikes%2F-1982836883">TelegramBot</a><span class="token punctuation">.</span><a href="build-behaviour-with-long-polling.html"><span class="token function">buildBehaviourWithLongPolling</span></a><span class="token punctuation">(</span><span class="parameters "><span class="parameter ">scope<span class="token operator">: </span><span data-unresolved-link="kotlinx.coroutines/CoroutineScope///PointingToDeclaration/">CoroutineScope</span><span class="token operator"> = </span>defaultCoroutineScopeProvider()<span class="token punctuation">, </span></span><span class="parameter ">defaultExceptionsHandler<span class="token operator">: </span><span data-unresolved-link="dev.inmo.micro_utils.coroutines/ExceptionHandler///PointingToDeclaration/">ExceptionHandler</span><span class="token operator">&lt;</span><span class="token keyword"></span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html">Unit</a><span class="token operator">&gt;</span><span class="token operator">?</span><span class="token operator"> = </span>null<span class="token punctuation">, </span></span><span class="parameter ">block<span class="token operator">: </span><a href="index.html#1125173050%2FClasslikes%2F-1982836883">BehaviourContextReceiver</a><span class="token operator">&lt;</span><span class="token keyword"></span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html">Unit</a><span class="token operator">&gt;</span></span></span><span class="token punctuation">)</span><span class="token operator">: </span><span data-unresolved-link="kotlinx.coroutines/Job///PointingToDeclaration/">Job</span></div><div class="brief "><p class="paragraph">Use this method to build bot behaviour and run it via long polling. In case you wish to get <a href="../dev.inmo.tgbotapi.updateshandlers/-flows-updates-filter/index.html">FlowsUpdatesFilter</a> for additional manipulations, you must provide external <a href="../dev.inmo.tgbotapi.updateshandlers/-flows-updates-filter/index.html">FlowsUpdatesFilter</a> in other <a href="build-behaviour.html">buildBehaviour</a> function.</p></div></div></div>
</div>
</div>
</div>
</div>
<a data-name="913952816%2FFunctions%2F-1982836883" anchor-label="createSubContext" id="913952816%2FFunctions%2F-1982836883" data-filterable-set=":docs:dokkaHtml/commonMain"></a>
<div class="table-row" data-filterable-current=":docs:dokkaHtml/commonMain" data-filterable-set=":docs:dokkaHtml/commonMain">
<div class="main-subrow keyValue ">
<div class=""><span class="inline-flex">
<div><a href="create-sub-context.html"><span>create</span><wbr></wbr><span>Sub</span><wbr></wbr><span><span>Context</span></span></a></div>
<span class="anchor-wrapper"><span class="anchor-icon" pointing-to="913952816%2FFunctions%2F-1982836883"></span>
<div class="copy-popup-wrapper "><span class="copy-popup-icon"></span><span>Link copied to clipboard</span></div>
</span></span></div>
<div>
<div class="title">
<div class="platform-hinted " data-platform-hinted="data-platform-hinted"><div class="content sourceset-dependent-content" data-active="" data-togglable=":docs:dokkaHtml/commonMain"><div class="symbol monospace"><span class="token keyword"></span><span class="token keyword">fun </span><span class="token operator">&lt;</span><span class="token keyword"></span><a href="create-sub-context.html">BC</a><span class="token operator"> : </span><a href="-behaviour-context/index.html">BehaviourContext</a><span class="token operator">&gt; </span><a href="create-sub-context.html">BC</a><span class="token punctuation">.</span><a href="create-sub-context.html"><span class="token function">createSubContext</span></a><span class="token punctuation">(</span><span class="parameters "><span class="parameter ">scope<span class="token operator">: </span><span data-unresolved-link="kotlinx.coroutines/CoroutineScope///PointingToDeclaration/">CoroutineScope</span><span class="token operator"> = </span>LinkedSupervisorScope()<span class="token punctuation">, </span></span><span class="parameter ">triggersHolder<span class="token operator">: </span><a href="../dev.inmo.tgbotapi.extensions.behaviour_builder.utils.handlers_registrar/-triggers-holder/index.html">TriggersHolder</a><span class="token operator"> = </span>this.triggersHolder<span class="token punctuation">, </span></span><span class="parameter ">updatesUpstreamFlow<span class="token operator">: </span><span data-unresolved-link="kotlinx.coroutines.flow/Flow///PointingToDeclaration/">Flow</span><span class="token operator">&lt;</span><span class="token keyword"></span><a href="../dev.inmo.tgbotapi.types.update.abstracts/-update/index.html">Update</a><span class="token operator">&gt;</span><span class="token operator"> = </span>allUpdatesFlow</span></span><span class="token punctuation">)</span><span class="token operator">: </span><a href="create-sub-context.html">BC</a></div><div class="brief "><p class="paragraph">Creates new <a href="-behaviour-context/index.html">BehaviourContext</a> using its <a href="-behaviour-context/copy.html">BehaviourContext.copy</a> method</p></div></div></div>
</div>
</div>
</div>
</div>
<a data-name="-1355820341%2FFunctions%2F-1982836883" anchor-label="createSubContextAndDoWithUpdatesFilter" id="-1355820341%2FFunctions%2F-1982836883" data-filterable-set=":docs:dokkaHtml/commonMain"></a>
<div class="table-row" data-filterable-current=":docs:dokkaHtml/commonMain" data-filterable-set=":docs:dokkaHtml/commonMain">
<div class="main-subrow keyValue ">
<div class=""><span class="inline-flex">
<div><a href="create-sub-context-and-do-with-updates-filter.html"><span>create</span><wbr></wbr><span>Sub</span><wbr></wbr><span>Context</span><wbr></wbr><span>And</span><wbr></wbr><span>Do</span><wbr></wbr><span>With</span><wbr></wbr><span>Updates</span><wbr></wbr><span><span>Filter</span></span></a></div>
<span class="anchor-wrapper"><span class="anchor-icon" pointing-to="-1355820341%2FFunctions%2F-1982836883"></span>
<div class="copy-popup-wrapper "><span class="copy-popup-icon"></span><span>Link copied to clipboard</span></div>
</span></span></div>
<div>
<div class="title">
<div class="platform-hinted " data-platform-hinted="data-platform-hinted"><div class="content sourceset-dependent-content" data-active="" data-togglable=":docs:dokkaHtml/commonMain"><div class="symbol monospace"><span class="token keyword">suspend </span><span class="token keyword">fun </span><span class="token operator">&lt;</span><span class="token keyword"></span><a href="create-sub-context-and-do-with-updates-filter.html">T</a><span class="token punctuation">, </span><span class="token keyword"></span><a href="create-sub-context-and-do-with-updates-filter.html">BC</a><span class="token operator"> : </span><a href="-behaviour-context/index.html">BehaviourContext</a><span class="token operator">&gt; </span><a href="create-sub-context-and-do-with-updates-filter.html">BC</a><span class="token punctuation">.</span><a href="create-sub-context-and-do-with-updates-filter.html"><span class="token function">createSubContextAndDoWithUpdatesFilter</span></a><span class="token punctuation">(</span><span class="parameters "><span class="parameter ">scope<span class="token operator">: </span><span data-unresolved-link="kotlinx.coroutines/CoroutineScope///PointingToDeclaration/">CoroutineScope</span><span class="token operator"> = </span>LinkedSupervisorScope()<span class="token punctuation">, </span></span><span class="parameter ">triggersHolder<span class="token operator">: </span><a href="../dev.inmo.tgbotapi.extensions.behaviour_builder.utils.handlers_registrar/-triggers-holder/index.html">TriggersHolder</a><span class="token operator"> = </span>this.triggersHolder<span class="token punctuation">, </span></span><span class="parameter ">updatesUpstreamFlow<span class="token operator">: </span><span data-unresolved-link="kotlinx.coroutines.flow/Flow///PointingToDeclaration/">Flow</span><span class="token operator">&lt;</span><span class="token keyword"></span><a href="../dev.inmo.tgbotapi.types.update.abstracts/-update/index.html">Update</a><span class="token operator">&gt;</span><span class="token operator"> = </span>allUpdatesFlow<span class="token punctuation">, </span></span><span class="parameter ">stopOnCompletion<span class="token operator">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html">Boolean</a><span class="token operator"> = </span><span class="token boolean">true</span><span class="token punctuation">, </span></span><span class="parameter ">behaviourContextReceiver<span class="token operator">: </span><a href="index.html#-1892390839%2FClasslikes%2F-1982836883">CustomBehaviourContextReceiver</a><span class="token operator">&lt;</span><span class="token keyword"></span><a href="create-sub-context-and-do-with-updates-filter.html">BC</a><span class="token punctuation">, </span><span class="token keyword"></span><a href="create-sub-context-and-do-with-updates-filter.html">T</a><span class="token operator">&gt;</span></span></span><span class="token punctuation">)</span><span class="token operator">: </span><a href="create-sub-context-and-do-with-updates-filter.html">T</a></div><div class="brief "><p class="paragraph">Creates new one <a href="-behaviour-context/index.html">BehaviourContext</a> using <a href="create-sub-context.html">createSubContext</a> and launches <a href="create-sub-context-and-do-with-updates-filter.html">behaviourContextReceiver</a> in a new context using <a href="do-in-context.html">doInContext</a></p></div></div></div>
</div>
</div>
</div>
</div>
<a data-name="-807112361%2FFunctions%2F-1982836883" anchor-label="CustomBehaviourContextReceiver" id="-807112361%2FFunctions%2F-1982836883" data-filterable-set=":docs:dokkaHtml/commonMain"></a>
<div class="table-row" data-filterable-current=":docs:dokkaHtml/commonMain" data-filterable-set=":docs:dokkaHtml/commonMain">
<div class="main-subrow keyValue ">
<div class=""><span class="inline-flex">
<div><a href="-custom-behaviour-context-receiver.html"><span>Custom</span><wbr></wbr><span>Behaviour</span><wbr></wbr><span>Context</span><wbr></wbr><span><span>Receiver</span></span></a></div>
<span class="anchor-wrapper"><span class="anchor-icon" pointing-to="-807112361%2FFunctions%2F-1982836883"></span>
<div class="copy-popup-wrapper "><span class="copy-popup-icon"></span><span>Link copied to clipboard</span></div>
</span></span></div>
<div>
<div class="title">
<div class="platform-hinted " data-platform-hinted="data-platform-hinted"><div class="content sourceset-dependent-content" data-active="" data-togglable=":docs:dokkaHtml/commonMain"><div class="symbol monospace"><span class="token keyword">inline </span><span class="token keyword">fun </span><span class="token operator">&lt;</span><span class="token keyword"></span><a href="-custom-behaviour-context-receiver.html">BC</a><span class="token punctuation">, </span><span class="token keyword"></span><a href="-custom-behaviour-context-receiver.html">T</a><span class="token operator">&gt; </span><a href="-custom-behaviour-context-receiver.html"><span class="token function">CustomBehaviourContextReceiver</span></a><span class="token punctuation">(</span><span class="parameters "><span class="parameter "><span class="token keyword">noinline </span>block<span class="token operator">: </span><a href="index.html#-1892390839%2FClasslikes%2F-1982836883">CustomBehaviourContextReceiver</a><span class="token operator">&lt;</span><span class="token keyword"></span><a href="-custom-behaviour-context-receiver.html">BC</a><span class="token punctuation">, </span><span class="token keyword"></span><a href="-custom-behaviour-context-receiver.html">T</a><span class="token operator">&gt;</span></span></span><span class="token punctuation">)</span><span class="token operator">: </span><span class="token keyword">suspend </span><span class="token keyword"></span><a href="-custom-behaviour-context-receiver.html">BC</a><span class="token punctuation">.</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token operator"> -&gt; </span><span class="token keyword"></span><a href="-custom-behaviour-context-receiver.html">T</a></div></div></div>
</div>
</div>
</div>
</div>
<a data-name="-911054810%2FFunctions%2F-1982836883" anchor-label="doInContext" id="-911054810%2FFunctions%2F-1982836883" data-filterable-set=":docs:dokkaHtml/commonMain"></a>
<div class="table-row" data-filterable-current=":docs:dokkaHtml/commonMain" data-filterable-set=":docs:dokkaHtml/commonMain">
<div class="main-subrow keyValue ">
<div class=""><span class="inline-flex">
<div><a href="do-in-context.html"><span>do</span><wbr></wbr><span>In</span><wbr></wbr><span><span>Context</span></span></a></div>
<span class="anchor-wrapper"><span class="anchor-icon" pointing-to="-911054810%2FFunctions%2F-1982836883"></span>
<div class="copy-popup-wrapper "><span class="copy-popup-icon"></span><span>Link copied to clipboard</span></div>
</span></span></div>
<div>
<div class="title">
<div class="platform-hinted " data-platform-hinted="data-platform-hinted"><div class="content sourceset-dependent-content" data-active="" data-togglable=":docs:dokkaHtml/commonMain"><div class="symbol monospace"><span class="token keyword">suspend </span><span class="token keyword">fun </span><span class="token operator">&lt;</span><span class="token keyword"></span><a href="do-in-context.html">T</a><span class="token punctuation">, </span><span class="token keyword"></span><a href="do-in-context.html">BC</a><span class="token operator"> : </span><a href="-behaviour-context/index.html">BehaviourContext</a><span class="token operator">&gt; </span><a href="do-in-context.html">BC</a><span class="token punctuation">.</span><a href="do-in-context.html"><span class="token function">doInContext</span></a><span class="token punctuation">(</span><span class="parameters "><span class="parameter ">stopOnCompletion<span class="token operator">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html">Boolean</a><span class="token operator"> = </span><span class="token boolean">false</span><span class="token punctuation">, </span></span><span class="parameter ">behaviourContextReceiver<span class="token operator">: </span><a href="index.html#-1892390839%2FClasslikes%2F-1982836883">CustomBehaviourContextReceiver</a><span class="token operator">&lt;</span><span class="token keyword"></span><a href="do-in-context.html">BC</a><span class="token punctuation">, </span><span class="token keyword"></span><a href="do-in-context.html">T</a><span class="token operator">&gt;</span></span></span><span class="token punctuation">)</span><span class="token operator">: </span><a href="do-in-context.html">T</a></div><div class="brief "><p class="paragraph">Launch <a href="do-in-context.html">behaviourContextReceiver</a> in context of <span data-unresolved-link="dev.inmo.tgbotapi.extensions.behaviour_builder//&amp;lt;this&amp;gt;/#/PointingToCallableParameters(-1)/">this</span> as <a href="-behaviour-context/index.html">BehaviourContext</a> and as <a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.coroutines/-coroutine-context/index.html">kotlin.coroutines.CoroutineContext</a></p></div></div></div>
</div>
</div>
</div>
</div>
<a data-name="-1350944384%2FFunctions%2F-1982836883" anchor-label="oneOf" id="-1350944384%2FFunctions%2F-1982836883" data-filterable-set=":docs:dokkaHtml/commonMain"></a>
<div class="table-row" data-filterable-current=":docs:dokkaHtml/commonMain" data-filterable-set=":docs:dokkaHtml/commonMain">
<div class="main-subrow keyValue ">
<div class=""><span class="inline-flex">
<div><a href="one-of.html"><span>one</span><wbr></wbr><span><span>Of</span></span></a></div>
<span class="anchor-wrapper"><span class="anchor-icon" pointing-to="-1350944384%2FFunctions%2F-1982836883"></span>
<div class="copy-popup-wrapper "><span class="copy-popup-icon"></span><span>Link copied to clipboard</span></div>
</span></span></div>
<div>
<div class="title">
<div class="platform-hinted " data-platform-hinted="data-platform-hinted"><div class="content sourceset-dependent-content" data-active="" data-togglable=":docs:dokkaHtml/commonMain"><div class="symbol monospace"><span class="token keyword">suspend </span><span class="token keyword">fun </span><span class="token operator">&lt;</span><span class="token keyword"></span><a href="one-of.html">O</a><span class="token operator">&gt; </span><a href="-behaviour-context/index.html">BehaviourContext</a><span class="token punctuation">.</span><a href="one-of.html"><span class="token function">oneOf</span></a><span class="token punctuation">(</span><span class="parameters "><span class="parameter "><span class="token keyword">vararg </span>deferredActions<span class="token operator">: </span><span data-unresolved-link="kotlinx.coroutines/Deferred///PointingToDeclaration/">Deferred</span><span class="token operator">&lt;</span><span class="token keyword"></span><a href="one-of.html">O</a><span class="token operator">&gt;</span></span></span><span class="token punctuation">)</span><span class="token operator">: </span><a href="one-of.html">O</a></div><div class="symbol monospace"><span class="token keyword">suspend </span><span class="token keyword">fun </span><span class="token operator">&lt;</span><span class="token keyword"></span><a href="one-of.html">O</a><span class="token operator">&gt; </span><a href="-behaviour-context/index.html">BehaviourContext</a><span class="token punctuation">.</span><a href="one-of.html"><span class="token function">oneOf</span></a><span class="token punctuation">(</span><span class="parameters "><span class="parameter ">deferredActions<span class="token operator">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-iterable/index.html">Iterable</a><span class="token operator">&lt;</span><span class="token keyword"></span><span data-unresolved-link="kotlinx.coroutines/Deferred///PointingToDeclaration/">Deferred</span><span class="token operator">&lt;</span><span class="token keyword"></span><a href="one-of.html">O</a><span class="token operator">&gt;</span><span class="token operator">&gt;</span></span></span><span class="token punctuation">)</span><span class="token operator">: </span><a href="one-of.html">O</a></div></div></div>
</div>
</div>
</div>
</div>
<a data-name="1133370546%2FFunctions%2F-1982836883" anchor-label="oneOfActions" id="1133370546%2FFunctions%2F-1982836883" data-filterable-set=":docs:dokkaHtml/commonMain"></a>
<div class="table-row" data-filterable-current=":docs:dokkaHtml/commonMain" data-filterable-set=":docs:dokkaHtml/commonMain">
<div class="main-subrow keyValue ">
<div class=""><span class="inline-flex">
<div><a href="one-of-actions.html"><span>one</span><wbr></wbr><span>Of</span><wbr></wbr><span><span>Actions</span></span></a></div>
<span class="anchor-wrapper"><span class="anchor-icon" pointing-to="1133370546%2FFunctions%2F-1982836883"></span>
<div class="copy-popup-wrapper "><span class="copy-popup-icon"></span><span>Link copied to clipboard</span></div>
</span></span></div>
<div>
<div class="title">
<div class="platform-hinted " data-platform-hinted="data-platform-hinted"><div class="content sourceset-dependent-content" data-active="" data-togglable=":docs:dokkaHtml/commonMain"><div class="symbol monospace"><span class="token keyword">suspend </span><span class="token keyword">fun </span><span class="token operator">&lt;</span><span class="token keyword"></span><a href="one-of-actions.html">O</a><span class="token operator">&gt; </span><a href="-behaviour-context/index.html">BehaviourContext</a><span class="token punctuation">.</span><a href="one-of-actions.html"><span class="token function">oneOfActions</span></a><span class="token punctuation">(</span><span class="parameters "><span class="parameter "><span class="token keyword">vararg </span>deferredActions<span class="token operator">: </span><span data-unresolved-link="dev.inmo.micro_utils.coroutines/DeferredAction///PointingToDeclaration/">DeferredAction</span><span class="token operator">&lt;</span><span class="token operator">*</span><span class="token punctuation">, </span><span class="token keyword"></span><a href="one-of-actions.html">O</a><span class="token operator">&gt;</span></span></span><span class="token punctuation">)</span><span class="token operator">: </span><a href="one-of-actions.html">O</a></div><div class="symbol monospace"><span class="token keyword">suspend </span><span class="token keyword">fun </span><span class="token operator">&lt;</span><span class="token keyword"></span><a href="one-of-actions.html">O</a><span class="token operator">&gt; </span><a href="-behaviour-context/index.html">BehaviourContext</a><span class="token punctuation">.</span><a href="one-of-actions.html"><span class="token function">oneOfActions</span></a><span class="token punctuation">(</span><span class="parameters "><span class="parameter ">deferredActions<span class="token operator">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-iterable/index.html">Iterable</a><span class="token operator">&lt;</span><span class="token keyword"></span><span data-unresolved-link="dev.inmo.micro_utils.coroutines/DeferredAction///PointingToDeclaration/">DeferredAction</span><span class="token operator">&lt;</span><span class="token operator">*</span><span class="token punctuation">, </span><span class="token keyword"></span><a href="one-of-actions.html">O</a><span class="token operator">&gt;</span><span class="token operator">&gt;</span></span></span><span class="token punctuation">)</span><span class="token operator">: </span><a href="one-of-actions.html">O</a></div></div></div>
</div>
</div>
</div>
</div>
<a data-name="-962940286%2FFunctions%2F-1982836883" anchor-label="onStateOrSubstate" id="-962940286%2FFunctions%2F-1982836883" data-filterable-set=":docs:dokkaHtml/commonMain"></a>
<div class="table-row" data-filterable-current=":docs:dokkaHtml/commonMain" data-filterable-set=":docs:dokkaHtml/commonMain">
<div class="main-subrow keyValue ">
<div class=""><span class="inline-flex">
<div><a href="on-state-or-substate.html"><span>on</span><wbr></wbr><span>State</span><wbr></wbr><span>Or</span><wbr></wbr><span><span>Substate</span></span></a></div>
<span class="anchor-wrapper"><span class="anchor-icon" pointing-to="-962940286%2FFunctions%2F-1982836883"></span>
<div class="copy-popup-wrapper "><span class="copy-popup-icon"></span><span>Link copied to clipboard</span></div>
</span></span></div>
<div>
<div class="title">
<div class="platform-hinted " data-platform-hinted="data-platform-hinted"><div class="content sourceset-dependent-content" data-active="" data-togglable=":docs:dokkaHtml/commonMain"><div class="symbol monospace"><span class="token keyword">inline </span><span class="token keyword">fun </span><span class="token operator">&lt;</span><span class="token keyword"></span><a href="on-state-or-substate.html">I</a><span class="token operator"> : </span><a href="on-state-or-substate.html">O</a><span class="token punctuation">, </span><span class="token keyword"></span><a href="on-state-or-substate.html">O</a><span class="token operator"> : </span><span data-unresolved-link="dev.inmo.micro_utils.fsm.common/State///PointingToDeclaration/">State</span><span class="token operator">&gt; </span><a href="-behaviour-context-with-f-s-m/index.html">BehaviourContextWithFSM</a><span class="token operator">&lt;</span><span class="token keyword"></span><a href="on-state-or-substate.html">O</a><span class="token operator">&gt;</span><span class="token punctuation">.</span><a href="on-state-or-substate.html"><span class="token function">onStateOrSubstate</span></a><span class="token punctuation">(</span><span class="parameters "><span class="parameter ">handler<span class="token operator">: </span><a href="-behaviour-with-f-s-m-state-handler/index.html">BehaviourWithFSMStateHandler</a><span class="token operator">&lt;</span><span class="token keyword"></span><a href="on-state-or-substate.html">I</a><span class="token punctuation">, </span><span class="token keyword"></span><a href="on-state-or-substate.html">O</a><span class="token operator">&gt;</span></span></span><span class="token punctuation">)</span></div><div class="brief "><p class="paragraph">Add NON STRICT <a href="on-state-or-substate.html">handler</a> to list of available in future <a href="-behaviour-context-with-f-s-m/index.html">BehaviourContextWithFSM</a>. Non strict means that for input <span data-unresolved-link="dev.inmo.micro_utils.fsm.common/State///PointingToDeclaration/">State</span> will be used <a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.reflect/-k-class/is-instance.html">KClass.isInstance</a> and any inheritor of kClass will pass this requirement</p></div></div></div>
</div>
</div>
</div>
</div>
<a data-name="-1371839354%2FFunctions%2F-1982836883" anchor-label="parallel" id="-1371839354%2FFunctions%2F-1982836883" data-filterable-set=":docs:dokkaHtml/commonMain"></a>
<div class="table-row" data-filterable-current=":docs:dokkaHtml/commonMain" data-filterable-set=":docs:dokkaHtml/commonMain">
<div class="main-subrow keyValue ">
<div class=""><span class="inline-flex">
<div><a href="parallel.html"><span><span>parallel</span></span></a></div>
<span class="anchor-wrapper"><span class="anchor-icon" pointing-to="-1371839354%2FFunctions%2F-1982836883"></span>
<div class="copy-popup-wrapper "><span class="copy-popup-icon"></span><span>Link copied to clipboard</span></div>
</span></span></div>
<div>
<div class="title">
<div class="platform-hinted " data-platform-hinted="data-platform-hinted"><div class="content sourceset-dependent-content" data-active="" data-togglable=":docs:dokkaHtml/commonMain"><div class="symbol monospace"><span class="token keyword">suspend </span><span class="token keyword">fun </span><span class="token operator">&lt;</span><span class="token keyword"></span><a href="parallel.html">T</a><span class="token operator">&gt; </span><a href="-behaviour-context/index.html">BehaviourContext</a><span class="token punctuation">.</span><a href="parallel.html"><span class="token function">parallel</span></a><span class="token punctuation">(</span><span class="parameters "><span class="parameter ">action<span class="token operator">: </span><a href="index.html#1125173050%2FClasslikes%2F-1982836883">BehaviourContextReceiver</a><span class="token operator">&lt;</span><span class="token keyword"></span><a href="parallel.html">T</a><span class="token operator">&gt;</span></span></span><span class="token punctuation">)</span><span class="token operator">: </span><span data-unresolved-link="kotlinx.coroutines/Deferred///PointingToDeclaration/">Deferred</span><span class="token operator">&lt;</span><span class="token keyword"></span><a href="parallel.html">T</a><span class="token operator">&gt;</span></div></div></div>
</div>
</div>
</div>
</div>
<a data-name="67254337%2FFunctions%2F-1982836883" anchor-label="stop" id="67254337%2FFunctions%2F-1982836883" data-filterable-set=":docs:dokkaHtml/commonMain"></a>
<div class="table-row" data-filterable-current=":docs:dokkaHtml/commonMain" data-filterable-set=":docs:dokkaHtml/commonMain">
<div class="main-subrow keyValue ">
<div class=""><span class="inline-flex">
<div><a href="stop.html"><span><span>stop</span></span></a></div>
<span class="anchor-wrapper"><span class="anchor-icon" pointing-to="67254337%2FFunctions%2F-1982836883"></span>
<div class="copy-popup-wrapper "><span class="copy-popup-icon"></span><span>Link copied to clipboard</span></div>
</span></span></div>
<div>
<div class="title">
<div class="platform-hinted " data-platform-hinted="data-platform-hinted"><div class="content sourceset-dependent-content" data-active="" data-togglable=":docs:dokkaHtml/commonMain"><div class="symbol monospace"><span class="token keyword"></span><span class="token keyword">fun </span><a href="-behaviour-context/index.html">BehaviourContext</a><span class="token punctuation">.</span><a href="stop.html"><span class="token function">stop</span></a><span class="token punctuation">(</span><span class="token punctuation">)</span></div><div class="brief "><p class="paragraph">This method will cancel ALL subsequent contexts, expectations and waiters</p></div></div></div>
</div>
</div>
</div>
</div>
<a data-name="2139316995%2FFunctions%2F-1982836883" anchor-label="strictlyOn" id="2139316995%2FFunctions%2F-1982836883" data-filterable-set=":docs:dokkaHtml/commonMain"></a>
<div class="table-row" data-filterable-current=":docs:dokkaHtml/commonMain" data-filterable-set=":docs:dokkaHtml/commonMain">
<div class="main-subrow keyValue ">
<div class=""><span class="inline-flex">
<div><a href="strictly-on.html"><span>strictly</span><wbr></wbr><span><span>On</span></span></a></div>
<span class="anchor-wrapper"><span class="anchor-icon" pointing-to="2139316995%2FFunctions%2F-1982836883"></span>
<div class="copy-popup-wrapper "><span class="copy-popup-icon"></span><span>Link copied to clipboard</span></div>
</span></span></div>
<div>
<div class="title">
<div class="platform-hinted " data-platform-hinted="data-platform-hinted"><div class="content sourceset-dependent-content" data-active="" data-togglable=":docs:dokkaHtml/commonMain"><div class="symbol monospace"><span class="token keyword">inline </span><span class="token keyword">fun </span><span class="token operator">&lt;</span><span class="token keyword"></span><a href="strictly-on.html">I</a><span class="token operator"> : </span><a href="strictly-on.html">O</a><span class="token punctuation">, </span><span class="token keyword"></span><a href="strictly-on.html">O</a><span class="token operator"> : </span><span data-unresolved-link="dev.inmo.micro_utils.fsm.common/State///PointingToDeclaration/">State</span><span class="token operator">&gt; </span><a href="-behaviour-context-with-f-s-m/index.html">BehaviourContextWithFSM</a><span class="token operator">&lt;</span><span class="token keyword"></span><a href="strictly-on.html">O</a><span class="token operator">&gt;</span><span class="token punctuation">.</span><a href="strictly-on.html"><span class="token function">strictlyOn</span></a><span class="token punctuation">(</span><span class="parameters "><span class="parameter ">handler<span class="token operator">: </span><a href="-behaviour-with-f-s-m-state-handler/index.html">BehaviourWithFSMStateHandler</a><span class="token operator">&lt;</span><span class="token keyword"></span><a href="strictly-on.html">I</a><span class="token punctuation">, </span><span class="token keyword"></span><a href="strictly-on.html">O</a><span class="token operator">&gt;</span></span></span><span class="token punctuation">)</span></div><div class="brief "><p class="paragraph">Add STRICT <a href="strictly-on.html">handler</a> to list of available in future <a href="-behaviour-context-with-f-s-m/index.html">BehaviourContextWithFSM</a>. Strict means that for input <span data-unresolved-link="dev.inmo.micro_utils.fsm.common/State///PointingToDeclaration/">State</span> will be used <span data-unresolved-link="dev.inmo.micro_utils.fsm.common/State///PointingToDeclaration/">State</span>::class == kClass and any <span data-unresolved-link="dev.inmo.micro_utils.fsm.common/State///PointingToDeclaration/">State</span> with exactly the same type will pass requirements</p></div></div></div>
</div>
</div>
</div>
</div>
<a data-name="-1347808479%2FFunctions%2F-1982836883" anchor-label="telegramBotWithBehaviour" id="-1347808479%2FFunctions%2F-1982836883" data-filterable-set=":docs:dokkaHtml/commonMain"></a>
<div class="table-row" data-filterable-current=":docs:dokkaHtml/commonMain" data-filterable-set=":docs:dokkaHtml/commonMain">
<div class="main-subrow keyValue ">
<div class=""><span class="inline-flex">
<div><a href="telegram-bot-with-behaviour.html"><span>telegram</span><wbr></wbr><span>Bot</span><wbr></wbr><span>With</span><wbr></wbr><span><span>Behaviour</span></span></a></div>
<span class="anchor-wrapper"><span class="anchor-icon" pointing-to="-1347808479%2FFunctions%2F-1982836883"></span>
<div class="copy-popup-wrapper "><span class="copy-popup-icon"></span><span>Link copied to clipboard</span></div>
</span></span></div>
<div>
<div class="title">
<div class="platform-hinted " data-platform-hinted="data-platform-hinted"><div class="content sourceset-dependent-content" data-active="" data-togglable=":docs:dokkaHtml/commonMain"><div class="symbol monospace"><span class="token keyword">suspend </span><span class="token keyword">fun </span><a href="telegram-bot-with-behaviour.html"><span class="token function">telegramBotWithBehaviour</span></a><span class="token punctuation">(</span><span class="parameters "><span class="parameter ">token<span class="token operator">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html">String</a><span class="token punctuation">, </span></span><span class="parameter ">flowsUpdatesFilter<span class="token operator">: </span><a href="../dev.inmo.tgbotapi.updateshandlers/-flows-updates-filter/index.html">FlowsUpdatesFilter</a><span class="token operator"> = </span>FlowsUpdatesFilter()<span class="token punctuation">, </span></span><span class="parameter ">scope<span class="token operator">: </span><span data-unresolved-link="kotlinx.coroutines/CoroutineScope///PointingToDeclaration/">CoroutineScope</span><span class="token operator">?</span><span class="token operator"> = </span>null<span class="token punctuation">, </span></span><span class="parameter ">apiUrl<span class="token operator">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html">String</a><span class="token operator"> = </span>telegramBotAPIDefaultUrl<span class="token punctuation">, </span></span><span class="parameter ">builder<span class="token operator">: </span><span class="token keyword"></span><a href="../dev.inmo.tgbotapi.bot.ktor/-ktor-requests-executor-builder/index.html">KtorRequestsExecutorBuilder</a><span class="token punctuation">.</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token operator"> -&gt; </span><span class="token keyword"></span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html">Unit</a><span class="token operator"> = </span>{}<span class="token punctuation">, </span></span><span class="parameter ">defaultExceptionsHandler<span class="token operator">: </span><span data-unresolved-link="dev.inmo.micro_utils.coroutines/ExceptionHandler///PointingToDeclaration/">ExceptionHandler</span><span class="token operator">&lt;</span><span class="token keyword"></span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html">Unit</a><span class="token operator">&gt;</span><span class="token operator">?</span><span class="token operator"> = </span>null<span class="token punctuation">, </span></span><span class="parameter ">testServer<span class="token operator">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html">Boolean</a><span class="token operator"> = </span><span class="token boolean">false</span><span class="token punctuation">, </span></span><span class="parameter ">block<span class="token operator">: </span><a href="index.html#1125173050%2FClasslikes%2F-1982836883">BehaviourContextReceiver</a><span class="token operator">&lt;</span><span class="token keyword"></span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html">Unit</a><span class="token operator">&gt;</span></span></span><span class="token punctuation">)</span><span class="token operator">: </span><a href="../dev.inmo.tgbotapi.bot/index.html#-1167693203%2FClasslikes%2F-1982836883">TelegramBot</a></div><div class="brief "><p class="paragraph">Create bot using <a href="../dev.inmo.tgbotapi.bot.ktor/telegram-bot.html">telegramBot</a> and start listening for updates using <a href="build-behaviour.html">buildBehaviour</a>. Use this method in case you wish to make some additional actions with <a href="telegram-bot-with-behaviour.html">flowsUpdatesFilter</a>.</p></div></div></div>
</div>
</div>
</div>
</div>
<a data-name="-612824731%2FFunctions%2F-1982836883" anchor-label="telegramBotWithBehaviourAndFSM" id="-612824731%2FFunctions%2F-1982836883" data-filterable-set=":docs:dokkaHtml/commonMain"></a>
<div class="table-row" data-filterable-current=":docs:dokkaHtml/commonMain" data-filterable-set=":docs:dokkaHtml/commonMain">
<div class="main-subrow keyValue ">
<div class=""><span class="inline-flex">
<div><a href="telegram-bot-with-behaviour-and-f-s-m.html"><span>telegram</span><wbr></wbr><span>Bot</span><wbr></wbr><span>With</span><wbr></wbr><span>Behaviour</span><wbr></wbr><span>And</span><wbr></wbr><span><span>FSM</span></span></a></div>
<span class="anchor-wrapper"><span class="anchor-icon" pointing-to="-612824731%2FFunctions%2F-1982836883"></span>
<div class="copy-popup-wrapper "><span class="copy-popup-icon"></span><span>Link copied to clipboard</span></div>
</span></span></div>
<div>
<div class="title">
<div class="platform-hinted " data-platform-hinted="data-platform-hinted"><div class="content sourceset-dependent-content" data-active="" data-togglable=":docs:dokkaHtml/commonMain"><div class="symbol monospace"><span class="token keyword">suspend </span><span class="token keyword">fun </span><span class="token operator">&lt;</span><span class="token keyword"></span><a href="telegram-bot-with-behaviour-and-f-s-m.html">T</a><span class="token operator"> : </span><span data-unresolved-link="dev.inmo.micro_utils.fsm.common/State///PointingToDeclaration/">State</span><span class="token operator">&gt; </span><a href="telegram-bot-with-behaviour-and-f-s-m.html"><span class="token function">telegramBotWithBehaviourAndFSM</span></a><span class="token punctuation">(</span><span class="parameters "><span class="parameter ">token<span class="token operator">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html">String</a><span class="token punctuation">, </span></span><span class="parameter ">flowsUpdatesFilter<span class="token operator">: </span><a href="../dev.inmo.tgbotapi.updateshandlers/-flows-updates-filter/index.html">FlowsUpdatesFilter</a><span class="token punctuation">, </span></span><span class="parameter ">scope<span class="token operator">: </span><span data-unresolved-link="kotlinx.coroutines/CoroutineScope///PointingToDeclaration/">CoroutineScope</span><span class="token operator">?</span><span class="token operator"> = </span>null<span class="token punctuation">, </span></span><span class="parameter ">apiUrl<span class="token operator">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html">String</a><span class="token operator"> = </span>telegramBotAPIDefaultUrl<span class="token punctuation">, </span></span><span class="parameter ">builder<span class="token operator">: </span><span class="token keyword"></span><a href="../dev.inmo.tgbotapi.bot.ktor/-ktor-requests-executor-builder/index.html">KtorRequestsExecutorBuilder</a><span class="token punctuation">.</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token operator"> -&gt; </span><span class="token keyword"></span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html">Unit</a><span class="token operator"> = </span>{}<span class="token punctuation">, </span></span><span class="parameter ">defaultExceptionsHandler<span class="token operator">: </span><span data-unresolved-link="dev.inmo.micro_utils.coroutines/ExceptionHandler///PointingToDeclaration/">ExceptionHandler</span><span class="token operator">&lt;</span><span class="token keyword"></span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html">Unit</a><span class="token operator">&gt;</span><span class="token operator">?</span><span class="token operator"> = </span>null<span class="token punctuation">, </span></span><span class="parameter ">statesManager<span class="token operator">: </span><span data-unresolved-link="dev.inmo.micro_utils.fsm.common/StatesManager///PointingToDeclaration/">StatesManager</span><span class="token operator">&lt;</span><span class="token keyword"></span><a href="telegram-bot-with-behaviour-and-f-s-m.html">T</a><span class="token operator">&gt;</span><span class="token operator"> = </span>DefaultStatesManager(InMemoryDefaultStatesManagerRepo())<span class="token punctuation">, </span></span><span class="parameter ">presetHandlers<span class="token operator">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html">List</a><span class="token operator">&lt;</span><span class="token keyword"></span><a href="-behaviour-with-f-s-m-state-handler-holder/index.html">BehaviourWithFSMStateHandlerHolder</a><span class="token operator">&lt;</span><span class="token operator">*</span><span class="token punctuation">, </span><span class="token keyword"></span><a href="telegram-bot-with-behaviour-and-f-s-m.html">T</a><span class="token operator">&gt;</span><span class="token operator">&gt;</span><span class="token operator"> = </span>listOf()<span class="token punctuation">, </span></span><span class="parameter ">testServer<span class="token operator">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html">Boolean</a><span class="token operator"> = </span><span class="token boolean">false</span><span class="token punctuation">, </span></span><span class="parameter ">onStateHandlingErrorHandler<span class="token operator">: </span><span data-unresolved-link="dev.inmo.micro_utils.fsm.common.utils/StateHandlingErrorHandler///PointingToDeclaration/">StateHandlingErrorHandler</span><span class="token operator">&lt;</span><span class="token keyword"></span><a href="telegram-bot-with-behaviour-and-f-s-m.html">T</a><span class="token operator">&gt;</span><span class="token operator"> = </span>defaultStateHandlingErrorHandler()<span class="token punctuation">, </span></span><span class="parameter ">block<span class="token operator">: </span><a href="index.html#-1892390839%2FClasslikes%2F-1982836883">CustomBehaviourContextReceiver</a><span class="token operator">&lt;</span><span class="token keyword"></span><a href="-default-behaviour-context-with-f-s-m/index.html">DefaultBehaviourContextWithFSM</a><span class="token operator">&lt;</span><span class="token keyword"></span><a href="telegram-bot-with-behaviour-and-f-s-m.html">T</a><span class="token operator">&gt;</span><span class="token punctuation">, </span><span class="token keyword"></span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html">Unit</a><span class="token operator">&gt;</span></span></span><span class="token punctuation">)</span><span class="token operator">: </span><a href="../dev.inmo.tgbotapi.bot/index.html#-1167693203%2FClasslikes%2F-1982836883">TelegramBot</a></div><div class="brief "><p class="paragraph">Create bot using <a href="../dev.inmo.tgbotapi.bot.ktor/telegram-bot.html">telegramBot</a> and start listening for updates using <a href="build-behaviour-with-f-s-m.html">buildBehaviourWithFSM</a>. Use this method in case you wish to make some additional actions with <a href="telegram-bot-with-behaviour-and-f-s-m.html">flowsUpdatesFilter</a>.</p></div></div></div>
</div>
</div>
</div>
</div>
<a data-name="-654061336%2FFunctions%2F-1982836883" anchor-label="telegramBotWithBehaviourAndFSMAndStartLongPolling" id="-654061336%2FFunctions%2F-1982836883" data-filterable-set=":docs:dokkaHtml/commonMain"></a>
<div class="table-row" data-filterable-current=":docs:dokkaHtml/commonMain" data-filterable-set=":docs:dokkaHtml/commonMain">
<div class="main-subrow keyValue ">
<div class=""><span class="inline-flex">
<div><a href="telegram-bot-with-behaviour-and-f-s-m-and-start-long-polling.html"><span>telegram</span><wbr></wbr><span>Bot</span><wbr></wbr><span>With</span><wbr></wbr><span>Behaviour</span><wbr></wbr><span>And</span><wbr></wbr><span>FSMAnd</span><wbr></wbr><span>Start</span><wbr></wbr><span>Long</span><wbr></wbr><span><span>Polling</span></span></a></div>
<span class="anchor-wrapper"><span class="anchor-icon" pointing-to="-654061336%2FFunctions%2F-1982836883"></span>
<div class="copy-popup-wrapper "><span class="copy-popup-icon"></span><span>Link copied to clipboard</span></div>
</span></span></div>
<div>
<div class="title">
<div class="platform-hinted " data-platform-hinted="data-platform-hinted"><div class="content sourceset-dependent-content" data-active="" data-togglable=":docs:dokkaHtml/commonMain"><div class="symbol monospace"><span class="token keyword">suspend </span><span class="token keyword">fun </span><span class="token operator">&lt;</span><span class="token keyword"></span><a href="telegram-bot-with-behaviour-and-f-s-m-and-start-long-polling.html">T</a><span class="token operator"> : </span><span data-unresolved-link="dev.inmo.micro_utils.fsm.common/State///PointingToDeclaration/">State</span><span class="token operator">&gt; </span><a href="telegram-bot-with-behaviour-and-f-s-m-and-start-long-polling.html"><span class="token function">telegramBotWithBehaviourAndFSMAndStartLongPolling</span></a><span class="token punctuation">(</span><span class="parameters "><span class="parameter ">token<span class="token operator">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html">String</a><span class="token punctuation">, </span></span><span class="parameter ">scope<span class="token operator">: </span><span data-unresolved-link="kotlinx.coroutines/CoroutineScope///PointingToDeclaration/">CoroutineScope</span><span class="token operator">?</span><span class="token operator"> = </span>null<span class="token punctuation">, </span></span><span class="parameter ">apiUrl<span class="token operator">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html">String</a><span class="token operator"> = </span>telegramBotAPIDefaultUrl<span class="token punctuation">, </span></span><span class="parameter ">builder<span class="token operator">: </span><span class="token keyword"></span><a href="../dev.inmo.tgbotapi.bot.ktor/-ktor-requests-executor-builder/index.html">KtorRequestsExecutorBuilder</a><span class="token punctuation">.</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token operator"> -&gt; </span><span class="token keyword"></span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html">Unit</a><span class="token operator"> = </span>{}<span class="token punctuation">, </span></span><span class="parameter ">defaultExceptionsHandler<span class="token operator">: </span><span data-unresolved-link="dev.inmo.micro_utils.coroutines/ExceptionHandler///PointingToDeclaration/">ExceptionHandler</span><span class="token operator">&lt;</span><span class="token keyword"></span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html">Unit</a><span class="token operator">&gt;</span><span class="token operator">?</span><span class="token operator"> = </span>null<span class="token punctuation">, </span></span><span class="parameter ">statesManager<span class="token operator">: </span><span data-unresolved-link="dev.inmo.micro_utils.fsm.common/StatesManager///PointingToDeclaration/">StatesManager</span><span class="token operator">&lt;</span><span class="token keyword"></span><a href="telegram-bot-with-behaviour-and-f-s-m-and-start-long-polling.html">T</a><span class="token operator">&gt;</span><span class="token operator"> = </span>DefaultStatesManager(InMemoryDefaultStatesManagerRepo())<span class="token punctuation">, </span></span><span class="parameter ">presetHandlers<span class="token operator">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html">List</a><span class="token operator">&lt;</span><span class="token keyword"></span><a href="-behaviour-with-f-s-m-state-handler-holder/index.html">BehaviourWithFSMStateHandlerHolder</a><span class="token operator">&lt;</span><span class="token operator">*</span><span class="token punctuation">, </span><span class="token keyword"></span><a href="telegram-bot-with-behaviour-and-f-s-m-and-start-long-polling.html">T</a><span class="token operator">&gt;</span><span class="token operator">&gt;</span><span class="token operator"> = </span>listOf()<span class="token punctuation">, </span></span><span class="parameter ">testServer<span class="token operator">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html">Boolean</a><span class="token operator"> = </span><span class="token boolean">false</span><span class="token punctuation">, </span></span><span class="parameter ">onStateHandlingErrorHandler<span class="token operator">: </span><span data-unresolved-link="dev.inmo.micro_utils.fsm.common.utils/StateHandlingErrorHandler///PointingToDeclaration/">StateHandlingErrorHandler</span><span class="token operator">&lt;</span><span class="token keyword"></span><a href="telegram-bot-with-behaviour-and-f-s-m-and-start-long-polling.html">T</a><span class="token operator">&gt;</span><span class="token operator"> = </span>defaultStateHandlingErrorHandler()<span class="token punctuation">, </span></span><span class="parameter ">block<span class="token operator">: </span><a href="index.html#-1892390839%2FClasslikes%2F-1982836883">CustomBehaviourContextReceiver</a><span class="token operator">&lt;</span><span class="token keyword"></span><a href="-default-behaviour-context-with-f-s-m/index.html">DefaultBehaviourContextWithFSM</a><span class="token operator">&lt;</span><span class="token keyword"></span><a href="telegram-bot-with-behaviour-and-f-s-m-and-start-long-polling.html">T</a><span class="token operator">&gt;</span><span class="token punctuation">, </span><span class="token keyword"></span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html">Unit</a><span class="token operator">&gt;</span></span></span><span class="token punctuation">)</span><span class="token operator">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-pair/index.html">Pair</a><span class="token operator">&lt;</span><span class="token keyword"></span><a href="../dev.inmo.tgbotapi.bot/index.html#-1167693203%2FClasslikes%2F-1982836883">TelegramBot</a><span class="token punctuation">, </span><span class="token keyword"></span><span data-unresolved-link="kotlinx.coroutines/Job///PointingToDeclaration/">Job</span><span class="token operator">&gt;</span></div><div class="brief "><p class="paragraph">Create bot using <a href="../dev.inmo.tgbotapi.bot.ktor/telegram-bot.html">telegramBot</a> and start listening for updates using <a href="build-behaviour-with-f-s-m-and-start-long-polling.html">buildBehaviourWithFSMAndStartLongPolling</a>. This method will launch updates retrieving via long polling inside of <a href="build-behaviour-with-f-s-m-and-start-long-polling.html">buildBehaviourWithFSMAndStartLongPolling</a></p></div></div></div>
</div>
</div>
</div>
</div>
<a data-name="229154588%2FFunctions%2F-1982836883" anchor-label="telegramBotWithBehaviourAndLongPolling" id="229154588%2FFunctions%2F-1982836883" data-filterable-set=":docs:dokkaHtml/commonMain"></a>
<div class="table-row" data-filterable-current=":docs:dokkaHtml/commonMain" data-filterable-set=":docs:dokkaHtml/commonMain">
<div class="main-subrow keyValue ">
<div class=""><span class="inline-flex">
<div><a href="telegram-bot-with-behaviour-and-long-polling.html"><span>telegram</span><wbr></wbr><span>Bot</span><wbr></wbr><span>With</span><wbr></wbr><span>Behaviour</span><wbr></wbr><span>And</span><wbr></wbr><span>Long</span><wbr></wbr><span><span>Polling</span></span></a></div>
<span class="anchor-wrapper"><span class="anchor-icon" pointing-to="229154588%2FFunctions%2F-1982836883"></span>
<div class="copy-popup-wrapper "><span class="copy-popup-icon"></span><span>Link copied to clipboard</span></div>
</span></span></div>
<div>
<div class="title">
<div class="platform-hinted " data-platform-hinted="data-platform-hinted"><div class="content sourceset-dependent-content" data-active="" data-togglable=":docs:dokkaHtml/commonMain"><div class="symbol monospace"><span class="token keyword">suspend </span><span class="token keyword">fun </span><a href="telegram-bot-with-behaviour-and-long-polling.html"><span class="token function">telegramBotWithBehaviourAndLongPolling</span></a><span class="token punctuation">(</span><span class="parameters "><span class="parameter ">token<span class="token operator">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html">String</a><span class="token punctuation">, </span></span><span class="parameter ">scope<span class="token operator">: </span><span data-unresolved-link="kotlinx.coroutines/CoroutineScope///PointingToDeclaration/">CoroutineScope</span><span class="token operator">?</span><span class="token operator"> = </span>null<span class="token punctuation">, </span></span><span class="parameter ">apiUrl<span class="token operator">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html">String</a><span class="token operator"> = </span>telegramBotAPIDefaultUrl<span class="token punctuation">, </span></span><span class="parameter ">builder<span class="token operator">: </span><span class="token keyword"></span><a href="../dev.inmo.tgbotapi.bot.ktor/-ktor-requests-executor-builder/index.html">KtorRequestsExecutorBuilder</a><span class="token punctuation">.</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token operator"> -&gt; </span><span class="token keyword"></span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html">Unit</a><span class="token operator"> = </span>{}<span class="token punctuation">, </span></span><span class="parameter ">defaultExceptionsHandler<span class="token operator">: </span><span data-unresolved-link="dev.inmo.micro_utils.coroutines/ExceptionHandler///PointingToDeclaration/">ExceptionHandler</span><span class="token operator">&lt;</span><span class="token keyword"></span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html">Unit</a><span class="token operator">&gt;</span><span class="token operator">?</span><span class="token operator"> = </span>null<span class="token punctuation">, </span></span><span class="parameter ">testServer<span class="token operator">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html">Boolean</a><span class="token operator"> = </span><span class="token boolean">false</span><span class="token punctuation">, </span></span><span class="parameter ">block<span class="token operator">: </span><a href="index.html#1125173050%2FClasslikes%2F-1982836883">BehaviourContextReceiver</a><span class="token operator">&lt;</span><span class="token keyword"></span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html">Unit</a><span class="token operator">&gt;</span></span></span><span class="token punctuation">)</span><span class="token operator">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-pair/index.html">Pair</a><span class="token operator">&lt;</span><span class="token keyword"></span><a href="../dev.inmo.tgbotapi.bot/index.html#-1167693203%2FClasslikes%2F-1982836883">TelegramBot</a><span class="token punctuation">, </span><span class="token keyword"></span><span data-unresolved-link="kotlinx.coroutines/Job///PointingToDeclaration/">Job</span><span class="token operator">&gt;</span></div><div class="brief "><p class="paragraph">Create bot using <a href="../dev.inmo.tgbotapi.bot.ktor/telegram-bot.html">telegramBot</a> and start listening for updates using <a href="build-behaviour-with-long-polling.html">buildBehaviourWithLongPolling</a>. Use this method in case you wish to make some additional actions with flowsUpdatesFilter.</p></div></div></div>
</div>
</div>
</div>
</div>
<a data-name="484953640%2FFunctions%2F-1982836883" anchor-label="withAction" id="484953640%2FFunctions%2F-1982836883" data-filterable-set=":docs:dokkaHtml/commonMain"></a>
<div class="table-row" data-filterable-current=":docs:dokkaHtml/commonMain" data-filterable-set=":docs:dokkaHtml/commonMain">
<div class="main-subrow keyValue ">
<div class=""><span class="inline-flex">
<div><a href="with-action.html"><span>with</span><wbr></wbr><span><span>Action</span></span></a></div>
<span class="anchor-wrapper"><span class="anchor-icon" pointing-to="484953640%2FFunctions%2F-1982836883"></span>
<div class="copy-popup-wrapper "><span class="copy-popup-icon"></span><span>Link copied to clipboard</span></div>
</span></span></div>
<div>
<div class="title">
<div class="platform-hinted " data-platform-hinted="data-platform-hinted"><div class="content sourceset-dependent-content" data-active="" data-togglable=":docs:dokkaHtml/commonMain"><div class="symbol monospace"><span class="token keyword">infix inline </span><span class="token keyword">fun </span><span class="token operator">&lt;</span><span class="token keyword"></span><a href="with-action.html">T</a><span class="token punctuation">, </span><span class="token keyword"></span><a href="with-action.html">O</a><span class="token operator">&gt; </span><span data-unresolved-link="kotlinx.coroutines/Deferred///PointingToDeclaration/">Deferred</span><span class="token operator">&lt;</span><span class="token keyword"></span><a href="with-action.html">T</a><span class="token operator">&gt;</span><span class="token punctuation">.</span><a href="with-action.html"><span class="token function">withAction</span></a><span class="token punctuation">(</span><span class="parameters "><span class="parameter "><span class="token keyword">noinline </span>callback<span class="token operator">: </span><span class="token keyword">suspend </span><span class="token punctuation">(</span><span class="token keyword"></span><a href="with-action.html">T</a><span class="token punctuation">)</span><span class="token operator"> -&gt; </span><span class="token keyword"></span><a href="with-action.html">O</a></span></span><span class="token punctuation">)</span><span class="token operator">: </span><span data-unresolved-link="dev.inmo.micro_utils.coroutines/DeferredAction///PointingToDeclaration/">DeferredAction</span><span class="token operator">&lt;</span><span class="token keyword"></span><a href="with-action.html">T</a><span class="token punctuation">, </span><span class="token keyword"></span><a href="with-action.html">O</a><span class="token operator">&gt;</span></div></div></div>
</div>
</div>
</div>
</div>
</div>
<h2 class="">Properties</h2>
<div class="table" data-togglable="Properties"><a data-name="1805865768%2FProperties%2F134499397" anchor-label="defaultCoroutineScopeProvider" id="1805865768%2FProperties%2F134499397" data-filterable-set=":docs:dokkaHtml/commonMain :docs:dokkaHtml/jsMain :docs:dokkaHtml/jvmMain"></a>
<div class="table-row" data-filterable-current=":docs:dokkaHtml/commonMain :docs:dokkaHtml/jsMain :docs:dokkaHtml/jvmMain" data-filterable-set=":docs:dokkaHtml/commonMain :docs:dokkaHtml/jsMain :docs:dokkaHtml/jvmMain">
<div class="main-subrow keyValue ">
<div class=""><span class="inline-flex">
<div><a href="default-coroutine-scope-provider.html"><span>default</span><wbr></wbr><span>Coroutine</span><wbr></wbr><span>Scope</span><wbr></wbr><span><span>Provider</span></span></a></div>
<span class="anchor-wrapper"><span class="anchor-icon" pointing-to="1805865768%2FProperties%2F134499397"></span>
<div class="copy-popup-wrapper "><span class="copy-popup-icon"></span><span>Link copied to clipboard</span></div>
</span></span></div>
<div>
<div class="title">
<div class="platform-hinted with-platform-tabs" data-platform-hinted="data-platform-hinted" data-togglable="Properties">
<div class="platform-bookmarks-row" data-toggle-list="data-toggle-list"><button class="platform-bookmark" data-filterable-current=":docs:dokkaHtml/commonMain" data-filterable-set=":docs:dokkaHtml/commonMain" data-active="" data-toggle=":docs:dokkaHtml/commonMain">common</button><button class="platform-bookmark" data-filterable-current=":docs:dokkaHtml/jsMain" data-filterable-set=":docs:dokkaHtml/jsMain" data-toggle=":docs:dokkaHtml/jsMain">js</button><button class="platform-bookmark" data-filterable-current=":docs:dokkaHtml/jvmMain" data-filterable-set=":docs:dokkaHtml/jvmMain" data-toggle=":docs:dokkaHtml/jvmMain">jvm</button></div>
<div class="content sourceset-dependent-content" data-active="" data-togglable=":docs:dokkaHtml/commonMain"><a data-name="1805865768%2FProperties%2F134499397" anchor-label="defaultCoroutineScopeProvider" id="1805865768%2FProperties%2F134499397" data-filterable-set=":docs:dokkaHtml/commonMain :docs:dokkaHtml/jsMain :docs:dokkaHtml/jvmMain"></a><div class="symbol monospace"><span class="token keyword">expect </span><span class="token keyword"></span><span class="token keyword">var </span><a href="default-coroutine-scope-provider.html">defaultCoroutineScopeProvider</a><span class="token operator">: </span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token operator"> -&gt; </span><span class="token keyword"></span><span data-unresolved-link="kotlinx.coroutines/CoroutineScope///PointingToDeclaration/">CoroutineScope</span></div><div class="brief "><a data-name="1805865768%2FProperties%2F-1982836883" anchor-label="defaultCoroutineScopeProvider" id="1805865768%2FProperties%2F-1982836883" data-filterable-set=":docs:dokkaHtml/commonMain"></a><p class="paragraph">This function is used in <a href="build-behaviour.html">buildBehaviour</a> extensions to provide default <span data-unresolved-link="kotlinx.coroutines/CoroutineScope///PointingToDeclaration/">CoroutineScope</span> and allow to avoid all unnecessary parameters except of block</p></div></div><div class="content sourceset-dependent-content" data-togglable=":docs:dokkaHtml/jsMain"><a data-name="1805865768%2FProperties%2F134499397" anchor-label="defaultCoroutineScopeProvider" id="1805865768%2FProperties%2F134499397" data-filterable-set=":docs:dokkaHtml/commonMain :docs:dokkaHtml/jsMain :docs:dokkaHtml/jvmMain"></a><div class="symbol monospace"><span class="token keyword">actual </span><span class="token keyword"></span><span class="token keyword">var </span><a href="default-coroutine-scope-provider.html">defaultCoroutineScopeProvider</a><span class="token operator">: </span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token operator"> -&gt; </span><span class="token keyword"></span><span data-unresolved-link="kotlinx.coroutines/CoroutineScope///PointingToDeclaration/">CoroutineScope</span></div></div><div class="content sourceset-dependent-content" data-togglable=":docs:dokkaHtml/jvmMain"><a data-name="1805865768%2FProperties%2F134499397" anchor-label="defaultCoroutineScopeProvider" id="1805865768%2FProperties%2F134499397" data-filterable-set=":docs:dokkaHtml/commonMain :docs:dokkaHtml/jsMain :docs:dokkaHtml/jvmMain"></a><div class="symbol monospace"><span class="token keyword">actual </span><span class="token keyword"></span><span class="token keyword">var </span><a href="default-coroutine-scope-provider.html">defaultCoroutineScopeProvider</a><span class="token operator">: </span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token operator"> -&gt; </span><span class="token keyword"></span><span data-unresolved-link="kotlinx.coroutines/CoroutineScope///PointingToDeclaration/">CoroutineScope</span></div></div> </div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="footer">
<span class="go-to-top-icon"><a href="#content" id="go-to-top-link"></a></span><span>© 2022 Copyright</span><span
class="pull-right"><span>Generated by </span><a
href="https://github.com/Kotlin/dokka"><span>dokka</span><span class="padded-icon"></span></a></span>
</div>
</div>
</div>
</body>
</html>