目次


ソーシャル・ネットワークを BPM に統合する

第 2 回 Twitter のデータを CRM に追加する

ソーシャル・メディアを活用した Bonita のビジネス・プロセスを設計する

Comments

コンテンツシリーズ

このコンテンツは全#シリーズのパート#です: ソーシャル・ネットワークを BPM に統合する

このシリーズの続きに乞うご期待。

このコンテンツはシリーズの一部分です:ソーシャル・ネットワークを BPM に統合する

このシリーズの続きに乞うご期待。

この 2 回連載記事の第 1 回では、オープンソースの BPM エンジンである Bonita を利用したソーシャル・メディア検索アプリケーションの機能とアーキテクチャーについて説明し、アプリケーションの構築に取り掛かりました。前回行ったのは、以下の作業です。

  • Bonita で TwitterSearchConnector コネクターを構成しました。これは、ビジネス・プロセスを Twitter に接続するためのコネクターです。
  • Bonita を使用して TwitterSearchConnector クラスのテンプレートを生成しました。このテンプレートが、Twitter との接続機能をラップします。
  • TwitterSearchConnector クラスに Twitter4J を使用させるために、このクラスを手動で編集しました。Twitter4J は、Twitter API を扱うためのオープンソースの Java ライブラリーです。
  • TwitterSearchConnector クラスをスタンドアロン・モードでテストしました。

第 1 回で説明した TwitterSearchConnector の構成手順をすべて完了していない場合には、この記事に付属のソース・コードのダウンロードに含まれる TwitterSearchConnector.jar ファイルを Bonita インストール済み環境にインポートするのでも構いません。それには、Bonita のメニューから「Connector (コネクター)」 > 「Import connector (コネクターのインポート)」の順に選択します。そして TwitterSearchConnector.jar ファイルを参照して「Open (開く)」をクリックすると、Bonita のエディターに、(第 1 回で編集した内容が盛り込まれた) TwitterSearchConnector の完全な Java コードが表示されます。

連載第 2 回となる今回の記事では、このアプリケーションが使用するすべてのアクティビティー、フォーム、変数について説明した後、アプリケーションのビジネス・プロセスを構成していきます。そして、構成が完了したビジネス・プロセスに TwitterSearchConnector を接続し、Bonita でアプリケーションを実行して Twitter メッセージのキーワード検索をテストします。最後の仕上げとして行うのは、このアプリケーションの機能強化です。ユーザーが検索結果を選択すると、そのメッセージに関連付けられた Twitter ユーザーのプロフィールが表示され、さらにそのプロフィール・データを CRM システムに追加できるようにアプリケーションを構成します。

検索アプリケーションのビジネス・プロセス

この記事のソース・コードのダウンロードに含まれている SocialMediaSearchApplication_ProcessFormsAndVariables_1.0.proc というファイルに、この検索アプリケーションを構成するために必要なプロセス定義、フォーム、変数がすべて揃っています (Bonita でプロセス、フォーム、および変数を構成する方法については、連載「ビジネス・プロセス・マネジメントのための Bonita」で詳しく説明しています)。したがって、ここで必要となる作業は、SocialMediaSearchApplication_ProcessFormsAndVariables_1.0.proc ファイルを Bonita インストール済み環境にインポートすることだけです。それには、Bonita のメイン・ツールバーで「Import (インポート)」をクリックし、SocialMediaSearchApplication_ProcessFormsAndVariables_1.0.proc ファイルを参照してください (図 1 を参照)。

図 1. アプリケーションのプロセス定義をインポートする
アプリケーションのプロセス定義を Bonita にインポートする画面のスクリーン・ショット
アプリケーションのプロセス定義を Bonita にインポートする画面のスクリーン・ショット

Finish (完了)」をクリックします。すると、検索アプリケーションのプロセスが Bonita エディター・ウィンドウのホワイトボードに開きます (図 2 を参照)。

