Class TelegramBotService
java.lang.Object
com.bytedesk.social.telegram.config.TelegramBotService
TelegramBotService 用于初始化和管理Telegram机器人
使用TelegramEntity中的token作为bot token
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final List<org.telegram.telegrambots.longpolling.BotSession>
private final IMessageSendService
private final org.telegram.telegrambots.longpolling.TelegramBotsLongPollingApplication
private final TelegramRestService
private final UidUtils
private final UploadRestService
private final VisitorRestService
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate TelegramDefaultConsumer
createBotConsumer
(TelegramEntity telegramEntity) 为每个机器人创建独立的消费者实例void
init()
Spring 容器初始化后自动执行初始化机器人操作void
初始化所有已配置的Telegram机器人private org.telegram.telegrambots.longpolling.BotSession
initializeBot
(@NonNull TelegramEntity telegramEntity) 初始化Telegram机器人boolean
initializeBotByUid
(String telegramUid) 初始化单个Telegram机器人void
重新初始化所有机器人void
停止所有活跃的机器人会话boolean
stopBotByUid
(String telegramUid) 停止特定的Telegram机器人
-
Field Details
-
telegramRestService
-
telegramBotsApplication
private final org.telegram.telegrambots.longpolling.TelegramBotsLongPollingApplication telegramBotsApplication -
visitorRestService
-
messageSendService
-
uidUtils
-
uploadRestService
-
activeBotSessions
-
botSessionMap
-
-
Constructor Details
-
TelegramBotService
public TelegramBotService()
-
-
Method Details
-
init
@PostConstruct public void init()Spring 容器初始化后自动执行初始化机器人操作 -
initializeAllBots
public void initializeAllBots()初始化所有已配置的Telegram机器人 -
initializeBotByUid
初始化单个Telegram机器人- Parameters:
telegramUid
- Telegram配置的UID- Returns:
- 是否成功初始化
-
initializeBot
private org.telegram.telegrambots.longpolling.BotSession initializeBot(@NonNull @NonNull TelegramEntity telegramEntity) throws org.telegram.telegrambots.meta.exceptions.TelegramApiException 初始化Telegram机器人- Parameters:
telegramEntity
- Telegram配置实体- Returns:
- 机器人会话对象
- Throws:
org.telegram.telegrambots.meta.exceptions.TelegramApiException
- 如果初始化失败
-
createBotConsumer
为每个机器人创建独立的消费者实例- Parameters:
telegramEntity
- Telegram配置实体- Returns:
- 消费者实例
-
stopAllBots
public void stopAllBots()停止所有活跃的机器人会话 -
stopBotByUid
停止特定的Telegram机器人- Parameters:
telegramUid
- Telegram配置的UID- Returns:
- 是否成功停止
-
reinitializeAllBots
public void reinitializeAllBots()重新初始化所有机器人
-