CGSとは?

CGS(Context Generation Server)とは、xAIMLで解決できない処理や、天気などの外部コンテンツを取得する際に利用します。この機能を利用してボットと既存のサービスを連携させ、高機能なボットを作成することができます。

CGSは<ext>タグで使用することができます。

CGSは大きく分けて、内部CGSと外部CGSの2つに分かれます。

内部CGS

ドコモの自然対話プラットフォームに内蔵されているCGSを指します。

内部CGS一覧

CGS名 サービス名 使用用途
汎用CGS multicgs 外部サービスを利用。
URLエンコードCGS urlencoder URLをエンコード。
URLデコードCGS urldecoder URLをデコード。
意図解釈時刻表現変換CGS nludatetime 意図解釈結果の相対時刻を絶対時刻に変換。
WikipediaCGS wikipedia Wikipediaから情報を取得。

外部CGS

ドコモの自然対話プラットフォームに内蔵されていないCGSを指します。

開発者が作成したCGSを、シナリオ設定のサービスURLに登録すると、内部CGSと同じようにxAIML上で外部CGSを利用できます。

※外部CGSの開発ドキュメントはこちらをご覧ください。

CGS実行結果取得方法

CGS実行結果を取得するには、<get>タグなどで下表のPredicateを取得します。

Predicate一覧

Predicate名 内容
_ext_[サービス名]_status 必須処理結果ステータス
true:処理結果あり/false:処理結果なし または エラー)
_ext_[サービス名]_error_code 必須エラーコード
success:正常終了/fail:異常終了/timeout:タイムアウト)
_ext_[サービス名]_error_message エラーメッセージ
_ext_[サービス名]_[Predicate名] 取得データ

_ext_[サービス名]_[JSONキー]

※JSONキー 階層構造はピリオドで表現し、配列は角カッコのzeroオリジンで記述する。

取得データ (JSON形式)

JSONサンプル

記述例