Как отправить местное фото в бот Telegram для Java - PullRequest
0 голосов
/ 23 октября 2018

У меня есть задача: нужно отправить фотографию с моей локальной папкой в ​​бот telegram.

Условие:

Я использую эту библиотеку https://github.com/rubenlagus/TelegramBots

В файле Pom:

 <repositories>
    <repository>
        <id>jitpack.io</id>
        <url>https://jitpack.io</url>
    </repository>
</repositories>

<dependencies>
    <dependency>
        <groupId>com.github.rubenlagus</groupId>
        <artifactId>TelegramBots</artifactId>
        <version>4.1</version>
    </dependency>

Как создать метод отправки?

Я пытался сделать это:

public void sendInTelegram() {
    try {
        TelegramLongPollingBot telegramLongPollingBot = new TelegramLongPollingBot() {
            @Override
            public String getBotToken() {
                return "My_Token";
            }

            @Override
            public void onUpdateReceived(Update update) {
                try {
                    SendPhoto message = new SendPhoto().setPhoto("SomeText", new FileInputStream(new File("/root/index.png")));
                    this.sendPhoto(message);

                } catch (FileNotFoundException e) {
                    e.printStackTrace();
                }
            }

            @Override
            public String getBotUsername() {
                return "my_bot";
            }
        };
    } catch (Exception e) {
        logger.error("Send in Telegram fail");
        Assert.fail("Send in Telegram fail");
    }

но his.sendPhoto (message);sendPhoto не разрешено введите описание изображения здесь

Скажите, пожалуйста, что недостаточно, чтобы я мог отправить фотографию?

1 Ответ

0 голосов
/ 02 мая 2019

Используйте execute, а не sendPhoto:

SendPhoto message = new SendPhoto().setPhoto("SomeText", new FileInputStream(new File("/root/index.png")));
this.execute(message);
...