Aspose.Email  dla .NET

Wygeneruj adres Gmail za pomocą .NET

Stwórz własny generator tymczasowego Gmaila z hasłem za pomocą C #

  Pobierz darmową wersję próbną
 

Generator Gmaila to dość powszechny sposób zarządzania subskrypcjami poczty e-mail. W istocie jest to analog dostawcy tymczasowych adresów e-mail, ale znacznie bardziej elastyczny, niezawodny i bezpieczny.

Istotą generatora jest tworzenie dodatkowych adresów Gmail. Możesz użyć tych dodatkowych adresów podczas rejestracji na różnych stronach internetowych. Te strony najprawdopodobniej będą wysyłać e-maile na podane przez Ciebie adresy. Ponieważ adresy są dodatkowe, wszystkie litery trafią na Twój główny adres. Ale jednocześnie dodatkowy adres wygenerowany przez aplikację lub przygotowany ręcznie zostanie wskazany jako odbiorca listu.

Wyszukiwanie wiadomości e-mail według adresu odbiorcy pozwoli Ci odfiltrować wiadomości e-mail i wykonywać na nich automatyczne działania. Jednorazowe lub na stałe. Możesz także przyłapać strony internetowe udostępniające Twój adres stronom trzecim bez Twojej zgody.

Załóżmy na przykład, że wygenerowałeś dodatkowy adres nazwa+for.spam.sender@gmail.com . Następnie przekazałeś go na stronę spam-sender.com. Po pewnym czasie możesz otrzymać wiadomość e-mail z innej strony internetowej, takiej jak other-sender.com, ale odbiorcą będzie nazwa użytkownika+ for.spam.sender@gmail.com . W żadnej innej sytuacji nie byłbyś w stanie dowiedzieć się, dlaczego other-sender.com wysyła Ci e-maile promocyjne, ale ponieważ użyłeś innego adresu, łatwo zauważyć, że spam-sender.com udostępnił Twój adres stronom trzecim. A jeśli tak, nie ma sensu rezygnować z subskrypcji list mailingowych tych witryn. Twój dodatkowy adres prawdopodobnie został już zawarty w jakiejś publicznej bazie do wysyłania niechcianych wiadomości e-mail. Będzie znacznie łatwiej, jeśli po prostu zablokujesz całą pocztę przychodzącą na ten dodatkowy adres. Byłoby jeszcze lepiej, gdybyś skonfigurował automatyczne przenoszenie takich wiadomości e-mail do folderu spamowego. Ta konfiguracja bardzo utrudni życie tych witryn, ponieważ Gmail będzie wiedział, że te witryny wysyłają spam.

Zastanówmy się więc, jak zaimplementować taki generator za pomocą Aspose.Email dla .NET.

Wygeneruj tymczasowy Gmail i pracuj z nim

Aby wygenerować dodatkowy adres Gmail, tak naprawdę nie potrzebujemy Aspose.Email, nie musimy w żaden sposób wchodzić w interakcje z usługą Gmail. Każdy dodatkowy adres, który tworzysz ręcznie lub losowo, z zastrzeżeniem pewnych zasad, będzie działał.

Więc jakie są te zasady?

Punkty nie są ważne. Oznacza to, że w swoim adresie, przed symbolem „@”, możesz zarówno usuwać kropki, jak i dodawać nowe między dowolnymi parami liter.

Przed znakiem „@” możesz dodać znak „+” z dowolnym zestawem liter i cyfr po nim. Przykłady dla adresu „username@gmail.com”:

Wszystkie te adresy mogą być już używane podczas rejestracji na stronach internetowych. Ale same w sobie nie mają sensu, ponieważ wszystkie wiadomości przychodzące na te adresy trafią do głównej skrzynki pocztowej. Dlatego warto skorzystać z naszych instrukcji do pracy z tymi adresami.

Prosty generator tymczasowego Gmaila

