2017-03-04 6 views
11

मैं नए ऑफिस-जेएस एपिस का उपयोग करके Outlook एडिन पर काम कर रहा हूं, और प्रमाणीकरण प्रवाह का निर्माण करने में, मैंने पाया है कि मैक केस के लिए Outlook 2016 में, संवाद प्रणाली ठीक से काम नहीं कर रही है।क्या Office.context.ui.message माता-पिता मैक के लिए Outlook 2016 में टूटा हुआ है?

स्पष्ट होने के लिए, हम Office Insider फास्ट ट्रैक बिल्ड का उपयोग कर रहे हैं क्योंकि इसमें Office-JS API के लिए बहुत बेहतर समर्थन है।

मैं इस विशेष टुकड़े के कई पुनरावृत्तियों के माध्यम से रहा हूं (जिनमें से अधिकांश विंडोज क्लाइंट और मैक और विन पर वेब क्लाइंट दोनों में ठीक काम करते हैं), और कोई भाग्य नहीं है। परिदृश्य है:

  1. सूची आइटम
  2. दृष्टिकोण में कार्य फलक खोलें।
  3. बटन
  4. एक नई विंडो खुलती साइन इन मारो, में हमारे प्रमाणीकरण पोर्टल पर
  5. उपयोगकर्ता संकेत इशारा किया।
  6. प्रमाणन पूरा होने पर, खिड़की कार्यालय में एक पृष्ठ पर रीडायरेक्ट ऐड-इन गुंजाइश है, और ऑथ टोकन के साथ पैरेंट फ्रेम पर वापस कॉल करता है, जहां इसे आगे संसाधित किया जा सकता है।

सभी प्लेटफ़ॉर्म पर चरण 1 से 5 कार्य ठीक है। चरण 6 मैक के लिए Outlook पर काम करने से इंकार कर देता है। प्रारंभ में, यह प्रवाह देशी जेएस window.open और window.postMessage apis का उपयोग करके बनाया गया था। जैसा ऊपर बताया गया है, यह हर जगह काम करता है लेकिन आउटलुक मैक, जहां, एपीआई विंडो विकल्पों को अनदेखा कर रहा था और जो कुछ भी ब्राउज़र खुला था, उसमें एक नए टैब में यूआरएल खोलें और कभी भी बच्चे विंडो संदर्भ को सेट न करें (window.open null के परिणाम)।

इस पर असफल रहा, मैंने कार्यालय कार्यक्षमता, displayDialogAsync और MessageParent का उपयोग करने के लिए SO पर यहां दी गई सलाह का पालन किया। कुछ शुरुआती बाधाओं के बाद, यह भी सेटअप और आउटलुक मैक को बचाने के हर मंच पर काम कर रहा था।

मैक आउटलुक में कोई देव उपकरण या जेएस कंसोल समर्थन नहीं है, इसलिए मैंने Howto: Outlook 2016 for Mac - Debugging/View Console Logs in Outlook Add-in पर मिली सलाह का पालन किया और कुछ संदर्भ प्राप्त करने के लिए वोरलॉन सेटअप किया, कुछ लॉगिंग पॉइंट जोड़ने और कुछ संदर्भ प्राप्त करने के लिए सेट किया। दुर्भाग्यवश, जबकि वोरलोन क्लाइंट के रूप में अपना ऑथ लैंडिंग पृष्ठ उठाता है, और ऑफिस इंटरफेस देखता है, मेरे कंसोल आउटपुट में से कोई भी प्रस्तुत नहीं होता है, ऐसा लगता है कि जेएस बिल्कुल नहीं चल रहा है।

इस बिंदु पर मुझे यकीन नहीं है कि आगे क्या प्रयास करें। क्या किसी ने इस समस्या में भाग लिया है, या मैक क्लाइंट के लिए Outlook 2016 पर काम करने के लिए इसे प्राप्त किया है?

