Vygenerujte Gmail adresu pomocí .NET
Vytvořte si vlastní dočasný Gmail generátor s heslem pomocí C#
Stáhnout zkušební verzi zdarmaGenerátor Gmail je poměrně běžný způsob správy e‑mailových odběrů. V podstatě jde o analogii poskytovatele dočasných e‑mailových adres, ale mnohem flexibilnější, spolehlivější a bezpečnější.
Podstatou generátoru je vytvářet doplňkové Gmail adresy. Tyto doplňkové adresy můžete použít při registraci na různých webových stránkách. Tyto stránky vám pravděpodobně pošlou e‑maily na adresy, které zadáte. Protože jsou adresy doplňkové, veškerá pošta bude doručena na vaši hlavní adresu. Současně bude však doplňková adresa vygenerovaná aplikací nebo připravená ručně uvedena jako příjemce dopisu.
Vyhledávání e‑mailů podle adresy příjemce vám umožní filtrovat e‑maily a provádět na nich automatické akce. Jednorázově nebo trvale. Můžete také odhalit weby, které sdílejí vaši adresu s třetími stranami bez vašeho souhlasu.
Například řekněme, že jste vygenerovali doplňkovou adresu username+for.spam.sender@gmail.com . Pak jste ji předali webu spam-sender.com. Po nějaké době můžete obdržet e‑mail z jiného webu, například other-sender.com, ale příjemcem bude username+for.spam.sender@gmail.com . V jakékoli jiné situaci byste nemuseli zjišťovat, proč other-sender.com posílá propagační e‑maily, ale protože jste použili alternativní adresu, je snadné vidět, že spam-sender.com sdílel vaši adresu s třetími stranami. A pokud tomu tak je, nemá smysl odhlásit se z mailing listů těchto stránek. Vaše doplňková adresa pravděpodobně už byla zahrnuta v nějaké veřejné databázi pro zasílání nechtěných e‑mailů. Bude mnohem jednodušší, pokud jen zablokujete veškerou poštu přicházející na tuto doplňkovou adresu. Ještě lepší by bylo nastavit automatické přesouvání takových e‑mailů do složky spam. Toto nastavení značně ztíží život těmto stránkám, protože Gmail bude vědět, že tyto stránky posílají spam.
Pojďme tedy zjistit, jak takový generátor implementovat pomocí Aspose.Email pro .NET.
Vytvořte dočasný Gmail a pracujte s ním
Pro vygenerování doplňkové Gmail adresy ve skutečnosti nepotřebujeme Aspose.Email, ani žádným způsobem neinteragujeme se službou Gmail. Jakákoliv doplňková adresa, kterou vytvoříte ručně nebo náhodně, v souladu s určitými pravidly, bude fungovat.
Taká jsou tato pravidla?
Tečky nejsou důležité. To znamená, že v adrese před symbolem ‘@’ můžete jak odstranit tečky, tak přidat nové mezi libovolné dvojice písmen.
Před znak ‘@’ můžete přidat znak ‘+’ s libovolnou kombinací písmen a čísel za ním. Příklady pro adresu “username@gmail.com”:
Všechny tyto adresy lze již použít při registraci na webových stránkách. Samy o sobě však mají málo smyslu, protože veškerá pošta přicházející na tyto adresy skončí ve vaší hlavní schránce. Proto stojí za to využít naše instrukce pro práci s těmito adresami.
Jednoduchý generátor dočasného Gmailu
Takže vytvořme jednoduchý generátor náhodných podadres. K tomu přidáme náhodný řetězec mezi znaky ‘+’ a ‘@’. Nejprve musíme vygenerovat náhodný řetězec určité délky, skládající se z určité sady znaků:
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();
Nyní potřebujeme získat e‑mailovou adresu a přidat k ní vygenerovaný náhodný řetězec. K tomu použijeme třídu <a href="https://reference.aspose.com/email/net/aspose.email/mailaddress/" rel="nofollow noopener" target="_blank">MailAdress z knihovny Aspose.Email pro .NET:
var originalAddress = new MailAddress("some.address@gmail.com");
var generatedAddress = new MailAddress(
$"{originalAddress.User}+{generatedSuffix}@{originalAddress.Host}");
Console.WriteLine(generatedAddress);
Hotovo! Získaná adresa může být již použita při registraci na webových stránkách. Weby brzy začnou posílat zprávy na tuto adresu. Podívejme se, co s těmito zprávami můžeme dělat.
Použijte IMAP klienta k práci se zprávami přijatými na vygenerovaný Gmail
Nejprve, abychom mohli pracovat se zprávami přijatými na doplňkové adrese, musíme se připojit k Gmailu. IMAP je pro to ideální. Při připojování pomocí tohoto protokolu nezapomeňte nastavit svůj účet tak, aby povolil připojení tímto protokolem. Můžete také zjednodušit IMAP připojení pomocí speciálního hesla pro aplikaci. To vám umožní vyhnout se nutnosti provádět OAuth autorizaci, pokud ji nechcete implementovat ve své aplikaci. Stačí jít do nastavení svého Google účtu, otevřít sekci Zabezpečení a přidat heslo pro aplikaci. Nezapomeňte uložené heslo bezpečně uložit a snažte se ho neztratit, protože poskytuje plný přístup k vaší poště!
Takže použijme třídu <a rel="nofollow noopener" target="_blank" href="https://reference.aspose.com/email/net/aspose.email.clients.imap/imapclient/">ImapClient a připojíme se k vašemu Gmail účtu pomocí protokolu IMAP:
var imapClient = new ImapClient("imap.gmail.com", 993, originalAddress.User, "password",
SecurityOptions.SSLAuto);
Hotovo, nyní můžeme například získat všechny zprávy přijaté na vygenerovanou Gmail adresu:
await imapClient.SelectFolderAsync("INBOX");
var queryBuilder = new ImapQueryBuilder();
queryBuilder.To.Contains(generatedAddress.Address);
var list = await imapClient.ListMessagesAsync(queryBuilder.GetQuery());
A obdržíte naprosto všechny takové dopisy. Nezáleží na tom, z jakého webu pocházejí. Mohly přijít ze stránky, které jste zadali vygenerovanou e‑mailovou adresu. Mohl to být i jiný web. Z jakékoli adresy. E‑maily filtrujeme nikoli podle odesílatele, ale podle příjemce. A je to velmi pohodlné.
Označte, odstraňte, přesuňte zprávy přijaté do dočasného Gmailu
Po získání seznamu dopisů můžeme na ně ihned provádět různé operace. Především najednou. Nemusíte je procházet ve schránce jeden po druhém. Doslova pár příkazů a všechny dopisy jsou označeny jako přečtené, přesunuty do jiné složky nebo jednoduše smazány. Jen nezapomeňte předem zkontrolovat, že seznam dopisů není prázdný. Možná jste už vše smazali.
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);
}
Hotovo, vaše schránka byla vyčištěna od spamu.
Přihlásit se k dočasné Gmail adrese
Co když nechcete neustále mazat nebo označovat e‑maily ručně voláním výše uvedeného kódu? Co když chcete e‑maily mazat hned po jejich přijetí? K tomu můžete například odebírat nové zprávy a napsat funkci, která smaže zprávy, jakmile dorazí do vaší e‑mailové schránky.
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");
Tento algoritmus je mírně zjednodušený, protože v případě chyby bude přihlášení k novým zprávám přerušeno. Algoritmus můžete výrazně vylepšit. K tomu je třeba jej upřesnit vylepšením zpracování chyb. Například můžete nastavit obnovení monitorování v případě chyby; k tomu můžete použít funkci ImapClient.ResumeMonitoring. Tato funkce znovu naváže spojení s IMAP serverem a obnoví monitorování nových zpráv.
Bohužel, k použití tohoto algoritmu musíte program i tak neustále spouštět. Jakmile přerušíte běh programu, nové dopisy již nebudou automaticky mazány. V tomto případě však existuje jiné řešení.
Přestat přijímat zprávy na vygenerovanou Gmail adresu
Gmail poskytuje algoritmy pro filtrování příchozích zpráv. Tyto algoritmy fungují na straně služby a nikdy nepustí nevyžádanou poštu, pokud je samozřejmě správně nakonfigurujete. V současné době bohužel nemůžeme nabídnout možnost vzdáleně konfigurovat takové filtry pomocí C#, ale v blízké budoucnosti tuto možnost plánujeme přidat. Sledujte naše aktualizace!
Takže pokud chcete filtrovat zprávy přicházející do vygenerovaného Gmailu, nejprve musíte vytvořit šablonu vyhledávání pro filtr. Zde je nejjednodušší kód pro získání šablony:
//Generate Gmail search pattern
var searchPattern = $"to:({generatedAddress.Address})";
Console.WriteLine(searchPattern);
Zde proměnná generatedAddress obsahuje vygenerovaný Gmail, který byl vytvořen dříve v tomto článku. Výše uvedený kód vytvoří šablonu vyhledávání a vytiskne ji do terminálu. Zkopírujte tuto šablonu, protože ji budete potřebovat při vytváření filtru.
Nyní popíšeme krok po kroku, jak můžete vytvořit filtr. Pro začátek otevřete webové rozhraní Gmailu, je k dispozici na <a href="https://mail.google.com/mail" rel="nofollow noopener" target="_blank">tomto odkazu. V tomto rozhraní najděte vyhledávací pole:

