このセクションでは、ボットのインポートとエクスポート、ボットの削除、ボットの変更履歴の確認などについて説明します。
ボット変数とその管理方法を参照するのが良いと思われます。詳細はこちらを参照してください。
ボットのインポートとエクスポート
Kore.aiでは、ボットのタスクおよび関連する設定を別のボットにエクスポートおよびインポートすることができます。この機能は、ボット定義の移行、ボットの複製、またはボット定義の定期的なバックアップを維持するのに役立ちます。特に、エンドユーザー向けにボットをリリースする前に、開発プロセスのさまざまな段階で、多様なバージョンのボットをテストすることに役立ちます。このセクションの記事は、“エクスポート”と“インポート”機能の仕組みと実行方法を理解するために役立ちます。メモ:v8.0リリース以降は、“enableNegativePatterns”フラグは、エクスポートとインポートされるボット定義における「NLPデータ」の下にある「NLP設定」に含まれるようになります。このフラグは、ボットにおいてネガティブパターンが有効/無効になっているかどうかをチェックするために使用されます。このパッチを適用する前は、このフラグは、インポートされたボット定義における「NLPデータ」の下の「NLP設定」の一部であり、また、エクスポートされたボット定義における「設定」の下の「ボット設定」の一部でありました。この変更は、機能の効率化を目的としたもので、v8.0以前に作成されたエクスポートファイルからのボットの増分インポートに失敗することもあります。
ボットのエクスポート
エクスポートオプションを用いて、ボットの定義および設定をエクスポートすることができます。ボットをエクスポートすると、以下のようなZIPファイルがダウンロードされます。
- botDefinition.json:ボットメタデータ、タスク、ボットとタスクレベルの同義語、発話、パターン、ナレッジグラフ、標準応答、フローおよびIDPを含みます。ボットエクスポート時に、ボットタスク、NLPデータ(NLP設定、発話、標準応答)、設定(ボット設定、変数、IVR設定)の中より、エクスポート対象の特定アイテムを選択することができます。
 - config.json:ボット設定、ボット変数、およびIVR設定が含まれます。
 - icon.png:ボットアイコンが含まれます。
 - <カスタムスクリプトファイル名.js>(利用可能な場合):JavaScript機能を持つスクリプトファイルが含まれます。このファイルをボットにアップロードした場合、ボット内のいずれからでもファイル内の機能にアクセスできるようになります。
 
エクスポートのモード
ボットのエクスポートには、以下の2つのモードがあります。公開済みおよび最新バージョン。選択されたモードに応じて、対応するバージョンのボットタスクがエクスポートされます。どちらのモードでも、ボットのタスク、NLPデータ、ボットの設定から、エクスポートする特定のボットコンポーネントを選択することができます。さらに、個々のボットタスクを選択することもできます。
公開済みモード
公開済みモードでボットをエクスポートすると、既存のバージョンにかかわらず、ボットタスクの公開済みバージョンのみがエクスポートされます。例として、ボットがタスクの公開済みバージョンと進行中のアップグレードバージョンで構成されている場合、公開済みバージョンのみがエクスポートされます。以下の表を参照して、どのバージョンのタスクが公開モードでエクスポートされるかをご確認ください。
| タスク | ステータス | 
|---|---|
| 進行中 | タスクが開発進行中で、公開済みモードでエクスポートされない場合、エクスポートされません。 | 
| 設定済み | タスクの設定は完了しているが使用のために未公開で、公開済みモードでエクスポートされない場合、エクスポートされません。 | 
| 公開済み | エクスポートされた公開済みボットタスクは、すべてエクスポートされます。 | 
| アップグレード中 | エクスポートされていない進行中のタスクアップグレード設定は、エクスポートされません。公開済み設定のみがエクスポートされます。 | 
| 却下 | 管理者によって却下されたエクスポートされていないタスク設定は、エクスポートされません。 | 
| 一時停止 | 一時停止中のエクスポートされていないタスクは、エクスポートされません。 | 
最新バージョン
最新モードでボットをエクスポートすると、公開ステータスにかかわらず、ボットタスクの最新バージョンがエクスポートされます。例として、ボットがタスクの公開済みバージョンとアップグレード中のバージョンで構成されている場合、アップグレード中のバージョンがエクスポートされますが、設定済みバージョンだけしかない場合は、設定済みバージョンがエクスポートされます。以下のテーブルを参照して、どのバージョンのタスクが最新モードでエクスポートされるかを理解します。
| タスク | ステータス | 
|---|---|
| 進行中 | 利用可能な唯一のバージョンである場合は、エクスポートされます 以降のバージョンが存在する場合はエクスポートされません | 
| 設定済み | 利用可能な唯一のバージョンである場合はエクスポートされます 以降のバージョンが存在する場合はエクスポートされません | 
| 公開済み | 利用可能な唯一のバージョンである場合はエクスポートされます 以降のバージョンが存在する場合はエクスポートされません | 
| アップグレード中 | ボット内の他のタスクのバージョンにかかわらず、エクスポートされます。 | 
| 却下 | 管理者によって却下されたエクスポートされていないタスク設定は、エクスポートされません | 
| 一時停止 | 一時停止中のエクスポートされていないタスクは、エクスポートされません | 
ボットをエクスポートする手順
- エクスポートしたいボットを開きます。
 - トップメニューから デプロイタブを選択します
 - 左側メニューから、ボット管理->インポート&エクスポートを選択します
 - インポート&エクスポートページで、エクスポート タブを選択します。
 - エクスポートタブにおいて、公開済みまたは最新バージョンのいずれかのエクスポートモードを選択します。
 - デフォルトでは、すべてのボットアイテムがエクスポート向けに選択されています。エクスポートしたくないアイテムの選択を解除します。 

 - タスクについては、さらに選択したタスクのみをエクスポートすることもできます。デフォルトでは、「すべてのタスク」が選択されています。すべてのタスクのリンクをクリックすると、タスクの選択ダイアログが開きますので、エクスポートしたいタスクを選択します。
 - また、依存タスクを含めるを選択するか、またはエクスポート向けを含めないも、選択できます。これらの存在はインポート前にチェックされ、依存するタスクがない場合はインポートが失敗します。これらの依存タスクには、以下のようなものが含まれます。
