summaryrefslogtreecommitdiff
path: root/src/main/java/files/App.java
blob: c0e1919a12ffe6fbd71f933275bdea6d96e09e8d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
package files;

import com.pengrad.telegrambot.TelegramBot;
import com.pengrad.telegrambot.UpdatesListener;
import com.pengrad.telegrambot.request.SendMessage;

import files.entity.User;

import javax.persistence.EntityManager;
import javax.persistence.EntityManagerFactory;
import javax.persistence.Persistence;
import java.io.FileInputStream;
import java.io.IOException;
import java.util.HashMap;
import java.util.Map;
import java.util.Properties;

public class App {
    public static void main(String[] args) throws IOException {

        Properties properties = new Properties();
        properties.load(new FileInputStream("app.properties"));
        TelegramBot bot = new TelegramBot(properties.getProperty("telegram_token"));

        EntityManagerFactory entityManagerFactory = Persistence.createEntityManagerFactory("animarfo");
        EntityManager manager = entityManagerFactory.createEntityManager();

        bot.setUpdatesListener(updates -> {
            updates.forEach(update -> {
                Long telegramId = update.message().from().id();
                if(manager.find(User.class, telegramId) == null) {
                    bot.execute(new SendMessage(update.message().chat().id(), "Привет!"));

                    User user = new User(telegramId);
                    manager.getTransaction().begin();
                    manager.merge(user);
                    manager.getTransaction().commit();
                }
                bot.execute(new SendMessage(update.message().chat().id(), telegramId.toString()));
            });
            return UpdatesListener.CONFIRMED_UPDATES_ALL;
        });
//        manager.close();
//        entityManagerFactory.close();
    }
}