11.3. Google カレンダーへの接続
ポーリングが更新を Google カレンダーに返すときにインテグレーションの実行をトリガーするには、Google カレンダーコネクションを最初のコネクションとしてシンプルなインテグレーションに追加します。イベントをカレンダーに追加するか、カレンダーのイベントを更新するには、以下のいずれかを行います。
- Google カレンダーをフローの途中に追加します。
- Google カレンダーを追加して、シンプルなインテグレーションを完了します。
Google カレンダーへの接続に関する詳細は、以下を参照してください。
11.3.1. Google カレンダーコネクションの作成
Google カレンダーのコネクションを作成するとき、1 つの特定の Google アカウントに関連する Google カレンダーへアクセスするためコネクションを承認します。Google カレンダーコネクションの作成後、複数のインテグレーションに追加できます。
前提条件
- Fuse Online が Google クライアントアプリケーションとして登録 され、Google Calendar API が有効になっている必要があります。
- Google カレンダーの Fuse Online Settings ページエントリーには、Fuse Online を Google クライアントアプリケーションとして登録して取得したクライアント ID とクライアントシークレットの値があります。
手順
- Fuse Online の左パネルで Connections をクリックし、利用可能なコネクションを表示します。
- Create Connection をクリックし、利用できるコネクターを表示します。コネクターは、1 つ以上のコネクションを作成するために使用するテンプレートです。
- Google Calendar コネクターをクリックします。
Configure Connection ページで Connect Google Calendar をクリックします。Google のログインページが表示されます。
Connect Google Calendar が表示されない場合、Fuse Online 環境は Google Calendar API が有効な状態で Google クライアントアプリケーションとして登録されていません。Fuse Online を Google クライアントアプリケーションとして登録 を参照してください。Fuse Online 環境が Google クライアントアプリケーションとして登録されていない状態で Google カレンダーコネクションを作成しようとすると、Fuse Online に承認情報の入力を要求する複数のフィールドが表示されます。これらのフィールドに値を入力して Google カレンダーコネクションを作成することは可能ですが、推奨されません。
- Google のログインページで、このコネクションが Fuse Online からアクセスする Google アカウントを選択し、Next をクリックします。
- openshiftapps.com wants to access your Google Account プロンプトに対して Allow をクリックし、Fuse Online に戻ります。
-
Fuse Online の Name フィールドに、このコネクションを別のコネクションと区別するために使用する名前を入力します。たとえば、
Google Calendar Work Connection
を入力します。 -
Description は任意のフィールドで、このコネクションに関する便利な情報を入力します。たとえば、
Sample Google Calendar connection that uses my Google work account.
を入力します。 - Save をクリックし、作成したコネクションが利用可能になったことを確認します。上記の例の名前を入力した場合は、インテグレーションに追加できるコネクションとして Google Calendar Work Connection が表示されます。
11.3.2. ポーリングが Google カレンダーからイベントを返すときにインテグレーションをトリガー
指定した Google カレンダーからイベントを取得したときにインテグレーションの実行をトリガーするには、Google カレンダーコネクションを最初のコネクションとしてシンプルなインテグレーションに追加します。インテグレーションの実行時、Google カレンダーコネクションはユーザーが制御できる間隔で Google カレンダーのイベントをチェックします。コネクションが、Google カレンダーの Get Events アクションの設定方法に準拠するイベントを見つけると、コネクションはイベントをインテグレーションの次のステップに渡します。
Google カレンダーコネクションが 2 つ以上のイベントを返すとき、Fuse Online は返された各イベントに対してインテグレーションを実行します。たとえば、ポーリングによって 5 つのイベントが返されると、Fuse Online はインテグレーションを 5 回実行します。
前提条件
- Google カレンダーコネクションが作成済みである必要があります。
手順
- Fuse Online パネルの左側にある Integrations をクリックします。
- Create Integration をクリックします。
- Choose a connection ページで、インテグレーションを開始するために使用する Google カレンダーコネクションをクリックします。
- Choose an action ページで Get Events アクションを選択します。
Get Events アクションを設定します。
- Delay フィールドには、デフォルトの 30 秒を使用するか、インテグレーションがカレンダーをチェックする頻度を指定します。
- Calendar name フィールドには、この Google カレンダーコネクションによるアクセスが承認されている Google アカウントからアクセス可能なカレンダーの名前を入力します。
- Max Results フィールドでは、デフォルトの 5 を使用するか、各ポーリングに対して返すことができるコネクションの最大イベント数を指定します。
以下の 1 つを選択し、コネクションが使用するイベントのチェックの開始日を示します。コネクションはこの日付と後続の日付をチェックします。
Consume from the current date ahead を選択すると、現在の日付が開始日になります。
たとえば、このオプションを選択し、Max Results が 5 の場合、Google カレンダーコネクションはイベントのチェックは現在の日付から開始され、見つかったイベントを最初から最大 5 つ返します。最後のポーリング後にイベントが更新または追加されたかは関係ありません。
Consume from the last event update date on the next poll を選択すると、前回のポーリングで返された最新の更新イベントの日付が開始日になります。
たとえば、このオプションを選択し、Max Results が 5 の場合、Google カレンダーコネクションは最大 5 つの更新または新規イベントを返します。コネクションが新規または送信イベントをチェックする開始日は、前回のポーリングで返された最新の更新イベントの日付になります。
任意で、Query for events フィールドにテキストを指定し、ポーリングが返すことができるイベントをフィルターすることができます。コネクションは、最低でも 1 つのイベントフィールドに指定されたテキストが含まれるイベントのみを返します。
たとえば、クエリーフィールドに
Standup meeting
を指定するとします。この場合、ポーリングはイベントフィールドにStandup meeting
が含まれるイベントのみを返します。
- Next をクリックし、この Google カレンダーコネクションをインテグレーションの最初のコネクションとして追加します。
結果
コネクションはシンプルなインテグレーションの最初のステップとして表示されます。
11.3.3. Google カレンダーからの特定イベントの取得
インテグレーションでは、フローの途中で特定の Google カレンダーイベントを取得できます。特定イベントの取得は、以下のような場合に便利です。
- 後続の Google カレンダーコネクションでイベントを更新する場合。
- 後続の Twitter コネクションを使用してイベントを発表する場合。
1 つのイベントを取得するには、Google カレンダーをフローの途中に追加します。
本リリースでは、シンプルなインテグレーションの最後のコネクションで特定のイベントを取得することはサポートされますが、これは特に便利なことではありません。これは今後のリリースで変更される予定です。
前提条件
- 取得するイベントがある Google カレンダーへのアクセスが承認されている Google カレンダーコネクションが作成済みである必要があります。
- フローを作成または編集することになり、Fuse Online でインテグレーションに追加するよう要求されます。
手順
- Add to Integration ページで、コネクションの追加先のプラス記号をクリックします。
- 接続するカレンダーへのアクセスが承認されている Google カレンダーコネクションをクリックします。
- Choose an action ページで Get a Specific Event を選択します。
- 取得するイベントがあるカレンダーの名前を指定します。
取得するイベントの ID を指定します。イベント ID を取得するには、以下の 1 つを行います。
- 以前の Google カレンダーコネクションからマップします。
以下のようにカレンダーから手動で取得します。
- ブラウザーで、取得するイベントが含まれるカレンダーを表示します。
-
URL の末尾に
?gsessionid=OK&eventdeb=1
を追加し、カレンダーを再表示します。 - カレンダーで、取得するイベントをクリックします。
- イベントのポップアップで、 をクリックし、Troubleshooting info を選択します。
-
Google カレンダーが表示するポップアップで、
eid=
に続く文字列をコピーします。たとえば、イベント ID はp1pva2a4t504gbsha12di9ch6k_20181107T150000Z*
のようになります。
- Next をクリックして、コネクションをフローに追加します。
結果
コネクションはフローで追加した場所に表示されます。
次のステップ
以前のステップの値をこのコネクションのフィールドにマップする場合は、データマッパーステップを追加します。最初に、必要なすべてのコネクションをフローに追加します。次に、このコネクションの直前にデータマッパーステップを追加します。
11.3.4. イベントの Google カレンダーへの追加
インテグレーションでは、フローの途中で Google カレンダーにイベントを追加したり、シンプルなインテグレーションを終了するために Google カレンダーにイベントを追加することができます。これには、Google カレンダーコネクションをフローの途中に追加するか、シンプルなインテグレーションの最後のコネクションとして追加します。
前提条件
- イベントを追加する Google カレンダーへのアクセスが承認されている Google カレンダーコネクションが作成済みである必要があります。
- フローを作成または編集することになり、Fuse Online でインテグレーションに追加するよう要求されます。または、Fuse Online で最後のコネクションを選択するよう要求されます。
手順
- Add to Integration ページで、コネクションの追加先のプラス記号をクリックします。Fuse Online が最後のコネクションを選択するよう要求する場合は、このステップをスキップします。
- イベントを追加するカレンダーへのアクセスが承認されている Google カレンダーコネクションをクリックします。
- Choose an action ページで Create Event アクションを選択します。
Create Event アクションを設定します。
- 新しいイベントのタイトルを入力します。
- イベントの追加先となる Google カレンダーの名前を入力します。
- その他の入力パラメーターにはデータを入力できますが、以前の Google カレンダーコネクションで取得したイベントから値をマップすることも可能です。
- Next をクリックして、コネクションをフローに追加します。
結果
インテグレーションフローで追加した場所にコネクションが表示されます。
次のステップ
値をこの Google カレンダーコネクションのフィールドにマップする場合は、フローにデータマッパーステップを追加します。最初に、必要なすべてのコネクションをフローに追加します。次に、この Google カレンダーコネクションの直前にデータマッパーステップを追加します。
11.3.5. Google カレンダーでのイベントの更新
インテグレーションでは、フローの途中で Google カレンダーのイベントを更新したり、シンプルなインテグレーションを終了するために Google カレンダーのイベントを更新することができます。これには、Google カレンダーコネクションをフローの途中に追加するか、シンプルなインテグレーションの最後のコネクションとして追加します。
本リリースでは、Update Event アクションには各イベントフィールドに値が必要です。よって、ほぼすべての場合で、更新するイベントを取得する Google カレンダーコネクションを追加し、次にイベントを更新する Google カレンダーコネクションを追加してから、この 2 つの Google カレンダーコネクションの間にデータマッパーステップを挿入する必要があります。
前提条件
- 更新するイベントがある Google カレンダーへのアクセスが承認されている Google カレンダーコネクションが作成済みである必要があります。
- フローには、Google カレンダーへの以前のコネクションがあり、そのコネクションが更新するイベントを取得します。
- フローを作成または編集することになり、Fuse Online でインテグレーションに追加するよう要求されます。または、Fuse Online で最後のコネクションを選択するよう要求されます。
手順
- Add to Integration ページで、コネクションの追加先のプラス記号をクリックします。Fuse Online が最後のコネクションを選択するよう要求する場合は、このステップをスキップします。
- 更新するイベントがあるカレンダーへのアクセスが承認されている Google カレンダーコネクションをクリックします。
- Choose an action ページで Update Event を選択します。
Update Event アクションを設定します。
- 更新するイベントのタイトルを入力します。
- 更新する各イベントフィールドの内容を入力します。フィールドの内容を変更したくない場合は、イベントフィールドに内容を入力しないでください。
- Next をクリックして、コネクションをフローに追加します。インテグレーションビジュアライゼーションで追加した場所にコネクションが表示されます。
- インテグレーションビジュアライゼーションで、追加したばかりのコネクションの前にあるプラス記号をクリックします。
- Data Mapper をクリックします。
データマッパーで、更新されたイベントの変更のなかった各イベントフィールドを、イベントを取得した Google カレンダーコネクションから、イベントを更新した Google カレンダーコネクションの対応フィールドにマップします。
更新しているフィールドをマップしないでください。Update Event アクションの設定時にフィールドをマップし、そのフィールドの更新も指定すると、Fuse Online はマップされた値を使用します。
- 右上の Done をクリックし、データマッパーステップを追加します。