- リンクされたダイアログ(例:別のダイアログの定義に存在するダイアログノード)。
 - ダイアログのいずれかのノードのIVRプロパティの「再試行回数超過時の動作」を定義するときにリンクされたダイアログです。
 - サブインテント/一時停止設定の一部としてリンクされたダイアログ。
 - 依存タスクが含まれていない場合にダイアログの実行が失敗する可能性があるその他のシナリオ。
 
 - エクスポートをクリックします。エクスポートはバックグラウンドで行われ、完了後にダウンロードボタンが有効になります。ダウンロードをクリックすると、ファイルがローカルコンピュータにダウンロードされます。
 
エクスポートされたボットコンポーネント
ボットエクスポート時に、最新モードあるいは公開モードの選択に合わせて、以下のボットコンポーネントがエクスポートされます。
| ボットタスク | |
|---|---|
| タスクのみ | 
  | 
| ナレッジグラフ | ナレッジグラフの定義と、それに関連する同義語およびクラス。 | 
| NLPデータ | |
| NLP設定 | 
 NLPの詳細設定と除外ワードとフィールドメモリ。NLPの詳細設定(自然言語>詳細設定)には、以下のアイテムがあります。 
  | 
| 発話 | すべての有効な言語のボットによるすべての発話 | 
| 標準レスポンス | すべての有効な言語でのボットによるすべての標準応答 | 
| 設定 | |
| ボットの設定 | 
 ボットの設定画面から以下の情報を確認することができます。 
  | 
| ボット変数 | ボットに存在するすべてのグローバル変数とコンテンツ変数、およびその値。 | 
| IVR設定 | ボットのすべてのIVR設定(ボットの設定 > IVR設定)。 | 
ボットのインポート
以下のインポートタイプのいずれかを使用して、ボットのタスクや設定を新規または既存のボットにインポートすることができます。
- 全体インポート:既存のボットを、インポートされたボット構成に置き換えます。インポート定義に存在しない対象ボットの追加構成はすべて削除されます。ただし、Webhookチャネルは例外で、インポートボットの定義に存在しなくても保持されます。
メモ:このオプションを使用してボットをインポートする前に、対象ボットのバックアップを取ることに十分に留意することを強くお勧めします。
 - 増分インポート:現在のボットを、インポートファイルで利用できる構成でアップグレードします。対象ボットもしくはインポートボットで利用できる追加構成はすべて保持されます。ボットタスク、NLPデータ、およびボット設定からインポートする特定のボットコンポーネントを、選択することができます。増分インポートにおいて、インポートされたボットアイテムが対象ボットアイテムをどのように置き換えるかについては、記事の最後にある増分インポートテーブルのボットアイテムをご参照ください。
 
開始する前に “config.json”ファイルは、対象ボットに必要な値を持つボット変数で構成されています。ボット定義を新しいボットにインポートする前に、ファイルを関連する開発者と共有するか、あるいは自分で変数に適切な値を入力します。
既存のボットへのインポートの手順
ボットをインポートするには、以下の手順に従います。
- エクスポートしたいボットを開きます。
 - トップメニューから デプロイタブを選択します
 - 左側メニューから、ボット管理->インポート&エクスポートを選択します
 - インポート&エクスポートページでインポートタブを選択します。
 - ボット定義ファイルとボット設定ファイルの横にあるファイルの選択ボタンをクリックし、それぞれ“botDefinition.json”と“config.json”のファイルをアップロードします。
 - インポートされたボットのカスタムスクリプトファイルがあれば、任意でそれをアップロードします。

 - 次のいずれかのインポートオプションを選択します。全体インポート または増分インポート。
 - 完全インポートを選択した場合、開発中のコピーにあるボットの定義は、インポートファイルにある定義で上書きされます。
