Не приходит СМС двухфакторной аутентификации VK.net c#

Рейтинг: 0Ответов: 0Опубликовано: 28.01.2023

Есть метод, который обрабатывает аутентификацию:

        private void VKLogin(string Login, string Password)
    {
        try
        {
            MainWindow.vk.Auth(Login, Password);
            mainWindow.Show();
            this.Close();
        }
        catch (Exception e)
        {
            MainWindow.vk.vkApi.Authorize(new ApiAuthParams
            {
                Login = Login,
                Password = Password,
                ApplicationId = AppID,
                TwoFactorAuthorization = TheSecondAuth
            });
        }
    }
    private string TheSecondAuth()
    {
        string result = "";

        Thread t = new Thread(() =>
        {
            TwoFactorAuth dlg = new TwoFactorAuth();

            if (dlg.ShowDialog() == true)
            {
                result = dlg.TwoFactorCode;
            }
        });
        t.SetApartmentState(ApartmentState.STA);
        t.IsBackground = true;

        t.Start();
        t.Join();

        return result;
    }

Код из TwoFactorAuth:

        public string TwoFactorCode = "";
    public TwoFactorAuth()
    {
        InitializeComponent();
    }

    private void Button_Click(object sender, RoutedEventArgs e)
    {
        TwoFactorCode = TwoFactorCodeTextBox.Text;
        if (TwoFactorCode != "")
        {
            DialogResult = true;
        } 
    }

В итоге такой аутентификации не приходит код, окно с вводом открывается, если ввести туда любой код, то пожалуется, что код не правильный, но, как я уже писал, самого кода он не отправляет, а в гайде, где я смотрел всё работало правильно.

Попробовал реализовать так же, как и указано в документации:

                MainWindow.vk.vkApi.Authorize(new ApiAuthParams
            {
                Login = Login,
                Password = Password,
                ApplicationId = AppID,
                TwoFactorAuthorization = () =>
                {
                    ConsoleController.ShowConsole();
                    Console.WriteLine("Введите код: ");
                    return Console.ReadLine();
                }
            });
            ConsoleController.CloseConsole();

Но оно тоже не сработало, я ещё заметил то, что при входе на аккаунт через браузер, то код приходит звонком, а не смс, но в любом случае должно же как-то заработать.

Ответы

Ответов пока нет.