Salesforce から MiiTel RecPod を起動する (Aura コンポーネント)
Salesforce Mobile App のアクションから MiiTel RecPod の録音画面を直接起動する方法を説明します。
Salesforce Mobile App のアクションから MiiTel RecPod の録音画面を直接起動する方法を説明します。
概要
Salesforce Mobile App から MiiTel RecPod を起動するには、URL アクションではなく Aura コンポーネントを使用します。
この Aura コンポーネントは、内部的に MiiTel RecPod のディープリンクを開き、録音画面を起動します。ディープリンクの仕様については、MiiTel RecPod のディープリンク機能 (iOS / Android) を参照してください。
Salesforce Mobile App が内蔵 WebView でリンクを処理するため、通常の URL アクションでは OS の標準的なリンク処理が動作しない場合があります。そのため、本ガイドでは Aura コンポーネントを使って MiiTel RecPod の録音画面を起動します。
本ガイドでは、商談レコード画面のアクションとして「会議開始」ボタンを追加し、タップすると MiiTel RecPod の録音画面が直接開く実装を説明します。
前提条件
- Salesforce の システム管理者権限があること
- MiiTel RecPod (バージョン 26.03.10 以降) がインストールされていること
- Salesforce Mobile App にログインできること
- Salesforce Mobile App で商談レコード画面を開けること
手順
1. Aura コンポーネントを作成する
Salesforce の 開発者コンソール (Setup > 開発者コンソール) を開き、File > New > Lightning Component を選択します。コンポーネント名を RecPodLauncher として作成してください。
作成後、各タブに以下のコードを貼り付けます。
COMPONENT
<aura:component implements="force:lightningQuickAction,force:hasRecordId" access="global">
<aura:attribute name="recordId" type="String" />
<aura:attribute name="simpleRecord" type="Object" />
<aura:attribute name="fired" type="Boolean" default="false" />
<force:recordData aura:id="recordLoader"
recordId="{!v.recordId}"
fields="Name"
targetFields="{!v.simpleRecord}"
recordUpdated="{!c.onRecordLoaded}" />
</aura:component>CONTROLLER
({
onRecordLoaded: function(component, event, helper) {
// LOADED / CHANGED 以外 (ERROR, REMOVED) では発火させない
var changeType = event.getParams().changeType;
if (changeType !== "LOADED" && changeType !== "CHANGED") {
return;
}
// 多重発火防止
if (component.get("v.fired")) {
return;
}
component.set("v.fired", true);
var simpleRecord = component.get("v.simpleRecord");
var recordId = component.get("v.recordId");
var recordName = (simpleRecord && simpleRecord.Name) ? simpleRecord.Name : "";
var url = "https://link.miitel.com/record"
+ "?externalId=" + encodeURIComponent(recordId)
+ "&title=" + encodeURIComponent(recordName);
// Salesforce ネイティブのナビゲーションでディープリンクを開く
var urlEvent = $A.get("e.force:navigateToURL");
urlEvent.setParams({ "url": url });
urlEvent.fire();
// モーダルを閉じる
var dismissAction = $A.get("e.force:closeQuickAction");
if (dismissAction) {
dismissAction.fire();
}
}
})DESIGN
<design:component label="MiiTel RecPod 会議開始">
</design:component>2. カスタムアクションを作成する
- Setup > オブジェクトマネージャー > 商談 > ボタン、リンク、およびアクション を開く
- 「新規アクション」 をクリック
- 以下の通りに設定する
| 項目 | 値 |
|---|---|
| アクションタイプ | Lightning コンポーネント |
| Lightning コンポーネント | c:RecPodLauncher |
| 表示ラベル | 会議開始 |
- 「保存」 をクリック
3. ページレイアウトに追加する
- Setup > オブジェクトマネージャー > 商談 > ページレイアウト を開く
- 対象のレイアウトを編集する
- 「モバイルおよび Lightning のアクション」 セクションに
会議開始を追加する - 「保存」 をクリック
動作確認
Salesforce Mobile App で商談レコードを開き、アクションバーから 「会議開始」 をタップしてください。MiiTel RecPod が起動し、以下が自動入力された状態で録音画面が開きます。
- externalId: Salesforce の商談 ID
- title: 商談名
録音データと Salesforce レコードの紐づけ
externalId に Salesforce の商談 ID が自動的にセットされます。録音完了後、Outgoing Webhook 経由で外部システムに連携する際に video/metadata/rec_pod/externalId として参照できます。
詳細は Outgoing Webhook 会議履歴の仕様と利用方法 を参照してください。
Updated about 2 hours ago