You need to sign in to do that
Don't have an account?

VF page to Receive Data From Chronicall
Working on getting this up and running but I ran into an error with the VF page. I have checked for hidden characters and formatting but just can’t seem to find why I am getting the errors below:
VF Page to be created:
<apex:page controller="ChronicallRecordingAPI" action="{!init}" showHeader="false" standardStylesheets="false">
<flow:interview name="Chronicall_Recording_Link_API">
<apex:param name="externallistenlink" value="{!externallistenlink}"/>
<apex:param name="callid" value="{!callid}"/>
<apex:param name="agent" value="{!agent}"/>
<apex:param name="callDirection" value="{!callDirection}"/>
<apex:param name="externalNumber" value="{!externalNumber}"/>
<apex:param name="callgroup" value="{!callgroup}"/>
<apex:param name="calltime" value="{!calltime}"/>
<apex:param name="calltag" value="{!calltag}"/>
</flow:interview>
</apex:page>
public class ChronicallRecordingAPI {
public string externallistenlink {get; set;}
public string callid{get; set;}
public string agent{get; set;}
public string callDirection{get; set;}
public string externalNumber{get; set;}
public string callgroup{get; set;}
public string calltime{get; set;}
public string calltag{get; set;}
public PageReference init() {
if ( ApexPages.currentPage().getParameters().get('externallistenlink') != null )
externallistenlink = ApexPages.currentPage().getParameters().get('externallistenlink');
if ( ApexPages.currentPage().getParameters().get('callid') != null )
callid = ApexPages.currentPage().getParameters().get('callid');
if ( ApexPages.currentPage().getParameters().get('agent') != null )
agent = ApexPages.currentPage().getParameters().get('agent');
if ( ApexPages.currentPage().getParameters().get('callDirection') != null )
callDirection = ApexPages.currentPage().getParameters().get('callDirection');
if ( ApexPages.currentPage().getParameters().get('externalNumber') != null )
externalNumber = ApexPages.currentPage().getParameters().get('externalNumber');
if ( ApexPages.currentPage().getParameters().get('group') != null )
callgroup = ApexPages.currentPage().getParameters().get('group');
if ( ApexPages.currentPage().getParameters().get('time') != null )
calltime = ApexPages.currentPage().getParameters().get('time');
if ( ApexPages.currentPage().getParameters().get('tag') != null )
calltag = ApexPages.currentPage().getParameters().get('tag');
return null;
}
}
Errors that I am getting:

