Googleカレンダー連携/同期機能の設定をする

目次

Calsketでは、各個人がGoogleカレンダー上で設定している「マイカレンダー」「他のカレンダー」に追加しているカレンダーをCalsket上で参照可能にする「Googleカレンダー連携機能」とSalesforceの行動データとGoogleカレンダー(各個人のメインカレンダー)のデータを双方向で同期する「Googleカレンダー同期機能」の2種類の連携機能があります。詳しくは下記をご参考ください。

ここでは、これらの機能を使用する際の初期設定手順について説明します。

本設定を行う前に、Calsketのインストール手順の「3.権限セットの割り当て」以降の手順が正しく行われていることを確認してください。

サンドボックス環境でGoogleカレンダー同期機能を利用する場合(トライアル期間含む)はライセンスキーの設定が必要です。ライセンスキー未取得の場合は弊社までお問い合わせください。

Googleカレンダー同期機能には各種制限事項が存在します。こちらに同期仕様と合わせて記載してありますので、ご確認ください。

SalesforceのGoogleカレンダー同期機能である「Lightning Sync」など、他の同期ツールと併せてトライアルをされる場合、必ずLightning Syncや他の同期ツールを無効にした上で本設定を行ってください。有効にしたまま本設定を行った場合、お互いの同期処理が同時に処理され、行動が無数に追加される現象が発生します。


1. Google Calendar APIへのリモートサイトアクセスを有効にする

❶ Salesforce設定にて [セキュリティ] > [リモートサイトの設定]を開き、[GoogleAPI]の[編集]をクリックします。

❷ [有効]にチェックを入れ[保存]ボタンをクリックしてください。

Calsketのインストール後にリモートサイトの編集画面を開くと、「有効」にチェックが入った状態で表示されますが、上記画面上で「保存」ボタンをクリックし、保存する必要があります。ご注意ください。


2. Calsket用のGoogle APIサービスアカウントを作成する

Calsket用のGoogle APIサービスアカウントを作成します。