図 2. 検索アプリケーションのプロセス定義
検索アプリケーションのプロセス定義を示す Bonita のスクリーン・ショット
検索アプリケーションのプロセス定義を示す Bonita のスクリーン・ショット

図 2 のとおり、このプロセス定義には 6 つのボックスがあります。そのそれぞれが、検索アプリケーションのアクティビティーです。アクティビティーをクリックすると、そのアクティビティーのプロパティーがホワイトボード右下のウィンドウに表示されます。このウィンドウは、「General (一般)」、「Application (アプリケーション)」、「Appearance (外観)」、および「Simulation (シミュレーション)」の 4 つのタブで構成されています。

図 2 の一番左にあるボックスには、「Present the search page (検索ページを表示)」というラベルが付いています。これは、単純な検索ページを表示するアクティビティーです。このアクティビティーによって表示される「Search Tweets (ツイート検索)」フォーム (第 1 回の図 1) に、ユーザーが検索キーワードを入力します。ユーザーが入力する検索キーワードを保持するプロセス変数として、私は searchKeyWord という変数を構成しておきました。searchKeyWord 変数 (および他の変数) を表示するには、ホワイトボード上で 6 つのアクティビティー・ボックス以外の任意の場所をクリックし、右下のウィンドウで「General (一般)」タブを選択し、最後に「Data (データ)」タブを選択します (図 3 を参照)。

図 3. アプリケーションのプロセス変数のなかから選択された searchKeyWord
アプリケーションのプロセス変数のなかから選択された searchKeyWord を示すスクリーン・ショット
アプリケーションのプロセス変数のなかから選択された searchKeyWord を示すスクリーン・ショット

図 2 の左から 2 番目のボックスには、「Search messages on Twitter (Twitter でメッセージを検索)」というラベルが付いています。このアクティビティーについては、次のセクションで TwitterSearchConnector をこのアクティビティーに接続するように構成します。TwitterSearchConnector は、「Search Tweets (ツイート検索)」フォームから検索キーワードを受け取り、そのキーワードを Twitter Web サービスに送信するコネクターです。TwitterSearchConnector から返された検索結果は、tweetsFound という名前の変数が保持します。

図 2 の左から 3 番目のアクティビティー (「Display Twitter messages (Twitter メッセージを表示)」) は、第 1 回の図 2 に示されているように、検索結果 (検出されたツイート) をユーザーに表示します。第 1 回を読んでおわかりのように、完成したアプリケーションでは、ユーザーが任意のメッセージを選択してボタンをクリックすると、そのメッセージを送信した Twitter ユーザーのプロフィールを見ることができます。

次のアクティビティー (「Fetch profile of Twitter user (Twitter ユーザーのプロフィールを取得)」) は、別の Bonita コネクターを使用します。このコネクター (第 1 回の図 5 に示されている TwitterUserProfileConnector) も、後で構成します。TwitterUserProfileConnector は、Twitter に接続して、該当する Twitter ユーザーのプロフィールを取得します。このコネクターが取る入力は 5 つあります。それは、第 1 回で入手した、Twitter Web サービスにログインするための 2 つのセキュリティー・キー・ペア、そしてプロフィールを取得する対象の Twitter ユーザーの名前を指定する twitterUserName 変数です。TwitterUserProfileConnector が Twitter ユーザーに関して返すパラメーターには、名前、場所、言語、プロフィール画像、ユーザーの Web サイトの URL、Twitter フォロワーの数、説明の 7 つがあります。このそれぞれのパラメーターをプロセス変数にマッピングすることになります。

5 番目のアクティビティー (「Display Twitter user profile (Twitter ユーザー・プロフィールを表示)」) は、Twitter ユーザーのプロフィールを「User Profile (ユーザー・プロフィール)」フォーム (第 1 回の図 3) に表示します。プロフィールには、Twitter ユーザーの属性が 7 つ含まれます。「User Profile (ユーザー・プロフィール)」フォームでも、ボタンのクリック操作によって、ユーザーが該当する Twitter ユーザーを新規アカウントとして SugarCRM に追加することができます。