स्पष्ट संदर्भ:

  • सभी प्रमाणन पृष्ठों प्रकट की AppDomains अनुभाग में सूचीबद्ध हैं।
  • प्रारंभिक संस्करण सीधे हमारी ऑथ सेवा (यह मैक पर काम नहीं करता) पर इंगित करते हैं, वर्तमान संस्करण पहले एक स्कोप प्री-ऑथ पेज खोलता है जो ऑथ सेवा पर रीडायरेक्ट करता है।
  • Office-JS api के ब्लॉक अलर्ट, उपयोगी जानकारी प्रदर्शित करने में उनके उपयोग को रोकते हैं।
  • इस ऐप के सभी संस्करणों के माध्यम से प्रमाणीकरण ने Win और Mac दोनों पर विंडोज और ओडब्ल्यूए पर Outlook 2016 दोनों पर काम किया है।

धन्यवाद।

+0

ऐसा लगता है जैसे आप सब ठीक कर रहे हैं। (यदि आप पहले से नहीं हैं, तो आप इसे पढ़ना चाहेंगे: https://dev.office.com/docs/add-ins/develop/dialog-api-in-office-add-ins)। इसके अलावा, हमारे पास मैक पर वोरलॉन का उपयोग करने के बारे में एक और हालिया आलेख है: https://dev.office.com/docs/add-ins/testing/debug-office-add-ins-on-ipad-and-mac –

+0

कुछ प्रश्न: (1) मट्ठा आप कहते हैं कि चरण 6 काम नहीं करता है, इसका मतलब है कि आपको स्थानीय पृष्ठ पर पुनर्निर्देशन नहीं मिलता है या क्या आपका मतलब है कि स्थानीय पृष्ठ खुलता है, लेकिन messsage माता-पिता काम नहीं कर रहे हैं? (2) क्या डायलॉगमेसेज के लिए आपका हैंडलर कुछ भी ऐसा करता है जो आपको एक दृश्य संकेत देगा जो यह चलता है, जैसे संवाद बंद करें? (3) यदि आपको console.logs देखने का कोई तरीका नहीं मिल रहा है, तो आप प्रासंगिक पृष्ठ में div को डालने और div की टेक्स्ट प्रॉपर्टी में "लॉग" करने का प्रयास कर सकते हैं। –

+0

क्षमा करें, मुझे और स्पष्ट होना चाहिए था। हां, रीडायरेक्ट काम करता है, लेकिन जावास्क्रिप्ट में से कोई भी ऐसा नहीं लगता ... कुछ भी। मैंने लॉग जानकारी के साथ एक div को लिखने का विचार नहीं किया था, जो कम से कम _some_ प्रकार का संदर्भ प्रदान कर सकता है। संदेश कभी भी ट्रिगर नहीं हुआ। लिंक के लिए धन्यवाद, वे हैं जिन्हें मैंने जल्दी इस्तेमाल किया था और यह पता लगाने के लिए कि क्या गलत हो सकता है। खतरनाक रूप से, मैंने खिड़की बंद होने के लिए एक ईवेंट हैंडलर सेट करने का प्रयास किया, लेकिन ऐसा लगता है कि _any_ प्लेटफॉर्म पर आग लगती नहीं है। – Ava

उत्तर

3

Outlook Mac में यह समस्या कुछ महीने पहले तय की गई है।अगर किसी भी हालिया आउटलुक मैक बिल्ड के साथ इस समस्या का सामना करना पड़ता है, तो कृपया बिल्ड नंबर के साथ उत्तर दें।

+0

@ बीᴜᴅɪ मुझे इतना यकीन नहीं है कि इसे हटाया जाना चाहिए; "आउटलुक मैक में यह समस्या कुछ महीने पहले तय की गई है" प्रश्न के उत्तर की तरह दिखता है। – NobodyNada

+1

@NobodyNada hmm ... यह उन सीमा-रेखा समीक्षाओं में से एक है जो मुझे लगता है कि उत्तर देने की आवश्यकता नहीं है, बल्कि एक टिप्पणी होना चाहिए ... मैं अपनी टिप्पणी हटा दूंगा। –

+0

हालांकि यह लिंक प्रश्न का उत्तर दे सकता है, लेकिन यहां उत्तर के आवश्यक हिस्सों को शामिल करना बेहतर है और संदर्भ के लिए लिंक प्रदान करना बेहतर है। लिंक किए गए पृष्ठ में परिवर्तन होने पर लिंक-केवल उत्तर अमान्य हो सकते हैं। - [समीक्षा से] (/ समीक्षा/कम गुणवत्ता वाले पदों/1675 9 438) – loki

संबंधित मुद्दे