I get this error when trying to send an email using swiftmailer and sendgrid smtp
Fatal error: * Failed to throw "Swift_TransportException" with the message "Expected response code 250, but received the code", with the message "" * *
Here is my code:
$hdr = new SmtpApiHeader(); // Set all of the above variables $hdr->addTo($toList); $hdr->addSubVal('-name-', $nameList); $hdr->addSubVal('-time-', $timeList); // Specify that this is an initial contact message $hdr->setCategory("initial"); // The subject of your email $subject = 'Example SendGrid Email'; // Where is this message coming from. For example, this message can be from // support@yourcompany.com , info@yourcompany.com $from = array(' no-reply@mupiz.com ' => 'Mupiz'); $to = array(' antonin@noos.fr '=>'AN'," antonin@mupiz.com "=>"AN2s"); $text="Hello -name- Thank you for your interest in our products. We have set up an appointment to call you at -time- EST to discuss your needs in more detail. Regards, Fred, How are you? "; $html = " <html> <head></head> <body> <p>Hello -name-,<br> Thank you for your interest in our products. We have set up an appointment to call you at -time- EST to discuss your needs in more detail. Regards, Fred, How are you?<br> </p> </body> </html> "; // Your SendGrid account credentials $username = 'XXXX'; $password = 'XXXX'; // Create new swift connection and authenticate $transport = Swift_SmtpTransport::newInstance('smtp.sendgrid.net', 25); $transport ->setUsername($username); $transport ->setPassword($password); $swift = Swift_Mailer::newInstance($transport); // Create a message (subject) $message = new Swift_Message($subject); // add SMTPAPI header to the message // *****IMPORTANT NOTE***** // SendGrid asJSON function escapes characters. If you are using Swift Mailer's // PHP Mailer functions, the getTextHeader function will also escape characters. // This can cause the filter to be dropped. $headers = $message->getHeaders(); $headers->addTextHeader('X-SMTPAPI', $hdr->asJSON()); // attach the body of the email $message->setFrom($from); $message->setBody($html, 'text/html'); $message->setTo($to); $message->addPart($text, 'text/plain'); // send message if ($recipients = $swift->send($message, $failures)) { // This will let us know how many users received this message // If we specify the names in the X-SMTPAPI header, then this will always be 1. echo 'Message sent out to '.$recipients.' users'; } // something went wrong =( else { echo "Something went wrong - "; print_r($failures); }
Idea?
thanks
source share