案件ボット Office 365 版

案件ボット Office 365 版

はじめに

このドキュメントは、direct と Office 365 を連携させた案件ボット(以下、ボット)について、各種設定から実行するまでの手順書となっています。そのため、direct および Office 365 の両サービスをご契約・ご利用中のものとしています。

まだ、ご利用でない方は、direct および Office 365 のそれぞれに無料トライアルがありますので、そちらをご参照ください。

ボット用アカウントの取得

ボット用に、新しくメールアドレスを用意します。

direct

通常のユーザと同じように、ボット用アカウントを作成します。

組織の管理ツールから、ボット用メールアドレスに招待メールを送信します。 管理ツールのご利用には権限が必要です。お持ちでない方は、契約者もしくは管理者にご連絡下さい。

組織に招待されると、ボット用メールアドレスにメールが届きます。 メールに記載されているURLをクリックしてアカウント登録手続きをしてください。

ログインページからボット用メールアドレスでログインします。 招待を承認する画面が開きますので、その画面で「承認」を選択してください。 次に、設定>プロフィール編集より、表示名とプロフィール画像をボット用に変更します。

Office 365

連携アプリケーションの開発のためには Office365 に Developer Site の追加が必要です。追加の方法は現在の契約状態によって異なりますので、こちらのドキュメントを参考に適切な方法を選択して追加してください。

連携アプリケーションの認証のためには Microsoft Azure Active Directory でのアプリケーション登録が必要です。Microsoft Azure Management を開き、Active Directory のアプリケーションタブを開き、下段のメニューからアプリケーションを追加します。Microsoft Azure Management でアプリケーションの追加方法については、こちらのヘルプページをご参照ください。

アプリケーション情報の指定では、「ネイティブ クライアント アプリケーション」を選択し、リダイレクト URI には http://localhost/ を指定します。追加した後は構成の「他のアプリケーションに対するアクセス許可」で、「Office 365 SharePoint Online」を選択し、「デリゲートされたアクセス許可」のチェックをすべてオンにします。アプリケーションの構成方法については、こちらのヘルプページをご参照ください。

node のインストール

https://nodejs.org/ から最新版をインストールします。v6.2.1 で動作確認しています。

サンプルプログラムの設定

サンプルプログラムをダウンロードして展開します。以降は、この展開したディレクトリ(フォルダ)にて、コマンドライン(コマンドプロンプト)で作業することになります。

direct

direct へのアクセスには、アクセストークンが利用されます。アクセストークンの取得には、アクセストークンを環境変数に設定していない状態で、以下のコマンドを実行し、ボット用のメールアドレスとパスワードを入力します。

$ bin/hubot
Email: loginid@bot.email.com
Password: *****
0123456789ABCDEF_your_direct_access_token

以下の環境変数に、アクセストークンを設定します。

$ export HUBOT_DIRECT_TOKEN=0123456789ABCDEF_your_direct_access_token

Office 365

Office 365 へのアクセスには、OAuth2が利用されます。

以下の環境変数に、取得したアプリケーションIDおよびシークレットを設定します。

export O365_CLIENT_ID=

ボットに初めて話しかけたとき、コンソールにURLが表示されて処理が停止します。

$ bin/hubot
...
https://login.windows.net/common/oauth2/authorize?....
redirect url? 

この URL をブラウザで開き、Office 365 の案件ボット用アカウントでログインします。ログインが成功すると認可画面が表示されますので承認してください。その後、http://localhost/?code=... というURLにリダイレクトされます。「ページの読み込みエラー」といった画面になるかもしれませんが、コマンドラインに戻ってそのURLを入力します。

redirect url? http://localhost/?code=AAABAAAA...

トークンの情報は起動したディレクトリの .storage ファイルに保存されます。次回起動時はこの内容が読み込まれます。

案件ファイル

案件情報は、最新のExcelファイルから検索されます。

Office 365 の OneDrive for Business に案件管理.xlsxという名前のファイルを作成し、案件ボットが読み書きできるようにアクセス権限を設定します。案件管理ファイルのサンプルは、ダウンロードしたファイルに含まれています。

案件管理ファイル名は、以下の環境変数で変更することができます。未設定の場合は以下の値になります。

export ANKEN_WORKSHEET_NAME=案件管理.xlsx

サンプルプログラムの実行

以下のコマンドを実行します。

$ bin/hubot

サンプルプログラムのダウンロード

  • daab-office365-anken
    • 基本セット + 案件ボットのスクリプト
    • 履歴
      • 2017/04/07 github に移行
      • 2014/12/15 初版
  • 案件管理.xlsx
    • 案件ボットのスクリプトで利用する案件ファイルのサンプル