Do tohoto vyhledávacího pole musíte vložit šablonu vygenerovanou dříve v tomto návodu. Dále je třeba kliknout na tlačítko „Zobrazit možnosti vyhledávání“, které je vyznačeno na snímku níže:

V otevřeném okně možností vyhledávání nemusíte zadávat žádná další data, generovaná šablona již má vyhledávání nastavené. Stačí kliknout na tlačítko "Vytvořit filtr".

V důsledku toho se otevře okno nastavení filtru:

Zde můžete zvolit, co má filtr dělat s e‑mailami přijatými na vygenerovanou Gmail adresu. Můžete je automaticky archivovat, označit jako přečtené, smazat a podobně. Obvykle je nejlepší možnost smazat e‑maily. Kapacita schránky je omezená, nemá smysl ji zaplňovat nevyžádanou poštou. Po výběru vhodných akcí klikněte znovu na tlačítko „Create filter“.
Hotovo! Filtr je plně nastaven, takže vás už nebude obtěžovat žádná nevyžádaná pošta.
Spravovat dočasné Gmail filtry
Někdy se zprávy, které dostáváte z konkrétního webu, stanou nevyžádanými. Staňují se odpadem ve vaší poštovní schránce a brání vám v nalezení toho, co je skutečně důležité a zajímavé. V důsledku toho vytvoříte filtr, který blokuje nechtěné zprávy z tohoto webu. Ale co když zprávy z webu již nejsou spam? Například chcete obnovit heslo. Web vám pošle e‑mail s odkazem na formulář pro resetování hesla, ale nemůžete jej přijmout, protože filtr e‑mail okamžitě smaže.
Naštěstí existuje elegantní řešení této situace. Filtr můžete dočasně přenastavit, aby tyto e‑maily neodstraňoval. Nebo můžete filtr zcela odstranit. Podívejme se, jak to lze provést.
Nejprve otevřete webové rozhraní Gmailu. Na otevřené stránce klikněte na tlačítko "Nastavení":

