Service Cloud使ってますか?
どうも、Service Cloudを愛する人、山下です。
今回はユーザ向けと言うより開発者向けの話になります。
...と言っても、SalesforceのOpen CTI関連の開発をされている方はほんの一握りだと思いますので、少しマニアックな記事と言えるかもしれませんが、お付き合いください。
Open CTIへ接続
Open CTIについてはもう説明の必要はないと思いますが、このOpen CTIを利用するインターフェイスが用意されています。
JavaScriptのAPI 「interaction.js」 として提供され、ライブラリを読み込むことで使用できます。 ライブラリを参照するためには以下のようにscriptファイルのURLを指定します。
1 | <script type= "text/javascript" src= "/support/api/25.0/interaction.js" ></script> |
interaction.jsの主要メソッド
Interaction.js で良く利用されるものをご紹介します。
通話履歴を保存する
- saveLog()
(着信後などに)対象レコードを表示
- screenPop()
- searchAndScreenPop()
クリックToダイアルを有効/無効化
- enableClickToDial()
- disableClickToDial()
電話番号の取得
- getDirectoryNumbers()
クリックToダイアルイベント
- onClickToDial()
実践
上記のメソッドの中から今回は Service Cloud コンソールにて screenPop() メソッドを利用して対象レコードを表示してみます。
取引先を表示ボタンをクリックすると取引先のテラスカイのレコードが表示される。
※通常はありえないですが、今回は対象レコードのID(00128000001xyui)を直接指定しています。
Visualforce
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | <apex:page showHeader= "true" sidebar= "true" > <script src= "/support/api/39.0/interaction.js" ></script> <script type= "text/javascript" > var callback = function (response) { if (response.result) { alert( '成功' ); } else { alert( '失敗:' + result.error); } }; function screenPop() { sforce.interaction.screenPop( '/00128000001xyui' , true , callback); } </script> <apex:form> <button onclick= "screenPop();" >取引先を表示</button> </apex:form> </apex:page> |
画面での動作確認
取引先を表示ボタンをクリック
想定通り、取引先のテラスカイが表示されました。
ちなみに取引先以外のオブジェクトでもIDを指定すれば、ちゃんとそのレコードが表示されます。
最後に
今回、ご紹介した機能は一部ですが、「interaction.js」と「integration.js」を組み合わせるともっとService Cloudは楽しくなります!
冒頭でも話しましたが、Open CTI関連の開発をされている方はほんの一握りだと思いますが、弊社テラスカイには、Salesforceと音声基盤との連携経験が豊富な技術者が在籍しておりますので、お困りの際は是非ご相談ください。
いつでもご連絡をお待ちしております。