Laravel 使用 Google Calendar API

閱讀時間約 4 分鐘

1. 使用composer安裝

$ composer require spatie/laravel-google-calendar

2. publish the configuration

$ php artisan vendor:publish --provider="Spatie\GoogleCalendar\GoogleCalendarServiceProvider"
  • 在config資料夾中會多出一個google-calendar.php

3. 取得Google API credentials

(1) 到Google Cloud Platform頁面,選擇專案。
(2) 點選+啟用API和服務
(3) 找到Google Calendar API啟用:
(4) 新增憑證:
(5) 輸入服務帳戶詳細資料: 直接按完成,可省略2, 3步驟。
(6) 建立private金鑰並下載
(7) 在config/google-calendar.php設定金鑰位置

4. 設定Google日曆: 與剛剛新增的服務帳戶共用

5. 往下滑找到整合日曆,將日曆ID設定至config

可在.env file中設定:
GOOGLE_CALENDAR_ID=XXX

後記:
  • 如果是要新增日曆的話: 須將權限調整為「變動活動」才能寫入。

Example:
  • 新增事件
use Spatie\GoogleCalendar\Event;
use Carbon\Carbon;
$event = new Event;
$event->name = 'XXXX活動';
$event->description = '活動描述測試~~';
$event->startDateTime = Carbon::now();
$event->endDateTime = Carbon::now()->addHour();
$event->location = '高雄市XXX';
$event->save();

