示例#1
0
 public ShowMessageAction(ITelegramBotService telegramBotService,
                          ICurrentUserLocalizationService currentUserLocalizationService
                          )
 {
     _telegramBotService             = telegramBotService;
     _currentUserLocalizationService = currentUserLocalizationService;
 }
示例#2
0
        // This method gets called by the runtime. Use this method to configure the HTTP request pipeline.
        public void Configure(IApplicationBuilder app, IHostingEnvironment env, ITelegramBotService telegramBotService)
        {
            if (env.IsDevelopment())
            {
                app.UseDeveloperExceptionPage();
            }

            app.UseMvc();

            app.UseMiddleware <ServiceVersionMiddleware>();
            app.UseMiddleware <PingServiceMiddleware>();

            telegramBotService.GetBot();
            //Connect Swagger
            app.UseSwagger();
            app.UseSwaggerUI(c =>
            {
                c.SwaggerEndpoint("/swagger/v1/swagger.json", "TelegramBot API V1");
            });

            //Connect SeriLog with appsetings.json

            var configuration = new ConfigurationBuilder()
                                .SetBasePath(env.ContentRootPath)
                                .AddJsonFile("appsettings.json")
                                .Build();

            Log.Logger = new LoggerConfiguration()
                         .ReadFrom.Configuration(configuration)
                         .WriteTo.Console()
                         .CreateLogger();
        }
 public TelegramBotSettingsApiController(ISecurityService securityService, ISearchService searchService, ILogService logService, ITelegramBotService telegramBotService, ISettingsService settingsService)
 {
     _securityService    = securityService;
     _logService         = logService;
     _telegramBotService = telegramBotService;
     _settingsService    = settingsService;
 }
示例#4
0
 public UpdateService(ITelegramBotService bot, CacheService cacheService,
                      IProduceRabbitMqService rabbitSendingService)
 {
     _bot                  = bot;
     _cacheService         = cacheService;
     _rabbitSendingService = rabbitSendingService;
 }
示例#5
0
 public ShowMainMenuAction(MainMenuCreator mainMenuCreator,
                           ICurrentUserLocalizationService currentUserLocalizationService,
                           ITelegramBotService telegramBotService)
 {
     _mainMenuCreator = mainMenuCreator;
     _currentUserLocalizationService = currentUserLocalizationService;
     _telegramBotService             = telegramBotService;
 }
示例#6
0
 public TelegramUpdateHandler(ILogger <TelegramUpdateHandler> logger, IHandleTelegramMessage messageHandler,
                              ITelegramBotService botService, IOptions <TelegramBotConfiguration> options)
 {
     _logger         = logger;
     _messageHandler = messageHandler;
     _botService     = botService;
     _configuration  = options.Value;
 }
 public ShowFacultyGroupsForFacultyDoesNotExistMessageAction(ITelegramBotService telegramBotService,
                                                             ICurrentUserLocalizationService currentUserLocalizationService,
                                                             MainMenuCreator mainMenuCreator)
 {
     _telegramBotService             = telegramBotService;
     _currentUserLocalizationService = currentUserLocalizationService;
     _mainMenuCreator = mainMenuCreator;
 }
示例#8
0
 public ShowApplicationVersionAction(ITelegramBotService telegramBotService,
                                     IApplicationVersionProvider applicationVersionProvider,
                                     MainMenuCreator mainMenuCreator)
 {
     _telegramBotService         = telegramBotService;
     _applicationVersionProvider = applicationVersionProvider;
     _mainMenuCreator            = mainMenuCreator;
 }
 public TelegramMessagingService(ITelegramBotService botService, ILogger <TelegramMessagingService> logger,
                                 IOptionsMonitor <AppSettings> appSettings, IGoogleSearchService googleSearchService)
 {
     _botService          = botService;
     _logger              = logger;
     _appSettings         = appSettings.CurrentValue;
     _googleSearchService = googleSearchService;
 }
示例#10
0
 public MqttConsumer(MqttClientServiceProvider provider, ITelegramBotService telegramBotService, ILogger <MqttConsumer> logger)
 {
     this.readerWriterLockSlim = new ReaderWriterLockSlim();
     this.mqttClientService    = provider.MqttClientService;
     this.telegramBotService   = telegramBotService;
     this.logger = logger;
     this.topicHandlers.Add("BOILER_STATISTICS/JSON", ProcessCycleStatistics);
     this.topicHandlers.Add("BOILER_LOG/JSON", ProcessLogInfo);
 }
