JavaScript

Expressアプリを更新してSalesforceへのAPIコールを行う

このセクションでは、Webhook がコールからトリガーされたときに Salesforce に新しいタスクを作成するように Express アプリケーションを更新します。

ExpressJSアプリケーションを更新する:

  1. アプリケーションに JSForceライブラリ のみならず ドットエンブ を使っている:

    npm install jsforce dotenv--save
  2. という新しいファイルを作成する。 .envこれは次のようなものである:

    について SF_USERNAME そして SF_PASSWORD は、Salesforce へのログインに使用するユーザ名とパスワードになります。 ユーザ名とパスワードは SF_TOKEN は、Salesforce でセキュリティトークンが生成されたときにメールで受信したはずのトークンです。

  3. という新しいJavascriptファイルを作成する。 Salesforce.js を追加する:

  4. のコードを更新する。 app.js をクリックして、この新しいファイルをインポートする:

    アプリが読み込まれたら、Salesforce の認証情報を使用してログインするコードを記述します。

  5. のコードを更新する。 app.post('/webhook)セクションで新しい Salesforce.js ファイル。

    このコードは、VBC番号から発信または着信があったとき、通話が完了したときにトリガーされます。if (state == "ANSWERED"))、アプリケーションはまず、指定された電話番号を持つコンタクトを探します(event.phoneNumber).

    これは salesforce.getContact() 関数を使用してコンタクトを検索します。連絡先が存在する場合、関数 salesforce.addTask().これにより、Salesforce に新しいタスクが作成され、タイトル、関連する連絡先( contactId)と通話時間。

    指定された電話番号に一致するコンタクトがない場合は contact["totalSize"] == 0 をチェックすると、アプリケーションは次のように新しいコンタクトを作成します。 event.callerId プロパティを取得し、文字列を姓と名に分割する。発信コールにはこのプロパティがない場合があります。この場合、電話番号をコンタクトの姓として使用します。

  6. アプリケーションを起動するには、以下のコマンドを実行する:

    node app.js

これで、通話発信または着信が完了すると、Salesforce に新しいタスクが作成されます。

注意: 指定したポート (300) は、ngrok URLを作成するときに使用したのと同じポートです。