最後のアクティビティー (図 2 の一番右の「Add profile to SugarCRM (プロフィールを SugarCRM に追加)」というラベルの付いたアクティビティー) は、Twitter ユーザーを SugarCRM に追加します。この機能を実装するには、「Create Sugar Account (Sugar アカウントを作成)」という名前のコネクター (Bonita にバンドルされているコネクター) を「Add profile to SugarCRM (プロフィールを SugarCRM に追加)」アクティビティーに接続します。

TwitterSearchConnector をビジネス・プロセスに接続する

ビジネス・プロセスについての説明が済んだところで、ここからは早速、TwitterSearchConnector を構成してアプリケーションのビジネス・プロセスに接続する作業に取り掛かれます。このコネクターの接続先は、「Search messages on Twitter (Twitter でメッセージを検索)」アクティビティーです。

ビジネス・プロセスのホワイトボード内で「Search messages on Twitter (Twitter でメッセージを検索)」アクティビティーをクリックして、このアクティビティーのプロパティーを右下のウィンドウに表示します。「General (一般)」タブで、「Connectors (コネクター)」タブ (図 4 で、青い丸で囲まれたタブ) をクリックします。

図 4. 「Search messages on Twitter (Twitter でメッセージを検索)」アクティビティーの「Connectors (コネクター)」タブ
「Search messages on Twitter (Twitter でメッセージを検索)」アクティビティーの「Connectors (コネクター)」タブを示す Bonita のスクリーン・ショット
「Search messages on Twitter (Twitter でメッセージを検索)」アクティビティーの「Connectors (コネクター)」タブを示す Bonita のスクリーン・ショット

「Connectors (コネクター)」タブには、アクティビティーに接続されたコネクターが表示されます。現時点では、接続されているコネクターはありません。「Add (追加)」ボタン (図 4 で、赤い丸で囲まれたボタン) をクリックすると、「Select a connector (コネクターの選択)」ダイアログが開き、アクティビティーと接続するように構成できるコネクターの一覧が表示されます。

この一覧には、Jasper や SugarCRM をはじめ、よく使われているさまざまなアプリケーション用のコネクターがカテゴリー別に示されます。第 1 回で TwitterSearchConnector を構成するときに指定したカテゴリーは「Social (ソーシャル)」なので、「Social (ソーシャル)」カテゴリーを展開して、「TwitterSearchConnector」を選択します (図 5 を参照)。

図 5. 「Social (ソーシャル)」カテゴリーに含まれる「TwitterSearchConnector」を選択する
「Social (ソーシャル)」カテゴリーから「TwitterSearchConnector」が選択された状態の「Select a connector (コネクターの選択)」ダイアログを示すスクリーン・ショット
「Social (ソーシャル)」カテゴリーから「TwitterSearchConnector」が選択された状態の「Select a connector (コネクターの選択)」ダイアログを示すスクリーン・ショット

次に、以下の手順に従って「Search messages on Twitter (Twitter でメッセージを検索)」アクティビティーに TwitterSearchConnector を接続します。

  1. Search messages on Twitter (Twitter でメッセージを検索)」アクティビティーでの TwitterSearchConnector の役割を説明する情報を提供します。
  2. セキュリティー・クレデンシャル (2 つのキー・ペア) を TwitterSearchConnector に指定します。
  3. 「Search Tweets (ツイート検索)」フォームの検索キーワードを TwitterSearchConnector に渡します。
  4. tweetsFound 変数が TwitterSearchConnector から検索結果を受け取るように構成します。

役割を説明する情報を提供する

「Select a connector (コネクターの選択)」ダイアログで「Next (次へ)」ボタンをクリックして、「Name the connector (コネクターの名前を指定)」ダイアログを表示します (図 6 を参照)。

