Beste Weg, um den Zugriff auf Exchange mit PHP?
Ich Schreibe ein CMS-Anwendung in PHP und eine der Anforderungen ist, dass Sie müssen in der Lage sein, um eine Schnittstelle mit der Kunden-Exchange-server. Ich habe geschrieben, diese Funktion ein paar mal vor und immer WebDAVes zu tun, aber jetzt ich bin Neigung entfernt.
Will ich laufen die Website auf IIS-ODER Apache (keine Präferenz) auf Windows server 2008. Ein paar Dinge, die ich hätte tun müssen, umfassen das hinzufügen von Kontakten zu einer bestimmten Benutzer-Adressbuch, versenden von E-Mails eines bestimmten Benutzers und ausführen von berichten auf Kontakte für einen Benutzer.
All dies ist ziemlich einfach zu tun mit WebDAV, aber wenn es einen besseren Weg gibt, benötigt keine Funktionalität, die ist wahrscheinlich veraltet, zu jeder Zeit bald.
Irgendwelche Ideen?
Update:
Justin, ich Liebe die Idee der Verwendung von com-Objekten, die ich gerade Sorge um die Aufrechterhaltung ein 3. Produkt zu machen, alles funktioniert...
John, ich kann schreiben Sie einen web service in C# eine Schnittstelle für diese Funktionen zugreifen zu können mit meinem PHP-app, aber es ist auch ein bisschen aus dem Weg.
So weit, ich bin nicht 100% davon überzeugt, dass diese beiden besser als WebDAV...
Kann jemand mir zeigen, wo ich bescheuert bin?
InformationsquelleAutor der Frage Bruce the Hoon | 2008-08-03
Du musst angemeldet sein, um einen Kommentar abzugeben.
Habe ich nicht verwendet PHP, um dies zu tun, aber haben Erfahrung in der Verwendung von C#, das gleiche zu erreichen.
Die Outlook-API ist eine Möglichkeit der Automatisierung von Outlook, als eine Verbindung direkt auszutauschen. Ich habe bisher diesen Ansatz in einer C# - Anwendung und es funktioniert, obwohl die kann buggy sein.
Wenn Sie möchten, verbinden Sie direkt an den Exchange-server, werden Sie brauchen, um Forschung extended MAPI.
In der Vergangenheit habe ich diese wrapper MAPIEx: Extended MAPI Wrapper.
Es ist ein C# - Projekt, aber ich glaube, Sie können einige gebrauchen .NET-code auf PHP5 Windows server. Alternativ hat es einen C++ core DLL, die Sie möglicherweise in der Lage, eine zu verwenden. Ich habe festgestellt, dass es sehr gut und es sind einige gute Beispiel-Anwendungen.
Update:
Sorry für die Verspätung keine aktuellen Art und Weise zu verfolgen posts noch.
Stimme ich hinzufügen weiterer layer auf Ihrer Anwendung und sich auf 3rd-party-code kann beängstigend sein (und das zu Recht.)
Heute Las ich ein weiteres interessanter Beitrag oben markiert als MAPI, ist ein anderes Thema. Das wichtigste hier ist aber, dass es verbunden hat, um dieses wichtige MS-Artikel. Ich habe schon Ahnung von den Themen, die bis jetzt auf die Verwendung von verwaltetem code und eine Schnittstelle für MAPI-obwohl der C++ - code in der Komponente nicht betroffen sein sollte, durch diese Fehler ist es nicht.
Dieser blog-Eintrag schlägt auch andere Möglichkeiten, die Verbindung zum MAPI/Exchange-server. In diesem Fall aufgrund dieser neuen Fakten http://us3.php.net/imap möglicherweise die Antwort, wie vorgeschlagen, durch die andere Benutzer.
InformationsquelleAutor der Antwort John
Ist Ihr Kunde mit Exchange 2007? Wenn dem so ist, würde ich einen Blick auf Exchange Web Services. Wenn nicht, so haarig, wie es sein kann, ich denke WebDAV ist Ihre beste Wette.
Persönlich mag ich nicht mit dem Outlook.Anwendung COM-Objekt Weg, wie seine Sicherheits-prompts ("Eine Anwendung versucht, Zugriff auf Ihre Kontakte. Dies zulassen?", etc.) kann zu Problemen auf einem server. Ich denke auch, dass es schwierig sein würde, um erreichen Ihre Identitätswechsel-wie Aufgaben mithilfe von Outlook, wie das senden von E-mail als einen bestimmten Benutzer.
InformationsquelleAutor der Antwort Mike Powell
Habe ich veröffentlicht eine open-source-MIT-lizenzierte Bibliothek, die Ihnen erlaubt, einige grundlegende Operationen in PHP mithilfe der Exchange-Webdienste.
Exchange Web Services mit PHP
Habe ich nur getestet auf Linux, aber ich sehe keinen Grund, warum es nicht funktionieren würde auf einer Windows-installation von PHP als gut.
InformationsquelleAutor der Antwort Riley Dutton
Kann ich nicht empfehlen, Dmitry Streblechenko ist Erlösung-Daten-Objekte Bibliothek, die hoch genug ist. Es ist ein COM-Komponente, bietet eine vernünftige API, Extended MAPI und ist eine Freude zu verwenden. Die Exchange-API-Torpfosten bewegen sich von einer Version auf die nächste: “Verwenden Sie das M: - Laufwerk! Nein, WebDAV verwenden! Nein, verwenden Sie ExOLEDB!... Nein, die Web-Services nutzen!" mit der einzigen Konstante wird die gute alte MAPI.
InformationsquelleAutor der Antwort Duncan Smart
Ich bin kein PHP-dev, aber Google sagt, dass PHP 5+ kann instanziieren von COM-Komponenten. Wenn Sie können, installieren Sie Outlook auf einem Feld Sie schreiben, könnte eine PHP-web-service rund um die COM-Komponente für die Verarbeitung der Anforderungen, die Sie benötigen.
Outlook-API-Referenz
InformationsquelleAutor der Antwort Justin Walgran
Ich würde in IMAP
IMAP -, POP3-und NNTP
InformationsquelleAutor der Antwort Tim Boland
Diese Zarafa PHP-MAPI Erweiterung sieht aus wie es funktionieren könnte.
InformationsquelleAutor der Antwort Scott Szretter
Ich würde empfehlen, mit "PHP Exchange Web Services" oder kurze php-ews.
Fairen Betrag von Dokumentation unter der wikihat mir sehr geholfen.
InformationsquelleAutor der Antwort Valentin Despa