Aspose.Email  per .NET

Generar adreça de Gmail usant.NET

Crea el teu propi generador de Gmail temp amb contrasenya utilitzant C #

  Descarrega la prova gratuïta
 

El generador de Gmail és una manera bastant comuna de gestionar les subscripcions de correu electrònic. En essència, es tracta d’un anàleg d’un proveïdor d’adreces de correu electrònic temporals, però molt més flexible, fiable i segur.

L’essència del generador és crear adreces de Gmail addicionals. Podeu utilitzar aquestes adreces addicionals en registrar-vos en diversos llocs web. Aquests llocs web molt probablement enviaran correus electrònics a les adreces que proporcioneu. Com que les adreces són addicionals, totes les cartes aniran a la vostra adreça principal. Però al mateix temps, s’indicarà una adreça addicional generada per l’aplicació o preparada manualment com a destinatari de la carta.

Cercar correus electrònics per l’adreça del destinatari us permetrà filtrar els correus electrònics i realitzar accions automàtiques sobre ells. Una vegada o permanent. També podeu atrapar llocs web compartint la vostra adreça amb tercers sense el vostre consentiment.

Per exemple, diguem que heu generat una adreça addicional nom usuari+ for.spam.sender@gmail.com . Després el vas passar a la pàgina web spam-sender.com. Passat un temps, és possible que rebis un correu electrònic d’algun altre lloc web, com altre-sender.com, però el destinatari serà nom usuari+ for.spam.sender@gmail.com . En qualsevol altra situació, no seria capaç d’esbrinar per què altres-sender.com t’està enviant correus promocionals, però com que has utilitzat una adreça alternativa, és fàcil veure que spam-sender.com ha compartit la teva adreça amb tercers. I si és així, no té sentit donar-se de baixa de les llistes de correu d’aquests llocs. La vostra adreça addicional probablement ja s’ha inclòs en alguna base pública per a l’enviament de correus electrònics no desitjats. Serà molt més fàcil si només bloquegeu tot el correu que arriba a aquesta adreça addicional. Seria encara millor si configureu el moviment automàtic d’aquests correus electrònics a la carpeta de correu brossa. Aquesta configuració farà la vida molt difícil per a aquests llocs perquè Gmail sabrà que aquests llocs estan enviant correu brossa.

Així que anem a esbrinar com implementar un generador d’aquest tipus utilitzant Aspose.Email per .NET.

Generar Gmail temporal i operar amb ell

Per generar una adreça addicional de Gmail, en realitat no necessitem Aspose.Email, no necessitem interactuar amb el servei de Gmail de cap manera. Qualsevol adreça addicional que configureu manualment o aleatòriament, subjecte a certes regles, funcionarà.

Llavors, quines són aquestes regles?

Els punts no són importants. És a dir, a la vostra adreça, abans del símbol ‘@’, tant podeu eliminar punts com afegir-ne de nous entre qualsevol parell de lletres.

Abans del caràcter ‘@’, podeu afegir un caràcter ‘+’ amb qualsevol conjunt de lletres i números després d’ell. Exemples per a l’adreça “username@gmail.com”:

Totes aquestes adreces ja es poden utilitzar a l’hora de registrar-se en llocs web. Però pel seu compte, tenen poc sentit, perquè tots els missatges que arribin a aquestes adreces acabaran a la vostra bústia principal. Per tant, val la pena utilitzar les nostres instruccions per treballar amb aquestes adreces.

Generador de Gmail temporal senzill

Així que anem a crear un generador de subadreces aleatòries simple. Per a això, afegirem una cadena aleatòria entre els caràcters ‘+’ i ‘@”. En primer lloc, hem de generar una cadena aleatòria d’una longitud determinada, constituïda per un determinat conjunt de caràcters:

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();

Ara hem d’obtenir l’adreça de correu electrònic i afegir-hi la cadena aleatòria generada. Per a això, utilitzarem el MailAdress classe de la biblioteca Aspose.Email per .NET:

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

Fet! L’adreça rebuda ja es pot utilitzar en registrar-se en llocs web. Els llocs web aviat començaran a enviar missatges a aquesta adreça. Vegem què podem fer amb aquests missatges.

