Garoon通知一覧でOffice365 Outlookの新着メール通知を受け取ろう
はじめに
スケジュールや掲示板はGaroonを利用しているけれど、メールだけはOffice365のOutlookを使っている方はいらっしゃいませんか?
その場合、新着メールの確認にはOffice365にログインしてチェックする必要があります。
今回は、Garoonの
通知を登録する
APIを使って、Outlookに新着メールが届いたらGaroonで通知を受け取るカスタマイズを紹介します。
Outlookにログインしなくても、Garoonの画面で新着メールをチェックできるようになるので、業務がちょっとだけ楽になるかもしれません。
必要なもの
- Garoonアカウント(クラウド版)
- OutlookとPower Automateを利用できるOffice 365アカウント
完成イメージ
ユーザーは、Office 365 Outlookで受信した新着メールを、Garoon通知一覧で確認できます。
動作イメージは次のとおりです。
- Office365 Outlookで新着メールを受信したら、Microsoft Power Automateのトリガーが発行します。
- Microsoft Power Automateのアクションで、Garoonの 通知を登録する APIを実行し、Garoon通知を登録します。
GaroonとMicrosoft Power Automateの設定
Garoonの設定
Garoonの 通知を登録する APIを利用するには、APIの外部通知の設定が必要です。
- [Garoonシステム管理]を開き、[各アプリケーションの管理]タブから[通知一覧]を選択します。
- [外部通知の設定]を選択し、[外部通知を追加する]をクリックします。
- 「外部通知の追加」画面で、次のように入力します。外部通知設定の詳細は、「
APIの外部通知の設定
」を参照してください。
項目名 値 ステータス 「有効」を選択します。 許可する外部通知 「API」を選択します。 外部通知コード 外部通知を識別するためのコードです。
今回は「office365-mail-notifier」と入力します。表示名 「通知一覧」ポートレットおよび「通知一覧」画面に表示されるアプリケーション名として表示されます。
今回は、「Outlook新着メール」と入力します。許可するURL 次の2つのURLを指定します。 - https://outlook.live.com/mail/inbox/id/*
通知のリンクをクリックしたときに、メールを表示するためのURLです。
- https://cdnjs.cloudflare.com/ajax/libs/simple-icons/3.0.1/microsoftoutlook.svg
通知アイコンのURLです。
- https://outlook.live.com/mail/inbox/id/*
- [追加する]ボタンをクリックします。
手順は以上です。
Microsoft Power Automateの設定
Outlookでメールを受信したらGaroonの通知を登録するAPIを実行するフローを作成します。
- フローを作成します。
Microsoft Power Automate を開き、左サイドバーより[マイフロー]を選択します。 - [+新規]ボタンをクリックします[0から作成]を選択します。
- トリガーを作成します。
ページ下部の[多数のコネクタやトリガーを検索する]をボタンをクリックします。 - [コネクタやトリガーを検索する]欄に「Office 365 Outlook」と入力して検索します。
- 「Office 365 Outlook」の「新しいメールが届いたとき」トリガーを追加します。
[フォルダー]は「Inbox」のままとします。
- トリガーが発行したときのアクション(今回はGaroonの
通知を登録する
APIを実行するHTTPアクション)を作成します。
[新しいステップ]ボタンをクリックします。 - [コネクタとアクションを検索する]欄に、「HTTP」を入力して検索します。
[アクション]タブの「HTTP」を選択します。 - 次のように設定します。
項目名 値 方法 「POST」を選択します。 URL 実行するAPIのURLを指定します。
今回は次のURLを入力します。
https://{subdomain}.cybozu.com/g/api/v1/notification/items
{subdomain} は、ご利用のGaroon環境に合わせて書き換えてください。ヘッダー - X-Cybozu-Authorization
- Garoonのログイン名とパスワードを「:」でつないでBASE64エンコードを行った値です。
たとえば、ログイン名が「Administrator」、パスワードが「cybozu」の場合、「QWRtaW5pc3RyYXRvcjpjeWJvenU=」です。
- Garoonのログイン名とパスワードを「:」でつないでBASE64エンコードを行った値です。
- Content-Type
- application/json
クエリ 設定しません。 本文 実行するAPIのリクエストパラメーターを設定します。
指定する値の詳細は、 リクエストパラメーターの詳細 を参照してください。
環境に合わせて書き換えが必要な箇所があります。 - X-Cybozu-Authorization
- [保存]ボタンをクリックし、フローを保存します。
設定は以上です。
フローの全体構成は、次のようになっているはずです。
リクエストパラメーターの詳細
Microsoft Power AutomateのHTTPアクションに定義するリクエストパラメーター(「本文」に設定する値)について説明します。
|
|
プロパティ名 | 値 | 概要 |
---|---|---|
app | office365-mail-notifier | Garoonの外部通知設定で指定した「外部通知コード」を利用します。 |
notificationKey | @{guid()} |
Garoonの通知キーには、GUID関数が発行した文字列を用います。 Garoonでは、同じ通知キーをもつ通知を上書きします。 GUID関数を使うとユニークな文字列を発行できるため、新規の通知として登録できます。 |
operation | add | Garoonの通知操作です。 新規に通知を登録します。 |
url | https://outlook.live.com/mail/inbox/id/@{triggerBody()?['Id']} | 通知のリンクをクリックしたときにOutlookのメールを開くようにします。 |
title | @{if(less(length(triggerBody()?['Subject']),20),triggerBody()?['Subject'],substring(triggerBody()?['Subject'],0,20))} |
通知タイトルには、メールタイトルを利用します。 リクエストパラメーターの文字数制限にかからないよう、substring関数で先頭20文字に切り出しています。 ただし、メールタイトルが20文字より少ない場合は元のタイトルを使用します。 |
body | @{if(less(length(triggerBody()?['BodyPreview']),100),triggerBody()?['BodyPreview'],substring(triggerBody()?['BodyPreview'],0,100))} |
通知本文には、メール本文を利用します。 リクエストパラメーターの文字数制限にかからないよう、substring関数で先頭100文字に切り出しています。 ただし、メール本文が100文字より少ない場合は元のメール本文を使用します。 |
icon | https://cdnjs.cloudflare.com/ajax/libs/simple-icons/3.0.1/microsoftoutlook.svg | 通知アイコンには、CDNで公開されているOutlookアイコンを利用します。 |
destinations | { |
通知先のリストです。 通知者は、Garoonユーザーとし、typeにはUSER、codeにはGaroonのログイン名を指定します USER_LOGIN_NAMEの部分をご自身のログイン名に書き換えてください。 |
おわりに
今回は、Garoonの通知を登録するAPIを使って、Outlookに新着メールが届いたらGaroonで通知を受け取るカスタマイズを紹介しました。
Microsoft Power AutomateとGaroon通知を組み合わせると、ノーコーディングでさまざまなGaroonへの通知のしくみを作成できます。
たとえば、「One Driveの所定フォルダーへファイルが追加されたらGaroonに通知する」フローを作ると、チームメンバー間で、簡単にファイルの更新情報の共有ができます。
Microsoft Power Automateが提供しているさまざまなトリガーと組み合わせて、Garoonに通知してみましょう。
このTipsは、2019年9月版Garoonで動作を確認しています。