SlideShare a Scribd company logo
SERVER TO SERVER (SERVICE-ACCOUNT 방식으)로..
GOOGLE CALENDAR API -
PHP 연동하기
2016 / 11 / 05
목차
 연동하기 전에 필요한 준비
 PHP 버전 확인 및 API 다운로드
 공유할 캘린더 만들기
 Server to Server로 연동하기
 샘플코드로 확인하기
0. 연동하기 전에 필요한 준비 사항
 연동할 캘린더를 사용할 Google 계정
 (계정 가입 정도는 알아서…)
 PHP 5.4 이상이 설치된 웹서버 혹은 호스팅
 (SSH를 사용할 수 있고 php-composer가 설치되어 있으면 더 좋습니다)
 소스 코드를 입력할 편집기 및 확인 해볼 웹브라우저 등등…
1. PHP 버전 확인 및 API 다운로드  SSH가 지원되는 분은
 쉘에서 php –v
 호스팅을 사용하시는 분은
 phpinfo(); 함수 호출 페이지 실행
5.4 이하 버전인 경우 포기하시거나 서버 관리자에게 문의하세요
SSH 접속이 가능하고 composer 사용이 가능하신 분은
composer.phar require google/apiclient:^2.0
명령으로 편하게 설치하세요
수동 다운로드는 google api의 github Releases 페이지에서
( https://github.com/google/google-api-php-client/releases )
FTP 프로그램으로 업로드 합니다
1. 공유할 구글 캘린더 만들기
 https://calendar.google.com
구글 캘린더 페이지로 이동합니다
(https://calendar.google.com)
캘린더에 설정으로 들어갑니다
캘린더 탭으로 갑니다
(기존 캘린더를 사용하실 분은 목록 중에 선택하세요)
본 가이드는 새로운 캘린더를 만들어서 수행합니다
1. 캘린더 제목을 적고
2. 공개 설정에 체크를 꼭 하셔야합니다.
3. 새 캘린더를 만들어 주세요
기존 캘린더를 수정하실 분은 목록에서 선택 후 [이 캘린더 공유하기] 탭으로 이동합니다
Google Calendar API - PHP 연동하기
2. 구글 캘린더 API 사용 설정하기
c.까지만 동일하게 진행합니다.
 https://developers.google.com/google-apps/calendar/quickstart/php
Google Calendar API - PHP 연동하기
Google Calendar API - PHP 연동하기
EXTRA) 처음 API를 사용하고 프로젝트가 없다면 현재와 같은 화면으로 나올 수 있습니다
Google Calendar API - PHP 연동하기
우선 취소를 눌러서 빠져 나옵니다
Google Calendar API - PHP 연동하기
Google Calendar API - PHP 연동하기
3. OAUTH를 SERVER TO SERVER로 인증
 https://developers.google.com/api-client-library/php/auth/service-accounts
Google Calendar API - PHP 연동하기
Google Calendar API - PHP 연동하기
(주의) 이 JSON 파일은 정말 딱 한 번만 다운로드 가능합니다!
[service-account.json]란 이름으로 저장하고 FTP를 통해 업로드 합니다
서비스 관리자 페이지로 이동합니다
(https://console.developers.google.com/permissions/serviceaccounts)
아까 만든 프로젝트를 선택합니다
프로젝트를 확인하고 서비스 계정 ID를 클립보드에 복사합니다
잠시 구글 캘린더 공유 설정 페이지로 이동합니다. [특정 사용자와 공유]에서 전 페이지에서
복사한 ID를 넣고 [일정 변경 및 공유 관리]권한을 주어 사용자를 추가하고 저장합니다.
(이 설정을 해주어야만 API에서 캘린더에 일정 쓰기가 가능해 집니다.)
4. 샘플 코드를 이용하여 이벤트 추가하기
 https://github.com/denlyou/owo_guide_google_calendar_api_php
(https://github.com/denlyou/owo_guide_google_calendar_api_php/blob/master/test.php )
링크로 이동하여 Raw버튼에서 마우스 오른쪽을 눌러 test.php 로 저장합니다
( https://calendar.google.com/calendar/render?tab=wc#settings-calendars_9 )
링크로 이동하여 API를 테스트할 캘린더의 ID를 클립보드로 복사합니다.
편집기를 이용하여 2번째 줄의 $calendarId 변수의 값을 전페이지에서 복사한 값으로 변경합니다.
FTP 프로그램을 이용하여 파일을 서버에 업로드 하고 해당 주소로 이동하여 테스트 해봅니다.
정상적으로 이벤트가 추가 되면 괴상한(?)문자열의 id를 보여줍니다.
해당 캘린더에 이벤트가 등록되었다면 성공!
수고하셨습니다.
 이제 API reference를 참조하여 필요한 기능을 만들어 쓰세요~
https://developers.google.com/google-apps/calendar/v3/reference/

More Related Content

PPTX
Cash Liquidity Management
PDF
Fiori technical doc
PDF
Cash Management in SAP
DOCX
Employee Leave Management System
PPTX
Sales and inventory management
PPT
SAP HANA Overview
PDF
Manage shopping cart
PDF
React in Action ( PDFDrive ).pdf
Cash Liquidity Management
Fiori technical doc
Cash Management in SAP
Employee Leave Management System
Sales and inventory management
SAP HANA Overview
Manage shopping cart
React in Action ( PDFDrive ).pdf

Similar to Google Calendar API - PHP 연동하기 (20)

PDF
AWS CLOUD 2018- 보다 강력한 Serverless, AWS Lambda 기능 확장(안효빈 솔루션즈 아키텍트)
PPTX
구글앱엔진 스터디
PPTX
AWS Amplify, AppSync를 이용한 모던 어플리케이션 개발
PDF
AWS DevDay 실습 가이드 - 서버리스
PDF
IBM Bluemix handson lab_DevOps_Target_Deploy_configutation_java_petclinic_v1.0
PDF
GDG Incheon Devfest 2016 - Google API로 만드는 더욱 더 풍부한 백오피스
PPTX
Aws lambda 와 함께 서버리스 서비스 만들기
PPTX
Hands-on Vue Springboot Simple Admin
PDF
RESTful API 설계
PPTX
PHP Slim Framework with Angular
PDF
Sources와 Sinks를 Confluent Cloud에 원활하게 연결
PPTX
[Azure bootcamp2017] Azure App Service로 서비스 탄탄하게 관리하기
PDF
프론트엔드 개발자가 혼자 AWS 기반 웹애플리케이션 만들기::박찬민::AWS Summit Seoul 2018
PDF
서버리스 앱 배포 자동화 (김필중, AWS 솔루션즈 아키텍트) :: AWS DevDay2018
PDF
REST API Development with Spring
PPTX
Open standard open cloud engine (3)
PDF
Feature Branch Branch Dev QA 환경 구성기
PDF
[AIS 2018][Team Tools_Basic] Atlassian 제품 기반의 DevOps 구성 - 투씨드
PPTX
2Naver Open Android API Translation At DCamp
PDF
F3 네이버오픈api만드는매쉬업
AWS CLOUD 2018- 보다 강력한 Serverless, AWS Lambda 기능 확장(안효빈 솔루션즈 아키텍트)
구글앱엔진 스터디
AWS Amplify, AppSync를 이용한 모던 어플리케이션 개발
AWS DevDay 실습 가이드 - 서버리스
IBM Bluemix handson lab_DevOps_Target_Deploy_configutation_java_petclinic_v1.0
GDG Incheon Devfest 2016 - Google API로 만드는 더욱 더 풍부한 백오피스
Aws lambda 와 함께 서버리스 서비스 만들기
Hands-on Vue Springboot Simple Admin
RESTful API 설계
PHP Slim Framework with Angular
Sources와 Sinks를 Confluent Cloud에 원활하게 연결
[Azure bootcamp2017] Azure App Service로 서비스 탄탄하게 관리하기
프론트엔드 개발자가 혼자 AWS 기반 웹애플리케이션 만들기::박찬민::AWS Summit Seoul 2018
서버리스 앱 배포 자동화 (김필중, AWS 솔루션즈 아키텍트) :: AWS DevDay2018
REST API Development with Spring
Open standard open cloud engine (3)
Feature Branch Branch Dev QA 환경 구성기
[AIS 2018][Team Tools_Basic] Atlassian 제품 기반의 DevOps 구성 - 투씨드
2Naver Open Android API Translation At DCamp
F3 네이버오픈api만드는매쉬업
Ad

More from 승빈이네 공작소 (20)

PDF
토이 프로젝트를 위한 속성 RDB(MySQL) 스터디 3
PDF
토이 프로젝트를 위한 속성 RDB(MySQL) 스터디 2
PDF
토이 프로젝트를 위한 속성 RDB(MySQL) 스터디 1
PDF
Vue.js 입문 04 조건부 랜더링
PDF
Vue.js 입문 03 데이터와 메소드
PDF
Vue.js 입문 02 템플릿 문법
PDF
Git 코드랩 스터디 4
PDF
Git 코드랩 스터디 3
PDF
Git 코드랩 스터디 2
PDF
Git 코드랩 스터디 1
PDF
ES6 for Node.js Study 5주차
PDF
ES6 for Node.js Study 4주차
PDF
ES6 for Node.js Study 3주차
PDF
ES6 for Node.js Study 2주차
PDF
ES6 for Node.js Study
PDF
겜냥이 어플 활용 가이드
PDF
Firebase for web (웹개발을 위한 파이어베이스) 4 Storage
PDF
Firebase for web (웹개발을 위한 파이어베이스) 3 Real-Time Database
PDF
Firebase for web (웹개발을 위한 파이어베이스) 2 Authentication
PDF
Firebase for Web (웹개발을 위한 파이어베이스) 1 Hosting
토이 프로젝트를 위한 속성 RDB(MySQL) 스터디 3
토이 프로젝트를 위한 속성 RDB(MySQL) 스터디 2
토이 프로젝트를 위한 속성 RDB(MySQL) 스터디 1
Vue.js 입문 04 조건부 랜더링
Vue.js 입문 03 데이터와 메소드
Vue.js 입문 02 템플릿 문법
Git 코드랩 스터디 4
Git 코드랩 스터디 3
Git 코드랩 스터디 2
Git 코드랩 스터디 1
ES6 for Node.js Study 5주차
ES6 for Node.js Study 4주차
ES6 for Node.js Study 3주차
ES6 for Node.js Study 2주차
ES6 for Node.js Study
겜냥이 어플 활용 가이드
Firebase for web (웹개발을 위한 파이어베이스) 4 Storage
Firebase for web (웹개발을 위한 파이어베이스) 3 Real-Time Database
Firebase for web (웹개발을 위한 파이어베이스) 2 Authentication
Firebase for Web (웹개발을 위한 파이어베이스) 1 Hosting
Ad

Google Calendar API - PHP 연동하기