Ответ SparkPost PHP_to не работает

Я использую SparkPost PHP API для отправки электронных писем, и мне кажется, что функция reply_to не работает. Я пробовал оба способа с заголовками и с полем reply_to. Есть идеи, что может быть не так? Доменное имя reply_to писем отличается от имени отправителя. Я не нашел никаких ограничений по этому поводу в их документации. Любые идеи?

Вот мой код:

     $emailData = array(
        'from'=> $data["from_name"].' <'.$data["from_email"].'>',
        'html'=> $data["html"],
        'inline_css' => true,
        'transactional' => true,
        'subject'=> $data["subject"],
        'recipients'=> $rec["r"]
    );

    if(isset($data["headers"]["Reply-To"]))
        $emailData['reply_to'] = $data["headers"]["Reply-To"];


    try {
        // Build your email and send it!
        $this->mandrill->transmission->send($emailData);
    } catch (\Exception $err) {
        echo "<pre>";
        print_r($err);
        echo "</pre>";
    }

person Leopold Spanovic    schedule 28.04.2016    source источник
comment
Не могли бы вы исправить написание вашего заголовка на SparkPost? Мне было очень трудно найти решение этого вопроса.   -  person DeFeNdog    schedule 04.05.2017


Ответы (2)


Относительно: SparkPost PHP ReplyTo, reply_to, Ответить

Для всех, кто интересуется тем же. Вот моя реализация с использованием клиентской библиотеки SparkPost для PHP v2.1. Я надеюсь, что это помогает.

Я использовал конечную точку передачи, как показано в документах.

https://github.com/sparkpost/php-sparkpost

$promise = $sparky->transmissions->post([
  'content' => [
      'from' => [
          'name' => 'Company Name',
          'email' => '[email protected]',
      ],
      'reply_to' => $email,
      'subject' => 'Some Subject',
      'html'    => $html_message,
      'text'    => $text_message,
  ],
  'substitution_data' => $subData,
  'recipients' => [

    [
      'address' => [
        'name' => 'My Recipient',
        'email' => '[email protected]',
      ]
    ],

  ],

]);
person DeFeNdog    schedule 04.05.2017
comment
Это должен быть принятый ответ. Для более удобного использования вы можете использовать формат [НЕКОТОРОЕ_ИМЯ] ‹[некоторый_адрес электронной почты]›. Примером может быть: 'reply_to' => Имя Foo ‹[email protected]›, - person Danijel; 17.08.2017
comment
Работает отлично, мне нужен был адрес 'reply_to' => $email, и он работает! Благодарность - person Junaid Anwar; 06.10.2017

Слава богу за лень :)

Решение заключается в том, что SparkPost имеет другое имя для параметров в документации по API. Правильный параметр для PHP API не reply_to (как написано в документе), а replyTo.

person Leopold Spanovic    schedule 28.04.2016