EWS - php отправка электронной почты с вложением - PullRequest
0 голосов
/ 06 июня 2011

Я новичок в использовании EWS из классов Exchangeclient.

Я ищу простой пример того, как отправить электронное письмо с вложением. Я нашел примеры того, как отправить электронное письмо, но не отправлять электронное письмо с вложением.

Это мой сценарий:

$exchangeclient = new Exchangeclient();
$exchangeclient->init($username, $password, NULL, 'ews/Services.wsdl');
$exchangeclient->send_message($mail_from, $subject, $body, 'HTML', true, true);

функция - PHP классы:

    function send_message($to, $subject, $content, $bodytype="Text", $saveinsent=true, $markasread=true) {
    $this->setup();

    if($saveinsent) {
        $CreateItem->MessageDisposition = "SendOnly";
        $CreateItem->SavedItemFolderId->DistinguishedFolderId->Id = "sentitems";
    }
    else
        $CreateItem->MessageDisposition = "SendOnly";

    $CreateItem->Items->Message->ItemClass = "IPM.Note";
    $CreateItem->Items->Message->Subject = $subject;
    $CreateItem->Items->Message->Body->BodyType = $bodytype;
    $CreateItem->Items->Message->Body->_ = $content;
    $CreateItem->Items->Message->ToRecipients->Mailbox->EmailAddress = $to;

    if($markasread)
        $CreateItem->Items->Message->IsRead = "true";

    $response = $this->client->CreateItem($CreateItem);

    $this->teardown();

    if($response->ResponseMessages->CreateItemResponseMessage->ResponseCode == "NoError")
        return true;
    else {
        $this->lastError = $response->ResponseMessages->CreateItemResponseMessage->ResponseCode;
        return false;
    }

}

1 Ответ

1 голос
/ 10 августа 2011

Сначала необходимо сохранить электронное письмо как черновик (с соответствующим расположением сообщения), затем CreateAttachment (), чтобы в нем было вложение, а затем отредактировать его с помощью UpdateItem (), чтобы расположение сообщения было SendOnly.Затем он будет отправлен.

См. Ответ Дэвида Стерлинга на эту тему: http://social.technet.microsoft.com/Forums/en-US/exchangesvrdevelopment/thread/f7d5257e-ec98-40fd-b301-f378ba3080fd/ (речь идет о приглашениях на собрание, но они работают одинаково.)

...