メタバースが流行ってきた
ここ3年間は3D開発に関わってみて、デジタルツインとかメタバースはコンテンツビジネスだなーと実感した次第です。コンテンツ、自分で作るか、ネット上に公開されている無償・有償のものを使うか。。。
建設業界では設計図の3D化が進んでいて、それらはBIM(Building Information Modeling)とかCIM(Construction Information Modeling)と呼ばれています。BlenderにはIFC規格のBIMを読み込むためのプラグインがあり、私も、それを使って、ネット上に公開されていたBIMをBlenderへ読み込み、テキスチャーを貼り付けて、Unity向けにFBXでエキスポートしたりしています。
昔、私はIP電話の専門家であったこともあり、こういう3Dのコンテンツとコールセンター・コンタクトセンターを結びつけたら面白いだろうなと思いつつあります。15年前、セカンドライフが流行っていた頃も、セカンドライフとコンタクトセンターを連携させたら面白いだろうなと思っていました。
しかし、現在は電話よりもチャットの方が主流な時代なので、3DコンテンツをチャットやCRMと連携させてみたい。そこで、週末の趣味として、住宅のBIMをUnityへ取り込み、SalesforceのCRMと連携させる実験を行なっている最中です(開発中)。
Salesforce Chat REST API
SalesforceにはService Cloud(CRM)という機能があり、IP電話システムと連携(CTI連携)させることで、コンタクトセンターとして機能させることが出来ます。今回は電話は必要なく(すなわちIP電話システムと連携する必要なく)、チャットだけあれば良いので、Service Cloudに含まれるチャット機能を使うことにします。
SalesforceはチャットのREST APIを公開しています。今回、このREST APIを活用し、3DコンテンツとCRMをチャット経由で連携させます。
週末の趣味の活動ですので、今回も、Salesforceの開発者エディション(無償)を使います。チャットのエージェントは2名までです。
実験結果
今回試作したUnityのアプリは、住宅の3Dモデル内を訪問者が歩き回るものです。Unityが提供しているFirst Person Character Controllerを活用しました。WASDキーで移動し、マウス操作で視線(前進する方向)を変えることが出来ます。
画面右側にuGUIでチャットウィンドーをつくりました。ここからSalesforceのService Cloud側にいるエージェントとチャットする想定です。チャットメッセージ入力時はWASD操作を行わない様、Tabキーで、WASD操作モードとメッセージ入力モードの切り替えが出来る様にしました。
Unityのエディター画面上でアプリを動作させ、SalesforceのService Cloud側にいるエージェントとチャットで会話できること確認できました。
あったら良いと思った機能
Unity側アプリとSalesforce Service Cloud間で画面共有出来ると良いと思いました。以前、Unityが提供しているRenderStreamingを実験したことありますが、WebRTCを使って、3Dモデルの中で訪問者が見ている部分をエージェントと共有出来ると良いです。
こういうのは、多分、SalesforceのCTI連携機能を活用し、WebRTCのサービスを提供しているとこ(WebRTCのSaaS)と連携すれば実現出来るものなのかもしれません。
その2へ続く
ここまでがその1。次に、Salesforceのオブジェクト(チャットのトランスクリプトやケース)と連携可能か実験してみたいです。ここがCRM連携の部分。その2へ続く。。。