このCookBookでは、IM-BISの処理画面でIMBoxのチャットを利用してコミュニケーションする方法を紹介しています。
本稿では、案件単位にIMBoxのダイレクトメッセージ(以降DM)を作成し、DM上でやり取りをしながら承認処理をすることを想定しています。
それ以外でも、IMBoxのMessageの宛先を変更したり、案件単位ではなくフロー単位でMessageを作成したり、コミュニケーションの範囲を変更することで要件に沿った利用が考えられます。
完成イメージ
案件を開始する際にDMを投稿してDMスレッドの宛先に処理対象者を追加することで、処理対象者は処理画面を参照しながらIMBoxのチャットを利用してコミュニケーションすることができます。
完成サンプル
以下の完成サンプルをダウンロードしてご活用ください。
なお、以下のサンプルはintra-mart Accel Platform 2018 Summer以降の環境で動作します。
- ロジックフロー定義 : im_cookbook_136809_bis
- LogicDesignerのインポート機能からインポートしてください。
IM-LogicDesigner ユーザ操作ガイド - インポートを行う - サンプルに含まれる定義情報は以下の表の通りです。
- LogicDesignerのインポート機能からインポートしてください。
種類 | 定義名 | 補足説明 |
---|---|---|
フロー定義 | im_cookbook_136809_flow_sendDirectMessage | ダイレクトメッセージを投稿するアクション処理のフロー定義です。 |
フロー定義 | im_cookbook_136809_flow_addAddress | ダイレクトメッセージスレッドの宛先にメンバーを追加する到達処理のフロー定義です。 |
ユーザ定義 | im_cookbook_136809_user_addAddress | ダイレクトメッセージスレッドの宛先にメンバーを追加するユーザ定義です。 |
フロー定義 | im_cookbook_136809_flow_getDMThreadId | 処理画面でダイレクトメッセージのスレッドIDを取得するデータソースのフロー定義です。 |
- IM-BIS定義 : im_cookbook_136809_bis.zip
- BISの一括インポート機能からインポートしてください。
IM-BIS for Accel Platform システム管理者 操作ガイド - 一括インポートを実行する - サンプルに含まれる定義情報は以下の表の通りです。
- BISの一括インポート機能からインポートしてください。
種類 | 定義名 | 補足説明 |
---|---|---|
BIS定義 | im_cookbook_136809_bis | サンプルBIS定義です。 |
データソース定義 | im_cookbook_136809_bis_datasource | 処理画面でダイレクトメッセージのスレッドIDを取得するデータソースです。 |
- チャット表示設定ファイル : imbox-chat-target-config_im_cookbook_136809.zip
- チャット表示設定ファイルを設定場所に配置します。
intra-mart Accel Platform 設定ファイルリファレンス - チャット表示設定 - サンプルにはチャット表示を許可するIM-BISの処理画面のパスが記載されています。
- チャット表示設定ファイルを設定場所に配置します。
レシピ
- 処理画面でIMBoxのチャットを利用する
- ロジックフローを作成する
- ロジックフローを利用する
- データソース定義を登録する
- BIS定義を登録する
- 処理画面でIMBoxのチャットを利用する
IMBoxのチャット表示設定をする
BIS定義の処理画面でIMBoxのチャットを利用するためのチャット表示設定を行います。
チャット表示設定ファイルを設定場所に配置します。
intra-mart Accel Platform 設定ファイルリファレンス - チャット表示設定
ロジックフローを作成する
ロジックフローを作成します。
- im_cookbook_136809_flow_sendDirectMessage
申請ノードのサクション処理のフロー定義です。
申請画面で入力した案件名とコメントをメッセージにした案件のダイレクトメッセージを投稿します。
投稿した案件のダイレクトメッセージスレッドのタスクIDをユーザデータ案件プロパティ情報に登録します。
以下タスクを利用しています。- ダイレクトメッセージを投稿するタスク
- ユーザデータ案件プロパティ情報を登録・更新するタスク
- im_cookbook_136809_flow_addAddress
承認ノードの到達処理のフロー定義です。
案件のダイレクトメッセージスレッドの宛先に展開されている処理対象者を追加します。
以下タスクを利用しています。- ユーザデータ案件プロパティ情報を取得するタスク
- 処理対象者を取得するタスク
- im_cookbook_136809_user_addAddress
スレッドの宛先にメンバーを追加するユーザ定義(JavaScript)タスク
- im_cookbook_136809_flow_getDMThreadId
データソース定義のフロー定義です。
案件のダイレクトメッセージスレッドのスレッドIDを取得します。
以下タスクを利用しています。- ユーザデータ案件プロパティ情報を取得するタスク
ロジックフローを利用する
作成したロジックフローをワークフローのユーザプログラムとして利用するためのリソース設定を行います。
intra-mart Accel Platform IM-Workflow 管理者操作ガイド - ロジックフローを利用する
- im_cookbook_136809_flow_sendDirectMessage
- im_cookbook_136809_flow_addAddress
データソース定義を登録する
作成したロジックフローを処理画面の外部連携で利用するためのデータソース定義を登録します。
IM-BIS for Accel Platform システム管理者 操作ガイド - LogicDesigner
- im_cookbook_136809_flow_getDMThreadId
BIS定義を登録する
ダイレクトメッセージのスレッドIDを保持するためのアイテムを配置した処理画面を作成します。
アクション設定の初期表示イベントを追加します。
- ダイレクトメッセージのスレッドIDを取得する外部連携を追加します。
IM-BIS for Accel Platform IM-BIS 仕様書 - 外部連携 -
アクション設定の初期表示イベントにIMBoxのチャットを表示するカスタムスクリプトを追加します。
$.imbox.chat.startChat({threadId:ダイレクトメッセージのスレッドID});
処理画面でIMBoxのチャットを利用する
処理対象者は処理画面のIMBoxのチャットで申請時に投稿された案件のダイレクトメッセージを利用できます。