2016-01-07 5 views
5

मैं गूगल कैलेंडर एपीआई पर काम कर रहा हूँ और Node.js अपने आवेदन का निर्माण करने के लिए एक मंच के रूप में उपयोग। मैं प्रमाणीकरण प्रक्रिया के दौरान उत्पन्न किए गए पहुंच टोकन का उपयोग करके प्रमाणीकरण प्रक्रिया का उपयोग करके ईवेंट कैलेंडर बनाने और कैलेंडर ईवेंट बनाने में सक्षम हूं।GoogleCalendarAPI स्वीकार/अस्वीकार घटना

मेरा प्रश्न यह है कि मान लीजिए कि अगर हमारे पास इस कार्यक्रम में कोई उपस्थिति है और मैं उपस्थिति के पक्ष से कैलेंडर एपीआई का उपयोग करके ईवेंट को स्वीकार/अस्वीकार करना चाहता हूं, तो हम यह कैसे कर सकते हैं?

मैंने उपस्थिति के कैलेंडर ईवेंट को लाने और iCalUID के साथ मिलान करने की कोशिश की है जो मूल रूप से बनाई गई थी और फिर उपस्थिति के कैलेंडर पर अपडेट ईवेंट का उपयोग करके ईवेंट को संशोधित करने का प्रयास किया गया था।

उत्तर

0

प्रतिक्रिया के लिए, आपको उपस्थित व्यक्ति के कैलेंडर से एक ही घटना आईडी के साथ घटना हो और बाद में हामी भर के लिए needsAction से इस उपस्थित की response status बदलते एक पैच या अद्यतन कार्रवाई करने के लिए की जरूरत है/मना कर दिया।

कैसे घटनाओं में उपस्थित लोग और आयोजकों के बीच कॉपी कर रहे हैं पर दस्तावेज की यह है कि: https://developers.google.com/google-apps/calendar/concepts/sharing

2

घटना निर्माता या स्वामी उपस्थित लोगों की प्रतिक्रिया को संशोधित नहीं कर सकते हैं। केवल उपस्थिति ही अपनी स्थिति को संशोधित कर सकते हैं।

उपयोगकर्ता के पक्ष में स्थिति को अपडेट करने के लिए, आप Event.update API का उपयोग कर सकते हैं और 'attendees.responseStatus' के लिए मान प्रदान कर सकते हैं। उपस्थिति की प्रतिक्रिया स्थिति में 4 (चार) संभावित मूल्य (नीचे वर्णित) है।

'needAction' - ने निमंत्रण का जवाब नहीं दिया है। 'अस्वीकार' - ने निमंत्रण को अस्वीकार कर दिया है। 'टेंटेटिव' - ने निमंत्रण को 'स्वीकृत' निमंत्रण स्वीकार कर लिया है - आमंत्रण स्वीकार कर लिया है। कैलेंडर पहचानकर्ता:

इस के अलावा, आप शब्द "प्राथमिक" मूल्य के रूप में कैलेंडर आईडी का प्रतिनिधित्व करने के लिए वर्तमान में उपयोगकर्ता

CalendarId में लॉग इन कर सकते हैं। कैलेंडर आईडी पुनर्प्राप्त करने के लिए calendarList.list विधि को कॉल करें। यदि आप वर्तमान में लॉग इन उपयोगकर्ता के प्राथमिक कैलेंडर तक पहुंचना चाहते हैं, तो "प्राथमिक" कीवर्ड का उपयोग करें। (स्ट्रिंग)।

आईडी के लिए, आपको Events.list API द्वारा "id" को वापस करने की आवश्यकता है "iCalUID" नहीं। वे दो अलग हैं here वर्णित हैं।

अन्य क्षेत्रों है कि आप प्रदान करने की आवश्यकता, StartDate और EndDate (प्रतिभागी का) ईमेल कर रहे हैं।

अधिक जानकारी के लिए आप आधिकारिक दस्तावेज देख सकते हैं, लिंक नीचे: https://developers.google.com/google-apps/calendar/v3/reference/events

1

यहाँ जावा में एक उदाहरण है, PATCH का उपयोग कर। केवल उस जानकारी के साथ एक ईवेंट ऑब्जेक्ट बनाएं जिसे आप बदलना चाहते हैं, इस मामले में उपस्थिति और प्रतिक्रिया स्थिति। यह कोड उपस्थिति के रूप में चल रहा है।

final Event event = new Event() 
    .setAttendees(Arrays.asList(new EventAttendee().setEmail(email) 
    .setResponseStatus("declined"))); 
try 
    getCalendarService(googleAccountCredential).events() 
     .patch(CALENDAR_PRIMARY, calendarEventId, event) 
     .setSendNotifications(true) 
     .setOauthToken(googleAccountCredential.getToken()).execute(); 
    return true; 
} catch (final Exception ex) { 
... 
    return false; 
} 

      }