2022/07/7

Salesforce IBM Verseのメールデータ取得方法についてご紹介

 
  

SalesforceとIBMVerseの連携に必要な環境とは?

企業によって導入しているメールクライアントの種類は異なります。したがってSalesforceを導入する際に、Salesforceをメールクライアントごとに適応する方法を理解しておくことが重要です。 IBM社が提供しているメールクライアントにIBMVerseというサービスがあります。Salesforce上ではIBMVerseのデータを取得して活用することが可能です。 本記事ではメールクライアントのIBMVerseのデータを、Salesforceで活用するためのセットアップ方法について解説していきます。

Salesforceにインポート可能なIBMVerseデータの種類

IBMVerseとはIBM社が発表したメール機能を中心としたデジタルソリューションです。 SalesforceにIBMVerseのデータを活用できる範囲はメールだけでなく、会議やプロジェクトのスケジュールやメンバー同士のファイル共有システム、メッセンジャー、複数人でのビデオコミュニケーションなど、取得できる範囲は多岐に渡ります。 SalesforceにIBMVerseのデータをインポートすることで、Salesforceの基本的な機能とIBMVerseの機能を統合することが可能です。 次の章からSalesforceにIBMVerseのメールデータを連携する基本的な方法について解説していきます。

SalesforceにIBMVerseのメールデータを取得するための準備

SalesforceにIBMVerseのメールのデータを連携するためには、IBMVerseのメールのデータが保存されている領域にSalesforceからアクセスを促す必要があります。 IBMVerseのデータはnode.jsアプリに保存されています。そのためSalesforceからnode.jsアプリにアクセスしてデータを取得してください。 Salesforceからnode.jsアプリに連携するには、LightningコンポーネントとLightningOutを利用しましょう。

必要な環境の準備

SalesforceとIBMVerseを連携させるためには、最低限以下の環境を揃えておく必要があります
  • Salesforce Developer Editionアカウント
  • Salesforce Connected App
  • CORS definition(Appを遠隔操作するために必要)
IBMVerse連携用アプリケーションを使用するためには、Developer Editionのアカウントが必要です。 Developer Editionのアカウントをすでに持っている場合は、実際にSalesforce開発組織で動作を見てみましょう。

コンポーネントの構成

SalesforceとIBMVerseを連携させるときは、3つのコンポーネントを準備します。
  • node.jsアプリ
  • Verse拡張アプリ
  • Lightning Out アプリ(Apexが利用できる環境)

Herokunode.jsアプリがnode.jsからデータを取得する記述

ローカル環境でIBMVerseアプリケーションを利用する場合は、Herokunode.jsアプリとの連携が推奨されています。 Herokuにデプロイすれば、寛容にテスト環境を構築できます。

HerokuアプリがHTMLヘッダーにレンダリングを行う例

以下の例ではHerokunode.jsアプリがnode.jsからデータを取得し、HTMLヘッダーにレタリングをしている様子を確認するために、HTMLヘッダーの抜粋を記述しています。
 < html lang=""en"">
	< head>
		< meta charset=""UTF-8"">
		< title>< %= title % >< /title>
		< link rel=""stylesheet"" type=""text/css"" href=""/assets/styles/salesforce-lightning-design-system.css"" / >
		    < script >
        window.addEventListener(""message"", function(event) {
        if (!""< %= verseSourceServer % >"".includes(event.origin)){  //
          return;
        }
        _verseObject = event.data;
        if (_verseObject.verseApiType === ""com.ibm.verse.ping.application.loaded"") {
          var loaded_message = {
            verseApiType : ""com.ibm.verse.application.loaded""
          };
          event.source.postMessage(loaded_message, event.origin);
        }
      }, false);
    < /script >
	< /head >

上記の記述のうち<%= verseSourceServer %>によってHerokuの環境変数から取得するデータを取得しています。
  _verseObject = event.data;= event.data;
verseのデータはJavaScriptによって格納されているので、上記JavaScriptの記述(変数”_verseObject ”)によって簡単にアクセスが可能です。 このようにForce.comとHerokuを利用することで、効率的に連携できます。 salesforce-ibm-verseの全体ソースコードや仕様について確認したい方はGItHubにアクセスしてください。

IBMVerseのメールデータをSalesforceのログに記録する記述

node.jsアプリに保存されているIBMVerseのデータをSalesforceのLightningコンポーネントにレンダリングしていきます。 データをレンダリングする際には必ずLightning OutというLightningコンポーネントを外部連携する機能を利用します。以下の例ではIBMVerseで取得したメールデータをSalesforceのログに反映させるための記述を紹介しています。 IBMVerseの構成を設定する記述は以下のとおりです。
 {
  ""app_id"": ""com.winkelmeyer.salesforce"",
  ""name"": ""Salesforce Verse integration"",
  ""url"": ""https://salesforce-ibm-verse.herokuapp.com/verse"",

  ""extensions"": [
    {
      ""type"": ""com.ibm.verse.action"",
      ""ext_id"": ""com.winkelmeyer.salesforce.logMail"",
      ""name"": ""Salesforceへログを記録する"",
      ""payload"": {},
      ""path"": ""mail.read"",
      ""title"": ""Salesforceへログを記録する""
    }
  ],
  ""payload"": {
    ""features"": [
      ""core""
    ],
    ""renderParams"": {
      ""width"": ""1200"",
      ""height"": ""500""
    }
  },
  ""services"": [
    ""Verse""
  ]
}
出力の結果としては、IBMVerseのメールクライアント上で設定タブをクリックすると「Salesforceへログを記録する」の項目が追加されます。 以下の記述により、リンク先のURLが新たに設定されています。
  ""url"": ""https://salesforce-ibm-verse.herokuapp.com/verse"",

SalesforceとIBMVerseとの連携をさらに発展させるには

本記事ではLightningコンポーネントとLightningOutを介して、node.jsからIBMVerseのメールデータを取得する方法について解説してきました。 IBMVerseはメール以外にも、会議やプロジェクトのスケジュールやメンバー同士のファイル共有システム、メッセンジャー、複数人でのビデオコミュニケーションなど、取得できる範囲は多岐に渡ります。 SalesforceとIBMVerseをさらに連携するためにも、まず本記事に記載した必要な環境の準備について把握しておきましょう。]]>

ITエンジニアへのキャリアチェンジならキャリアチェンジアカデミー

この記事の監修者・著者

株式会社オープンアップITエンジニア
株式会社オープンアップITエンジニア
未経験からITエンジニアへのキャリアチェンジを支援するサイト「キャリアチェンジアカデミー」を運営。これまで4500人以上のITエンジニアを未経験から育成・排出してきました。
・AWS、salesforce、LPICの合計認定資格取得件数:2100以上(2023年6月時点)
・AWS Japan Certification Award 2020 ライジングスター of the Year 受賞

おすすめの動画

  • 【未経験からIT業界へ転職するなら】相談窓口とスキルの獲得はここで解決!IT転職が一気に有利に!【キャリアチェンジアカデミー】

  • 【費用一切不要】未経験からIT業界へ転職するならまずはここへ相談!【キャリアチェンジアカデミー】

  • 【何のエンジニアになれるのか?】未経験からITエンジニアを目指すとこんな道がある【キャリアチェンジアカデミー】