Show/Hide Toolbars

Automatic Call Distribution for Salesforce

 

Account Owner Extension Lookup

 

1.Goal - Get the extension number of the account owner of the caller from the Salesforce to do the call distribution.

 

2. Extension look up service - Help

 

3.Automatic Call Distribution for Salesforce set up for Account Owner Extension Look Up. Default set up available with Automatic Call Distribution for Salesforce

 

Account_Owner_SetUp

AccountOwnerLookUp_2

 

4.Parameters required for Extension data lookup service

 

1.Extension Lookup ID

 

Account_Owner_SetUp

 

2.Org Id

3.PBX ID

 

3CX_Main_Setup

 

4.Caller Id

 

5.PBX Token

 

 

Twilio Studio changes for Extension Look Up

 

1.  Create function in Twilio for account owner extension look up.

 

twilio-function-extension-look-up-1

 

twilio-function-extension-look-up-2

 

Sample Code

 

 

Extension look up -

 

const axios = require('axios');

 

exports.handler = function (context, event, callback) {

 const twiml = new Twilio.twiml.VoiceResponse();

 

  var pbxToken = "abcdddd181282828282ws";

  var orgId = "00D24000000HxH6ABCD";

  var pbxId = "E0BE26-58A3C0-65B267";

  var lookupid = "16FDC5-7BE6B6-463E18";

  var apiBaseUrl = "https://acd1.miragecloud.com/acd/api/ExtNo/";

  var callerId = event.CallerId;

  var caller = callerId.split('@')[0].split(':')[1];

 

  var url = apiBaseUrl + pbxId + orgId + "?callerid=" + caller + "&token=" + pbxToken + "&lookupid=" + lookupid;

 axios

   .get(url)

   .then((response) => {

 

     var responsestring = response.data;

 

    // twiml.say('Extension number is  ' + responsestring);

   

    const VoiceResponse = require("twilio").twiml.VoiceResponse;

 

const responseVoice = new VoiceResponse();

const dial = responseVoice.dial({

 //referUrl: "https://example.com/handler",

});

dial.sip(

 "sip:" + responsestring + "@mirageaws1.my3cx.de"

);

 

console.log(response.toString());

return callback(null, responseVoice);

   })

   .catch((error) => {

     console.error(error);

     return callback(error);

   });

};

 

 

 

2. Create a studio flow for the call flow and call the above extension look up function to get the account owner extension. Pass CallerId as the function                parameter.

 

 

twilio-studio-flow-2

 

twilio-studio-function-parameter-ext-lookup

 

 

 

 

 

 

 

Note : To test any Automatic Call Distribution for Salesforce set up ,you can use Custom Configuration Test Tool available in PBX test tool