Calling external program from LeadDesk on Windows


You can call external programs from LeadDesk by defining them as customer URI protocols in Windows:

https://msdn.microsoft.com/en-us/library/aa767914(v=vs.85).aspx

If you want the external program to be run for example when a call is connected, you can then call this URI with the following script as a Campaign URL. The Campaign URL field only accepts http/https URLs so the script below needs to be placed on the target web page.

The example below gets a parameter “URLPhoneParameter” from the URL and passes that variable to alert.exe (defined in the Microsoft guide).

You can use this small program that pop’s up all the parameters given to it to test the protocol configuration. Download here.

Once you have configured the custom protocol, you can connect to LeadDesk for example through the campaigns URL’s which are called every time the contact card is opened.

Would result in a call to:
example.com/test.html?URLPhoneParameter=0401234567

Which in turn will run run alert:0401234567



<html>

<body>

<script language="javascript" type="text/javascript">

function getQueryVariable(variable) {

 var query = window.location.search.substring(1);

 var vars = query.split("&");

 for (var i=0;i<vars.length;i++) {

  var pair = vars[i].split("=");

  if(pair[0] == variable) {
   return pair[1];

  }

 }

 return(false);

}

var number = getQueryVariable("URLPhoneParameter")

window.location.href = "alert:" + number;

 

</script>

 

</body>

</html>

 

You can include call/contact related parameters to the URL. Continuing from the previous example, Example.com/?URLPhoneParameter={ld_phone} would pass the call phone number to alerts.

Please see the list of the URL variables below.

Campaign URL variables

Call’s details

Variable string in URL Description
{ld_agent_id} Agent’s ID
{ld_agent_name} Agent’s name
{ld_agent_user_name} Agent’s username
{ld_agent_external_id} Free field, depends on usage
{ld_callid} Call’s call log id (call_logs.id)
{ld_campaign_id}
{ld_callinglist_id}
{ld_active_session_id}
{ld_login_time}
{ld_client_auth}
{ld_callback_id}
{ld_callback_comment}
{ld_contact_id}
{ld_inbound_queue_id} Inbound queue id (Not supported at Button)
{ld_origin} Calldialog origin

Contacts’s details

Variable string in URL Description
{ld_name} Contact’s first and last name
{ld_fname} Contact’s first name
{ld_lname} Contact’s last name
{ld_phone} Phone number where call is connected to
{ld_address} Address
{ld_city} City
{ld_country} Country
{ld_office} Contact’s company
{ld_vatin} Contact’s company’s vatin (Suomilokalisaatiolla Y-tunnus, mikä on eri asia kuin VATIN. VATIN = ALV-tunnus)
{ld_postal} Contacts’s postal code
{ld_ssc} Contacts’s social security code
{ld_title} Contacts’s title
{ld_www} Contacts’s www address
{ld_email} Contact’s email address
{ld_year_of_birth} Contacts’s year of birth
{ld_gender} Contact’s gender (DOES NOT WORK)
{ld_other_info_1} Other info1
{ld_other_info_2} Other info2
{ld_other_info_3} Other info3
{ld_other_info_4} Other info4
{ld_other_info_5} Other info5
{ld_other_info_6} Other info6
{ld_other_info_7} Other info7
{ld_other_info_8} Other info8
{ld_other_info_9} Other info9
{ld_other_info_10} Other info10
{ld_other_info_11} Other info11
{ld_other_info_12} Other info12
{ld_other_info_13} Other info13
{ld_other_info_14} Other info14
{ld_other_info_15} Other info15
{ld_other_info_16} Other info16
{ld_other_info_17} Other info17
{ld_other_info_18} Other info18
{ld_other_info_19} Other info19
{ld_other_info_20} Other info20
{ld_other_info_21} Other info21
{ld_other_info_22} Other info22
{ld_other_info_23} Other info23
{ld_other_info_24} Other info24
{ld_other_info_25} Other info25
{ld_other_info_26} Other info26
{ld_other_info_27} Other info27
{ld_other_info_28} Other info28
{ld_other_info_29} Other info29
{ld_other_info_30} Other info30
{ld_other_info_31} Other info31
{ld_other_info_32} Other info32
{ld_other_info_33} Other info33
{ld_other_info_34} Other info34
{ld_other_info_35} Other info35