Телеграмм бот не видит отправленный пользователем контакт

Я пишу телеграмм бота на C#. У пользователя есть на экране кнопка, при нажатии на которую он может отправить свой контакт, и почему-то бот его не видит, даже в метод update не заходит, хотя обычные текстовые сообщения и CallbackQuery улавливает спокойно.

Кнопку "поделиться контактом" реализовал я это следующим образом:

 public static List<List<KeyboardButton>> StartButtons = new()
       {
           new () { WithRequestContact("Поделиться контактом") },
           new KeyboardButton[] { Test1, Test2 },
       };

Класс Program

public static class Program
{
    private static void Main()
    {
        Register();
        InitBranches();

        WriteLine("Запущен бот " + BotClient.GetMeAsync().Result.FirstName);
        var cts = new CancellationTokenSource();
        BotClient.StartReceiving(
            new UpdateHandler(),
            new ReceiverOptions(),
            cts.Token
        );
            
        ReadLine();
    }
}

Обработчик обновлений:

public class UpdateHandler: IUpdateHandler
{
    public async Task HandleUpdateAsync(ITelegramBotClient botClient, Update update, CancellationToken cancellationToken)
    {
        WriteLine(JsonConvert.SerializeObject(update));
        
        switch (update.Type)
        {
            case UpdateType.Message:
            {
                var message = update.Message;

                foreach (var command in MessageHandlers.Where(command => command.Contains(message!)))
                {
                    await command.Execute(message!, botClient);
                    break;
                }
                break;
            }
            case UpdateType.CallbackQuery:
            {
                var callback = update.CallbackQuery;
                foreach (var command in CallbackHandlers.Where(command => command.Contains(callback!)))
                {
                    await command.Execute(callback!, botClient);
                    break;
                }
                break;
            }
        }
    }

    public async Task HandlePollingErrorAsync(ITelegramBotClient botClient, Exception exception, CancellationToken cancellationToken)
    {
        WriteLine(JsonConvert.SerializeObject(exception));
    }
}

Судя по всему контакт даже не приходит на сервер, и после перезагрузки страницы он удаляется. T


Ответы (0 шт):