php
  • gmail-api
  • 2017-08-30 26 views 0 likes 
    0

    我在尝试使用Gmail API回复特定主题。
    这里是我的代码:回复某个特定线程

    $strRawMessage = "From: Firstname lastname <".$userId.">\r\n"; 
    $strRawMessage .= "To: Firstname lastname <[email protected]>\r\n"; 
    $strRawMessage .= 'Subject: =?utf-8?B?' . base64_encode("Heres my test message") . "?=\r\n"; 
    $strRawMessage .= "MIME-Version: 1.0\r\n"; 
    $strRawMessage .= "Content-Type: text/html; charset=utf-8\r\n"; 
    $strRawMessage .= 'Content-Transfer-Encoding: quoted-printable' . "\r\n\r\n"; 
    $strRawMessage .= "this <b>is a test message!\r\n"; 
    
    $mime = rtrim(strtr(base64_encode($strRawMessage), '+/', '-_'), '='); 
    $msg = new Google_Service_Gmail_Message(); 
    $msg->setRaw($mime); 
    $msg->setThreadId($threadId); 
    
    $response = $this->service->users_messages->send($userId, $msg); 
    

    这将邮件发送到正确的邮件地址,但不会将其发送到用“的threadId”中指定的线程。

    我的threadId是100%正确的。

    回答

    0

    检查Sending messages documentation

    如果你想发送回复,并希望电子邮件线程,使 确保:

    1. 的主题标题匹配
    2. 的参考和In-Reply-To标题符合RFC 2822 standard

    这些是您可能因为几乎正确而丢失的部件。

    +0

    是的,主体没有匹配。现在它工作了!谢谢 :) – user4546765

    相关问题