Exemplo n.º 1
0
<?php

require_once "vendor/autoload.php";
use jamesiarmes\PEWS\API\Type;
use jamesiarmes\PEWS\Mail\MailAPI;
$api = MailAPI::withUsernameAndPassword('server', 'username', 'password');
$message = new Type\MessageType();
$message->setBody('Some Text');
$message->setSubject('Test Subject');
$message->setToRecipients('*****@*****.**');
$return = $api->sendMail($message);
Exemplo n.º 2
0
<?php

require_once "vendor/autoload.php";
use jamesiarmes\PEWS\API\Type;
use jamesiarmes\PEWS\Mail\MailAPI;
$api = MailApi::withUsernameAndPassword('server', 'username', 'password');
//Create the message item
$message = new Type\MessageType();
$message->setSubject('Test Message');
$message->setBody('Test Draft Body');
//Set the message as not a draft using extended property types
$extended = new Type\ExtendedPropertyType();
$fieldUri = new Type\ExtendedFieldURI();
$fieldUri->setPropertyTag("0x0E07");
$fieldUri->setPropertyType(\jamesiarmes\PEWS\API\Enumeration\MapiPropertyTypeType::INTEGER);
$extended->setExtendedFieldURI($fieldUri);
$extended->setValue(1);
$message->addExtendedProperty($extended);
//Pass it to the Send Mail function, but to SaveOnly without actually sending the email
$itemId = $api->sendMail($message, array('MessageDisposition' => 'SaveOnly'));
//Move the mail message from the sent folder to whatever folder we want to send it to
$api->getClient()->MoveItem(Type::buildFromArray(array('ToFolderId' => array('FolderId' => $folderId->toArray()), 'ItemIds' => array('ItemId' => $itemId->toArray()))));
Exemplo n.º 3
0
 public function testGetUnreadMailItems()
 {
     $client = $this->getClient();
     $unreadItems = $client->getUnreadMailItems();
     $this->assertCount(0, $unreadItems);
     $this->createTestMail();
     $unreadItems = $client->getUnreadMailItems();
     $this->assertCount(0, $unreadItems);
     $message = new Type\MessageType();
     $message->setSubject('Test Message');
     $message->setBody('Test Draft Body');
     $message->setIsRead(false);
     $this->createTestMail($message);
     $unreadItems = $client->getUnreadMailItems();
     $this->assertCount(1, $unreadItems);
 }
Exemplo n.º 4
0
 public function sendMail(MessageType $message, $options = array())
 {
     $items = array('Message' => $message->toXmlObject());
     $defaultOptions = array('MessageDisposition' => 'SendAndSaveCopy');
     if ($this->getPrimarySmtpMailbox() != null) {
         $sentItems = $this->getFolderByDistinguishedId('sentitems')->getFolderId();
         $defaultOptions['SavedItemFolderId'] = array('FolderId' => $sentItems->toXmlObject());
     }
     $options = array_replace_recursive($defaultOptions, $options);
     return $this->createItems($items, $options);
 }