Remplissage automatisé de messages individuels

Résolu/Fermé
Manolis1984 - 13 sept. 2022 à 09:11
barnabe0057 Messages postés 14440 Date d'inscription lundi 2 mars 2009 Statut Contributeur Dernière intervention 19 avril 2024 - 21 sept. 2022 à 18:44

Bonjour,

J'ai une liste de 5000 mails à qui je souhaite écrire individuellement le même mail (envoi de CV). Pour chaque contact, j'ai complété les champs nom, prénom, société.

Je souhaite savoir s'il y a la possibilité d'avoir un modèle de mail qui puisse se compléter automatiquement avec les détails de chaque individu (nom, prénom, société, là où je le souhaite dans le texte) puis de l'envoyer à l'adresse correspondante. Je peux faire cela contact par contact, mais je souhaite que le mail soit au minimum complété automatiquement (Bonjour Mme PRENOM NOM, et à toute l'équipe de SOCIETE).

Toute variante peut bien entendu être envisagée.

Mailchimp, Sendinblue, etc. considèrent que je n'ai pas les autorisations nécessaires pour envoyer à ces contacts. Il s'agit pourtant de mails pro récupérés dans la rubrique "contactez-nous" de chaque société...

Merci d'avance.
Windows / Firefox 104.0

3 réponses

barnabe0057 Messages postés 14440 Date d'inscription lundi 2 mars 2009 Statut Contributeur Dernière intervention 19 avril 2024 4 908
13 sept. 2022 à 11:24

Bonjour,

Techniquement c'est possible en passant par un script qui automatise la création et l'envoi de chaque email.

Le problème c'est que si tu ne passes pas par un service d'emailing tel que Mailchimp ou SendinBlue, tu vas devoir pas mal fragmenter les envois car aucun fournisseur de messagerie ne te laissera envoyer 5000 emails, au mieux je dirais 500 par jour maximum (en passant par Gmail).



0

Merci beaucoup pour cette réponse.

Sais-tu à qui puis-je m'adresser pour qu'il me fasse un tel script ? J'imagine que ce n'est pas très compliqué, mais ce n'est absolument pas mon domaine de connaissances.

Merci également pour les précisions concernant le nombre maximal de mails journaliers. Je ne les envoie pas avec gmail mais avec mon propre domaine (chez ovh). Je crois qu'ils ont une limite de 200 mails par heure. Quoi qu'il en soit, je pense qu'il est prudent de ne pas abuser en envoyant tout le même jour!

0
barnabe0057 Messages postés 14440 Date d'inscription lundi 2 mars 2009 Statut Contributeur Dernière intervention 19 avril 2024 4 908 > Manolis1984
Modifié le 13 sept. 2022 à 11:52

Je peux te faire le script, ça sera un script .bat

Pour l'envoi de mail je passerai par la commande externe SwithMail.

Il faudrait que tu me fournisses le modèle et la structure de la liste.

Est-ce que OVH autorise le relai de messages ?

Quel est le format de la liste d'emails (xls, csv, txt) ?

0
Manolis1984 > barnabe0057 Messages postés 14440 Date d'inscription lundi 2 mars 2009 Statut Contributeur Dernière intervention 19 avril 2024
13 sept. 2022 à 14:35

Merci beaucoup pour ta proposition !

Je viens de faire des recherches sur le site de OVH mais n'ai pas trouvé cette information. Je vais leur demander. Est-ce quelque chose que j'aurais pu constater de moi-même par la pratique ? (je ne fais qu'envoyer des mails pro via Thunderbird avec ce mail-là).

Comment puis-je te contacter en privé ?

0
barnabe0057 Messages postés 14440 Date d'inscription lundi 2 mars 2009 Statut Contributeur Dernière intervention 19 avril 2024 4 908 > Manolis1984
13 sept. 2022 à 14:54

Pour les messages privés, clique sur mon pseudo.

0
barnabe0057 Messages postés 14440 Date d'inscription lundi 2 mars 2009 Statut Contributeur Dernière intervention 19 avril 2024 4 908 > barnabe0057 Messages postés 14440 Date d'inscription lundi 2 mars 2009 Statut Contributeur Dernière intervention 19 avril 2024
13 sept. 2022 à 17:50

Je crois qu'il te faut un compte pour pouvoir m'envoyer des mp

0
barnabe0057 Messages postés 14440 Date d'inscription lundi 2 mars 2009 Statut Contributeur Dernière intervention 19 avril 2024 4 908
16 sept. 2022 à 20:43

...



0
barnabe0057 Messages postés 14440 Date d'inscription lundi 2 mars 2009 Statut Contributeur Dernière intervention 19 avril 2024 4 908
Modifié le 21 sept. 2022 à 19:03

Voilà le script ms-dos pour faire de l'emailing de masse à partir d'une liste contacts contenus dans un fichier .csv (provenant de la conversion d'un fichier Excel) :

@echo off
mode con cols=120 lines=30
title %~nx0
color 0F

: --------------------------------------------------------------------------------------
: on définit l'encodage des caractères pour la console
: --------------------------------------------------------------------------------------

ver | find "10.0." >nul && chcp 65001 >nul || chcp 28591 >nul
ver | find "11.0." >nul && chcp 65001 >nul

: --------------------------------------------------------------------------------------
: on définit les variables
: --------------------------------------------------------------------------------------

setlocal enableextensions enabledelayedexpansion

set "password=1234"

set /a delaiEntreDeuxSeries=5200
set /a delaiEntreDeuxEnvois=1

set "log=journal_des_envois.txt"

rem attention : ne surtout pas modifier les 2 variables ci-dessous
set /a totalAEnvoyer=0
set /a nbEnvois=0

: --------------------------------------------------------------------------------------
: on vérifie les pré-requis
: --------------------------------------------------------------------------------------

cd /d %~dp0\config || exit /b 1

if not exist "SwithMail.exe" (exit /b 1)
if not exist "SwithMailSettings.xml" (exit /b 1)
if not exist "emailing_template.txt" (exit /b 1)

for %%A in (contacts*.csv) do set "contacts=%%A"
if not defined contacts (exit /b 1)

: --------------------------------------------------------------------------------------
: on définit la limite d'envois max par heure
: --------------------------------------------------------------------------------------

:choix
set "limiteEnvois=" 
cls & echo. & set /p limiteEnvois="Veuillez indiquer le nombre maxi d'envois par heure (150 par défaut) : "
if not defined limiteEnvois (set /a limiteEnvois=150)

set "validation="
echo. & set /p validation="Merci de confirmer de choix (!limiteEnvois! envois par heure) (O)ui-(N)on : "
if not defined validation (goto :choix)
set "validation=!validation: =!"
if not "!validation!"=="o" (if not "!validation!"=="O" (goto :choix)) 
echo. & echo ###################################### DEMARRAGE DES ENVOIS DE COURRIELS ######################################

: --------------------------------------------------------------------------------------
: on détermine le nombre d'envois à effectuer ainsi que les envois restants
: --------------------------------------------------------------------------------------

for /f "delims=" %%A in ('findstr "@" "%contacts%"') do set /a totalAEnvoyer+=1
if exist "%log%" (for /f "delims=" %%A in ('type "%log%"') do set /a nbEnvois+=1)

: --------------------------------------------------------------------------------------
: on déclenche l'envoi d'un email pour chaque contact du fichier
: --------------------------------------------------------------------------------------

for /f "tokens=1,2,3,* delims=;" %%A in ('findstr "@" "%contacts%"') do call :envoi "%%~A" "%%~B" "%%~C" "%%~D"

echo. & echo ######################################### FIN DES ENVOIS DE COURRIELS #########################################
echo. & pause
exit /b 0

: --------------------------------------------------------------------------------------
: fonction d'envoi d'email
: --------------------------------------------------------------------------------------

:envoi

rem on n'envoie pas si l'envoi/courriel figure déjà dans le fichier journal
if exist "%log%" (findstr /l %1 "%log%" >nul && goto :eof)

timeout /t %delaiEntreDeuxEnvois% /nobreak >nul
call :horodatage

SwithMail.exe /s /x "SwithMailSettings.xml" /pass %password% /to %1 /btxt "emailing_template.txt" /p1 %3 /p2 %2 /p3 %4 /l "%log%"

if %ERRORLEVEL%==0 (set "etat=réussi") else (set "etat=échoué")
echo. & echo ^>^>^> Envoi !etat! le !maDate! à !heure! ==^>^> "%~4" [%~1]

call :progression

call :temporisation

goto :eof

: --------------------------------------------------------------------------------------
: fonction pour afficher la progression des envois
: --------------------------------------------------------------------------------------

:progression

set /a nbEnvois+=1
set /a pourcent=!nbEnvois!*100/%totalAEnvoyer%
title Progression des envois : !pourcent! %% [!nbEnvois! sur %totalAEnvoyer%]

goto :eof

: --------------------------------------------------------------------------------------
: fonction pour temporiser si la limite est atteinte
: --------------------------------------------------------------------------------------

:temporisation

set /a modulo=!nbEnvois! %% !limiteEnvois!

if !modulo! equ 0 (
	echo. & echo ################################### LIMITE ATTEINTE - TEMPORISATION EN COURS ##################################
	timeout /t %delaiEntreDeuxSeries% /nobreak
	echo. & echo ########################################### FIN DE LA TEMPORISATION ###########################################
)

goto :eof

: --------------------------------------------------------------------------------------
: fonction pour récupérer la date et l'heure
: --------------------------------------------------------------------------------------

:horodatage

for /f "tokens=1,2,3 delims=/ " %%a in ('date /t') do set "maDate=%%a-%%b-%%c"
for /f "tokens=1,2 delims=:" %%a in ('time /t') do set "heure=%%a:%%b:%time:~6,2%"

goto :eof

#

Le script .bat (ci-dessus) nécessite la présence d'un dossier "config" contenant ceci :

- le fichier "SwithMail.exe" disponible ici : https://sourceforge.net/projects/swithmail/

- un fichier "contacts.csv" contenant 4 colonnes (email, nom, prénom, société)

- un fichier "emailing_template.txt" contenant le corps du message (éventuellement en HTML)

- un fichier "SwithMailSettings.xml" contenant les paramètres d'envoi, par exemple :

<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<SwithMailSettings>
  <ServerSettings>
    <FromName>Toto Lasticot</FromName>
    <FromAddress>toto.lasticot@gmail.com</FromAddress>
    <Username />
    <Password>jvcj12hlvbb75lbljhb</Password>
    <ObscurePassword>False</ObscurePassword>
    <MailServer>smtp.gmail.com</MailServer>
    <MailServerPort>587</MailServerPort>
    <SSL>True</SSL>
    <Encoding />
    <RequestReceipt>False</RequestReceipt>
    <MessageID>True</MessageID>
  </ServerSettings>
  <EmailAddresses>
    <To />
    <CC />
    <BCC />
    <ReplyTo>toto.lasticot@gmail.com</ReplyTo>
  </EmailAddresses>
  <Attachments>
    <AttachmentPath />
  </Attachments>
  <EmailContent>
    <HTML>True</HTML>
    <DontReplaceNewLine>False</DontReplaceNewLine>
    <Subject>Candidature spontanée</Subject>
    <Body />
    <BodyTxtFile />
  </EmailContent>
</SwithMailSettings>

ps : ce fichier .xml est configuré pour des envois à partir d'une adresse Gmail (préalablement configurée pour autoriser le relai d'emails)



0