図 6. 「Name the connector (コネクターの名前を指定)」ダイアログ
Bonita の「Name the connector (コネクターの名前を指定)」ダイアログでまだ名前が指定されていない状態のスクリーン・ショット
Bonita の「Name the connector (コネクターの名前を指定)」ダイアログでまだ名前が指定されていない状態のスクリーン・ショット

「Name the connector (コネクターの名前を指定)」ダイアログのフィールドに以下のように入力します。

  • Name (名前): 「Connection of the search application with Twitter (検索アプリケーションと Twitter との接続)」と入力します。
  • Description (説明): 「Pass the search keyword to TwitterSearchConnector and fetch Twitter data (検索キーワードを TwitterSearchConnector に渡し、Twitter データを取得する)」と入力します。
  • Select event (イベントの選択): このフィールドには、TwitterSearchConnector を呼び出す正確なタイミングとして、アクティビティーの開始時または終了時のいずれかを指定します。このコネクターの場合は、デフォルト値のままにしてください (アクティビティーに関連付ける必要があるタスクは 1 つだけなので、TwitterSearchConnector がアクティビティーの開始時または終了時のどちらに呼び出されるかは重要ではありません)。
  • If connector fails (コネクターに障害が発生した場合): このフィールドには、TwitterSearchConnector に障害が発生した場合に「Search messages on Twitter (Twitter でメッセージを検索)」アクティビティーに実行させるアクションを指定します。Bonita では、このフィールドを使用して、フェイルセーフなアプリケーションを構築することができます。フェイルセーフ機能については、この記事では焦点を当てませんので、このフィールドはデフォルト値のままで構いません。

以上の入力が完了すると、「Name the connector (コネクターの名前を指定)」ダイアログは図 7 のようになっているはずです。

図 7. 入力が完了した「Name the connector (コネクターの名前を指定)」ダイアログ
入力が完了した「Name the connector (コネクターの名前を指定)」ダイアログを示すスクリーン・ショット
入力が完了した「Name the connector (コネクターの名前を指定)」ダイアログを示すスクリーン・ショット

Next (次へ)」をクリックします。今度は「Twitter Search Connector Input Parameters Page (Twitter 検索コネクターの入力パラメーター・ページ)」が表示されます。

TwitterSearchConnector に対してセキュリティー・キーを指定する

図 8 を見るとわかるように、このダイアログには第 1 回で入手した 2 つのキー・ペア (コンシューマー・キーとコンシューマー・シークレット、およびアクセス・トークンとアクセス・トークン・シークレット) を入力する必要があります。

図 8. セキュリティー情報を入力するための構成ダイアログ
セキュリティー情報を入力するための構成ダイアログを示す Bonita のスクリーン・ショット
セキュリティー情報を入力するための構成ダイアログを示す Bonita のスクリーン・ショット

図 8 には、「SearchKeyword」というラベルが付いたフィールドも示されています。

記事に付属のソース・コードのダウンロードに含まれる SecurityKeyValues.txt というファイルに、第 1 回で Twitter から入手したキーをコピーしておきました。独自のセキュリティー・キーを入手していない場合は、このファイルの値を構成ダイアログにコピーするのでも構いません。とりあえず、「SearchKeyword」フィールドは空白のままにしておいてください。他のセキュリティー・データを入力した後のダイアログは、図 9 のようになります。

図 9. セキュリティー・データを入力した後の構成ダイアログ
セキュリティー・データを入力した後の構成ダイアログを示す Bonita のスクリーン・ショット
セキュリティー・データを入力した後の構成ダイアログを示す Bonita のスクリーン・ショット

図 9 では、セキュリティー・キー・フィールドの内容は読めないようになっています。また、「SearchKeyword」フィールドは空白のままです。

TwitterSearchConnector に対して検索キーワードを渡す