Utilitzar el client IMAP per operar amb missatges rebuts al Gmail generat

En primer lloc, per poder operar en missatges rebuts en una adreça addicional, hem de connectar-nos a Gmail. IMAP és molt adequat per a això. Per connectar-vos mitjançant aquest protocol, no oblideu configurar el vostre compte perquè permeti la connexió amb ell mitjançant aquest protocol. A més, podeu simplificar la connexió IMAP amb una contrasenya d’aplicació dedicada. Això et permetrà evitar la necessitat de realitzar l’autorització OAuth si no vols implementar-la en la teva aplicació. Només cal que aneu a la configuració del vostre compte de Google, obriu la secció Seguretat i afegiu una contrasenya de l’aplicació. No oblidis guardar la contrasenya generada en emmagatzematge segur i procura no perdre-la, perquè et dóna accés complet al teu correu!

Per tant, utilitzem el ImapClient classe i connecta’t al teu compte de Gmail mitjançant el protocol IMAP:

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

Fet, ara podem, per exemple, aconseguir tots els missatges rebuts a l’adreça de Gmail generada:

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

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

I rebràs absolutament totes aquestes cartes. No importa de quin lloc us han vingut. Podrien haver vingut del lloc al qual vas donar l’adreça de correu electrònic generada. Podria venir d’un altre lloc. Des de qualsevol adreça. Pantregem els correus electrònics no per remitent, sinó pel destinatari. I és molt convenient.

Marca, elimina, trasllada els missatges rebuts al Gmail temporal

Després d’haver rebut la llista de cartes, ja podem realitzar diverses operacions sobre ella. Sobretot alhora. No els heu de trobar un a un a la vostra bústia. Literalment, un parell d’ordres i totes les lletres es marquen com llegides, es traslladen a una altra carpeta o simplement s’eliminen. No oblideu comprovar prèviament que la llista de cartes no està buida. És possible que ja ho hagueu eliminat tot.

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);
}

Fet, la safata d’entrada s’ha esborrat de correu brossa.

Subscriu-te a l’adreça temporal de Gmail

Llavors, què passa si no voleu suprimir constantment o marcar correus electrònics trucant manualment al codi anterior? Què passa si voleu eliminar els correus electrònics tan aviat com es rebin? Per fer-ho, per exemple, pots subscriure’t a missatges nous i escriure una funció que elimini els missatges tan aviat com arriben a la teva adreça de correu electrònic.

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");

Aquest algoritme es simplifica lleugerament perquè, en cas d’error, la subscripció a nous missatges quedarà interrompuda. Es pot millorar molt l’algoritme. Per fer-ho, heu de perfeccionar l’algoritme millorant el maneig d’errors. Per exemple, podeu configurar la represa de la monitorització en cas d’error, per a això, podeu utilitzar la funció IMAPClient.ResumeMonitoring. Aquesta funció tornarà a establir una connexió amb el servidor IMAP i reprendrà la monitorització de nous missatges.

Malauradament, per tal d’utilitzar aquest algoritme, heu de mantenir el programa constantment en funcionament de totes maneres. Tan aviat com interrompis l’execució del programa, les noves lletres ja no s’eliminaran automàticament. Però en aquest cas, hi ha una altra solució.

Deixa de rebre missatges a l'adreça de Gmail generada

Gmail proporciona algorismes per filtrar missatges entrants. Aquests algoritmes funcionen en el costat del servei i mai deixaran passar correu no desitjat, si vostè, per descomptat, els configura correctament. De moment, malauradament, no podem proporcionar-vos la funcionalitat per configurar remotament aquests filtres mitjançant C#, però tenim previst afegir aquesta oportunitat en un futur proper. Seguiu les nostres actualitzacions!

Així doncs, si voleu filtrar els missatges que entren al Gmail generat, primer heu de crear una plantilla de cerca per al filtre. Aquí teniu el codi més senzill per obtenir la plantilla:

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

Aquí, la variable generatedAddress conté el Gmail generat que es va crear anteriorment en aquest article. El codi anterior crearà una plantilla de cerca i la imprimirà al terminal. Copieu aquesta plantilla perquè la necessitareu a l’hora de crear el filtre.

