我已使用日历api https://www.googleapis.com/calendar/v3/calendars/创建事件,但未获取会议链接。另外我已经在邮递员中测试了api,但是在附着正文时要求越来越差
resource:{conferenceData:{createRequest:{requestId:7qxalsvy02}}}
conferenceDataVersion: 1
summary: demo14
start: { dateTime: 14/10/2020, timeZone: UTC}
end: { dateTime: 14/10/2020, timeZone: UTC}
attendees: [{email: burhanuddin.hussain@pragtech.co.in, self: True}]
description:des
附加代码
bearer = 'Bearer '+login_user_id.access_token
payload = {}
headers = {
'Content-Type': "application/json",
'Authorization':bearer
}
attendees_list = []
attendees = self.sudo().partner_ids
for i in attendees:
attendees_list.append({"email" :i.email})
resource={"conferenceData":{"createRequest":{"requestId": "7qxalsvy02"}}}
body={
"resource": resource,
"conferenceDataVersion": 1,
"summary" : self.name,
"start": { "dateTime": start_datetime, "timeZone": "UTC"},
"end": { "dateTime": end_datetime, "timeZone": "UTC"},
"attendees":attendees_list,
"description":self.description,
}
data_json = json.dumps(body)
url='https://www.googleapis.com/calendar/v3/calendars/'+login_user_id.calendar_id+'/events'
hangout_meet_response = requests.request("POST", url, headers=headers, data=data_json)
if hangout_meet_response.status_code == 200:
data_rec = hangout_meet_response.json()
self.write({"meet_url":data_rec.get('hangoutLink'),"meet_id":data_rec.get('id')})
hangout_meet_link = data_rec.get('hangoutLink')
if hangout_meet_link:
self.write({"meet_code": hangout_meet_link.split('/')[3]})
elif hangout_meet_response.status_code == 401:
raise UserError("Please Authenticate with Hangouts Meet.")
答案 0 :(得分:0)
conferenceDataVersion
不是请求正文的一部分,需要将其合并到请求URL中:url='https://www.googleapis.com/calendar/v3/calendars/'+login_user_id.calendar_id+'/events?conferenceDataVersion=1';
body = {
"conferenceData":{"createRequest":{"requestId": "7qxalsvy02"}},
"summary" : self.name,
"start": { "dateTime": start_datetime, "timeZone": "UTC"},
"end": { "dateTime": end_datetime, "timeZone": "UTC"},
"attendees":attendees_list,
"description":self.description
}