Stwórzmy więc prosty generator losowych podadresów. Aby to zrobić, dodamy losowy ciąg znaków między znakami „+” i „@”. Przede wszystkim musimy wygenerować losowy ciąg o określonej długości, składający się z określonego zestawu znaków:

const string pattern = "abcdefghijklmnopqrstuvwxyz0123456789";
var patternLength = pattern.Length;
const int suffixLength = 10;
var random = new Random();
var generatedSuffix = Enumerable.Range(0, suffixLength)
    .Aggregate(
        new StringBuilder(),
        (builder, _) => builder.Append(pattern[random.Next(patternLength)]))
    .ToString();

Teraz musimy uzyskać adres e-mail i dodać do niego wygenerowany losowy ciąg. Aby to zrobić, użyjemy MailAdress klasa z biblioteki Aspose.Email dla .NET:

var originalAddress = new MailAddress("some.address@gmail.com");
var generatedAddress = new MailAddress(
    $"{originalAddress.User}+{generatedSuffix}@{originalAddress.Host}");
Console.WriteLine(generatedAddress);

Gotowe! Otrzymany adres może być już używany podczas rejestracji na stronach internetowych. Witryny wkrótce zaczną wysyłać wiadomości na ten adres. Zobaczmy, co możemy zrobić z tymi wiadomościami.

Użyj klienta IMAP do obsługi wiadomości odbieranych do wygenerowanego Gmaila

Po pierwsze, aby działać na wiadomościach otrzymanych pod dodatkowy adres, musimy połączyć się z Gmailem. IMAP jest do tego odpowiedni. Aby połączyć się za pomocą tego protokołu, nie zapomnij ustawić konta, aby zezwalało na połączenie z nim za pomocą tego protokołu. Możesz także uprościć połączenie IMAP za pomocą dedykowanego hasła aplikacji. Pozwoli to uniknąć konieczności wykonywania autoryzacji OAuth, jeśli nie chcesz wdrożyć jej w swojej aplikacji. Po prostu przejdź do ustawień konta Google, otwórz sekcję Bezpieczeństwo i dodaj hasło aplikacji. Nie zapomnij zapisać wygenerowanego hasła w bezpiecznej pamięci i staraj się go nie zgubić, ponieważ daje to pełny dostęp do poczty!

Więc, użyjmy ImapClient klasa i połącz się z kontem Gmail za pomocą protokołu IMAP:

var imapClient = new ImapClient("imap.gmail.com", 993, originalAddress.User, "password",
    SecurityOptions.SSLAuto);

Gotowe, teraz możemy na przykład uzyskać wszystkie wiadomości odebrane pod wygenerowany adres Gmail:

await imapClient.SelectFolderAsync("INBOX");
var queryBuilder = new ImapQueryBuilder();
queryBuilder.To.Contains(generatedAddress.Address);

var list = await imapClient.ListMessagesAsync(queryBuilder.GetQuery());

I otrzymasz absolutnie wszystkie takie listy. Nie ma znaczenia, z jakiej strony do ciebie przyszli. Mogły pochodzić ze strony, do której podałeś wygenerowany adres e-mail. Mogło pochodzić z innej strony. Z dowolnego adresu. Sprawdzamy wiadomości e-mail nie przez nadawcę, ale przez odbiorcę. I to jest bardzo wygodne.

Zaznacz, usuń, przenieś otrzymane wiadomości do tymczasowego Gmaila

Po otrzymaniu listy listów możemy już wykonywać na niej różne operacje. Przede wszystkim na raz. Nie musisz ich znajdować w skrzynce pocztowej jeden po drugim. Dosłownie kilka poleceń i wszystkie litery są oznaczone jako przeczytane, przeniesione do innego folderu lub po prostu usunięte. Po prostu nie zapomnij wcześniej sprawdzić, czy lista liter nie jest pusta. Być może już wszystko usunąłeś.

if (list.Count > 0)
{
    //Mark as read
    await imapClient.AddMessageFlagsAsync(list, ImapMessageFlags.IsRead);
    //Move
    await imapClient.MoveMessagesAsync(list, "DestinationFolder");
    //Remove
    await imapClient.DeleteMessagesAsync(list, commitNow: true);
}

