Esempio n. 1
0
        public override ProviderCollection ConfigureProviders(
            IServiceProvider services, IAsyncEventingExecutor <IDiscordMessage> pipeline)
        {
            var _             = services.GetService <DatadogRoutine>(); // Eager loading
            var discordClient = services.GetService <IDiscordClient>();

            discordClient.Events.GuildJoin.SubscribeTask(ClientJoinedGuildAsync);

            discordClient.Events.MessageCreate
            .SubscribeTask(async msg => await pipeline.ExecuteAsync(msg));

            pipeline.OnExecuted += LogErrorsAsync;

            return(new ProviderCollection()
                   .Add(new ProviderAdapter(
                            () => discordClient.StartAsync(default),
Esempio n. 2
0
        public override ProviderCollection ConfigureProviders(
            IServiceProvider services, IAsyncEventingExecutor <IDiscordMessage> pipeline)
        {
            var _             = services.GetService <DatadogRoutine>(); // Eager loading
            var discordClient = services.GetService <IDiscordClient>();

            discordClient.GuildJoin += ClientJoinedGuildAsync;

            discordClient.MessageCreate += async e => await pipeline.ExecuteAsync(e);

            pipeline.OnExecuted += LogErrorsAsync;

            return(new ProviderCollection()
                   .Add(new ProviderAdapter(
                            discordClient.Gateway.StartAsync,
                            discordClient.Gateway.StopAsync)));
        }