I’ll be digging here as well but any help would be great.
Thanks
VF Page to be created:
<apex:page controller="ChronicallRecordingAPI" action="{!init}" showHeader="false" standardStylesheets="false">
<flow:interview name="Chronicall_Recording_Link_API">
<apex:param name="externallistenlink" value="{!externallistenlink}"/>
<apex:param name="callid" value="{!callid}"/>
<apex:param name="agent" value="{!agent}"/>
<apex:param name="callDirection" value="{!callDirection}"/>
<apex:param name="externalNumber" value="{!externalNumber}"/>
<apex:param name="callgroup" value="{!callgroup}"/>
<apex:param name="calltime" value="{!calltime}"/>
<apex:param name="calltag" value="{!calltag}"/>
</flow:interview>
</apex:page>
public class ChronicallRecordingAPI {
public string externallistenlink {get; set;}
public string callid{get; set;}
public string agent{get; set;}
public string callDirection{get; set;}
public string externalNumber{get; set;}
public string callgroup{get; set;}
public string calltime{get; set;}
public string calltag{get; set;}
public PageReference init() {
if ( ApexPages.currentPage().getParameters().get('externallistenlink') != null )
externallistenlink = ApexPages.currentPage().getParameters().get('externallistenlink');
if ( ApexPages.currentPage().getParameters().get('callid') != null )
callid = ApexPages.currentPage().getParameters().get('callid');
if ( ApexPages.currentPage().getParameters().get('agent') != null )
agent = ApexPages.currentPage().getParameters().get('agent');
if ( ApexPages.currentPage().getParameters().get('callDirection') != null )
callDirection = ApexPages.currentPage().getParameters().get('callDirection');
if ( ApexPages.currentPage().getParameters().get('externalNumber') != null )
externalNumber = ApexPages.currentPage().getParameters().get('externalNumber');
if ( ApexPages.currentPage().getParameters().get('group') != null )
callgroup = ApexPages.currentPage().getParameters().get('group');
if ( ApexPages.currentPage().getParameters().get('time') != null )
calltime = ApexPages.currentPage().getParameters().get('time');
if ( ApexPages.currentPage().getParameters().get('tag') != null )
calltag = ApexPages.currentPage().getParameters().get('tag');
return null;
}
}
Errors that I am getting:
I’ll be digging here as well but any help would be great.
Thanks
You need to update line 5 with your page name.
Since your logic has multiple if blocks, we need to cover all the if blocks.
You need to save this code into a new Apex Class.
All Answers
No, 1 Apex Class, 1 VF Page.
1. First, you'll have to save the controller/apex class:
This goes into New Apex Class, although this may give you some errors but try to save it, you can post the error here so we can fix it/hit me up sidhant.sa at gmail dot com:
public class ChronicallRecordingAPI {
public string externallistenlink {get; set;}
public string callid{get; set;}
public string agent{get; set;}
public string callDirection{get; set;}
public string externalNumber{get; set;}
public string callgroup{get; set;}
public string calltime{get; set;}
public string calltag{get; set;}
public PageReference init() {
if ( ApexPages.currentPage().getParameters().get('externallistenlink') != null )
externallistenlink = ApexPages.currentPage().getParameters().get('externallistenlink');
if ( ApexPages.currentPage().getParameters().get('callid') != null )
callid = ApexPages.currentPage().getParameters().get('callid');
if ( ApexPages.currentPage().getParameters().get('agent') != null )
agent = ApexPages.currentPage().getParameters().get('agent');
if ( ApexPages.currentPage().getParameters().get('callDirection') != null )
callDirection = ApexPages.currentPage().getParameters().get('callDirection');
if ( ApexPages.currentPage().getParameters().get('externalNumber') != null )
externalNumber = ApexPages.currentPage().getParameters().get('externalNumber');
if ( ApexPages.currentPage().getParameters().get('group') != null )
callgroup = ApexPages.currentPage().getParameters().get('group');
if ( ApexPages.currentPage().getParameters().get('time') != null )
calltime = ApexPages.currentPage().getParameters().get('time');
if ( ApexPages.currentPage().getParameters().get('tag') != null )
calltag = ApexPages.currentPage().getParameters().get('tag');
return null;
}
}
2. This goes into VF page, let's name it ChronicallRecording:
<apex:page controller="ChronicallRecordingAPI" action="{!init}" showHeader="false" standardStylesheets="false">
<flow:interview name="Chronicall_Recording_Link_API">
<apex:param name="externallistenlink" value="{!externallistenlink}"/>
<apex:param name="callid" value="{!callid}"/>
<apex:param name="agent" value="{!agent}"/>
<apex:param name="callDirection" value="{!callDirection}"/>
<apex:param name="externalNumber" value="{!externalNumber}"/>
<apex:param name="callgroup" value="{!callgroup}"/>
<apex:param name="calltime" value="{!calltime}"/>
<apex:param name="calltag" value="{!calltag}"/>
</flow:interview>
</apex:page>
That is because you are trying to make changes in production. You need to save all your code into Sandbox first.
Then, after saving you need to write a test class for the controller to make sure the coverage is above 75%.
Then you can push the Apex Class and VF Page into production using outbound ChangeSets.
System.AssertException: Assertion Failed: Expected: 0, Actual: 3
Stack Trace: Class.DeleteBatchTest.attachmentsDeletionTest: line 33, column 1
I can think of two possible paths forward at this moment:
1. Either you can fix this test class by refactoring and debugging, which is the best practice. Then, you need to create a new Outbound changeset having elements of the previous changeset and this test class and deploy.
2. Or, assuming you completed your test class with >75% coverage of Controller class, you can use "Run specified tests" options while deploying in the production environment. This option is given when you click on "Deploy" button on Inbound Change Set.
No problem, we are all learners.
I suspect you have not created a test class for controller class:
You may want to refer this example provided by Salesforce: https://developer.salesforce.com/docs/atlas.en-us.pages.meta/pages/pages_controller_error_handling.htm
Haha! Nice, message me if you are stuck! I'm in Mountain Time.
Best,
Sid
public string externallistenlink {get; set;}
public string callid{get; set;}
public string agent{get; set;}
public string callDirection{get; set;}
public string externalNumber{get; set;}
public string callgroup{get; set;}
public string calltime{get; set;}
public string calltag{get; set;}
public PageReference init() {
if ( ApexPages.currentPage().getParameters().get('externallistenlink') != null )
externallistenlink = ApexPages.currentPage().getParameters().get('externallistenlink');
if ( ApexPages.currentPage().getParameters().get('callid') != null )
callid = ApexPages.currentPage().getParameters().get('callid');
IF ( ApexPages.currentPage().getParameters().get('agent') != null )
agent = ApexPages.currentPage().getParameters().get('agent');
if ( ApexPages.currentPage().getParameters().get('callDirection') != null )
callDirection = ApexPages.currentPage().getParameters().get('callDirection');
if ( ApexPages.currentPage().getParameters().get('externalNumber') != null )
externalNumber = ApexPages.currentPage().getParameters().get('externalNumber');
if ( ApexPages.currentPage().getParameters().get('group') != null )
callgroup = ApexPages.currentPage().getParameters().get('group');
if ( ApexPages.currentPage().getParameters().get('time') != null )
calltime = ApexPages.currentPage().getParameters().get('time');
if ( ApexPages.currentPage().getParameters().get('tag') != null )
calltag = ApexPages.currentPage().getParameters().get('tag');
return null;
}
}
You need to update line 5 with your page name.
Since your logic has multiple if blocks, we need to cover all the if blocks.
You need to save this code into a new Apex Class.
No worries. This should add some coverage to the class ~45%
That's okay!
Can you provide more info, sorry, I didn't get the context.
What URL are we talking about?