سؤال

أنا أكتب CMS تطبيق في بي واحدة من المتطلبات التي يجب أن تكون قادرة على التفاعل مع العميل ملقم Exchange.كتبت هذه الوظيفة عدة مرات من قبل و استخدمت دائما WebDAV أن تفعل ذلك, ولكن الآن أنا يميل بعيدا عن ذلك.

سوف يتم تشغيل الموقع على IIS او Apache (أي الأفضلية) في نظام التشغيل Windows server 2008.عدد قليل من الأشياء التي كنت بحاجة إلى القيام تشمل إضافة جهات اتصال إلى دفتر عناوين المستخدم أو إرسال رسائل البريد الإلكتروني مستخدم معين و تشغيل تقارير عن اتصالات المستخدم.

كل هذا من السهل جدا القيام به مع WebDAV ، ولكن إذا كان هناك طريقة أفضل من التي لا تتطلب أي وظيفة التي من المرجح أن يتم إهمال أي وقت قريب.

أي أفكار ؟

تحديث:

جاستن, أنا أحب فكرة استخدام كائنات com, أنا قلق حول الحفاظ على 3rd المنتج لجعل عمل كل شيء...

جون أستطيع أن أكتب خدمة ويب في C# على التفاعل مع هذه المهام والوصول إليه مع PHP التطبيق, لكنه أيضا قليلا للخروج من الطريق.

حتى الآن, أنا لست 100% مقتنع بأن أي من هذه هو أفضل من WebDAV...

يمكن لأي شخص أن تظهر لي أين أنا سخيفة ؟

هل كانت مفيدة؟

المحلول

أنا لم تستخدم PHP للقيام بذلك ولكن لديهم خبرة في استخدام C# إلى تحقيق نفس الشيء.

التوقعات API هو وسيلة لأتمتة Outlook بدلا من توصيل الصرف مباشرة.لقد اتخذت سابقا على هذا النهج في C# التطبيق و أنها لا تعمل على الرغم من أن يمكن أن تكون عربات التي تجرها الدواب.

إذا كنت ترغب في الاتصال مباشرة إلى ملقم Exchange سوف تحتاج إلى البحث extended MAPI.

في الماضي كنت تستخدم هذا المجمع MAPIEx:Extended MAPI المجمع.

هو مشروع C# ولكن أعتقد يمكنك استخدام بعض .صافي رمز على PHP5 Windows server.وبدلا من ذلك فقد C++ الأساسية DLL التي قد تكون قادرة على استخدام.لقد وجدت لها أن تكون جيدة جدا و هناك بعض التطبيقات سبيل المثال.

تحديث:

آسف على التأخير الحالية لا وسيلة لتتبع المشاركات حتى الآن.

أنا أوافق على إضافة المزيد من طبقة إلى التطبيق الخاص بك والاعتماد على رمز 3rd الطرف يمكن أن يكون مخيفا (وهو محق في ذلك.)

اليوم قرأت آخر آخر للاهتمام الموسومة كما MAPI على موضوع مختلف.الشيء الرئيسي هنا هو على الرغم من أنه يرتبط هذا مهم MS المادة.لقد كنت على علم القضايا حتى الآن على استخدام التعليمات البرمجية المدارة إلى واجهة MAPI على الرغم من أن رمز C++ في مكون ينبغي أن يتأثر هذا الخطأ كما هو المدارة.

هذا بلوق الدخول أيضا إلى طرق أخرى للاتصال MAPI/Exchange server.في هذه الحالة بسبب هذه حقائق جديدة http://us3.php.net/imap قد يكون الجواب على النحو المقترح من قبل مستخدم آخر.

نصائح أخرى

هو العميل الخاص بك باستخدام Exchange 2007?إذا كنت إلقاء نظرة على خدمات ويب Exchange.إن لم يكن, كما شعر كما يمكن أن يكون, أعتقد WebDAV هو أفضل رهان.

شخصيا أنا لا أحب استخدام Outlook.تطبيق كائن COM الطريق ، الأمن يطالب ("التطبيق هو محاولة الوصول إلى جهات الاتصال الخاصة بك.يسمح هذا؟" ، .... الخ) يمكن أن يسبب مشاكل في الخادم.أعتقد أيضا أنه سيكون من الصعب تحقيق التمثيل مثل المهام باستخدام Outlook ، مثل إرسال البريد باسم مستخدم معين.

ولقد صدر مفتوح المصدر MIT مرخصة المكتبة التي تسمح لك للقيام ببعض العمليات الأساسية في PHP باستخدام خدمات ويب Exchange.

خدمات ويب Exchange PHP

لدي اختبار فقط على لينكس ولكن لا أرى أي سبب لماذا لا تعمل على ويندوز تركيب PHP كذلك.

لا أستطيع أن يوصي ديمتري Streblechenko هو الفداء كائنات بيانات مكتبة عالية بما فيه الكفاية.إنه مكون COM يقدم عاقل API Extended MAPI و هو الفرح لاستخدام.تبادل API القائمين الانتقال من إصدار واحد إلى التالي:"استخدام M:بالسيارة!لا استخدام WebDAV!لا تستخدم ExOLEDB!... لا استخدام خدمات الويب!" مع الثابت الوحيد يجري القديمة الجيدة MAPI.

أنا لست PHP ديف ولكن جوجل تقول أن PHP 5+ يمكن إنشاء مكونات COM.إذا كان يمكنك تثبيت Outlook في المربع يمكنك كتابة PHP خدمة ويب حول مكون COM للتعامل مع الطلبات التي تحتاج إليها.

$outlook = COM("Outlook.Application")

توقعات API إشارة

أود أن أوصي باستخدام "PHP خدمات ويب Exchange" أو قصيرة php-ews.

قدر لا بأس به من الوثائق تحت ويكي, ساعدت لي الكثير.

هذا Zarafa PHP MAPI تمديد يبدو أن العمل.

وأود أن ننظر إلى IMAP

IMAP ، POP3 و NNTP

https://github.com/Garethp/php-ews

كان آخر تحديث قبل 3 أشهر حتى يتم الحفاظ عليه

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top