Disaster Resiliency Starter Kit を使用してアプリを構築する

世界保健機関の推定によると、自然災害は世界中で毎年 9 万人の死者、1 億 6 千万人近くの被災者を出しています。特に、過去 10 年にわたって異常気象事象の頻度と激しさが増している中、科学者たちは気候変動がこれらの推定値の大きな要因となっていると考えています。

サード・パーティーのオープンソース・プロジェクトであるか IBM Cloud サービスであるかに関わらず、テクノロジーはこうした地球環境の課題に対処する上で役立ちます。

このチュートリアルでは、Disaster Resiliency Starter Kit を中心にスターター・アプリケーションを構築する手順を説明します。このスターター・アプリケーションはチャットボット、地図サービス、経路指定サービスが組み込まれたものです。チャットボットは IBM® Watson™ Assistant を利用して、洪水の緊急事態に関する質問に答えます。一方、地図サービスとロケーション・サービスは、HERE テクノロジーによって提供されます。

前提条件

このチュートリアルに従うには、あらかじめ以下の作業を行う必要があります。

所要時間

このチュートリアルの所要時間は約 45 分です。

手順

  1. Watson Assistant のインスタンスをセットアップする
  2. HERE Developer ポータルで API 鍵を生成する
  3. サーバーを実行する
  4. モバイル・アプリケーションを実行する

Watson Assistant のインスタンスをセットアップする