検索キーワードは、アプリケーションを実行するたびに変わるはずです。したがって、検索キーワードの値をそのまま「SearchKeyword」フィールドに入力することはできません。この理由から、検索キーワードは searchKeyWord 変数に格納します (「検索アプリケーションのビジネス・プロセス」を参照)。ドロップダウン・リストから「searchKeyWord」を選択し、この変数を 5 番目の入力として TwitterSearchConnector に渡します (図 10 を参照)。

図 10. ドロップダウン・リストから searchKeyWord を選択する
ドロップダウン・リストから選択された searchKeyWord を示す Bonita のスクリーン・ショット
ドロップダウン・リストから選択された searchKeyWord を示す Bonita のスクリーン・ショット

tweetsFound 変数が TwitterSearchConnector の出力を受け取るように構成する

Next (次へ)」ボタンをクリックすると、コネクターの出力をプロセス変数にマッピングするように求める新しいダイアログが表示されます。このダイアログでプロセスに対し、TwitterSearchConnector によって Twitter で検出されたメッセージのリストをどの変数に格納するのかを指示します。図 2 の説明を思い出してください。TwitterSearchConnector がユーザーのために検出したツイートを格納するのは、tweetsFound という変数です。

TwitterSearchConnector には、searchResults という出力しかありません (第 1 回のリスト 2 を参照)。この出力に、TwitterSearchConnector が検出した Twitter メッセージが含まれます。searchResults は、図 11 の左側にある「Connector output (コネクター出力)」ドロップダウン・リストに含まれているはずです。

図 11. コネクター出力とプロセス変数とのマッピング
コネクター出力とプロセス変数とのマッピングを示す Bonita のスクリーン・ショット
コネクター出力とプロセス変数とのマッピングを示す Bonita のスクリーン・ショット

searchResults が選択されたままの状態で、その値を「Destination variable (宛先変数)」ドロップダウン・リストの tweetsFound 変数に割り当てます。このマッピングの結果、searchResults の内容 (Twitter で検出されたメッセージ) が tweetsFound プロセス変数にコピーされるようになります。

Finish (完了)」をクリックします。ここまでの作業はすべて、ソース・コードのダウンロードに含まれる TwitterSearchApplication_CompleteWithTwitterSearchConnector_2.0.proc ファイルに反映されています。

Twitter で検出されたメッセージを表示する

これまでのところで、図 2 の最初の 2 つのボックス (「Present the search page (検索ページを表示)」と「Search messages on Twitter (Twitter でメッセージを検索)」) の構成が完了しました。次のタスクは 3 番目のアクティビティー、「Display Twitter messages (Twitter メッセージを表示)」を構成することです。

「Display Twitter messages (Twitter メッセージを表示)」アクティビティーは、Twitter で検出されたメッセージを tweetsFound プロセス変数を使って表示するフォームに過ぎません。tweetsFound プロセス変数を使用するための構成は、ソース・コードのダウンロードに含まれている TwitterSearchApplication_CompleteWithTwitterMessageDisplay_3.0.proc というファイルにすべて含まれています (変数を使用したフォームの設計については、「ビジネス・プロセス・マネジメントのための Bonita」で詳しく解説しています)。この TwitterSearchApplication_CompleteWithTwitterMessageDisplay_3.0.proc ファイルを Bonita にインポートしてください。

検索アプリケーションを実行する

これで、検索アプリケーションの (初めての) テストを実行することができます。Bonita のメイン・ツールバーで「Run (実行)」ボタンをクリックしてください (図 12 を参照)。

図 12. Bonita のツールバーの「Run (実行)」ボタン
Bonita のツールバーの「Run (実行)」ボタンのスクリーン・ショット
Bonita のツールバーの「Run (実行)」ボタンのスクリーン・ショット

「Search Tweets (ツイート検索)」フォームがブラウザー・ウィンドウに表示されるまで待ちます (図 13 を参照)。

