GASでGoogleカレンダーのMeet会議を設定した予定・イベントを作成する方法
Googleカレンダーで作成する予定にはビデオ会議サービスのGoogle Meetと連携し、Meet会議を設定可能です。
そこでGoogle Apps Script(GAS)を使って、Google Meetの会議設定されたGoogleカレンダーの予定を作成する方法を解説します。
Googleカレンダー予定にMeet会議を設定可能
Googleカレンダーはスケジュール管理ツールとして多くのユーザーに活用されています。
Googleアカウントを使うことで、GmailなどのGoogleサービスと連携し、色々なユーザーとカレンダーの予定やイベントを共有できます。
さらにリモートワークが普及したことで、Googleカレンダーの予定にビデオ会議ツールのGoogle Meetが設定できるようになりました。
Googleカレンダーの設定項目としてGoogleMeetを設定すると、オンライン会議の予定が作成可能です。
GoogleカレンダーでMeet会議の予定を作成し、チームやグループメンバーに共有することでビデオ会議を簡単に開くことができます。
GASでもMeet会議予定を作成したい
グーグルのスクリプトサービスであるGoogle Apps Script(GAS)では、Googleカレンダーをスクリプト操作可能です。
Googleカレンダーの予定取得や変更、削除といった処理がGASで実行することができます。
GASでのGoogleカレンダーの予定作成などの各種操作は以下の記事でまとめています。
GASでGoogleカレンダーを操作できるとなると、Meet会議が設定されたGoogleカレンダーの予定が作れないか試してみたくなります。
デフォルトのCalendarAppでは設定不可
前述したGoogle Apps Script(GAS)でGoogleカレンダーを操作する方法の解説では、CalendarAppというオブジェクトを利用しています。
このCalendarAppはGASにデフォルトで用意されていて、特に追加設定なしでGoogleカレンダーを操作可能です。
しかし、Googleカレンダーの予定にGoogle Meet会議を設定するのは、CalendarAppでは実行できません。
CalendarAppでは予定の作成ができるものの、予定の件名や時間、色など設定できますが、複雑な設定は不可能です。
それではGoogle Meet会議が設定されたGoogleカレンダーの予定は作成できないかと言えば、実は作成することができます。
それには、GASのサービスに用意されている「Google Calendar API」を使うことでMeet会議付き予定が設定可能です。
GASでMeet会議付きGoogleカレンダー予定の作成方法
実際に、Google Apps Script(GAS)のスクリプトで、Google Meet会議が設定されたGoogleカレンダーの予定を作成する方法を解説します。
先ほどもお伝えした通り、GASサービスで追加可能な「Google Calendar API」サービスを有効化する必要があります。
Google Calendar APIは以下の2Stepで簡単に追加することが可能です。
1.GASスクリプトエディタの左側に用意されたサービスの+マークをクリックします。
2.追加サービス一覧の中から「Google Calendar API」を選択し、「追加」ボタンをクリックします。
このように追加すると、スクリプトエディタのサービスにCalendarと表示されます。
Calendar APIが追加できたら、GASスクリプトエディタに以下のコードを記述します。
//CalendarAPIサービスを追加し、GoogleカレンダーでMeet会議が設定された予定を作成
function getMeetUrl() {
//GAS実行ユーザーのGoogleアカウントIDをカレンダーIDとして取得
const calendarId = Session.getActiveUser().getUserLoginId();
//GoogleカレンダーでMeet会議が設定されるイベント登録パラメータを設定
const eventParam = {
conferenceData: {
createRequest: {
conferenceSolutionKey: {
type: "hangoutsMeet"
},
requestId: "123"
}
},
summary: 'Meet設定済み予定',
start: {
dateTime: "2022-08-08T08:05:00.000+09:00"
},
end: {
dateTime: "2022-08-08T09:05:00.000+09:00"
},
};
//CalendarAPIに対し、Meet会議付き予定を追加
const event = Calendar.Events.insert(eventParam, calendarId, {conferenceDataVersion: 1});
//作成したイベントからGoogle MeetURLを表示
console.log(event.hangoutLink);
Calendar.Events.remove(calendarId, event.)
}
上記GASスクリプトは、Google Meetの会議が設定されたGoogleカレンダーの予定を作成する処理になっています。
このGoogle Meetの会議URLは、Calendar APIの実行結果であるeventのhangoutlinkを参照すると取得することができます。
関数を実行すると、実行ログにGoogle MeetのURLが表示されています。
さらに、Googleカレンダーにアクセスすると、予定が作成されています。
Googleカレンダーの予定詳細を確認すると、Google Meetが設定されています。
先程ログ出力したGoogle MeetのURLと同じURLがセットされています。
Google Meetの会議URLだけ発行したい場合は
先ほどのGoogle Apps Scriptでは、Google Meetの会議が設定されたGoogleカレンダーの予定を作成しました。
ただ、Google Meetの会議URLだけ発行し、Googleカレンダーの予定は不要というケースもあります。
その場合は、Google Calendar APIでMeet会議付きの予定を作成して会議URLを取得したあと、予定を削除すれば解決です。
1回のGAS実行の中で、Googleカレンダーの予定作成と削除を行えば、Google Meetの会議URLを取得するたびに予定が追加されることもありませn。
まとめ・終わりに
今回、Google Apps Script(GAS)で、GoogleカレンダーのMeet会議が設定された予定を作成する方法を紹介しました。
GASではCalendarAppがデフォルトで使えますが、CalendarAppではGoogle Meetの会議の設定ができません。
その代わり、サービスに用意されているGoogle Calendar APIを使うことでGoogle Meet会議を設定した予定を作成できます。
GASで自動的にGoogle Meetの会議予定を設定したい場合や、Meet会議URLを発行したい場合に、試してみてください。
ディスカッション
コメント一覧
まだ、コメントがありません