/// <summary>
        ///
        /// </summary>
        /// <param name="servicesContainer"></param>
        /// <param name="options"></param>
        public void Register(ITelegramBotServicesContainer servicesContainer, TelegramBotOptions options)
        {
            servicesContainer.AddSingleton(() => options.ServicesProvider);
            servicesContainer.AddSingleton <ITelegramBotClientManager, TelegramBotClientManager>();
            servicesContainer.AddSingleton <ITelegramBotMessageHandlerManager, TelegramBotMessageHandlerManager>();
            servicesContainer.AddSingleton <ITelegramBotMessageHandler, TelegramBotMessageHandler>();
            servicesContainer.AddSingleton <ITelegramBotCommandFactory, TelegramBotCommandFactory>();
            servicesContainer.AddSingleton <ITelegramBotCommandFactoryInitializer, TelegramBotCommandFactoryInitializer>();

            servicesContainer.AddSingleton <ITelegramBotCallbackQueryHandler, TelegramBotCallbackQueryHandler>();
            servicesContainer.AddSingleton <ITelegramBotMessageEditedHandler, TelegramBotMessageEditedHandler>();
            servicesContainer.AddSingleton <ITelegramBotInlineQueryHandler, TelegramBotInlineQueryHandler>();
            servicesContainer.AddSingleton <ICommandMessageExceptionHandler, CommandMessageExceptionHandler>();

            servicesContainer.AddTransient <ITelegramBotCommandName, TelegramBotCommandName>();
            servicesContainer.AddTransient <ITelegramBotCommandRole, TelegramBotCommandRole>();
            servicesContainer.AddTransient <InlineKeyboardButtonBuilder, InlineKeyboardButtonBuilder>();
            servicesContainer.AddTransient <KeyboardButtonBuilder, KeyboardButtonBuilder>();

            servicesContainer.AddScoped <ITelegramBotUserService, TelegramBotUserService>();
            servicesContainer.AddScoped <ITelegramBotMessageService, TelegramBotMessageService>();
            servicesContainer.AddScoped <ITelegramBotCallbackQueryService, TelegramBotCallbackQueryService>();
            servicesContainer.AddScoped <ITelegramBotCommandActivator, TelegramBotCommandActivator>();
            servicesContainer.AddScoped <ITelegramBotUnknownMessageService, TelegramBotUnknownMessageService>();

            TelegramBotAutoDIManager.Register(servicesContainer);
        }
Exemplo n.º 2
0
 public OptionsHealthCheck(
     IWebHostEnvironment?env,
     IOptions <TelegramBotOptions> telegramBotOptions)
 {
     _env = env ?? throw new ArgumentNullException(nameof(env));
     _telegramBotOptions = telegramBotOptions?.Value;
 }
Exemplo n.º 3
0
        public PomBot(string token, TelegramBotOptions options = null) : base(token, options)
        {
            var lexings = new List <Lexing>();

            lexings.Add(new Brain.Lexing("greet", "hi", "hello", "good day", "hoi"));
            lexings.Add(new Brain.Lexing("doing", "how are you", "sup", "doing?", "hoe is het", "hoe gaat het", "hoe gaat ie"));
            lexings.Add(new Brain.Lexing("eat", "hugry", "food", "eat", "eten", "honger", "trek"));
            memory = new Memory(lexings);
        }
 public DependencyInjectionUpdateHandler(
     IOptions <TelegramBotOptions> options,
     ILoggerFactory loggerFactory,
     ITelegramBotErrorHandler errorHandler,
     ITelegramBotCommandManager commandManager)
 {
     _loggerFactory  = loggerFactory;
     _errorHandler   = errorHandler;
     _commandManager = commandManager;
     _options        = options.Value;
 }
Exemplo n.º 5
0
 public HandlerService(IOptions <TelegramBotOptions> telegramBotOptions)
 {
     _telegramBotOptions = telegramBotOptions?.Value ?? throw new ArgumentNullException(nameof(telegramBotOptions));
     if (string.IsNullOrWhiteSpace(_telegramBotOptions?.ErrorsChatId))
     {
         throw new ArgumentNullException("Telegram Error Chat Id is empty.");
     }
     if (long.TryParse(_telegramBotOptions.ErrorsChatId, out var errorChatId) && errorChatId > 0)
     {
         _errorChatId = errorChatId;
     }
 }
Exemplo n.º 6
0
        public TelegramBotService(IHandlerService handlerService, IOptions <TelegramBotOptions> telegramBotOptions)
        {
            _handlerService     = handlerService ?? throw new ArgumentNullException(nameof(handlerService));
            _telegramBotOptions = telegramBotOptions?.Value ?? throw new ArgumentNullException(nameof(telegramBotOptions));
            var token = _telegramBotOptions.Token;

            if (string.IsNullOrWhiteSpace(token))
            {
                throw new ArgumentNullException("Telegram Bot token is empty.");
            }

            var botName = _telegramBotOptions.Name;

            if (string.IsNullOrWhiteSpace(botName))
            {
                throw new ArgumentNullException("Telegram Bot Name is empty.");
            }

            Name = botName;

            _botClient = new TelegramBotClient(token);
        }
 public AttributeMetadataLoader(IServiceProvider serviceProvider,
                                IOptions <TelegramBotOptions> options)
 {
     _serviceProvider = serviceProvider;
     _options         = options.Value;
 }