図 13. 「Search Tweets (ツイート検索)」フォーム
ブラウザーに表示された「Search Tweets (ツイート検索)」フォームのスクリーン・ショット
ブラウザーに表示された「Search Tweets (ツイート検索)」フォームのスクリーン・ショット

Twitter で検索したいキーワードを入力して「Search (検索)」ボタンをクリックします。検索アプリケーションは、2 番目のフォームに Twitter で検出したメッセージを表示します (図 14 を参照)。

図 14. Twitter で検出されたメッセージ
ブラウザーに表示された、Twitter で検出されたメッセージを表示するフォームのスクリーン・ショット
ブラウザーに表示された、Twitter で検出されたメッセージを表示するフォームのスクリーン・ショット

今のところ、残りのアクティビティーはまだ構成していないので、検索アプリケーションはここまでのところしか機能しません。

TwitterUserProfileConnector を構成して接続する

今度は、図 2 の 4 番目のアクティビティー (「Fetch profile of Twitter user (Twitter ユーザーのプロフィールを取得)」) を構成します。このアクティビティーには、TwitterSearchConnector と同じような別の TwitterUserProfileConnector という Twitter コネクターが必要になります。TwitterSearchConnector に対して実行した手順を参照しながら、TwitterUserProfileConnectorを以下のように実装して構成してください。

  1. コネクター作成ウィザードを使用して TwitterUserProfileConnector を作成し、このコネクターに関する説明を入力します。
  2. 5 つの入力パラメーターを構成します。具体的には、Twitter Web サービスにログオンする際のセキュリティー・クレデンシャルとなる 2 つのキー・ペア、そしてプロフィールを取得する Twitter ユーザーの名前を格納する twitterUserName プロセス変数です。
  3. 7 つの出力パラメーターを構成します。具体的には、名前、場所、言語、プロフィール画像のパス、Web サイトの URL、ユーザーの Twitter フォロワーの数、そして説明です。
  4. 7 つの出力パラメーターをそれぞれ profileNameprofileLocationprofileLanguageprofilePath2ImageprofileWebSiteURLprofileNumFollowersprofileDescription プロセス変数にマッピングします。
  5. Twitter4J ライブラリーを使用して、手動で TwitterUserProfileConnector Java クラスのソース・コードを編集します。TwitterUserProfileConnector第 1 回のリスト 4 のステップ 4 で使用した Twitter.search() メソッドではなく、Twitter クラスの searchUsers() メソッドを使用します。searchUsers() メソッドは、Twitter ユーザーに関する詳細なプロフィール情報を返します。
  6. TwitterUserProfileConnector を構成して、「Fetch profile of Twitter user (Twitter ユーザーのプロフィールを取得)」アクティビティーに接続します。

上記の手順については TwitterSearchConnector を構成するときに詳しく説明したので、TwitterUserProfileConnector で同じ説明を最初から最後まで繰り返すことはしません。同じく、5 番目のアクティビティー (ユーザー・プロフィールを表示する「Display Twitter user profile (Twitter ユーザー・プロフィールを表示)」) の構成についても具体的には説明しません。これは単なるフォームに過ぎないからです。ソース・コードのダウンロードに含まれる TwitterSearchApplication_CompleteWithProfileConnectorAndDisplay_4.0.proc ファイルでは、ビジネス・プロセスの 5 つのアクティビティーがすべて構成されています。この TwitterSearchApplication_CompleteWithProfileConnectorAndDisplay_4.0.proc ファイルを Bonita にインポートして実行すれば、第 1 回の冒頭で説明した 3 つのフォームがすべて完全に機能するようになったことを確かめられます。

Bonita で SugarCRM とのインターフェースを取る

残るは、図 2 の最後のアクティビティー (「Add profile to SugarCRM (プロフィールを SugarCRM に追加)」) を構成すれば完成です。このアクティビティーでは、「Create Sugar Account (Sugar アカウントを作成)」という名前の Bonita コネクターを使用します。TwitterSearchConnector が Twitter の Web サービス API を使用して Twitter とやりとりするのと同じく、このコネクターも Web サービス API を使用して SugarCRM とやりとりします。

