Esempio n. 1
0
        public void Start()
        {
            _cancellationTokenSource = new CancellationTokenSource();

            var telegramSettings = TelegramConfiguration.Read();
            var telegram         = new TelegramAsMessageStore(telegramSettings.Token, telegramSettings.ChatId);

            var smtpSettings = SmtpConfiguration.Read();
            var options      = new SmtpServer.SmtpServerOptionsBuilder()
                               .Port(smtpSettings.Port)
                               .MessageStore(telegram)
                               .Build();
            var smtpServer = new SmtpServer.SmtpServer(options);

            _ = smtpServer.StartAsync(_cancellationTokenSource.Token);

            if (Environment.UserInteractive)
            {
                _log.Warn($"{ServiceName} started in interactive mode");
            }
            else
            {
                _log.Warn($"{ServiceName} service started");
            }
        }
Esempio n. 2
0
 public Worker(SmtpServer.SmtpServer smtpServer)
 {
     _smtpServer = smtpServer;
 }
        /// <summary>
        /// Constructor.
        /// </summary>
        /// <param name="server">The SMTP server instance.</param>
        /// <param name="delegate">The delegate to execute upon disposal.</param>
        public SmtpServerDisposable(SmtpServer.SmtpServer server, Action @delegate)
        {
            Server = server;

            _delegate = @delegate;
        }
 public SmtpServerAdapter(SmtpServer.SmtpServer adaptee)
 {
     _adaptee = adaptee;
 }
Esempio n. 5
0
 public SmtpRouterService(SmtpServer.SmtpServer smtpServer, ILogger <SmtpRouterService> logger)
 {
     _smtpServer = smtpServer;
     _logger     = logger;
 }