❶ Google Cloud Console (https://console.cloud.google.com)にGoogle Workplaceの特権管理者権限を持つアカウントでログインします。 ❷ ヘッダーの矢印を押し、[新しいプロジェクト]をクリックします。

❸ 適当な名称(例:「Calsket」)で新しいプロジェクトを作成します。

❹ [作成]ボタンを押下後、しばらく待つと作成が完了し、作成したプロジェクトの画面に切り替わります。 ❺ [≡] > [APIとサービス] > [ライブラリ]を開きます。

❻ 一覧に表示されていない場合は、検索フォームに「Calendar API」と入れ絞り込み、検索結果の中から[Google Calendar API]を選択します。

❼ [有効にする]をクリックします。

❽ 次に、メニューの [≡] > [APIとサービス] > [認証情報]を開きます。

❾ 「認証情報を作成」ボタンをクリックし、「サービスアカウント」を選択します。

❿ 「サービスアカウントの作成」画面に移動しますので、「サービス アカウントの詳細」にて、下記の情報を入力・選択して「作成して続行」ボタンをクリックしてください。

  • サービス アカウント名: 任意(例: Calsket)

  • サービス アカウントの説明:任意

「このサービス アカウントにプロジェクトへのアクセスを許可する (省略可)」にて「編集者」を選択し、「完了」ボタンをクリックします。

⓫ 続いて、G Suite ドメイン全体の委任を有効化します。作成したサービスアカウントの「メール」箇所をクリックします。

⓬ IDが生成されますので、このIDをテキストエディター等にコピーしておいてください。

⓭ 続いてサービスアカウントキーを作成します。「キー」タブをクリックしてください。

⓮ 「鍵」画面に移動しますので、「鍵を追加」ボタンをクリックし、「新しい鍵を作成」を選択してください。

⓯ 秘密鍵の作成ダイアログが表示されますので、「JSON」を選択し、「作成」をクリックしてください。

⓰ 「<プロジェクト名>-xxxxx.json」が生成されますので、任意の場所に保存します。このファイルは後の設定で利用します。

⓱ 以上で終了です。


3. Google Workspace 管理コンソールでサービスアカウントからのアクセスを許可

❷ [アクセスとデータ管理]>[APIの制御]を開き[ドメイン全体の委任を管理]を開きます。

❹ 以下のアクセス許可設定を追加し、[承認]をクリックします。

❺ 以上で完了です。


4. 作成したサービスアカウントをCalsketに設定

❷ [Googleカレンダー連携/同期の設定]セクションで以下のように入力し、[保存]をクリックします。

  • Googleサービスアカウントの秘密鍵 上記手順でダウンロードした[<プロジェクト名>-xxxxx.json]ファイルをアップロード

  • Google Workspaceアカウント(メールアドレス)が保存されている「ユーザー」オブジェクトの保存先項目のAPI参照名 Google Workspaceアカウント(Emailアドレス)が格納されているユーザーオブジェクトの項目のAPI 参照名を設定します。 Google WorkspaeアカウントとSalesforceユーザーのユーザー名(Username)が同じ場合は空欄のままにします。例えばユーザーのGoogleEmail__cというカスタム項目にGoogle Workspaceアカウントのメールアドレスが紐付いている場合は「GoogleEmail__c」を入力します。

「Google Workspaceアカウント(メールアドレス)が保存されている「ユーザー」オブジェクトの保存先項目のAPI参照名」に指定する項目の記載場所

Salesforceにログイン>設定>オブジェクトマネージャー>ユーザー>項目とリレーションにて、

Google Workspaceアカウント(Emailアドレス)が格納されている項目の「項目名」

Google Workspaceアカウント(メールアドレス)が保存されている「ユーザー」オブジェクトの保存先項目のAPI参照名に指定します。

※Google Workspaceアカウント(Emailアドレス)が格納されている項目が

存在しない場合は、

ログイン>設定>オブジェクトマネージャー>ユーザー>項目とリレーション>新規 からカスタム項目を新規作成し、ユーザー登録画面にて、作成したカスタム項目にGoogle Workspaceアカウント(Emailアドレス)を登録します。

❸ 以上で、Googleカレンダーと連携する準備が整いました。しかし、各連携機能はまだ無効になっています。各連携機能を利用するには機能の有効化が必要です。


5. Googleカレンダー連携機能を有効化

Googleカレンダー連携機能を有効化する場合、[Calsket管理] アプリケーションの[設定] タブを開き、[Googleカレンダー同期]セクションの[Googleカレンダー連携機能を有効化]で[有効にする]チェックボックスにチェックを入れ、[保存]ボタンをクリックします。

Googleカレンダー連携機能を有効化すると、CalsketにGoogleカレンダーの情報を重ねて表示することができます。

Googleカレンダー連携(参照)機能について


6. Googleカレンダー同期機能を有効化

Googleカレンダー同期機能を有効化する場合、[Calsket] アプリケーション(Classicの場合は[Calsket管理]アプリケーション)の[設定] タブを開き、[Googleカレンダー同期]セクションの[Googleカレンダー同期機能を有効化]で[有効にする]チェックボックスにチェックを入れ、[保存]ボタンをクリックします。

Googleカレンダー同期機能を有効化すると、Salesforceのカレンダーの更新情報は即座にGoogleカレンダーに反映され、Googleカレンダーの更新情報は5分おきにSalesforceのカレンダーに反映されます。設定終了後、まずはSalesforce側にデータを追加していただき、Googleカレンダーへデータが反映されていることをご確認ください。

同期のタイミングについて SalesforceからGoogleカレンダーへの同期はリアルタイムで、GoogleカレンダーからSalesforceへの同期は最低5分ごとに行われ、ご利用されるユーザー数に依存してかかる時間が変わります。1000ユーザーでは30分程度かかります。

Googleカレンダー同期機能の同期仕様及び制限事項


7. Googleカレンダー同期機能: 既存データの同期

既存のGoogleカレンダーのデータをSalesforceに同期することができます。

Googleカレンダー同期機能を利用しない場合には、本設定は不要です。

あらかじめGoogleカレンダー同期機能を有効化してから実行してください。

本処理は「Calsketの定期的なジョブ」を実行されたアカウントで実行してください。

既存のSalesforceの行動データをGoogleカレンダーに同期することはできません(同期機能有効化以降に作成された行動はGoogleカレンダーに同期されます) 。

既存データの同期の手順としては、定期的なジョブを停止し、実行中のGoogleカレンダー同期の強制停止を行った後に既存データの同期を行います。既存データの同期処理が完了すると、自動的に定期的なジョブは開始されます。

❶ Calsketの設定画面を開き、[一般]タブの[定期的なジョブ]セクションにて[定期的なジョブ実行の停止]をクリックします。

❷ [Google連携/同期]タブの[実行中のGoogleカレンダー同期の強制停止]セクションにて[Googleカレンダー同期を強制停止]をクリックします。

❸ [Google連携/同期]タブの[既存データの同期]セクションにて[期間]および[同期方向](以下参照)を選択し、[既存データの同期を開始]をクリックします。

対象ユーザー:

  • 全てのユーザー

  • ユーザーを指定する

対象とする予定:

  • 指定期間内に存在する予定 ※ 下記指定期間以降に存在する予定が対象です。

    • 本日0時

    • 1ヶ月前

    • 2ヶ月前

    • 3ヶ月前

  • 指定日時以降に更新された予定

    • 指定日時以降(最大2週間前)

同期方向:

  • Googleカレンダーの予定をSalesforceに

既存データの同期が完了するとメール完了した後に、完了をお知らせするメールが届きます。この際、同期されているデータに問題を感じる場合、まずは制限事項をご確認ください。その上で問題がある場合は初期データ同期を再度実行してください。

何度実行しても同期がされない場合は別途弊社にお問い合わせください。

最終更新