Bonita にバンドルされて提供される「Create Sugar Account (Sugar アカウントを作成)」コネクターは、SugarCRM とのすべての通信を内部で処理します。したがって、ここで必要となる作業は、「Create Sugar Account (Sugar アカウントを作成)」コネクターを「Add profile to SugarCRM (プロフィールを SugarCRM に追加)」アクティビティーに接続することだけです。

作業に進む前に、お使いのマシンまたはネットワーク上のどこかに SugarCRM をインストールしてください (SugarCRM のインストール手順についての詳細は、「参考文献」を参照)。私がこの検索アプリケーションを開発する際にマシンにインストールしたのは、SugarCRM Community Edition バージョン 6.1.6 (Build 5860) です。

Add profile to SugarCRM (プロフィールを SugarCRM に追加)」アクティビティーをクリックして、このアクティビティーのプロパティーを右下のウィンドウに表示してください。「General (一般)」タブをクリックし、このタブで「Connectors (コネクター)」タブを選択して、「Add (追加)」ボタンをクリックします。「Select a connector (コネクターの選択)」ダイアログ (図 5 を参照) が表示されるので、「SugarCRM」カテゴリーを展開し、「Create Sugar Account (Sugar アカウントを作成)」コネクターを選択します (図 15 を参照)。

図 15. 「Create Sugar Account (Sugar アカウントを作成)」コネクターを選択する
「Create Sugar Account (Sugar アカウントを作成)」コネクターが選択された状態の「Select a connector (コネクターの選択)」ダイアログを示す Bonita のスクリーン・ショット
「Create Sugar Account (Sugar アカウントを作成)」コネクターが選択された状態の「Select a connector (コネクターの選択)」ダイアログを示す Bonita のスクリーン・ショット

Next (次へ)」ボタンをクリックします。表示された「Name the connector (コネクターの名前を指定)」ダイアログ (図 6 を参照) に、「Name (名前)」フィールドと「Description (説明)」フィールドの値として、それぞれ「Twitter to Sugar connection (Twitter と Sugar の接続)」、「Create a new SugarCRM account using the Twitter (Twitter を使用して新しい SugarCRM アカウントを作成する)」と入力します。その他のフィールドは、デフォルト値のままにしておきます。以上の入力が完了すると、「Name the connector (コネクターの名前を指定)」ダイアログは図 16 のようになっているはずです。

図 16. 「Create Sugar Account (Sugar アカウントを作成)」コネクターの「Name the connector (コネクターの名前を指定)」ダイアログ
「Create Sugar Account (Sugar アカウントを作成)」コネクターの「Name the connector (コネクターの名前を指定)」ダイアログを示す Bonita のスクリーン・ショット
「Create Sugar Account (Sugar アカウントを作成)」コネクターの「Name the connector (コネクターの名前を指定)」ダイアログを示す Bonita のスクリーン・ショット

Next (次へ)」をクリックします。すると Bonita には、SugarCRM サービスに関する情報の入力を求める「SugarCRM Configuration (SugarCRM の構成)」ダイアログを表示します (図 17 を参照)。

図 17. SugarCRM 環境に関する情報の入力を求めるダイアログ
「SugarCRM Configuration (SugarCRM の構成)」ダイアログを示す Bonita のスクリーン・ショット
「SugarCRM Configuration (SugarCRM の構成)」ダイアログを示す Bonita のスクリーン・ショット