IBM Cloud にログインし、Watson Assistant のインスタンスをプロビジョニングします。

  1. IBM Cloud カタログに含まれている Watson Assistant のインスタンスをプロビジョニングします。

    • プランを選択します (このチュートリアルに従うには「Lite (ライト)」プランで十分です)。
    • Service name (サービス名)」に、新しいインスタンスの名前を入力します。
    • Create (作成)」をクリックします。

      Watson Assistant をプロビジョニングする画面のスクリーンショット

  2. Watson Assistant を起動します。

    Watson Assistant を起動する画面のスクリーンショット

  3. アシスタントを作成します。

    • Assistant (アシスタント)」メニューをクリックします。
    • Create assistant (アシスタントを作成)」をクリックします。

      「Create assistant (アシスタントを作成)」ボタンのスクリーンショット

    • Name (名前)」にアシスタントの名前を入力し、「Create assistant (アシスタントを作成)」をクリックします。

      アシスタントを作成する画面のスクリーンショット

  4. アシスタントダイアログ・スキルを追加するために、Solution-Starter-Kit-Disasters-2020 リポジトリーのクローンに含まれている starter-kit-flood-dialog-skill.json ファイルをインポートします。

    • Add dialog skill (ダイアログ・スキルを追加)」をクリックします。

      「Add dialog skill (ダイアログ・スキルを追加)」ボタンのスクリーンショット

    • Import skill (スキルをインポート)」タブを選択します。

    • Choose JSON File (JSON ファイルを選択)」をクリックします。
    • starter-kit-flood-dialog-skill.json ダイアログ・スキル・ファイルを参照して選択します。
    • Import (インポート)」をクリックします。

      ダイアログ・スキルを追加する画面のスクリーンショット

  5. アシスタントのアクション・メニューをクリックし、「Settings (設定)」を選択します。

    ダイアログ・スキルを追加する画面のスクリーンショット

  6. API Details (API 詳細)」を選択し、表示された「Assistant ID (アシスタント ID)」と「Api Key (API 鍵)」の値をメモします。「Assistant URL (アシスタント URL)」については、ディレクトリー/パスは含めずに、ベース URL/ドメインをメモします (例: https://api.us-south.assistant.watson.cloud.ibm.comhttps://api.eu-gb.assistant.watson.cloud.ibm.com)。

    ダイアログ・スキルを追加する画面のスクリーンショット

  7. Preview Link (リンクをプレビュー)」を表示し、ダイアログ・スキルをテストして検証する際のリンクを取得します。

    ダイアログをプレビューするためのボタンのスクリーンショット

    • Try it out and share the link (これを試してリンクを共有する)」セクションに示されている URL をクリックします。

      ダイアログをプレビューするための URL を示す画面のスクリーンショット

    • アシスタントに (洪水に関する) 質問をします。

      ダイアログをプレビューする画面のスクリーンショット

HERE Developer ポータルで API 鍵を生成する

このアプリケーションは地図、検索、経路指定に対応するために、HERE Location Services を利用します。これらのサービスにアクセスするには、API 鍵が必要です。HERE Developer ポータルで説明されている手順に従って、JavaScript API 鍵を生成してください。

サーバーを実行する

以下の手順に従って、サーバー・アプリケーションをセットアップして起動します。

  1. Solution-Starter-Kit-Disasters-2020 リポジトリーのクローンに含まれる starter-kit/server-app ディレクトリーにナビゲートします。

  2. starter-kit/server-app ディレクトリー内にある .env.example ファイルをコピーして、.env という名前の新しいファイルを作成します。

  3. 新しく作成した .env ファイルを編集し、ASSISTANT_IDASSISTANT_IAM_APIKEY の値を、Watson Assistant のダイアログ・スキルの「API Detail (API 詳細)」ページからメモした値で更新します。

  4. manifest.yml ファイル内の name の値を編集し、任意のアプリケーション名 (例: my-app-name) に変更します。

  5. ターミナルを使用して、以下の操作を行います。

    1. Solution-Starter-Kit-Disasters-2020 リポジトリーのクローンに含まれる starter-kit/server-app ディレクトリーにナビゲートします。

    2. 依存関係をインストールします。

       npm install
      
    3. サーバー・アプリケーションをローカルで起動するか、IBM Cloud にデプロイします。

      • ローカルで実行する場合:

        1. アプリケーションを起動します。

           npm start
          
        2. サーバーには http://localhost:3000 でアクセスできます。

      • IBM Cloud にデプロイする場合:

        1. IBM Cloud CLI を使用して IBM Cloud アカウントにログインします。

           ibmcloud login
          
        2. ターゲットとする Cloud Foundry の組織とスペースを設定します。

           ibmcloud target --cf
          
        3. アプリを IBM Cloud にプッシュします。

           ibmcloud app push
          
        4. サーバーには、manifest.yml ファイル内で指定された name を使用した URL (例: https://my-app-name.bluemix.net) でアクセスできます。

モバイル・アプリケーションを実行する

以下の手順に従って、モバイル・アプリケーションを (Xcode iOS シミュレーターを使用して) 実行します。

  1. Solution-Starter-Kit-Disasters-2020 リポジトリーのクローンに含まれる starter-kit/mobile-app ディレクトリーにナビゲートします。

  2. starter-kit/mobile-app ディレクトリー内にある .env.example ファイルをコピーして、.env という名前の新しいファイルを作成します。

  3. 新しく作成した .env ファイルを編集します。

    • STARTER_KIT_SERVER_URL を、前のステップで起動したサーバー・アプリの URL で更新します。

    • HERE_APIKEY を、HERE Developer ポータル内で生成した API 鍵で更新します。

  4. ターミナルを使用して、以下の操作を行います。

    1. Solution-Starter-Kit-Disasters-2020 リポジトリーのクローンに含まれる starter-kit/mobile-app ディレクトリーにナビゲートします。

    2. 依存関係をインストールします。

       npm install
      
    3. カレント・ディレクトリーを ios ディレクトリーに変更します。

       cd ios
      
    4. 依存関係をインストールします。

       pod install
      
    5. カレント・ディレクトリーを mobile-app ディレクトリーに戻します。

       cd .
      
    6. シミュレーター内でアプリを起動します。

       npm run ios
      

まとめ

このチュートリアルでは、IBM Data and AI オファリングと HERE テクノロジーのロケーション・サービスを結合してアプリケーションを構築しました。このスターター・アプリケーションを利用して開発プロセスを活性化し、独自のソリューションの構築を迅速に開始してください。