示例#11
0
 public TelegramBotTask(
     ITelegramBotService telegramBotService,
     ICoinInfoService coinInfoService,
     IOptions <SiteSettings> options)
 {
     _telegramBotService = telegramBotService;
     _coinInfoService    = coinInfoService;
     _options            = options;
 }
 public RemoveGroupCallbackHandler(ITelegramBotActions botActions,
                                   ITelegramRozkladUserDao telegramRozkladUserDao,
                                   ICurrentTelegramUserProvider currentTelegramUserProvider,
                                   ITelegramBotService telegramBotService) : base(telegramBotService)
 {
     _botActions                  = botActions;
     _telegramRozkladUserDao      = telegramRozkladUserDao;
     _currentTelegramUserProvider = currentTelegramUserProvider;
 }
示例#13
0
 public ShowTimetableSelectingFacultyGroupToAddMenuAction(
     TimetableFacultyGroupsKeyboardCreator keyboardCreator,
     ITelegramBotService telegramBotService,
     ICurrentUserLocalizationService currentUserLocalizationService)
 {
     _keyboardCreator                = keyboardCreator;
     _telegramBotService             = telegramBotService;
     _currentUserLocalizationService = currentUserLocalizationService;
 }
示例#14
0
 public ShowTimetableFacultyGroupViewMenuCallbackHandler(ITelegramBotActions botActions,
                                                         IFacultiesProvider facultiesProvider,
                                                         IFacultyGroupsProvider facultyGroupsProvider,
                                                         ITelegramBotService telegramBotService)
     : base(telegramBotService)
 {
     _botActions            = botActions;
     _facultiesProvider     = facultiesProvider;
     _facultyGroupsProvider = facultyGroupsProvider;
 }
 public ResetCurrentUserAction(MainMenuCreator mainMenuCreator,
                               ICurrentTelegramUserProvider currentTelegramUserProvider,
                               ITelegramRozkladUserDao telegramRozkladUserDao,
                               ITelegramBotService telegramBotService)
 {
     _mainMenuCreator             = mainMenuCreator;
     _currentTelegramUserProvider = currentTelegramUserProvider;
     _telegramRozkladUserDao      = telegramRozkladUserDao;
     _telegramBotService          = telegramBotService;
 }
示例#16
0
 public ShowTimetableFacultyGroupsMenuAction(
     ITelegramBotService telegramBotService,
     TimetableFacultyGroupsMenu timetableFacultyGroupsMenu,
     ICurrentTelegramUserProvider currentTelegramUserProvider,
     ICurrentUserLocalizationService currentUserLocalizationService)
 {
     _telegramBotService             = telegramBotService;
     _timetableFacultyGroupsMenu     = timetableFacultyGroupsMenu;
     _currentTelegramUserProvider    = currentTelegramUserProvider;
     _currentUserLocalizationService = currentUserLocalizationService;
 }
示例#17
0
 public TelegramUserThrottle(ITelegramBotService telegramBotService,
                             ILogger <TelegramUserThrottle> logger)
 {
     _telegramBotService = telegramBotService;
     _logger             = logger;
     _memoryCache        = new MemoryCache(new MemoryCacheOptions
     {
         Clock = new SystemClock(),
         ExpirationScanFrequency = TimeSpan.FromMilliseconds(200)
     });
 }
示例#18
0
        public ConsumeRabbitMqService(ILogger <ConsumeRabbitMqService> logger, CacheService cacheService,
                                      ITelegramBotService telegramBotService, IConverterService converterService, IGiphyService giphyService)
        {
            _logger             = logger;
            _cacheService       = cacheService;
            _telegramBotService = telegramBotService;
            _converterService   = converterService;
            _giphyService       = giphyService;

            InitRabbitMq();
        }
        public UpdateService(ITelegramBotService botService, NotificationService notificationService, DrawService drawService, ILogger <UpdateService> logger, SecretSantaContext secretSantaContext)
        {
            _botService         = botService;
            _logger             = logger;
            _secretSantaContext = secretSantaContext;

            _notificationService = notificationService;
            _drawService         = drawService;

            _cancellationToken = new CancellationToken();
            _notificationService.StartAsync(_cancellationToken);
            _drawService.StartAsync(_cancellationToken);
        }