図 17 を見るとわかるように、入力が必要なフィールドは 4 つあります。

  • Sugar SOAP Port (Sugar SOAP ポート): SugarCRM がリッスンしている SOAP サーバーの URL を入力します (SugarCRM の SOAP サービスについての詳細は、「参考文献」を参照)。検索アプリケーションを SugarCRM で試したときに、私のマシンで SOAP サーバーが稼動していた URL は http://127.0.0.1:8080/sugarcrm/service/v2/soap.php でした (図 17 に示されている値)。
  • User (ユーザー) および Password (パスワード): SugarCRM 環境にログオンするときに使用するユーザー名とパスワードを入力します。
  • Application name (アプリケーション名): SugarCRM に接続するアプリケーションの名前として、「Twitter user account (Twitter ユーザー・アカウント)」と入力します。

Next (次へ)」をクリックします。今度は、入力パラメーターの情報を求める「Parameters (パラメーター)」ダイアログが表示されます (図 18 を参照)。

図 18. 「Create Sugar Account (Sugar アカウントを作成)」コネクターの入力パラメーター
「Create Sugar Account (Sugar アカウントを作成)」コネクターの入力パラメーターを指定するダイアログのスクリーン・ショット
「Create Sugar Account (Sugar アカウントを作成)」コネクターの入力パラメーターを指定するダイアログのスクリーン・ショット

図 18 に示されているように、「Create Sugar Account (Sugar アカウントを作成)」コネクターに指定するパラメーターは、「Account name (アカウント名)」、「Phone number (電話番号)」、「Website (Web サイト)」の 3 つがあり、各フィールドのドロップダウン・リストから値を選択してアカウントを作成するようになっています。ただし、TwitterUserProfileConnector から取得した Twitter ユーザー・プロフィールには Twitter ユーザーの電話番号が含まれていないため、このパラメーターを指定することはできません。そこで、使用可能な他の 2 つのパラメーターを profileName プロセス変数、profileWebSiteURL プロセス変数にそれぞれマッピングしておきました。ドロップダウン・リストから、この 2 つの値を選択してください (図 19 を参照)。

図 19. 「Create Sugar Account (Sugar アカウントを作成)」コネクターの入力パラメーター
「Create Sugar Account (Sugar アカウントを作成)」コネクター用に選択された入力パラメーターを示すスクリーン・ショット
「Create Sugar Account (Sugar アカウントを作成)」コネクター用に選択された入力パラメーターを示すスクリーン・ショット

Next (次へ)」をクリックします。次のダイアログでは、コネクター出力をプロセス変数にマッピングするよう求められます。検索アプリケーションは「Create Sugar Account (Sugar アカウントを作成)」コネクターの出力に対しては何も処理をしないので、このダイアログは変更せずに「Finish (完了)」をクリックしてください。最後に、アプリケーションを保存します。

SugarCRM サーバーを起動して、完成した検索アプリケーションを実行し、3 つすべてのフォームを調べてください。「User Profile (ユーザー・プロフィール)」フォームでは、「Add to CRM (CRM に追加)」ボタンをクリックします。すると、「User Profile (ユーザー・プロフィール)」フォーム上にプロフィールが表示されている Twitter ユーザーが新規アカウントとして SugarCRM に追加されるのを確認することができます。

まとめ

この記事では、Bonita のコネクター・フレームワークを使用して、Web サービスを介してビジネス・プロセスに外部アプリケーションを統合するプロセスを紹介しました。この統合プロセスのなかで、皆さんは独自のコネクター (TwitterSearchConnector および TwitterUserProfileConnector) を作成するとともに、Bonita にバンドルされているコネクター (「Create Sugar Account (Sugar アカウントを作成)」) を使用しました。この 2 回の連載をとおして学んだ手法を適用すれば、ビジネス・プロセスに、Facebook などの人気の高い他のアプリケーションからソーシャル・ネットワーキング・データを取り込むことができます。


ダウンロード可能なリソース


関連トピック


コメント

コメントを登録するにはサインインあるいは登録してください。

static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=60
Zone=Java technology
ArticleID=710803
ArticleTitle=ソーシャル・ネットワークを BPM に統合する: 第 2 回 Twitter のデータを CRM に追加する
publish-date=07152011