Pregunta

¿Alguien sabe de una clase PHP de código abierto (preferiblemente BSD o licencia MIT) que va a interactuar con los Servicios Web de Microsoft Exchange Server 2007 a través. Jabón?

Busco una clase de nivel superior que tiene una funcionalidad de envío de mensajes a través. el servicio web.

¿Fue útil?

Solución

he tenido este mismo problema, así que empecé a construir algo, aquí:

https://github.com/rileydutton/Exchange-Web-Services- para-PHP

No hace mucho todavía (básicamente sólo le permite obtener una lista de mensajes de correo electrónico desde el servidor, y enviar correo electrónico), pero sería lo suficientemente bueno para utilizar como punto de partida básico para hacer algunas cosas más complicadas.

he abstraído a cabo una buena parte de la complejidad que tendría que sudar tinta a través del uso de php-EWS. Si usted está buscando para hacer algunas primas, comandos de gran alcance con el servidor, me gustaría utilizar php-EWS ... esto es para la gente que acaba de pasar a estar trabajando con un servidor de Exchange y quieren una manera fácil de hacer algunas tareas básicas.

Ah, y se licencia MIT.

esperanza de que alguien le resulta útil!

Otros consejos

Esta es una clase que necesita: php-EWS (Esta biblioteca hace Microsoft Exchange 2007 Servicios Web más fácil de implementar en PHP). Se puede encontrar en: http://code.google.com/p/php-ews/

No es sólo un ejemplo, pero que debe darle la forma de ponerla en práctica. A continuación puede encontrar una implementación con el fin de:

  • conectar con el servidor
  • obtener los eventos de calendario

Nota: no se olvide de rellenar las variables en blanco. También habría que incluir archivos de clases PHP-EWS (he utilizado la función __autoload PHP).

$host = '';
$username = '';
$password = '';
$mail = '';
$startDateEvent = ''; //ie: 2010-09-14T09:00:00
$endDateEvent = ''; //ie: 2010-09-20T17:00:00

$ews = new ExchangeWebServices($host, $username, $password);
$request = new EWSType_FindItemType();
$request->Traversal = EWSType_FolderQueryTraversalType::SHALLOW;

$request->CalendarView->StartDate = $startDateEvent; 
$request->CalendarView->EndDate = $endDateEvent; 
$request->CalendarView->MaxEntriesReturned = 100;
$request->CalendarView->MaxEntriesReturnedSpecified = true;
$request->ItemShape->BaseShape = EWSType_DefaultShapeNamesType::ALL_PROPERTIES;

$request->ParentFolderIds->DistinguishedFolderId->Id = EWSType_DistinguishedFolderIdNameType::CALENDAR;   
$request->ParentFolderIds->DistinguishedFolderId->Mailbox->EmailAddress = $mail;
$response = $ews->FindItem($request);
echo '<pre>'.print_r($response, true).'</pre>';

servidor de Exchange es compatible con WebDAV:

http://www.troywolf.com/articles/php/exchange_webdav_examples.php

Si lo único que quiere hacer es enviar mensajes, sólo podría utilizar SMTP:

http://ca2.php.net/manual/en/book .mail.php

He estado investigando este mismo tema y todavía tengo que encontrar una clase específica de Microsoft Exchange. Sin embargo, si usted se siente a aprender y construir el XML a sí mismo, es posible que desee echar un vistazo a las clases NTLM jabón en los http://rabaix.net/en/articles/2008/03/13/using-soap-php-with-ntlm-authentication . Esto permitirá que se autentique con Active Directory para hacer sus llamadas SOAP, que de SOAP nativa de PHP no permite que hagas. Otro recurso decente que utiliza el mismo método para conectarse a MS CRM es http://www.reutone.com/heb/articles_internet.php?instance_id=62&actions=show&id=521 .

Los ejemplos bajo http://www.troywolf.com/articles/php/ exchange_webdav_examples.php son para Exchange 2003 no 2007.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top