клавиатура и коллбэк телеграм java

Всем салют.Самоучка по Java,пишу примитивного бота.Никак не получается подружится с инлайн клавой,И коллбэками. Есть грамотные люди,которые могу розъяснить толком ,что не так?Api 5.1.0,JAva 11.

Код метода onUpdateReceived и sendInlineKeyBoardMessage взят отсюда

Cтрока :

 "execute(new SendMessage().setText("

СТрока :

keyboardButtonsRow1.add(newInlineKeyboardButton().setText("Fi4a").setCallbackData("CallFi4a"));

Имеет текст ошибки ниже :

Cannot invoke setChatId(Long) on the primitive type void

Строка :

 return new SendMessage().setChatId(chatId).setText("Пример").setReplyMarkup(inlineKeyboardMarkup);

Текст ошибки:

The method setChatId(String) in the type SendMessage is not applicable for the arguments (long)

Пожалуйста,помогите нормально разобратся с коллбеками.Прошлый раз я на этом месте застрял и забил.Понимаю,что это несоответствие библиотек с кодом.БУду благодарен хотя бы за банальную правку кода,или того лучше,самый банальный пример с работающим коллбэком,на api 5.1.0. Так же буду благодарен за гайды,по библиотеке 5.1.0,ибо в своем большинстве,статьи в интернете устаревшие.Спасибо зарание!

Класс bot


import java.util.ArrayList;
import java.util.List;

import org.telegram.telegrambots.bots.TelegramLongPollingBot;
import org.telegram.telegrambots.meta.api.methods.send.SendMessage;
import org.telegram.telegrambots.meta.api.objects.Update;
import org.telegram.telegrambots.meta.api.objects.replykeyboard.InlineKeyboardMarkup;
import org.telegram.telegrambots.meta.api.objects.replykeyboard.buttons.InlineKeyboardButton;
import org.telegram.telegrambots.meta.exceptions.TelegramApiException;


public class Bot extends TelegramLongPollingBot {

    /**
     * Метод для приема сообщений.
     * @param update Содержит сообщение от пользователя.
     */
     @Override
        public void onUpdateReceived(Update update) {
            if(update.hasMessage()){
                if(update.getMessage().hasText()){
                    if(update.getMessage().getText().equals("Hello")){
                        try {
                            execute(sendInlineKeyBoardMessage(update.getMessage().getChatId()));
                        } catch (TelegramApiException e) {
                            e.printStackTrace();
                        }
                    }
                }
            }else if(update.hasCallbackQuery()){
                try {
                    execute(new SendMessage().setText(
                            update.getCallbackQuery().getData())
                            .setChatId(update.getCallbackQuery().getMessage().getChatId()));
                } catch (TelegramApiException e) {
                    e.printStackTrace();
                }
            }
        }
    
    /**
     * Метод для настройки сообщения и его отправки.
     * @param chatId id чата
     * @param s Строка, которую необходимот отправить в качестве сообщения.
     */
    public synchronized void sendMsg(String chatId, String s) {
        SendMessage sendMessage = new SendMessage();
        sendMessage.enableMarkdown(true);
       sendMessage.setChatId(chatId);
        sendMessage.setText("Message");
        try {
            execute(sendMessage);
        } catch (TelegramApiException e) {
             System.out.println(e);
             

        }
    }
    public synchronized void sendMsg1(String chatId, String s) {
        SendMessage sendMessage = new SendMessage();
        sendMessage.enableMarkdown(true);
       sendMessage.setChatId(chatId);
        sendMessage.setText("Работаю");
        try {
            execute(sendMessage);
        } catch (TelegramApiException e) {
             System.out.println(e);
             

        }
    }
    public static SendMessage sendInlineKeyBoardMessage(long chatId) {
        InlineKeyboardMarkup inlineKeyboardMarkup = new InlineKeyboardMarkup();
        InlineKeyboardButton inlineKeyboardButton1 = new InlineKeyboardButton();
        InlineKeyboardButton inlineKeyboardButton2 = new InlineKeyboardButton();
        inlineKeyboardButton1.setText("Тык");
        inlineKeyboardButton1.setCallbackData("Button \"Тык\" has been pressed");
        inlineKeyboardButton2.setText("Тык2");
        inlineKeyboardButton2.setCallbackData("Button \"Тык2\" has been pressed");
        List<InlineKeyboardButton> keyboardButtonsRow1 = new ArrayList<>();
        List<InlineKeyboardButton> keyboardButtonsRow2 = new ArrayList<>();
        keyboardButtonsRow1.add(inlineKeyboardButton1);
        keyboardButtonsRow1.add(new InlineKeyboardButton().setText("Fi4a").setCallbackData("CallFi4a"));
        keyboardButtonsRow2.add(inlineKeyboardButton2);
        List<List<InlineKeyboardButton>> rowList = new ArrayList<>();
        rowList.add(keyboardButtonsRow1);
        rowList.add(keyboardButtonsRow2);
        inlineKeyboardMarkup.setKeyboard(rowList);
        return new SendMessage().setChatId(chatId).setText("Пример").setReplyMarkup(inlineKeyboardMarkup);
       }
    /**
     * Метод возвращает имя бота, указанное при регистрации.
     * @return имя бота
     */
    @Override
    public String getBotUsername() {
        return "МойБот";
    }

    /**
     * Метод возвращает token бота для связи с сервером Telegram
     * @return token для бота
     */
    @Override
    public String getBotToken() {
        return "token";
    }

    
}

Code class main :


package com.poortoys.examples;

import org.telegram.telegrambots.meta.TelegramBotsApi;
import org.telegram.telegrambots.meta.exceptions.TelegramApiException;
import org.telegram.telegrambots.updatesreceivers.DefaultBotSession;

public class AppMain {
    public static void main(String[] args) {
         
                try {
                    TelegramBotsApi botsApi = new TelegramBotsApi(DefaultBotSession.class);
                    botsApi.registerBot(new Bot());
             
                } catch (TelegramApiException e) {
                    System.out.println(e);
                }
            }
    }


Ответы (0 шт):