IFTTTでGoogleカレンダーの日付が1日ずれる問題は、Googleカレンダーの言語設定をUSにしたら解決した。

IFTTTで「○○に着いたらGoogleカレンダーに記録を残す」といった場合に、追加日時が一日ずれる問題、Googleカレンダーの言語設定を英語(US)にしたら解決した。

Googleカレンダーの言語設定が日本語の場合、カレンダーに追加されるイベントのタイトルは、たとえば

November 21, 2016 atI exited work an area

となっていて、これが11/22に追加されていたのだが、
Googleカレンダーの言語設定をUSにした場合、カレンダーに追加されるイベントのタイトルは

I exited work an area

となり、11/21に追加される。
つまり、IFTTTからGoogleカレンダーへイベントを追加するのは、タイトル文面冒頭の"November 21, 2016 at"を読み取っていて、
言語設定が日本語の場合、ここを読み取れないので、Googleが"とりあえず明日の予定に追加しとくわ"と判断していたという事か。

ちなみに、追加されるイベントの長さを0分にしたいのだが、カレンダー側のデフォルトの予定の長さを0分にしても、1時間のイベントとして追加されてしまう。この点は解決方法がわからない。

追記:
Googleカレンダーの言語設定を英語(US)にして使うのはイヤ」という場合は、

  • 新しいGoogleアカウント(サブ)を取得
  • 元々あったGoogleアカウント(メイン)のカレンダーを、サブに共有
  • サブのカレンダーをIFTTTに接続
  • サブの言語設定をUSにする

で解決するのだが、これをするとIFTTTからアクセスするGoogleカレンダーはサブに限定されるようなので、
IFTTTの"Googleカレンダーから一日のダイジェストを作成"等のレシピを使用している場合に問題になるかもしれない。

追記2:
ちなみに言語設定をUSにする解決方法は既にどこかでどなたかがブログ記事にしていたはず。二番煎じだが自分用のメモとして。