操作方法
正規表現
正規表現の詳細については、概念 セクションを参照してください。
電話番号の長さと形式を確認する
電話番号が 12 桁で 254 (形式: 254xxxxxxxxx) で始まるかどうかを確認します。
その場合、正規表現は次のようになります。
^254[0-9]{9}$
最初の文字 ^ は、先頭の文字列に一致し、その後に正確な "254" が続くことを意味し、その後に 0 から 9 までの数字 ([0-9] のみを期待し、これらの {9} のうち 9 つを期待します。$ は式の終わりをマークします。
テンプレート言語
テンプレート言語の詳細については、概念 セクションを参照してください。
テンプレート言語オブジェクトのデータの取得
Answers には、言語オブジェクトをテンプレート化するためのデータを取得する方法が 3 つあります。
- 作成した属性を直接使用します。
- 属性値として保存した JSON ファイルから値を取得します。
- リスト属性から値を取得します。
テンプレート言語を使用して属性の値を取得する最初のオプションは、パーソナライゼーションを使用してそのリストから属性を挿入する場合と同じです。 しかし、この場合、テンプレート言語オブジェクト構文を使用して手動で入力することもできます - 二重中括弧{{attribute_name}}内に記述します。

属性値にテンプレート言語を使用する利点は、フィルターを使用してさまざまな方法(大文字、小文字、大文字、数値の丸め、日付の書式設定など)で値を表示できることです。例: {{attribute_name | capitalize}}、または {{attribute_name | round}}。

より複雑なオプションは、オブジェクト、タグ、およびフィルターを使用して、属性値として保存したjsonファイルから値を取得し、そのようなテンプレートをユーザー向けのメッセージにレンダリングすることです。

このテンプレートの出力は、シミュレーターを使用すると次のようになります。

質問は qa 属性 (json ファイルが保存された場所) から取得され、質問を大文字で表示するようにフィルターが設定され、1 から始まる回答にインデックスを付けるためのタグがあります。
属性値のみを返すメッセージがある場合 (追加のテキスト メッセージがない場合)、属性値が空を返すシナリオが発生することがあります。このようなケースが発生することが予想され、会話がそこで停止したくない場合は、テンプレート言語を使用してそれを防ぎます。
{% if attribute_name %}
{{attribute_name}}
{% else %}
Fallback message.
{% endif %}
ボタンとクイック返信からのポストバック値の保存
ボタンやクイック返信を使用してエンドユーザーが簡単に選択できるようにする場合は、ダイアログの他の要素で使用できるように、選択内容も保存する必要があります。
エンドユーザーの選択を保存するには、ボタンまたはクイック返信のある要素の後にユーザーの応答を保存エレメントを追加する必要があります。
ユーザー応答エレメントの保存の章で述べたように、ポストバック値の保存のみに使用する場合は、メッセージ入力欄を削除する必要があります。
ごみ箱アイコンをクリックし、バリエーションの削除を選択します – これにより、最後のメッセージバリエーションが削除され、フィールドが消えます(必要に応じて、+バリエーションの追加をクリックして再度追加できます)。

メッセージフィールドが削除されたら、属性の設定を続行します。
使用可能な属性の 回答を名前を付けて保存 ドロップダウン リストから、値を保存する属性を選択します。
この場合、ユーザーの選択のみを保存する必要があるため、Repeat messageを構成するべきではありませんが、Fallbackオプションは常に必須です(必要になる可能性は常にあります)。

受信した XML ファイルの保存
応答で受け取る XML ファイルの保存に関しては、属性は JSON を使用する場合とは少し異なる方法で保存され、これはクライアントのドキュメントによって異なります。
この例では、任意の国の首都を返す SOAP API API 呼び出しを確認できます。SOAP API 呼び出しを使用する場合、データの送信方法を指定するのはクライアントであることに注意してください。

応答については、xml パスに基づいて属性にデータを保存する必要があります。この場合、(http://webservices.oorsprong.org/websamples.countryinfo/CountryInfoService.wso?op=CapitalCity)があるため、Envelope、Body、CapitalCityResponse、属性に保存する文字列を含むCapitalCityResultにアクセスする必要があります。したがって、応答の構成は次のようになります。 (opens in a new tab)

フルパスは /Envelope/Body/CapitalCityResponse/CapitalCityResult/text() です。
座標間の距離を計算する
前提 条件
チャットボットツールアプリケーションをチャットボットと統合します。
距離を計算する
チャットボットツールの位置情報距離計算機機能を使用して、2つの座標間の距離を取得します。例: 店舗とエンド ユーザーの場所の間の距離を計算し、最寄りの店舗の場所を知らせます。
詳細については、チャットボットツールのドキュメントを参照してください。
ファイルを Base64 形式に変換する
前提 条件
チャットボットツールアプリケーションをチャットボットと統合します。
ファイル形式の変換
エンドユーザーから他の形式のメディアファイルや画像ファイルを送信する場合は、チャットボットツールのファイルからBase64機能を使用して、ファイルをBase64形式に変換します。
詳細については、チャットボットツールのドキュメントを参照してください。