Aura コンポーネントを使用した最小化時の組み込みサービス UI のカスタマイズ
カスタム Aura コンポーネントを使用して、組み込みコンポーネントが Web ページ上で最小化されているときのユーザインターフェースをカスタマイズします。
開始する前に、組み込みサービスリリースがすでに設定されていることを確認します。次に、開発者コンソールに移動し、 をクリックします。コンポーネントの名前と説明を入力し、[Submit (送信)] をクリックします。
-
最小化時のインターフェースを実装します。
aura コンポーネントの開始タグを次のように変更します。
1<aura:component implements="lightningsnapin:minimizedUI">このコードは lightningsnapin:minimizedUI インターフェースを実装します。これによって [設定] の [組み込みサービス] で最小化時のコンポーネントとしてこのコンポーネントを選択できるようになります。
-
最小化時の API コンポーネントを作成します。
1<lightningsnapin:minimizedAPI aura:id="minimizedAPI"/>このコードが提供する API を使用して、最小化されたコンポーネントのユーザインターフェースをカスタマイズできます。
-
初期化 aura ハンドラを追加します。
このアクションは、コンポーネントが初期化されるときにコールされます。
1<aura:handler name="init" value="{!this}" action="{!c.onInit}" /> -
マークアップを追加します。
ボタン、画像、検証、その他の作成したいものを作成します。[設定] の [組み込みサービス] で指定した項目を使用してレイアウトを完全に制御できます。
顧客が埋め込みコンポーネントを開くことができるように、必ずコンテナ最大化アクションを追加します。たとえば、ボタンのクリックハンドラとして次のコードを追加することをお勧めします。1<button onclick=”{!c.handleMaximize}”> 2 {!v.message} 3</button> -
コンポーネントコントローラに初期化アクションを追加します。
1/** 2 * On initialization of this component, register the generic event handler for all the minimized events.. 3 * 4 * @param cmp - The component for this state. 5 * @param evt - The Aura event. 6 * @param hlp - The helper for this state. 7 */ 8onInit: function(cmp, evt, hlp) { 9 cmp.find(“minimizedAPI”).registerEventHandler(hlp.minimizedEventHandler.bind(hlp, cmp)); 10}, -
最小化されたコンポーネントからチャットを最大化するハンドラを追加します。
ボタン要素にクリックハンドラを追加します。顧客はこのボタンを使用してチャットを最大化します。
1/** 2 * Function to handle maximizing the chat. 3 * 4 * @param cmp - The component for this state 5 * @param evt - The Aura event. 6 * @param hlp - The helper for this state. 7 */ 8handleMaximize: function(cmp, evt, hlp) { 9 cmp.find(“minimizedAPI”).maximize(); 10}, -
ヘルパーに最小化時のイベント汎用ハンドラを追加します。
1/** 2 * Function to handle maximizing the chat.Function to start a chat request (by accessing the chat API component) 3 * 4 * @param cmp - The component for this state 5 * @param eventName - The name of the event fired. 6 * @param eventData - The data associated with the event fired. 7 */ 8minimizedEventHandler: function(cmp, eventName, eventData) { 9 switch(eventName) { 10 case “prechatState”: 11 cmp.set(“v.message”, “Chat with an Expert!”); 12 Break; 13 // Handle other events here! 14 default: 15 cmp.set(“v.message”, eventData.label); 16 } 17} -
コンポーネントを保存し、[設定] の [組み込みサービス] でコンポーネントを選択します。
コンポーネントを保存した後に、[設定] の [組み込みサービス] のチャット設定に移動します。作成したコンポーネントが最小化時の組み込みコンポーネント用のカスタムコンポーネントとして選択できるようになっています。