2024/01/02 後記: 「如何建立多個日曆」
關鍵在於new Event之前,把config中的calendar_id改掉
use Config;
...
private function changeCalendar($name){
        switch ($name) {
            case 'main':
                Config::set('google-calendar.calendar_id', env('GOOGLE_CALENDAR_ID'));
                break;
            case 'wh':
                Config::set('google-calendar.calendar_id', env('WH_GOOGLE_CALENDAR_ID'));
                break;
        }
}
為什麼會看到廣告
avatar-img
21會員
161內容數
留言0
查看全部
avatar-img
發表第一個留言支持創作者!
Vic Lin的沙龍 的其他內容
Example code: $data['items']: $items: 本筆記參考: 1. https://docfunc.com/posts/36/foreacharraymap-%E8%88%87-laravel-collection-post
Error: wamp解法: 1. 下載cacert.pem 到這邊下載: https://curl.se/docs/caextract.html 2. 將檔案放到ssl folder 路徑類似這樣,放在自己使用的php版本下: 3. 在php.ini中加入cacert.pem的path
每個HTML元素都會有預設的CSS設定,但由於各家瀏覽器預設值沒有統一,就可能導致同樣的程式碼在不同瀏覽器呈現結果不同,比如在Chrome排版看起來正常,但到Safari看起來卻跑版了。因此,Reset CSS與Normalize.css都是為了解決上述問題衍生出來的方法。 Reset CSS
abstract class = 抽象類別 interface = 介面 抽象類別與介面都無法建立物件。 1. 使用abstract關鍵字來建立抽象類別,interface關鍵字建立介面。 interface只能繼承interface,且可以繼承多個:
SCSS與SASS都是CSS預處理器,可以幫助開發者更方便管理CSS程式碼,而SASS寫法上不須加上「{} ;」,而是用縮排來簡化,SCSS寫法上則類似CSS,可以兼容CSS語法,SASS則無法兼容CSS語法,以下將以SCSS為主來說明。 CSS/SCSS/SASS寫法差別 安裝scss編譯器
續上篇,那是Vue 2 Options API的舊寫法,這邊改成用Vue 3 Composition API的寫法: Vue2: Vue3 setup() / ref / reactive Composition API可以直接在setup()裡面定義data跟method,簡潔許多。 props
Example code: $data['items']: $items: 本筆記參考: 1. https://docfunc.com/posts/36/foreacharraymap-%E8%88%87-laravel-collection-post
Error: wamp解法: 1. 下載cacert.pem 到這邊下載: https://curl.se/docs/caextract.html 2. 將檔案放到ssl folder 路徑類似這樣,放在自己使用的php版本下: 3. 在php.ini中加入cacert.pem的path
每個HTML元素都會有預設的CSS設定,但由於各家瀏覽器預設值沒有統一,就可能導致同樣的程式碼在不同瀏覽器呈現結果不同,比如在Chrome排版看起來正常,但到Safari看起來卻跑版了。因此,Reset CSS與Normalize.css都是為了解決上述問題衍生出來的方法。 Reset CSS
abstract class = 抽象類別 interface = 介面 抽象類別與介面都無法建立物件。 1. 使用abstract關鍵字來建立抽象類別,interface關鍵字建立介面。 interface只能繼承interface,且可以繼承多個:
SCSS與SASS都是CSS預處理器,可以幫助開發者更方便管理CSS程式碼,而SASS寫法上不須加上「{} ;」,而是用縮排來簡化,SCSS寫法上則類似CSS,可以兼容CSS語法,SASS則無法兼容CSS語法,以下將以SCSS為主來說明。 CSS/SCSS/SASS寫法差別 安裝scss編譯器
續上篇,那是Vue 2 Options API的舊寫法,這邊改成用Vue 3 Composition API的寫法: Vue2: Vue3 setup() / ref / reactive Composition API可以直接在setup()裡面定義data跟method,簡潔許多。 props
你可能也想看
Google News 追蹤
Thumbnail
你有幾個 Google 帳號?Google 提供許多免費的應用程式,包括大家最常使用的地圖、YouTube、 email、日曆、Meet、Gemini、雲端硬碟、翻譯、文件、Google表單…等,如果你還沒有申請過 Google 帳號,請 抽空到此申請,免費體驗各種功能豐富的應用程式。 下圖右邊都
Thumbnail
這是一篇介紹如何使用Google Maps API在網頁上呈現地圖,並進行店家名稱的搜尋的文章。內容包含如何申請Google Cloud Platform的API金鑰、初始化地圖、設定搜尋功能等步驟。文章中提供了部分程式碼範例,並附上圖片說明操作過程。
Thumbnail
在這個快節奏的生活中,有效管理時間至關重要。而要達到這個目標,我們需要一個靈活且功能豐富的日曆系統。今天,我將介紹一個結合了 Notion 和 Google Calendar 的強大工具:Notion Calendar。它不僅提供了日程管理的基本功能,還能讓你根據自己的需求來管理時間,進而提高效率。
Thumbnail
Google 提供了免費的雲端服務 Google Apps Script (GAS) ,我們可以撰寫一些簡易的程式APP,串接其他 Google 雲端服務 如 Google Docs ,Sheets …,就能夠幫助我們利用雲端硬碟做日常工作
Thumbnail
在本篇文章中,將會設定 Cloud Run,以便每當將程式修改並推送到 GitHub 時,它都會使用 Cloud Build 自動構建和部署應用程序的最新版本。
Thumbnail
本篇文章將描述如何產生GCP的服務帳戶金鑰,並利用該金鑰在DBeaver或是其他透過支援JDBC的軟體連接到BigQuery服務。
Thumbnail
在Google Analytics中,您可以授予其他使用者對您的資源(例如網站或應用程式)的存取權限。這樣他們就可以查看和分析資源的數據。下面是在Google Analytics中新增資源存取權限的步驟:
Thumbnail
Composer是PHP的軟體套件管理系統,它提供用於管理PHP軟體和依賴庫關係的標準格式。通常以專案為單位進行管理,會在專案根目錄底下(預設是vendor)安裝套件,除此外可以安裝全局套件。
Thumbnail
最近這一兩年,市面上突然多出很多行事曆工具可以選擇,不管是 Google calendar 的更新、Cron、Morgan、Rise、一直到最近出現的 HEY 跟 amie,在這麼多的行事曆中,其實只要掌握好核心概念,就可以掌握主動權,來提升生產力。
Thumbnail
Notion Calendar最大的特色跟功能就是 可將資料庫跟已經建立好的google日曆直接匯入統一檢視達到雙向互動 到底什麼意思?哪裡好用?還能變日記app?有什麼跟google日曆不一樣的地方嗎? 想學同一個資料庫分別放入Notion Calendar用不同顏色分別的小技巧就看這一篇
Thumbnail
你有幾個 Google 帳號?Google 提供許多免費的應用程式,包括大家最常使用的地圖、YouTube、 email、日曆、Meet、Gemini、雲端硬碟、翻譯、文件、Google表單…等,如果你還沒有申請過 Google 帳號,請 抽空到此申請,免費體驗各種功能豐富的應用程式。 下圖右邊都
Thumbnail
這是一篇介紹如何使用Google Maps API在網頁上呈現地圖,並進行店家名稱的搜尋的文章。內容包含如何申請Google Cloud Platform的API金鑰、初始化地圖、設定搜尋功能等步驟。文章中提供了部分程式碼範例,並附上圖片說明操作過程。
Thumbnail
在這個快節奏的生活中,有效管理時間至關重要。而要達到這個目標,我們需要一個靈活且功能豐富的日曆系統。今天,我將介紹一個結合了 Notion 和 Google Calendar 的強大工具:Notion Calendar。它不僅提供了日程管理的基本功能,還能讓你根據自己的需求來管理時間,進而提高效率。
Thumbnail
Google 提供了免費的雲端服務 Google Apps Script (GAS) ,我們可以撰寫一些簡易的程式APP,串接其他 Google 雲端服務 如 Google Docs ,Sheets …,就能夠幫助我們利用雲端硬碟做日常工作
Thumbnail
在本篇文章中,將會設定 Cloud Run,以便每當將程式修改並推送到 GitHub 時,它都會使用 Cloud Build 自動構建和部署應用程序的最新版本。
Thumbnail
本篇文章將描述如何產生GCP的服務帳戶金鑰,並利用該金鑰在DBeaver或是其他透過支援JDBC的軟體連接到BigQuery服務。
Thumbnail
在Google Analytics中,您可以授予其他使用者對您的資源(例如網站或應用程式)的存取權限。這樣他們就可以查看和分析資源的數據。下面是在Google Analytics中新增資源存取權限的步驟:
Thumbnail
Composer是PHP的軟體套件管理系統,它提供用於管理PHP軟體和依賴庫關係的標準格式。通常以專案為單位進行管理,會在專案根目錄底下(預設是vendor)安裝套件,除此外可以安裝全局套件。
Thumbnail
最近這一兩年,市面上突然多出很多行事曆工具可以選擇,不管是 Google calendar 的更新、Cron、Morgan、Rise、一直到最近出現的 HEY 跟 amie,在這麼多的行事曆中,其實只要掌握好核心概念,就可以掌握主動權,來提升生產力。
Thumbnail
Notion Calendar最大的特色跟功能就是 可將資料庫跟已經建立好的google日曆直接匯入統一檢視達到雙向互動 到底什麼意思?哪裡好用?還能變日記app?有什麼跟google日曆不一樣的地方嗎? 想學同一個資料庫分別放入Notion Calendar用不同顏色分別的小技巧就看這一篇