Ara anem a descriure pas a pas com es pot crear un filtre. Per començar, obriu la interfície web de correu electrònic de Gmail, està disponible a l’enllaç. En aquesta interfície, trobeu la barra de cerca:

step1

En aquesta barra de cerca, cal inserir la plantilla generada anteriorment en aquesta instrucció. A continuació, heu de fer clic al botó “Mostra les opcions de cerca”, que s’indica a la captura de pantalla següent:

step2

A la finestra d’opcions de cerca que s’obre, no cal introduir cap dada addicional, la plantilla generada ja ha configurat la cerca. Només cal que feu clic al botó “Crea filtre”.

step3

Com a resultat, s’obrirà la finestra de configuració del filtre:

step4

Aquí podeu triar què ha de fer el filtre amb els correus electrònics rebuts a l’adreça de Gmail generada. Podeu arxivar-los automàticament, marcar-los com a llegits, eliminar-los, etc. Com a regla general, la millor opció és eliminar correus electrònics. El volum de la bústia és limitat, no té sentit gastar-lo en emmagatzematge d’escombraries. Després de seleccionar les accions que s’adapten a vostè, feu clic al botó “Crear filtre” de nou.

Fet! El filtre està totalment configurat, de manera que no us molestarà més correu brossa.

Gestionar filtres temporals de Gmail

De vegades, els missatges que rebeu des d’un lloc web en concret esdevenen no sol·licitats. Acaben de convertir-se en escombraries a la bústia de correu i impedeixen trobar en ella el que és realment important i interessant per a vostè. Com a resultat, creeu un filtre que bloqueja els missatges no desitjats d’aquest lloc web. Però, què passa si els missatges del lloc web ja no són spam? Per exemple, voleu recuperar la vostra contrasenya. Un lloc web t’envia un correu electrònic amb un enllaç a un formulari de restabliment de contrasenya, però no pots rebre’l perquè el filtre elimina immediatament el correu electrònic.

Afortunadament, hi ha una manera elegant de sortir d’aquesta situació. Podeu tornar a configurar temporalment el filtre perquè no esborri aquests correus electrònics. O podeu eliminar el filtre del tot. Vegem com es pot fer això.

Primer, obriu la interfície web de Gmail. A la pàgina que s’obre, feu clic al botó “Configuració”:

step1

A la finestra que s’obre, feu clic al botó “Veure tots els paràmetres”:

step2

S’obrirà la finestra de configuració del compte de Gmail. Conté moltes pestanyes per ajustar la vostra experiència de correu electrònic. Ens interessa la pestanya “Filtres i adreces bloquejades”. Obre aquesta pestanya:

step3

A la pestanya que s’obre, veureu una llista de filtres per als Gmails generats que heu creat anteriorment, així com possiblement altres filtres:

step4

Mitjançant la descripció dels filtres, podeu determinar fàcilment quin és el responsable de l’adreça que voleu desbloquejar. Si feu clic al botó “suprimir”, podeu desactivar definitivament el filtre. Si feu clic al botó “editar”, podeu tornar a configurar el filtre. Per exemple, en lloc de suprimir correus electrònics, podeu senyalitzar-los. D’aquesta manera podràs guardar el filtre i fer més fàcil encendre’l en el futur. Mitjançant l’edició del filtre, podreu rebre els correus electrònics necessaris de la pàgina web. Tan aviat com vulgueu bloquejar el Gmail generat de nou, obriu el filtre de nou amb el botó “editar” i torneu a configurar les accions.

Això és tot. Ara ets un professional amb adreces de Gmail generades. Podeu crear un gran nombre d’adreces i gestionar magistralment el flux de correus electrònics que arriben al vostre Gmail. Utilitzant adreces addicionals, podreu fer un seguiment dels llocs que transfereixen les vostres dades a tercers sense el vostre consentiment. Podràs bloquejar el correu brossa sense haver de tornar a entrenar el teu sistema anti-spam o sense haver de prémer diverses vegades els botons de Donar de baixa. Podeu automatitzar l’eliminació de correu brossa utilitzant Aspose.Email .NET o manualment a través de la configuració i la interfície de Gmail.