नहीं बना रहा है, मैं एपीआई के माध्यम से Google कैलेंडर पर ईवेंट बनाने के लिए googleapis
और gapitoken
पैकेजों को एक साथ हैकिंग में सफल रहा हूं। इसका सब कुछ प्रोग्रामेटिक रूप से एक Google Hangout लिंक उत्पन्न करने का तरीका ढूंढना था, जिसे आप एपीआई के माध्यम से नहीं कर सकते, जहां तक मुझे पता है। this post के अनुसार, आप ईवेंट बनाने के दौरान Hangout लिंक के स्वचालित निर्माण को सक्षम करने में सक्षम होना चाहिए, जिसे मैंने खाते के लिए किया है।एपीआई का उपयोग करके Google कैलेंडर ईवेंट बनाना, Hangout लिंक
मैं जिस कोड का उपयोग कर रहा हूं वह केवल नोड.जेएस से चलने वाला है, इसलिए कोई उपयोगकर्ता का सामना करने वाला हिस्सा नहीं है। मैं OAuth2.0 के माध्यम से प्रमाणित करने के लिए सेवा खाता तकनीक का उपयोग कर रहा हूं। सबकुछ ठीक काम करता प्रतीत होता है, सिवाय इसके कि घटना को छोड़कर 'hangoutलिंक' नामक कोई संपत्ति नहीं है। कोई विचार?
var moment = require('moment');
var googleapis = require('googleapis');
var GoogleToken = require('gapitoken');
var OAuth2Client = googleapis.OAuth2Client;
var token = new GoogleToken({
iss: '*******************@developer.gserviceaccount.com',
scope: 'https://www.googleapis.com/auth/calendar',
keyFile: './*****************.pem'
}, function (err) {
if (err) {
return console.log(err);
}
token.getToken(function (err, token) {
if (err) {
return console.log(err);
}
googleapis.load('calendar', 'v3', function (err, client) {
var oauthClient = new OAuth2Client('', '', '', {}, {
token_type: 'Bearer',
access_token: token
});
var now = moment().format();
client
.calendar
.events
.insert({
calendarId: 'primary',
resource: {
summary: 'hangout',
description: 'hangout',
reminders: {
overrides: {
method: 'popup',
minutes: 0
}
},
start: {
dateTime: now
},
end: {
dateTime: now
},
attendees: [{
email: '****@**********.com'
}]
}
})
.withAuthClient(oauthClient)
.execute(function (err, event) {
// event does not contain hangoutLink
console.log(event.hangoutLink);
});
});
});
});
मैं वर्तमान में बहिष्कृत एपीआई का उपयोग करके कुछ ऐसा कर रहा हूं जो आपको टोकन का उपयोग करने की अनुमति देता है। वर्तमान में क्या काम कर रहा है इसके लिए यहां देखें: https://gist.github.com/eliperelman/b0201cbea1556ed1fe2e ध्यान दें कि मैंने कुछ अतिरिक्त पैरामीटर पास करने की अनुमति देने के लिए अंतर्निहित मॉड्यूल में कुछ संशोधन किए हैं। – Eli
आह, हाँ। वे ऐसे उपयोगकर्ता से सामान्य उपयोगकर्ता टोकन हैं जिनके पास स्वतः-निर्माण-hangout चालू है? मैं कुछ ऐसा कर सकता हूं। ओथ फ्लो स्पष्ट रूप से ऐसी सेवा के लिए इतना अच्छा नहीं है जो उपयोगकर्ता हस्तक्षेप के बिना चलाना चाहिए, इसलिए टोकन जेनरेट करने के लिए उपयोगकर्ताओं के क्रेडेंशियल्स को हार्ड कोड करने में सक्षम होना आसान होगा। मैं वह शॉट दूंगा। आखिरकार, ये दोनों दृष्टिकोण काफी नाजुक लगते हैं और Google उन्हें किसी भी समय तोड़ सकता है। निराशाजनक यह करने के लिए एक अग्रिम तरीका नहीं है। – drewww
मुझे क्लाइंटलॉगिन के बिना स्वचालित फैशन में काम करने की आकांक्षाएं थीं, लेकिन मुझे इस बिंदु पर कोई रास्ता नहीं दिख रहा है। कुछ स्तर पर मानव/ब्राउज़र हस्तक्षेप के बिना काम करने योग्य प्रतीत नहीं होता है। जितना दर्द होता है, मुझे लगता है कि मुझे क्लाइंटलॉगिन मार्ग भी जाना है। क्या आप क्लाइंटलॉगिन में किए गए परिवर्तनों को साझा करना चाहते हैं? या बस मुझे समायोजन पर सही दिशा में इंगित करें? – drewww