Eli*_*Eli 9 google-calendar-api google-api node.js hangout google-oauth
我已经在黑客一起取得成功,到目前为止googleapis,并gapitoken包上创建通过API谷歌日历事件.所有这一切的目的是找到一种方法来以编程方式生成Google Hangout链接,据我所知,您无法通过API执行此操作.根据这篇文章,您应该能够在创建事件时启用自动创建环聊链接,这是我为该帐户所做的.
我正在使用的代码只能从Node.js运行,所以没有面向用户的部分.我使用服务帐户技术通过OAuth2.0进行身份验证.除了创建的事件不包含名为"hangoutLink"的属性外,一切似乎都能正常工作.有任何想法吗?
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);
});
});
});
});
Run Code Online (Sandbox Code Playgroud)
显式设置身份验证客户端的凭据:
var oauthClient = new OAuth2Client('', '', '');
oauthClient.credentials = {
token_type: 'Bearer',
access_token: token
};
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2734 次 |
| 最近记录: |