外部データを表示する
学習の目的
この単元を完了すると、次のことができるようになります。
- 外部ソースのデータを表示する。
- Text Block を作成する。
- OmniScript で Messaging 要素を使用する。
OmniScript に外部データを表示する
現在は Update Account Primary Contact (取引先責任者の更新) OmniScript をリリースしようとしているところです。ただしそのリリース前に、新しい要件が追加されました。取引先の場所の気象情報を追加して、危険な気象条件の発生時にアラートを表示するというものです。
「Update Account Primary Contact (取引先責任者の更新) のガイド付きワークフローに、取引先の気象情報を表示し、危険な気象条件が発生していればアラートが表示されるようにしたいです。」
幸い、このような急な要望にも応えられます。OmniScript の先頭に気象情報を追加することにします。
この仕組みを確認しましょう。
OmniScript で外部データを表示する場合、まず要件に注目します。今回の場合、要件を満たすために次の 3 つが必要です。
- 外部ソースからデータを取得する手段。
- このデータを OmniScript で表示する手段。
- 危険な気象情報の警告メッセージを追加する手段。
では、どの OmniScript 要素がこれらの要件を満たすかを判断しましょう。
OmniStudio Integration Procedure がデータ取得のベストプラクティスである理由の 1 つは、複数のソースからデータを抽出できるという点です。Step の前に 2 個目の Integration Procedure を追加することで、外部ソースから気象データを取得するために必要な Salesforce の内部データ (取引先の郵便番号) を提供できるようになります。好ましそうな Weatherbit.io の API を使用して気象データを取得することにします。
これで外部データを取得する手段が見つかりました。次は天候を表示するベストソリューションを選択しましょう。組織にはすでに Weather FlexCard が用意されているため、カスタム Lightning Web コンポーネント (LWC) 要素を使用して、この Weather カードを OmniScript に埋め込むことができます。
これを踏まえ、このカードを再利用することが天気を表示する最善の方法であるとわかりました。
最後の要件は、取引先の場所に危険な気象条件が発生しているときに警告メッセージを追加することです。Messaging 要素には論理条件 (場合によっては論理条件のセット) が必要であり、その検証でバナーを表示するときを定められるため、Messaging 要素を使用することにします。危険な条件の [Validation View (検証ビュー)] または [Conditional View (条件付きビュー)] を設定すれば、これらの条件に一致したときにのみバナーが表示されます。Step の上には天気データを抽出する Integration Procedure を追加し、OmniScript Step の一番上には、この急な要件を満たす Text Block と Messaging 要素を追加することにしましす。これで、Step の前に 2 個の Integration Procedure が配置されます。
要件を満たす方法を計画できたところで、次は変更を設定しましょう。
FlexCard を埋め込む
FlexCards は、カスタム Lightning Web コンポーネント要素を使用して OmniScripts に埋め込むことができます。この要素を使用すると、すでに別の場所で作成したコンポーネントを再利用できます。組織には、取引先の現在の天気を表示する Weather FlexCard がすでにあり、これには、5 日間の天気予報を表示するフライアウトも設定されています。ボタンをクリックするだけで、現在の天気だけでなく、天気予報も表示できるのでしょうか? そのとおりです。このカードの再利用は、まさに一度の設定で複数の場所にリリースできるという OmniStudio のアプローチを示しています。メモ: 他の要素とは異なり、カスタム LWC が OmniScript プレビューで表示されるのは、OmniScript がアクティブな場合のみです。
Messaging を使用して警告を表示する
Messaging 要素を追加して、取引先の地域の天候が特定の条件に一致するときに警告メッセージを表示します。
必要に応じて、気象条件が true か false かによって、2 種類のメッセージを表示することもできます。false ステートメントが必須の場合、条件が true でないかぎりユーザーは先に進めません (たとえば、気象条件が凍結状態より下の場合、サービスコールのスケジュール設定を完了できない)。
次の表は、使用可能なバナー種別と、条件が true (一致する場合) または false (一致しない場合) のときにそれらが表示されるかどうかをリストにしたものです。[Requirement (必須)] メッセージ種別は条件が false (一致しない場合) にのみ表示されます。
メッセージ種別 |
説明 |
正しい |
誤り |
メッセージの例 |
---|---|---|---|---|
Comment (コメント) |
灰色バナー |
✔ |
✔ |
Please confirm the weather conditions in %CURRENTLOCATION%. (%CURRENTLOCATION% の気象条件を確認してください。) |
Success (成功) |
緑色バナー |
✔ |
✔ |
You have verified the weather conditions in %CURRENTLOCATION%. (%CURRENTLOCATION% の気象条件を確認しました。) |
Warning (警告) |
黄色バナー |
✔ |
✔ |
There is freezing rain at %CURRENTLOCATION%. (%CURRENTLOCATION% では氷晶雨が降っています。) |
要件 |
赤色バナー |
✔ |
You cannot schedule a service call if there are hazardous conditions at %CURRENTLOCATION%. (%CURRENTLOCATION% の天候が危険である場合、サービスをスケジュール設定できません。) |
メッセージ作成が完了すれば、OmniScript の作成は終了です。有効化後にリリースできます。
これで、分岐 OmniScript を設定できました。使いやすく充実したインタラクションを支える分岐は、ユーザーをプロセス全体にわたりスムーズに誘導するということを忘れないでください。非常に便利な機能です。
リソース