Submitted by yonnel on
Bonjour,
j'utilise dans un module spécifique l'envoie d'un mail de confirmation d'une action faite par l'internaute en utilisant dans x.module l'appel (mailManager->mail...) et le hook_mail.
Tout se passe bien pour le premier appel mail.
Mais quand je veux faire une copie à l'administrateur, sans passer par le BCC pour personnaliser l'objet et ajouter une phrase dans le message, il ne m'envoie pas le second mail. Et en plus pas d'erreur après l'appel à " $mailManager->mail". C'est une adresse gmail, dans laquelle je reçois tous les messages du site.
Est-on limité par cette procédure à 1 mail à la fois ? Donc pas de second appel ?
(il est à noté que toutes les variables ci-dessous sont bien remplies)
merci
yonnel
Voici le code simplifié :
- dans l'action traitée dans le fichier x.module :
[...]
/* Enregistrement de la demande pour confirmation par envoi mail /
$mailManager = \Drupal::service('plugin.manager.mail');
$module = 'x;
$key = 'mail_conf';
$to = $email;
$params = array(
'nom' => $nom,
'prenom' => $prenom,
'email' => $email,
'respMail' => $respMail,
'titre' => $projet,
'dossier' => $dossier,
'created' => $created,
);
$langcode = \Drupal::currentUser()->getPreferredLangcode();
$send = true;
$result = $mailManager->mail($module, $key, $to, $langcode, $params, NULL, $send);
/ traitement erreur sur $result..../
/
copie admin /
$mailManager = \Drupal::service('plugin.manager.mail');
$key = 'mail_conf_admin';
$to = $respMail;
$params = array(
'nom' => $nom,
'prenom' => $prenom,
'email' => $respMail,
'respMail' => $respMail,
'titre' => $projet,
'dossier' => $dossier,
'created' => $created,
);
$result2 = $mailManager->mail($module, $key, $to, $langcode, $params, NULL, $send);
/ traitement erreur sur $result2....*/
[..]
et dans le hook_mail :
function x_mail($key, &$message, $params) {
[...]
switch ($key) {
case 'mail_conf':
[...]
$message['subject'] = $subject;
$message['body'][] = $body;
$message['piece'] = 0;
$message['from'] = $mailSite;
break;
case 'mail_conf_admin':
$message['subject'] = "Confirmation de dépôt d\'un internaute";
$message['body'][] = $body;
$message['piece'] = 0;
$message['from'] = $mailSite;
break;
[...]
Bon apparement, se serait mon
Permalien Soumis par yonnel le 16 Janvier, 2019 - 18:26
Bon apparement, se serait mon VDS qui empêche tout envoie à un compte GMAIL mais pas aux autres.
L'admin est en GMAIL. Et quand l'internaute met son adresse xxx@gmail.com cela n'arrive pas non plus.
A votre avis, ma config du VDS peut elle bloquer les adresses GMAIL ?
merci
yonnel