Example #1
0
        public UpdateHandlerService(ILogger logger, ITelegramBotClient telegramBotClient)
        {
            _logger    = logger ?? throw new ArgumentNullException(nameof(logger));
            _botClient = telegramBotClient ?? throw new ArgumentNullException(nameof(telegramBotClient));

            var XMLFileName = $"{Environment.CurrentDirectory}\\settings.xml";

            if (System.IO.File.Exists(XMLFileName))
            {
                var ser = new XmlSerializer(typeof(CommandsSettingsXml));
                using var reader = new StreamReader(XMLFileName);
                _settings        = ser.Deserialize(reader) as CommandsSettingsXml;
                reader.Close();
            }
            else
            {
                throw new ArgumentNullException(nameof(_settings));
            }
        }
Example #2
0
        public async Task <ActionResult> SaveSettings()
        {
            var Fields = new CommandsSettingsXml();

            Fields.BotCommandList.Add(new BotCommandXml()
            {
                Type               = CommandType.InlineKeyboard,
                Code               = "/inline",
                Description        = "пришлет список команд",
                KeyboardButtonList = new List <List <Keyboard> >()
                {
                    new  List <Keyboard>()
                    {
                        new Keyboard()
                        {
                            DisplayToUser = "******", CallbackData = "/keyboard"
                        },
                    },
                    new  List <Keyboard>()
                    {
                        new Keyboard()
                        {
                            DisplayToUser = "******", CallbackData = "/developerPhoto"
                        },
                    },
                    new  List <Keyboard>()
                    {
                        new Keyboard()
                        {
                            DisplayToUser = "******", CallbackData = "/request"
                        },
                    },
                },
            });

            Fields.BotCommandList.Add(new BotCommandXml()
            {
                Type               = CommandType.ReplyKeyboard,
                Code               = "/keyboard",
                Description        = "пришлет кнопки",
                KeyboardButtonList = new List <List <Keyboard> >()
                {
                    new  List <Keyboard>()
                    {
                        new Keyboard()
                        {
                            DisplayToUser = "******"
                        },
                        new Keyboard()
                        {
                            DisplayToUser = "******"
                        },
                        new Keyboard()
                        {
                            DisplayToUser = "******"
                        },
                    }
                },
            });

            Fields.BotCommandList.Add(new BotCommandXml()
            {
                Type        = CommandType.GetPhoto,
                Code        = "/developerPhoto",
                Description = "отправит фото разработчика бота",
            });


            Fields.BotCommandList.Add(new BotCommandXml()
            {
                Type        = CommandType.Request,
                Code        = "/request",
                Description = "пришлет запрос контактов",
            });

            var ser = new XmlSerializer(typeof(CommandsSettingsXml));

            using var writer = new StreamWriter(filePath);
            ser.Serialize(writer, Fields);
            writer.Close();

            return(StatusCode((int)HttpStatusCode.Created, "Сохраняем настройки"));
        }