1.6 KiB
1.6 KiB
Usage
Maven
<dependency>
<groupId>org.telegram</groupId>
<artifactId>telegrambots-chat-session-bot</artifactId>
<version>5.4.0.1</version>
</dependency>
Gradle
implementation 'org.telegram:telegrambots-chat-session-bot:5.4.0.1'
Motivation
Implementation of bot dialogs require saving some data about current state of conversation. That brings us to idea of chat session management.
How to use
Chat session bot
was implemented by using Shiro Apache
session manager.
That allow to manage and store sessions.
To create default Long Polling Session Bot with in-memory store,
you need simply implement TelegramLongPollingSessionBot
public class ExampleBotWithSession extends TelegramLongPollingSessionBot {
@Override
public void onUpdateReceived(Update update, Optional<Session> optionalSession) {
//Do some action with update and session
}
@Override
public String getBotUsername() {
return "ExampleBotWithSessionBot";
}
@Override
public String getBotToken() {
return "1234";
}
}
Where session is implementation of org.apache.shiro.session.Session