APEX:从内部pbx到Salesforce的集成
我想在APEX:从内部pbx到Salesforce的集成,salesforce,integration,customization,apex,apex-code,Salesforce,Integration,Customization,Apex,Apex Code,我想在Salesforce 目标是登录到我的PBX并启用单击并拨号 实际上我有这个代码: <apex:page standardController="Contact" extensions="ClickAndDial" action="{!clickAndDial}"> <apex:form > <apex:inputHidden value="{!contact.Id}"/> <apex:inputHidden
Salesforce
目标是登录到我的PBX并启用单击并拨号
实际上我有这个代码:
<apex:page standardController="Contact" extensions="ClickAndDial" action="{!clickAndDial}">
<apex:form >
<apex:inputHidden value="{!contact.Id}"/>
<apex:inputHidden value="{!contact.Phone}"/>
</apex:form>
</apex:page>`
我需要用户登录令牌才能调用API
我如何存储用户的PBX凭据,然后从单击并拨号
方法检索这些凭据,以便在PBX上执行登录
public class ClickAndDial {
public String Phone {get; set;}
public Id Id { get; set; }
public Contact contact { get; set; }
public ClickAndDial(ApexPages.StandardController controller) {
contact = (Contact) controller.getRecord();
Id = contact.Id;
System.debug('The case record: ' + contact);
Phone = contact.Phone;
}
....
public PageReference clickAndDial() {
PageReference pageRef = new PageReference('/' + Id);
HTTPRequest loginRequest = new HTTPRequest();
loginRequest.setEndpoint('callout:SalesforceNC/services/data/v32.0');
System.debug('Case Owner: ' + Phone);
System.debug('Case Id: ' + Id);
Http http = new Http();
HttpRequest request = new HttpRequest();
request.setMethod('POST');`
request.setEndpoint('https://somendpoint');
request.setHeader('Content-Type', 'application/x-www-form-urlencoded');
String payload = 'token=' + EncodingUtil.urlEncode('pbx_login_token','UTF-8') + '&data='+EncodingUtil.urlEncode('my_data','UTF-8');
request.setBody(payload);
HttpResponse response = http.send(request);
return pageRef;
}
}