Risolto: Invio mail da Access tramite SMTP Gmail

di il
7 risposte

Risolto: Invio mail da Access tramite SMTP Gmail

Buona sera ragazzi. Sto affrontando una nuova questione. Nello specifico l'invio di email tramite i server smtp di gmail.

Ho un problema sull'invio di più mail (diciamo oltre le 70), stile mailing list. Ricevo il messaggio di errore che il servizio di trasporto al server non è riuscito a compiere l'operazione. Ho pensato che la cosa fosse per le interrogazioni continue di seguito fatte al server, così ho cercato di applicare varie pause tra blocchi di email (ho provato gruppi da 20,30,40 e 50) intervallati da pause anche di 20 secondi. Ma il problema persiste. Questo problema inizia a generarsi solitamente con più di 80 email, ma ho avuto alcuni errori anche con l'invio spezzettato a 20 già dal primo gruppo. L'unica via che non ho ancora sperimentato è una pausa SECCA di 2 secondi tra i vari invi, ma vorrei evitare per non appesantire i tempi di invio oltremodo.

Nessuno di voi ha affrontato il problema in questione e sa quindi dirmi SE ha risolto oppure se c'è un metodo differente dall'invio "singolo" di una mail volta per volta?

Attendo Vs risposte

7 Risposte

  • Re: Risolto: Invio mail da Access tramite SMTP Gmail

    Rischi che gmail blocchi l'account per spam.
    Invii multipli non sono ben visti
  • Re: Risolto: Invio mail da Access tramite SMTP Gmail

    Capisco, ma dato che l'indirizzo è stato appositamente creato per l'invio di un servizio di alert su scadenze di una Associazione Sportiva ai propri soci, prima di affrontare il problema del blocco dell'account vorrei capire se la risposta che il server restituisce alla mia funzione è un problema di tempistiche ridotte per un invio multiplo o altro e se qualcuno non vi è mai incappato.
  • Re: Risolto: Invio mail da Access tramite SMTP Gmail

    Innanzitutto da capire che codice hai usato.
    Se le mail sono tutte uguali, come di solito in una mailing list, perché non hai usato la concatenazione dei destinatari in BCC o CCN...
    le informazioni che dai non sono tecnicamente sufficienti a capire.
  • Re: Risolto: Invio mail da Access tramite SMTP Gmail

    Il problema Alex è che le email non sono tutte uguali. Ovvero il testo di base si, ma poi OGNI associato deve ricevere i dati relativi alla sua scheda.

    Fondamentalmente la routine è questa.

    - interrogo la tabella tramite query per ottenere le email dei soli associati

    - controllo soggetto per soggetto se hanno scadenze da comunicare

    - scrivo una parte corpo vado a a cui aggiungo per ogni socio le scadenze relative alla sua attività

    - chiudo il corpo con le info di rito e passo tutto ad una funzione a cui di volta in volta passo cone paranetri destinatario, titolo, corpo ed ecevruali allegati. La funzione tramite la libreria (se non ricordo male) CDO 2000 ecc ecc gestisce la configurazione del server a cui da in altra tabella accinge per i dati del SMTP USer e Password, porte ecc ecc.

    Il problema sorge proprio con la ripetitività di tale chiamata. Pensavo fosse un problema di “troppe chiamate al server” dall’esterno in un tempo relativamente breve, ma anche impostando dei tempi di chiamata alla funzione più lunghi ogni tot chiamate (tot è casuale, non costante PURTROPPO) l’invio va in crasi.
  • Re: Risolto: Invio mail da Access tramite SMTP Gmail

    Spero tu abbia già usato la porta 587 al posto della 25...
    In teoria il send, metodo di CDO.Message, sembrerebbe SINCRONO... quindi probabilmente inserendo un DOEVENTS subito dopo il send... dovrebbe essere sufficiente.
  • Re: Risolto: Invio mail da Access tramite SMTP Gmail

    Capisco.

    Più tardi proverò a modificare lo script del codice.

    Anche se continuò a chiedermi il perché di questa problematica a “fasi alterne”.

    Grazie per ora Alex, vi aggiornerò sugli sviluppi magari anche postando parte del codice.
  • Re: Risolto: Invio mail da Access tramite SMTP Gmail

    Buon giorno. Piccolo aggiornamento.

    Risolto il problema dell'invio multiplo con errori del server.

    Come Alex mi aveva giustamente consigliato ho controllato la porta, ed effettivamente era ancora la 25. MEA CULPA avevo sfruttato una vecchia routine col "copia incolla" per evitare di riscrivere il codice.

    Secondariamente per il discorso di sovrapposizioni di invio anche utilizzando il DoEvents il problema persisteva. Ho ovviato abbinando il Do events ad un successivo timer di 20 secondi ogni 50 email inviate.

    Beninteso che l'smtp di Google non gradisce l'invio multiplo se si arriva attorno a 500 email giornaliere e NON accetta più di 100 destinatari differenti, ho optato per l'invio singolo come già avevo detto e tenendo conto con una tabella molto semplice (Data e N° email spedite) di non avviciniarmi mai ai valori limite.

    Grazie e RISOLTO
Devi accedere o registrarti per scrivere nel forum
7 risposte