Gotowe, Twoja skrzynka odbiorcza została usunięta ze spamu.

Subskrybuj tymczasowy adres Gmail

Co więc, jeśli nie chcesz stale usuwać lub oznaczać wiadomości e-mail, ręcznie wywołując powyższy kod? Co jeśli chcesz usunąć e-maile natychmiast po ich otrzymaniu? Aby to zrobić, możesz na przykład subskrybować nowe wiadomości i napisać funkcję, która usuwa wiadomości, gdy tylko dotrą na Twój adres e-mail.

await imapClient.StartMonitoringAsync((_, eventArgs) =>
    {
        var generated = eventArgs.NewMessages
            .Where(message => message.To
                .Any(address => address.Equals(generatedAddress)))
            .ToList();
        if (generated.Count == 0) return;

        imapClient.SelectFolder("INBOX");

        //Do something with the received messages. For example, mark them as read:
        imapClient.AddMessageFlags(generated, ImapMessageFlags.IsRead);

        //or delete them
        imapClient.DeleteMessages(generated, commitNow: true);
    },
    (_, errorEventArgs) => Console.WriteLine(errorEventArgs.Error.Message),
    "INBOX");

Ten algorytm jest nieco uproszczony, ponieważ w przypadku błędu subskrypcja nowych wiadomości zostanie przerwana. Możesz znacznie poprawić algorytm. Aby to zrobić, musisz udoskonalić algorytm, poprawiając obsługę błędów. Na przykład możesz skonfigurować wznowienie monitorowania w przypadku błędu, w tym celu możesz użyć funkcji IMAPClient.ResumeMonitoring. Funkcja ta przywróci połączenie z serwerem IMAP i wznowi monitorowanie nowych wiadomości.

Niestety, aby korzystać z tego algorytmu, i tak musisz stale działać program. Gdy tylko przerwiesz wykonywanie programu, nowe litery nie będą już automatycznie usuwane. Ale w tym przypadku istnieje inne rozwiązanie.

Przestań odbierać wiadomości na wygenerowany adres Gmail

Gmail zapewnia algorytmy filtrowania wiadomości przychodzących. Algorytmy te działają po stronie usługi i nigdy nie przepuszczą niechcianej poczty, jeśli oczywiście skonfigurujesz je poprawnie. W tej chwili niestety nie możemy zapewnić Ci funkcjonalności zdalnej konfiguracji takich filtrów za pomocą C#, ale planujemy dodać taką możliwość w najbliższej przyszłości. Śledź nasze aktualizacje!

Jeśli więc chcesz filtrować wiadomości przychodzące do wygenerowanego Gmaila, musisz najpierw utworzyć szablon wyszukiwania dla filtra. Oto najprostszy kod, aby uzyskać szablon:

//Generate Gmail search pattern
var searchPattern = $"to:({generatedAddress.Address})";
Console.WriteLine(searchPattern);

Tutaj zmienna generatedAddress zawiera wygenerowany Gmail, który został utworzony wcześniej w tym artykule. Powyższy kod utworzy szablon wyszukiwania i wydrukuje go na terminalu. Skopiuj ten szablon, ponieważ będziesz go potrzebować podczas tworzenia filtra.

Teraz opiszmy krok po kroku, jak utworzyć filtr. Aby rozpocząć, otwórz interfejs internetowy poczty e-mail Gmaila, jest on dostępny pod adresem link. W tym interfejsie znajdź pasek wyszukiwania:

step1

W tym pasku wyszukiwania musisz wstawić szablon wygenerowany wcześniej w tej instrukcji. Następnie musisz kliknąć przycisk „Pokaż opcje wyszukiwania”, który jest wskazany na poniższym zrzucie ekranu:

step2

W oknie opcji wyszukiwania, które zostanie otwarte, nie musisz wprowadzać żadnych dodatkowych danych, wygenerowany szablon skonfigurował już wyszukiwanie. Wystarczy kliknąć przycisk „Utwórz filtr”.

