TelegramBots/telegrambots-chat-session-bot
2018-06-08 23:12:34 +03:00
..
src/main/java/org/telegram/telegrambots/session Support callback query 2018-06-08 23:12:34 +03:00
pom.xml Add TelegramLongPollingSessionBot with session support 2018-06-07 20:43:41 +03:00
README.md Add TelegramLongPollingSessionBot with session support 2018-06-07 20:43:41 +03:00

abilitybots

Build Status Jitpack JavaDoc Telegram ghit.me

Usage

Maven

    <dependency>
        <groupId>org.telegram</groupId>
        <artifactId>telegrambots-chat-session-bot</artifactId>
        <version>3.6.1</version>
    </dependency>

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