Перспективы — Как вы можете получить посетителей с php-ews

Это код, который я использую, который работает отлично. Единственное, с чем я борюсь, это получение информации об участниках.

$request = new EWSType_FindItemType();
$request->Traversal = EWSType_ItemQueryTraversalType::SHALLOW;

$request->ItemShape = new EWSType_ItemResponseShapeType();
$request->ItemShape->BaseShape =
EWSType_DefaultShapeNamesType::DEFAULT_PROPERTIES;

$request->CalendarView = new EWSType_CalendarViewType();
$request->CalendarView->StartDate = date('c', strtotime('01/01/2015 -00'));
$request->CalendarView->EndDate = date('c', strtotime('01/31/2016 -00'));

$request->ParentFolderIds = new EWSType_NonEmptyArrayOfBaseFolderIdsType();
$request->ParentFolderIds->DistinguishedFolderId =
new EWSType_DistinguishedFolderIdType();
$request->ParentFolderIds->DistinguishedFolderId->Id =
EWSType_DistinguishedFolderIdNameType::CALENDAR;



$response = $ews->FindItem($request);


if ($response->ResponseMessages->FindItemResponseMessage->RootFolder->TotalItemsInView > 0){
$events = $response->ResponseMessages->FindItemResponseMessage->RootFolder->Items->CalendarItem;
foreach ($events as $event){
var_dump($event);
}

1

Решение

Участники, Тело Назначения и ряд других свойств не возвращаются с помощью операции FindItems, см. https://msdn.microsoft.com/en-us/library/bb508824.aspx. Так что вам нужно будет сделать запрос GetItem на Appoointment, например,

foreach ($events as $event) {
$request = new EWSType_GetItemType();
$request->ItemShape = new EWSType_ItemResponseShapeType();
$request->ItemShape->BaseShape = EWSType_DefaultShapeNamesType::ALL_PROPERTIES;
$request->ItemShape->BodyType = EWSType_BodyTypeResponseType::HTML;
$request->ItemIds = new EWSType_NonEmptyArrayOfBaseItemIdsType();
$request->ItemIds->ItemId = array();
$event_item = new EWSType_ItemIdType();
$event_item->Id = $event->ItemId->Id;
$request->ItemIds->ItemId[] = $event_item;
$response = $ews->GetItem($request);
var_dump($response)
}

ура
лощина

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]