- ボットに1つ以上の追加のタスクや言語がある場合、かつそれらがインポート定義に存在していない場合、これらのタスクは削除済みとしてマークされ、かつボットの公開時に除去されます。
 - インポート後にボットを自動公開するかどうかを選択することができます。
 
 - 増分インポートを選択した場合、インポートするボットアイテムを選択することもできます。
- MLの発話は、追加したり置き換えたりすることができます。
 - 表示された確認ダイアログで、バックアップをクリックして既存のボットの設定をダウンロードします。
メモ:バックアップはオプションですが、特に全体インポートを選択した場合は、インポートされたボットがボットの構成を置き換えた後では、ボットの構成を回復することができないため、バックアップを行うことを強くお勧めします。
 - 続行をクリックしてインポートを開始します。
 - インポートが完了すると、次のような成功メッセージが表示されます。完了をクリックします。
 
 
メモ:ボットが復元されているにもかかわらず、復元後に公開されていない場合、ボットのインポートに失敗してしまいます。
インポートオプションによる新規ボットの作成
ボットの作成中にボットをインポートするには、以下の手順に従います。
- ボットビルダーのホームページの右上にある新規ボット > ボットをインポートをクリックします。

 - ボットの名前、対象ユーザー、色を入力します。詳細は「新しいボットの作成」をご参照ください。
 - ボット定義ファイルとボット設定ファイルの横にあるファイルの選択ボタンをクリックし、それぞれ botDefinition.json と config.json のファイルをアップロードします。
 - ソースボットのカスタムスクリプトファイルがあれば、任意でそれをアップロードし、インポートをクリックします。

 - インポート終了後の完了メッセージで、完了をクリックしてボットタスクのページに進みます。
 
増分インポートのボットアイテム
| コンポーネント | 説明 | 
|---|---|
| 同じ参照IDを持つタスク | インポートされたタスクは、ターゲットボットのタスクを置き換え、現在のステータス(一時停止および拒否されたタスクなど)に関わらず、ステータスが「設定済み」に変更されます。 | 
| 異なる参照IDを持つソースボットのタスク | これらのタスクは、同じ参照IDを持つターゲットボットで作成されます。 | 
| 異なる参照IDを持つターゲットボットのタスク | これらのタスクはそのままです。 | 
| 発話、パターン、タスクレベルの同義語 | インポートされた発話、パターン、タスクレベルの同義語は、対象ボットの同義語を置き換え、インポートされたタスクに適用されます。対象ボットの公開済みモデルはそのまま維持されます。 | 
| ナレッジグラフ、ボットの同義語、標準応答 | 対象ボットの既存のナレッジグラフ、ボットの同義語、標準応答は、インポート済みのものに置き換えられます。 | 
ボットの削除
ボットのタスクがいずれも公開済みの場合、ボットの削除はできません。タスクの公開後、ボット管理者はそれを承認してユーザーに割り当てる必要があります。開発者は割り当てられたタスクを削除することはできません。公開されたタスクを削除するには、ボット管理者がタスクを一時停止する必要があります。また、ボットが公開されているフローの一部である場合、ボットを削除することはできません。フローを削除するか、もしくはフローからボットを削除してから削除する必要があります。
ボットを削除する手順
ボットの変更履歴の確認
ボットの作成後、設定の変更、タスクの追加、チャネルの有効化、フローの追加など、様々な理由で編集が必要になることがあります。ボットに加えられたすべての変更を追跡するために、変更ログを見ることができます。変更ログは、Myボットに対する変更の時系列的なリストを表示します。これは、Myボットを最初に保存してから最後の更新にいたるまでのあらゆる変更内容から構成されています。ボットの変更履歴を表示するには、以下の手順に従います。
- トップメニューから、デプロイタブを選択します
 - 左側メニューから、ボット管理-> 変更ログをクリックします。 
- 逆の時系列順で並べられた変更内容リストで構成されています。
 - 各ページには、直近10件の変更内容と、変更を行ったユーザー名が表示され、続いて変更の概要、および適用された変更のタイムスタンプが表示されます。
 - 公開イベントのログは、選択したすべてのタスク用に統合され、すべてのタスクが公開コメントとともに公開するように選択されていない場合に備えて、タスクがリストアップされます。
 
 
ログに対して、以下のアクションを実行することができます。
- 検索テキストボックスを使用して、任意のテキストを入力することができます。プラットフォームは変更内容の説明でそのテキストを検索し、検索条件を満たすログが表示されます。
 - フィルターオプションを使用して、以下の項目に基づいてフィルタリングすることができます。
- ボットを共同開発している開発者名。
 - 日付の範囲は、過去24時間、過去7日間、または開始日と終了日を指定したカスタム日付のいずれかです。デフォルトでは、過去24時間のすべての開発者の変更内容が表示されます。
 
 - エクスポートアイコンでは、変更履歴をCSV形式でエクスポートすることができます。検索条件やフィルター条件を適用して表示されたログがダウンロードされます。
 



