Esempio n. 1
0
        public BotClient(
            IMessagesProcessor messagesProcessor,
            IBotSettingsProvider botSettingsProvider,
            IProxySettingsProvider proxySettingsProvider)
        {
            this.messagesProcessor     = messagesProcessor;
            this.proxySettingsProvider = proxySettingsProvider;

            client = new TelegramBotClient(
                botSettingsProvider.Token,
                CreateClient()
                );

            client.OnMessage      += ClientOnMessageReceived;
            client.OnReceiveError += ClientOnReceiveError;
        }
        public ApiClient(IProxySettingsProvider settingsProvider, IHttpClientFactory httpClientFactory, IThreadUtil threadUtil, IProxySettingsProvider proxySettingsProvider)
        {
            if (settingsProvider == null)
            {
                throw new ArgumentNullException(nameof(settingsProvider));
            }

            if (string.IsNullOrWhiteSpace(settingsProvider.ApiUrl))
            {
                throw new ArgumentException("api settings");
            }

            BaseEndpoint           = new Uri(settingsProvider.ApiUrl);
            _httpClientFactory     = httpClientFactory;
            _threadUtil            = threadUtil;
            _proxySettingsProvider = proxySettingsProvider;
        }