V otevřeném okně klikněte na tlačítko "Zobrazit všechna nastavení":

Otevře se okno nastavení účtu Gmail. Obsahuje mnoho karet pro dolaďování vašeho e‑mailového zážitku. Zajímá nás karta "Filtry a blokované adresy". Otevřete tuto kartu:

Na otevřené kartě uvidíte seznam filtrů pro vygenerované Gmaily, které jste vytvořili dříve, a případně i jiné filtry:

Podle popisu filtrů můžete snadno určit, který z nich je zodpovědný za adresu, kterou chcete odblokovat. Kliknutím na tlačítko „smazat“ můžete filtr trvale zakázat. Pokud kliknete na tlačítko „upravit“, můžete filtr přenastavit. Například místo mazání e‑mailů je můžete označit. Tímto způsobem můžete filtr uložit a usnadnit jeho budoucí zapnutí. Úpravou filtru budete moci přijímat potřebné e‑maily z webu. Jakmile budete chtít znovu blokovat vygenerovaný Gmail, otevřete filtr znovu pomocí tlačítka „upravit“ a přenastavte akce.
To je vše. Nyní jste profesionál s vygenerovanými Gmail adresami. Můžete vytvořit obrovské množství adres a mistrovsky spravovat tok e‑mailů přicházejících do vašeho Gmailu. Pomocí dalších adres budete schopni sledovat weby, které bez vašeho souhlasu předávají vaše data třetím stranám. Budete moci blokovat spam, aniž byste museli přeškolovat svůj anti‑spam systém nebo opakovaně klikat na tlačítka Odhlásit se. Spam můžete automatizovaně odstraňovat pomocí Aspose.Email .NET nebo ručně prostřednictvím nastavení a rozhraní Gmailu.