step3

W rezultacie otworzy się okno ustawień filtra:

step4

Tutaj możesz wybrać, co filtr powinien zrobić z wiadomościami e-mail otrzymanymi na wygenerowany adres Gmail. Możesz je automatycznie archiwizować, oznaczyć jako przeczytane, usunąć je i tak dalej. Z reguły najlepszą opcją jest usunięcie wiadomości e-mail. Objętość skrzynki pocztowej jest ograniczona, nie ma sensu wydawać jej na przechowywanie śmieci. Po wybraniu działań, które Ci odpowiadają, kliknij ponownie przycisk „Utwórz filtr”.

Gotowe! Filtr jest w pełni skonfigurowany, więc żadna niepotrzebna poczta nie będzie Ci przeszkadzać.

Zarządzaj tymczasowymi filtrami Gmaila

Czasami wiadomości otrzymane z określonej strony internetowej stają się niechciane. Po prostu stają się śmieciami w Twojej skrzynce pocztowej i uniemożliwiają znalezienie w niej tego, co jest dla Ciebie naprawdę ważne i interesujące. W rezultacie tworzysz filtr, który blokuje niechciane wiadomości z tej witryny. Ale co, jeśli wiadomości ze strony nie są już spamem? Na przykład chcesz odzyskać hasło. Witryna wysyła wiadomość e-mail z linkiem do formularza resetowania hasła, ale nie możesz go otrzymać, ponieważ filtr natychmiast usuwa wiadomość e-mail.

Na szczęście istnieje eleganckie wyjście z tej sytuacji. Możesz tymczasowo ponownie skonfigurować filtr, aby nie usuwał tych wiadomości e-mail. Możesz też całkowicie usunąć filtr. Zobaczmy, jak można to zrobić.

Najpierw otwórz interfejs internetowy Gmaila. Na stronie, która się otworzy, kliknij przycisk „Ustawienia”:

step1

W oknie, które zostanie otwarte, kliknij przycisk „Zobacz wszystkie ustawienia”:

step2

Otworzy się okno ustawień konta Gmail. Zawiera wiele zakładek do precyzyjnego dostrajania poczty e-mail. Interesuje nas karta „Filtry i zablokowane adresy”. Otwórz tę kartę:

step3

W zakładce, która zostanie otwarta, zobaczysz listę filtrów dla wygenerowanych Gmails, które utworzyłeś wcześniej, a także ewentualnie inne filtry:

step4

Dzięki opisowi filtrów możesz łatwo określić, który z nich jest odpowiedzialny za adres, który chcesz odblokować. Klikając przycisk „usuń”, możesz trwale wyłączyć filtr. Jeśli klikniesz przycisk „edytuj”, możesz ponownie skonfigurować filtr. Na przykład zamiast usuwać wiadomości e-mail, możesz je oznaczyć. W ten sposób możesz zapisać filtr i ułatwić jego włączenie w przyszłości. Edytując filtr, będziesz mógł otrzymywać niezbędne e-maile ze strony internetowej. Jak tylko chcesz zablokować wygenerowany Gmail, otwórz filtr ponownie za pomocą przycisku „edytuj” i ponownie skonfiguruj działania.

To wszystko. Jesteś teraz profesjonalistą z wygenerowanymi adresami Gmail. Możesz stworzyć ogromną liczbę adresów i po mistrzowsku zarządzać przepływem wiadomości e-mail przychodzących do Twojego Gmaila. Korzystając z dodatkowych adresów, będziesz mógł śledzić witryny, które przekazują Twoje dane osobom trzecim bez Twojej zgody. Będziesz mógł blokować spam bez konieczności przekwalifikowania systemu antyspamowego lub bez konieczności wielokrotnego naciskania przycisków Anuluj subskrypcję. Możesz zautomatyzować usuwanie spamu za pomocą Aspose.Email .NET lub ręcznie za pomocą ustawień i interfejsu Gmaila.