Google Calendar도 Cloud Id 에 소유가 되며, 다음과 같은 Concept으로 공유 및 사용할 수 있습니다.
[그림] 소유자와 캘린더, 이벤트 Concept
이벤트에는 이벤트의 기본 복사본이 포함 된 캘린더 인 단일 주최자가 있습니다. 이벤트에는 여러 참석자가있을 수도 있습니다. 참석자는 일반적으로 초대 된 사용자의 기본 일정입니다. 다음 다이어그램은 캘린더, 이벤트 및 기타 관련 요소 간의 개념적 관계를 보여줍니다.
[그림] Calendar와 Event와의 다이어그램
Google Calendar API를 이용하면 쉽게 Calendar에 Event를 추가할 수 있습니다.
해당코드
Python 코드는 다음과 같이 간단하게 사용할 수 있습니다.from __future__ import print_function
from apiclient.discovery import build
from httplib2 import Http
from oauth2client import file, client, tools
SCOPES = 'https://www.googleapis.com/auth/calendar'
store = file.Storage('storage.json')
creds = store.get()
if not creds or creds.invalid:
flow = client.flow_from_clientsecrets('client_secret.json', SCOPES)
creds = tools.run_flow(flow, store)
CAL = build('calendar', 'v3', http=creds.authorize(Http()))
TIMEZONE = 'America/Los_Angeles'
EVENT = {
'start': {'dateTime': '2017-07-01T19:00:00', 'timeZone': TIMEZONE},
'end': {'dateTime': '2017-07-01T22:00:00', 'timeZone': TIMEZONE},
'recurrence': ['RRULE:FREQ=MONTHLY;INTERVAL=2;UNTIL=20171231']
}
EVENT_ID = YOUR_EVENT_ID_STR_HERE
e = GCAL.events().patch(calendarId='primary', eventId=EVENT_ID,
sendNotifications=True, body=EVENT).execute()
print('''\
*** %r event (ID: %s) modified:
Start: %s
End: %s
Recurring (rule): %s
''' % (e['summary'].encode('utf-8'), e['id'], e['start']['dateTime'],
e['end']['dateTime'], e['recurrence'][0]))
API Explorer
코드나 OAuth2.0 없이 간단하게 테스트할 수 있도록 Google에서는 API Explorer를 제공합니다.
Event Insert : https://developers.google.com/calendar/v3/reference/events/insert
댓글 없음:
댓글 쓰기