Действия (Actions)
Действия (Actions) предоставляют типобезопасный способ задавать обработчики для инлайн кнопок.
Использование
Объявление
Действия должны быть @Serializable и реализовывать Action.
@Serializable
data class SampleAction(
val someId: Long
) : Action
Отправка кнопки
Чтобы отправить кнопку с действием, можно воспользоваться функцией actionButton внутри блока message.
message {
text(…) {
row {
actionButton("Какая-то кнопка", SampleAction(2))
}
}
}
Обработчики
Чтобы обработать нажатие кнопки с действием, можно воспользоваться одним из следующих способов:
- Без CallbackQuery
- on<SampleAction> { action -> … }
- С CallbackQuery
- on<Pair<SampleAction, MessageDataCallbackQuery>> { (action, query) -> … }
Last modified: 24 August 2023