onDataCallbackQuery

fun <BC : BehaviourContext> BC.onDataCallbackQuery(initialFilter: SimpleFilter<<Error class: unknown class>>? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver<BC, Boolean, <Error class: unknown class>, <Error class: unknown class>>? = CallbackQueryFilterByUser, markerFactory: MarkerFactory<in <Error class: unknown class>, Any>? = ByUserCallbackQueryMarkerFactory, additionalSubcontextInitialAction: CustomBehaviourContextAndTwoTypesReceiver<BC, Unit, <Error class: unknown class>, <Error class: unknown class>>? = null, scenarioReceiver: CustomBehaviourContextAndTypeReceiver<BC, Unit, <Error class: unknown class>>): Job

Parameters

initialFilter

This filter will be called to remove unnecessary data BEFORE scenarioReceiver call

subcontextUpdatesFilter
markerFactory

Pass null to handle requests fully parallel. Will be used to identify different "stream". scenarioReceiver will be called synchronously in one "stream". Output of markerFactory will be used as a key for "stream"

scenarioReceiver

Main callback which will be used to handle incoming data if initialFilter will pass that data


fun <BC : BehaviourContext> BC.onDataCallbackQuery(dataRegex: <Error class: unknown class>, initialFilter: SimpleFilter<<Error class: unknown class>>? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver<BC, Boolean, <Error class: unknown class>, <Error class: unknown class>>? = CallbackQueryFilterByUser, markerFactory: MarkerFactory<in <Error class: unknown class>, Any>? = ByUserCallbackQueryMarkerFactory, additionalSubcontextInitialAction: CustomBehaviourContextAndTwoTypesReceiver<BC, Unit, <Error class: unknown class>, <Error class: unknown class>>? = null, scenarioReceiver: CustomBehaviourContextAndTypeReceiver<BC, Unit, <Error class: unknown class>>): Job

Parameters

dataRegex

Will be used with initialFilter as initialFilter for upstream onDataCallbackQuery to filter DataCallbackQuery with String.matches to dataRegex

initialFilter

This filter will be called to remove unnecessary data BEFORE scenarioReceiver call

subcontextUpdatesFilter
markerFactory

Pass null to handle requests fully parallel. Will be used to identify different "stream". scenarioReceiver will be called synchronously in one "stream". Output of markerFactory will be used as a key for "stream"

scenarioReceiver

Main callback which will be used to handle incoming data if initialFilter will pass that data


fun <BC : BehaviourContext> BC.onDataCallbackQuery(data: String, initialFilter: SimpleFilter<<Error class: unknown class>>? = null, subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver<BC, Boolean, <Error class: unknown class>, <Error class: unknown class>>? = CallbackQueryFilterByUser, markerFactory: MarkerFactory<in <Error class: unknown class>, Any>? = ByUserCallbackQueryMarkerFactory, additionalSubcontextInitialAction: CustomBehaviourContextAndTwoTypesReceiver<BC, Unit, <Error class: unknown class>, <Error class: unknown class>>? = null, scenarioReceiver: CustomBehaviourContextAndTypeReceiver<BC, Unit, <Error class: unknown class>>): <Error class: unknown class>

Parameters

data

Will be converted to Regex via its constructor and pass it to upstream onDataCallbackQuery

initialFilter

This filter will be called to remove unnecessary data BEFORE scenarioReceiver call

subcontextUpdatesFilter
markerFactory

Pass null to handle requests fully parallel. Will be used to identify different "stream". scenarioReceiver will be called synchronously in one "stream". Output of markerFactory will be used as a key for "stream"

scenarioReceiver

Main callback which will be used to handle incoming data if initialFilter will pass that data