示例#20
0
 public ShowTimetableFacultyGroupViewMenuAction(
     TimetableFacultyGroupViewInlineMenuCreator menuCreator,
     IDayOfWeekToDateTimeConverter dayOfWeekToDateTimeConverter,
     ILessonsProvider lessonsProvider,
     OneDayLessonsToTelegramMessageText lessonsToTelegramMessageText,
     ITelegramBotService telegramBotService)
 {
     _menuCreator = menuCreator;
     _dayOfWeekToDateTimeConverter = dayOfWeekToDateTimeConverter;
     _lessonsProvider = lessonsProvider;
     _lessonsToTelegramMessageText = lessonsToTelegramMessageText;
     _telegramBotService           = telegramBotService;
 }
 public TimetableFacultyGroupsMenuGroupSelectedHandler(
     ITelegramBotActions telegramBotActions,
     IFacultiesProvider facultiesProvider,
     IFacultyGroupsProvider facultyGroupsProvider,
     ILocalDateService localDateService,
     ITelegramBotService telegramBotService)
     : base(telegramBotService)
 {
     _telegramBotActions    = telegramBotActions;
     _facultiesProvider     = facultiesProvider;
     _facultyGroupsProvider = facultyGroupsProvider;
     _localDateService      = localDateService;
 }
 public ShowTimetableSelectingFacultyMenuAction(
     TimetableFacultyListKeyboardCreator keyboardCreator,
     IFacultiesProvider facultiesProvider,
     ITelegramBotService telegramBotService,
     ICurrentTelegramUserProvider currentTelegramUserProvider,
     ICurrentUserLocalizationService currentUserLocalizationService,
     ILongLastingUserActionManager longLastingUserActionManager)
 {
     _keyboardCreator                = keyboardCreator;
     _facultiesProvider              = facultiesProvider;
     _telegramBotService             = telegramBotService;
     _currentTelegramUserProvider    = currentTelegramUserProvider;
     _currentUserLocalizationService = currentUserLocalizationService;
     _longLastingUserActionManager   = longLastingUserActionManager;
 }
        public static Task Run(string[] args)
        {
            var host = CreateHostBuilder(args).Build();

            var hostApplicationLifetime = host.Services.GetService <IHostApplicationLifetime>();

            hostApplicationLifetime.ApplicationStopping.Register(OnApplicationStopping);

            _telegramBotService = host.Services.GetService <ITelegramBotService>();
            _jobManagerHelper   = host.Services.GetService <IJobManagerHelper>();

            _telegramBotService.Start();
            _jobManagerHelper.ScheduleJobs();

            return(host.RunAsync());
        }
示例#24
0
        public void Configure(IApplicationBuilder app, IWebHostEnvironment env, ITelegramBotService telegramBotService)
        {
            if (env.IsDevelopment())
            {
                app.UseDeveloperExceptionPage();
            }

            app.UseHttpsRedirection();

            app.UseRouting();

            app.UseEndpoints(endpoints =>
            {
                endpoints.MapControllers();
            });

            telegramBotService.SetWebhookAsync().Wait();
        }
示例#25
0
 public BotInitializeCommandHandler(ITelegramBotService telegramBotService, IConfiguration configuration)
 {
     _telegramBotService = telegramBotService;
     _configuration      = configuration;
 }
示例#26
0
 public BotSendPoolRequestHandler(ITelegramBotService telegramBotService, IService <PollEntity, PollEntityDto> pollService)
 {
     _telegramBotService = telegramBotService;
     _pollService        = pollService;
 }
示例#27
0
 public NotificationService(ITelegramBotService telegramService, IUserService userService, ILoggerFactory loggerFactory)
 {
     _telegramService = telegramService;
     _userService     = userService;
     _logger          = loggerFactory.CreateLogger(typeof(NotificationService));
 }
示例#28
0
 public EchoCommandExecutor(ILogger <EchoCommandExecutor> logger, ITelegramBotService botService)
 {
     _logger     = logger;
     _botService = botService;
 }
示例#29
0
 public BotRegisterService(IBotService botService, ITelegramBotService telegramBotService)
 {
     this.botService         = botService;
     this.telegramBotService = telegramBotService;
     this.bot = telegramBotService.CreateTelegramServiceInstance();
 }
 /// <summary>
 /// Initializes a new instance of the <see cref="TurnipMarketFinderCommand"/> class.
 /// </summary>
 /// <param name="botService"><see cref="ITelegramBotService"/>.</param>
 /// <param name="context"><see cref="MarketplaceContext"/>.</param>
 public TurnipMarketFinderCommand(ITelegramBotService botService, MarketplaceContext context)
     : base(botService, context)
 {
 }