Class TelegramClientAutoConfiguration
java.lang.Object
dev.voroby.springframework.telegram.TelegramClientAutoConfiguration
@Configuration
@ConfigurationPropertiesScan(basePackages="dev.voroby.springframework.telegram.properties")
public class TelegramClientAutoConfiguration
extends Object
Telegram Spring Boot client AutoConfiguration.
- Author:
- Pavel Vorobyev
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionchatTemplate
(TelegramClient telegramClient) Template forTdApi.Chat
related objects.Client authorization state.telegramClient
(TelegramProperties properties, Collection<UpdateNotificationListener<?>> notificationHandlers, Client.ResultHandler defaultHandler, ClientAuthorizationState clientAuthorizationState) Autoconfigured telegram client.org.springframework.boot.ApplicationRunner
telegramClientRunner
(Collection<TelegramRunner> telegramRunners, TelegramRunnersConsumer telegramRunnersConsumer) telegramRunnersConsumer
(ClientAuthorizationState authorizationState, org.springframework.boot.ApplicationArguments applicationArguments, org.springframework.context.ApplicationContext applicationContext) Creates a consumer ofTelegramRunner
implementations.updateAuthorizationNotification
(TelegramProperties properties, TelegramClient telegramClient) Notification listener for authorization sate change.userTemplate
(TelegramClient telegramClient) Template forTdApi.User
related objects.
-
Constructor Details
-
TelegramClientAutoConfiguration
public TelegramClientAutoConfiguration()
-
-
Method Details
-
telegramClient
@Bean public TelegramClient telegramClient(TelegramProperties properties, Collection<UpdateNotificationListener<?>> notificationHandlers, Client.ResultHandler defaultHandler, ClientAuthorizationState clientAuthorizationState) Autoconfigured telegram client.- Parameters:
properties
-TelegramProperties
notificationHandlers
- collection ofUpdateNotificationListener
beansdefaultHandler
- default handler for incoming updatesclientAuthorizationState
- authorization state of the client- Returns:
TelegramClient
-
clientAuthorizationState
Client authorization state.- Returns:
ClientAuthorizationState
-
updateAuthorizationNotification
@Bean public UpdateNotificationListener<TdApi.UpdateAuthorizationState> updateAuthorizationNotification(TelegramProperties properties, @Lazy TelegramClient telegramClient) Notification listener for authorization sate change. -
userTemplate
Template forTdApi.User
related objects.- Parameters:
telegramClient
- Telegram client.- Returns:
UserTemplate
.
-
chatTemplate
Template forTdApi.Chat
related objects.- Parameters:
telegramClient
- Telegram client.- Returns:
ChatTemplate
.
-
defaultHandler
- Returns:
- Default handler for incoming TDLib updates. Could be overwritten by another bean
-
telegramRunnersConsumer
@Bean public TelegramRunnersConsumer telegramRunnersConsumer(ClientAuthorizationState authorizationState, org.springframework.boot.ApplicationArguments applicationArguments, org.springframework.context.ApplicationContext applicationContext) Creates a consumer ofTelegramRunner
implementations.- Parameters:
authorizationState
- authorization state of the clientapplicationArguments
- the arguments that were used to run aSpringApplication
applicationContext
- interface to provide configuration for an spring application- Returns:
TelegramRunnersConsumer
-
telegramClientRunner
@Bean public org.springframework.boot.ApplicationRunner telegramClientRunner(Collection<TelegramRunner> telegramRunners, TelegramRunnersConsumer telegramRunnersConsumer) - Parameters:
telegramRunners
- collection ofTelegramRunner
implementationstelegramRunnersConsumer
- consumer ofTelegramRunner
implementations- Returns:
ApplicationRunner
-