このプロセスにより、Microsoft DynamicsにPendoをインストールすることができます。ただしPendoでは、[サブスクリプション]タブで拡張アプリケーションとしてMicrosoft Dynamicsを追加した後に、Pendo LauncherからPendoにアクセスすることを推奨しています。
Pendoは、MS Dynamics 365 Customer Engagement v9.1以降に、管理パッケージまたは非管理パッケージでインストールします。インストール後は、以下の手順でメタデータと対象ユーザーを特定できます。
MS D365 CEにDynamics 365パッケージをインストールする
1. MS D365 CE設定の[ソリューション(Solutions)]セクションに移動します。
Classic UIは以下のとおりです。
2. 歯車アイコン(1)から[詳細設定(Advanced Settings)]>[設定(Settings)]>[ソリューション(Solutions)]の順にクリックします。
Modern UIは以下のとおりです。
3.[インポート(Import)]を選択し、提供されたPendoパッケージをMS D365 CEにインポートします。
Classic UIは以下のとおりです。
Modern UIは以下のとおりです。
4. Pendoパッケージを開き、callPendoAPIウェブリソースを編集します。
5.[テキストエディタ(Text Editor)]をクリックします。
6. Pendo APIキーをコピーして、以下の場所に貼り付けます。APIキーは[設定]>[サブスクリプション(Subscriptions)]で確認できます。
function callpendoapi() {
'use strict';
if (window.top.pendo) return;
console.log('Invoking Pendo Agent');
let agentUrl = "https://cdn.pendo.io/agent/static/<YOUR PENDO API KEY HERE>/pendo.js";
pendo(agentUrl);
return false;
}
function pendo(agentUrl) {
'use strict';
(function (p, e, n, d, o) {
var v, w, x, y, z; o = p[d] = p[d] || {}; o._q = [];
v = ['initialize', 'identify', 'updateOptions', 'pageLoad']; for (w = 0, x = v.length; w < x; ++w) (function (m) {
o[m] = o[m] || function () { o._q[m === v[0] ? 'unshift' : 'push']([m].concat([].slice.call(arguments, 0))); };
})(v[w]);
y = e.createElement(n); y.async = !0; y.src = agentUrl;
z = e.getElementsByTagName(n)[0]; z.parentNode.insertBefore(y, z);
})(window.top, window.top.document, 'script', 'pendo');
window.top.pendo.initialize({
visitor: {
id: //Globally Unique Visitor ID
// email: // Recommended if using Pendo Feedback, or NPS Email
// full_name: // Recommended if using Pendo Feedback
// role: // Optional
// You can add any additional visitor level key-values here,
// as long as it's not one of the above reserved names.
},
account: {
id: //Name Of Organization Or Department Visitor Belongs To
// is_paying: // Recommended if using Pendo Feedback
// monthly_value:// Recommended if using Pendo Feedback
// planLevel: // Optional
// planPrice: // Optional
// creationDate: // Optional
// You can add any additional account level key-values here,
// as long as it's not one of the above reserved names.
}
});
}
|
オプション:Dynamics 365アプリケーションに基づいてPendoを選択的に呼び出す
すべてのMS D365 CEアプリケーションではなく、MS D365 CEアプリケーションの一部でPendoを選択的に呼び出したい場合は、以下のサンプルコードをベースにcallPendoAPI関数を置き換えてください。
function callpendoapi() {
'use strict';
if (window.top.pendo) return;
var globalContext = Xrm.Utility.getGlobalContext();
globalContext.getCurrentAppProperties().then(
function success(app) {
console.log(app);
// select which app will have Pendo running
if (app.uniqueName === '<一意のMSD365アプリ名>'){
// Load Pendo if unique name matches
console.log('Invoking Pendo Agent on ' + app.uniqueName);
let agentUrl = "https://cdn.pendo.io/agent/static/<YOUR PENDO API KEY HERE>/pendo.js";
pendo(agentUrl);
}
else if (app.appId === '<一意のMSD365アプリID>'){
// Load Pendo if unique ID matches
console.log('Invoking Pendo Agent on ' + app.appId);
let agentUrl = "https://cdn.pendo.io/agent/static/<YOUR PENDO API KEY HERE>/pendo.js";
pendo(agentUrl);
}
}
MS D365 CEアプリの一意のIDと一意の名前は、以下のようになります。
1. 上部にあるアプリ名をクリックすると、利用可能なすべてのアプリが表示されます。
2. アプリタイルの三点アイコンをクリックし、[アプリデザイナーで開く(Open In App Designer)]を選択します。
3. プロパティをクリックして、一意の名前を表示します。
一意のIDはURLに含まれています。「appid=」を探し、「=」と「&」の間の文字がお客様の一意のIDです。
MS D365 CEアプリの一意のIDと一意の名前は、次のコンソールコマンドで確認することができます。
Xrm.Utility.getGlobalContext().getCurrentAppProperties()
メタデータの設定
上記の手順に従って、呼び出しPendoAPI関数を編集します。
関数を編集できるようになったら、訪問者配列とアカウント配列を探します。訪問者IDは必須フィールドであり、グローバルに一意である必要があります。アカウントIDは部署や組織を指定できるため、指定することを強く推奨します。訪問者IDとアカウントIDおよびその他のメタデータに関するガイドラインと提案については、サポートドキュメントを参照してください。
function callpendoapi() {
'use strict';
if (window.top.pendo) return;
console.log('Invoking Pendo Agent');
let agentUrl = "https://cdn.pendo.io/agent/static/<YOUR PENDO API KEY HERE>/pendo.js";
pendo(agentUrl);
return false;
}
function pendo(agentUrl) {
'use strict';
(function (p, e, n, d, o) {
var v, w, x, y, z; o = p[d] = p[d] || {}; o._q = [];
v = ['initialize', 'identify', 'updateOptions', 'pageLoad']; for (w = 0, x = v.length; w < x; ++w) (function (m) {
o[m] = o[m] || function () { o._q[m === v[0] ? 'unshift' : 'push']([m].concat([].slice.call(arguments, 0))); };
})(v[w]);
y = e.createElement(n); y.async = !0; y.src = agentUrl;
z = e.getElementsByTagName(n)[0]; z.parentNode.insertBefore(y, z);
})(window.top, window.top.document, 'script', 'pendo');
window.top.pendo.initialize({
visitor: {
id: //Globally Unique Visitor ID
// email: // Recommended if using Pendo Feedback, or NPS Email
// full_name: // Recommended if using Pendo Feedback
// role: // Optional
// You can add any additional visitor level key-values here,
// as long as it's not one of the above reserved names.
},
account: {
id: //Name Of Organization Or Department Visitor Belongs To
// is_paying: // Recommended if using Pendo Feedback
// monthly_value:// Recommended if using Pendo Feedback
// planLevel: // Optional
// planPrice: // Optional
// creationDate: // Optional
// You can add any additional account level key-values here,
// as long as it's not one of the above reserved names.
}
});
}
|
訪問者のメタデータの提案はこちらでご覧いただけます。以下に例を示します。
visitor: {
id: Xrm.Utility.getGlobalContext().userSettings.userId,
},
アカウントのメタデータの提案はこちらでご覧いただけます。以下に例を示します。
account: {
id: Xrm.Utility.getGlobalContext().organizationSettings.organizationId,
}
メタデータフィールドを保存したら、Pendoソリューションを公開します。
Pendoがインストールされていることを確認する
Pendoが起動しているかどうかは、こちらの手順で確認することができます。Pendoを初期化するために、MSD365のインスタンスから一度ログアウトし、再度ログインする必要がある場合があります。