Beispiel #1
0
 /// <summary>
 ///		Создание ответа в зависимости от запроса
 /// </summary>
 /// <param name="ad">Контекст подключения к Active Directory</param>
 /// <param name="telegramUser">Пользователь Telegram, отправивший запрос в чате</param>
 /// <param name="config">Ссылка на конфигурацию</param>
 /// <param name="decorators">Список подключенных в StartUp декораторов (сервисов)</param>
 public Messenger(IAdReader ad, User telegramUser, IConfig config, IComponent[] decorators)
 {
     _ad           = ad;
     _telegramUser = telegramUser;
     _config       = config;
     _decorators   = decorators;
 }
        /// <summary>
        ///		Создание бота для обработки сообщений от пользователей
        /// </summary>
        /// <param name="logger">Формирование и вывод логов</param>
        /// <param name="adReader">Контекст подключения к Active Directory</param>
        /// <param name="config">Настройки приложения из файла Config.config</param>
        public TelegramBot(ILogger logger, IAdReader adReader, IConfig config)
        {
            _ad     = adReader;
            _logger = logger;
            _config = config;

            _logger.Log("Starting Bot...", OutputTarget.Console);
        }
 /// <summary>
 ///		Ответ на запрос о получении оповещений об изменениях в Active Directory
 /// </summary>
 /// <param name="message">Запрос в виде списка подстрок</param>
 /// <param name="ad">Контекст подключения к Active Directory</param>
 /// <param name="config">Настройки приложения из файла Config.config</param>
 /// <param name="userId">Id пользователя, отправившего запрос в чате</param>
 public ResponseSignIn(List <string> message, IAdReader ad, IConfig config, int userId)
 {
     MessagesIn  = message;
     _ad         = ad;
     _config     = config;
     _userId     = userId;
     NeedToClean = true;
 }
Beispiel #4
0
        public void Init(params IComponent[] decorators)
        {
            HelpMessage.MsgList = new List <string>();
            _decorators         = decorators;
            _logger             = _decorators?.OfType <ILogger>().FirstOrDefault();
            _config             = _decorators?.OfType <IConfig>().FirstOrDefault();
            _ad = _decorators?.OfType <IAdReader>().FirstOrDefault();

            _services[0].Component = new TelegramBot(_logger, _ad, _config);

            _services.LastOrDefault()?.Init(decorators);
        }
 /// <summary>
 ///		Ответ на запрос информации о пользователе Active Directory по его имени
 /// </summary>
 /// <param name="message">Запрос в виде подстрок</param>
 /// <param name="ad">Контекст подключения к Active Directory</param>
 public ResponseUserByName(List <string> message, IAdReader ad)
 {
     MessagesIn = message;
     _ad        = ad;
 }
 /// <summary>
 ///		Включение и отключение оповещений об изменениях в Active Directory
 /// </summary>
 /// <param name="userId">Id пользователя, отправившего завпрос в чате</param>
 /// <param name="config">Настройки приложения из файла Config.config</param>
 /// <param name="ad">Контекст подключения к Active Directory</param>
 public Subscriber(int userId, IConfig config, IAdReader ad)
 {
     _telegramUserId = userId;
     _config         = (Config)config;
     _ad             = ad;
 }
Beispiel #7
0
 /// <summary>
 ///		Ответ на запрос об отказе от получения оповещений об изменениях в Active Directory
 /// </summary>
 /// <param name="ad">Контекст подключения к Active Directory</param>
 /// <param name="config">Настройки приложения из файла Config.config</param>
 /// <param name="userId">Id пользователя, отправившего запрос в чате</param>
 public ResponseSignOut(IAdReader ad, IConfig config, int userId)
 {
     _ad     = ad;
     _config = config;
     _userId = userId;
 }