Expressアプリを更新してSalesforceへのAPIコールを行う
このセクションでは、Webhook がコールからトリガーされたときに Salesforce に新しいタスクを作成するように Express アプリケーションを更新します。
ExpressJSアプリケーションを更新する:
アプリケーションに JSForceライブラリ のみならず ドットエンブ を使っている:
npm install jsforce dotenv--saveという新しいファイルを作成する。
.envこれは次のようなものである:について
SF_USERNAMEそしてSF_PASSWORDは、Salesforce へのログインに使用するユーザ名とパスワードになります。 ユーザ名とパスワードはSF_TOKENは、Salesforce でセキュリティトークンが生成されたときにメールで受信したはずのトークンです。という新しいJavascriptファイルを作成する。
Salesforce.jsを追加する:のコードを更新する。
app.jsをクリックして、この新しいファイルをインポートする:アプリが読み込まれたら、Salesforce の認証情報を使用してログインするコードを記述します。
のコードを更新する。
app.post('/webhook)セクションで新しいSalesforce.jsファイル。このコードは、VBC番号から発信または着信があったとき、通話が完了したときにトリガーされます。
if (state == "ANSWERED"))、アプリケーションはまず、指定された電話番号を持つコンタクトを探します(event.phoneNumber).これは
salesforce.getContact()関数を使用してコンタクトを検索します。連絡先が存在する場合、関数salesforce.addTask().これにより、Salesforce に新しいタスクが作成され、タイトル、関連する連絡先(contactId)と通話時間。指定された電話番号に一致するコンタクトがない場合は
contact["totalSize"] == 0をチェックすると、アプリケーションは次のように新しいコンタクトを作成します。event.callerIdプロパティを取得し、文字列を姓と名に分割する。発信コールにはこのプロパティがない場合があります。この場合、電話番号をコンタクトの姓として使用します。アプリケーションを起動するには、以下のコマンドを実行する:
node app.js
これで、通話発信または着信が完了すると、Salesforce に新しいタスクが作成されます。
注意: 指定したポート (300) は、ngrok URLを作成するときに使用したのと同じポートです。
セールスフォースへの着信記録
セールスフォースへの着信記録