mirror of
https://github.com/InsanusMokrassar/TelegramBotAPI.git
synced 2026-06-04 06:37:21 +00:00
guest message answers rework
This commit is contained in:
@@ -0,0 +1,17 @@
|
||||
package dev.inmo.tgbotapi.extensions.behaviour_builder.expectations
|
||||
|
||||
import dev.inmo.tgbotapi.extensions.behaviour_builder.BehaviourContext
|
||||
import dev.inmo.tgbotapi.extensions.utils.guestMessageUpdateOrNull
|
||||
import dev.inmo.tgbotapi.requests.abstracts.Request
|
||||
import dev.inmo.tgbotapi.types.message.abstracts.RequestGuestContentMessage
|
||||
import kotlinx.coroutines.flow.Flow
|
||||
|
||||
fun BehaviourContext.waitGuestRequestMessage(
|
||||
initRequest: Request<*>? = null,
|
||||
errorFactory: NullableRequestBuilder<*> = { null }
|
||||
): Flow<RequestGuestContentMessage<*>> = expectFlow(
|
||||
initRequest,
|
||||
errorFactory
|
||||
) {
|
||||
(it.guestMessageUpdateOrNull() ?.data).let(::listOfNotNull)
|
||||
}
|
||||
@@ -16,7 +16,7 @@ import dev.inmo.tgbotapi.types.update.abstracts.Update
|
||||
* @param [markerFactory] **Pass null to handle requests fully parallel**. Will be used to identify different "stream".
|
||||
* @param scenarioReceiver Main callback which will be used to handle incoming data if [initialFilter] will pass that data
|
||||
*/
|
||||
fun <BC : BehaviourContext> BC.onGuestMessage(
|
||||
fun <BC : BehaviourContext> BC.onGuestRequestMessage(
|
||||
initialFilter: SimpleFilter<RequestGuestContentMessage<*>>? = null,
|
||||
subcontextUpdatesFilter: CustomBehaviourContextAndTwoTypesReceiver<BC, Boolean, RequestGuestContentMessage<*>, Update>? = null,
|
||||
markerFactory: MarkerFactory<in RequestGuestContentMessage<*>, Any>? = ByChatMessageMarkerFactory,
|
||||
|
||||
Reference in New Issue
Block a user