Esempio n. 1
0
        public async Task InitializeAsync()
        {
            var clientConfig = new DiscordSocketConfig()
            {
                AlwaysDownloadUsers = true,
                DefaultRetryMode    = RetryMode.Retry502,
                MessageCacheSize    = 50,
                LogLevel            = LogSeverity.Info
            };

            var commandConfig = new CommandServiceConfiguration()
            {
                DefaultRunMode        = RunMode.Parallel,
                StringComparison      = StringComparison.OrdinalIgnoreCase,
                IgnoresExtraArguments = true
            };

            Client         = new DiscordShardedClient(clientConfig);
            CommandService = new CommandService(commandConfig);
            Config         = MakeConfig();
            ScrapClient    = new ScrapClient(Config["scrapApi"]);
            Provider       = MakeProvider();
            Logger         = Provider.GetRequiredService <LoggerService>();

            CommandService.AddModules(Assembly.GetEntryAssembly());
            InitializeTypeParsers();

            await InitializeServicesAsync();
        }
        public static IHostBuilder ConfigureCommands(this IHostBuilder builder, Action <CommandServiceConfiguration> configureOptions)
        {
            var config = new CommandServiceConfiguration();

            configureOptions(config);

            var commands = new CommandService(config);

            builder.ConfigureServices(services =>
            {
                services.AddSingleton(config);
                services.AddSingleton(commands);
            });

            return(builder);
        }
Esempio n. 3
0
        public async Task InitializeAsync()
        {
            var commandConfig = new CommandServiceConfiguration()
            {
                DefaultRunMode        = RunMode.Parallel,
                StringComparison      = StringComparison.OrdinalIgnoreCase,
                IgnoresExtraArguments = true
            };


            CommandService = new CommandService(commandConfig);
            Config         = MakeConfig();
            Client         = new TelegramBotClient(Config["tokens:telegram"])
            {
                Timeout = TimeSpan.FromSeconds(20),
            };
            Provider = MakeProvider();

            await InitializeServicesAsync();

            CommandService.AddModules(Assembly.GetEntryAssembly());
            InitializeTypeParsers();
        }