予定の公開設定を変更する— setVisibility()
今回のメソッドは、予定の公開設定を変更するsetVisibility()メソッドをご紹介します。このメソッドでは、予定の公開/非公開/デフォルト公開設定をプログラム的に変更することができます。
getVisibility()メソッドの使い方ページでは予定の公開設定を取得することができましたが、今回はその公開設定をプログラムを使って設定する方法をお伝えします。
公開設定の設定場所は下記のスクリーンショットでご確認下さい。
公開設定として設定ができる選択肢は下記の通り3種類あります。
- DEFAULT
- デフォルトの公開設定
- PUBLIC
- 公開設定
- PRIVATE
- 非公開設定
上記3種類の中から設定したいものを選んでプログラムを実行して下さい。
『 引数に入れる値 』
setVisibility(status)
//招待された予定のステータスを設定するコード function sampleCodeForCalendarAppSetVisibility() { var calendar = CalendarApp.getDefaultCalendar(); var date = new Date(); var events = calendar.getEventsForDay(date); var visibility = CalendarApp.Visibility.PRIVATE; for (var i in events) { var event = events[i]; event.setVisibility(visibility); } }
『 変数の説明 』
calendar = デフォルトカレンダーを取得
date = プログラム実行日を代入
events = プログラム実行日の予定を取得
visibility = 公開設定を代入
event = 個々予定を取得
スクリプトができたら▶ボタンでプログラムを実行してみましょう。今回のコードではプログラム実行日の予定に対して、公開設定を変更するコードを書いてみました。サンプルプログラムでは、非公開に変更するようにしてあります。プログラムが実行できたら、予定の公開設定を確認してみると、下記のように変更されていると思います。
CalendarApp.Visibility.PRIVATE;の赤字部分をDEFAULT/PUBLICに置き換えて実行するとそれぞれ、デフォルトの公開設定/公開に設定されます。
ちなみに、プログラムで設定ができるパラメータとしては、実はもう一つ存在し、CONFIDENTIALというパラメータがあります。こちらも設定してプログラムを実行すればエラーなく完了ができるのですが、完了後にカレンダーの公開設定部分を確認すると表示がバグっているように見えます。
そもそもの項目自体がなくなってしまうような表示になってしまいますので、おそらく今後なくなるのかもしれません。
まとめ
今回は予定の公開設定を変更するsetVisibility()メソッドのご紹介をしました。プログラムで公開設定を制御できるようになりますので、できることの幅が広がりますね。