Solved Salesforce Client-side Integration Broken

Status
Not open for further replies.

Sam Smith

Joined
Dec 14, 2017
Messages
7
Reaction score
0
Steps to reproduce:
  • Call in from an outside line
  • Create a new contact record based on the number shown
  • Disconnect the call
  • Call in from the same outside line again
The 3CX for Windows app should call up the Salesforce record that was just created. Instead, it attempts to create a new contact record. It does not appear to ever call up an existing record.

We are running PRO license, 15.5.6354.2. This was working a few weeks ago. Can anyone reproduce?
 
Hello @Sam Smith,

Please start by checking the logs from "%AppData%\3CXPhone for Windows\Logs". There you will have some pointers. The integration is working, pretty sure it's some problem in your account.

Kind regards.
 
Code:
12/21/2017 3:24:55 PM - CallStatusChanged - CallID='975:3' - RealTimeCallID='975' - Incoming='True' - OtherPartyNumber='206*******' - State='Ringing'
12/21/2017 3:24:55 PM - Call arrived - contactNumber='206*******' - callType='Inbound' - callId='975'.
12/21/2017 3:24:55 PM - Error: System.Web.Services.Protocols.SoapException: INVALID_FIELD:
select Id, AssistantPhone, Fax, HomePhone,
           ^
ERROR at Row:1:Column:12
No such column 'AssistantPhone' on entity 'Contact'. If you are attempting to use a custom field, be sure to append the '__c' after the custom field name. Please reference your WSDL or the describe call for the appropriate names.
   at System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse(SoapClientMessage message, WebResponse response, Stream responseStream, Boolean asyncCall)
   at System.Web.Services.Protocols.SoapHttpClientProtocol.InvokeAsyncCallback(IAsyncResult result)
12/21/2017 3:24:55 PM - Error: System.Web.Services.Protocols.SoapException: INVALID_FIELD:
select Id, Fax, Phone from Account where (Fax
           ^
ERROR at Row:1:Column:12
No such column 'Fax' on entity 'Account'. If you are attempting to use a custom field, be sure to append the '__c' after the custom field name. Please reference your WSDL or the describe call for the appropriate names.
   at System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse(SoapClientMessage message, WebResponse response, Stream responseStream, Boolean asyncCall)
   at System.Web.Services.Protocols.SoapHttpClientProtocol.InvokeAsyncCallback(IAsyncResult result)
12/21/2017 3:24:55 PM - Error: System.Web.Services.Protocols.SoapException: INVALID_FIELD:
select Id, Fax, Phone from Account where (Fax
           ^
ERROR at Row:1:Column:12
No such column 'Fax' on entity 'Account'. If you are attempting to use a custom field, be sure to append the '__c' after the custom field name. Please reference your WSDL or the describe call for the appropriate names.
   at System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse(SoapClientMessage message, WebResponse response, Stream responseStream, Boolean asyncCall)
   at System.Web.Services.Protocols.SoapHttpClientProtocol.InvokeAsyncCallback(IAsyncResult result)
12/21/2017 3:24:55 PM - Error: System.Web.Services.Protocols.SoapException: INVALID_FIELD:
select Id, AssistantPhone, Fax, HomePhone,
           ^
ERROR at Row:1:Column:12
No such column 'AssistantPhone' on entity 'Contact'. If you are attempting to use a custom field, be sure to append the '__c' after the custom field name. Please reference your WSDL or the describe call for the appropriate names.
   at System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse(SoapClientMessage message, WebResponse response, Stream responseStream, Boolean asyncCall)
   at System.Web.Services.Protocols.SoapHttpClientProtocol.InvokeAsyncCallback(IAsyncResult result)
12/21/2017 3:24:56 PM - CallStatusChanged - CallID='975:3' - RealTimeCallID='975' - Incoming='True' - OtherPartyNumber='206*******' - State='Connected'
12/21/2017 3:24:56 PM - Call connected - callType='Inbound' - callId='975'.
12/21/2017 3:25:01 PM - CallStatusChanged - CallID='975:3' - RealTimeCallID='975' - Incoming='True' - OtherPartyNumber='206*******' - State='Ended'
12/21/2017 3:25:01 PM - Call ended - callType='Inbound' - callId='975'.
12/21/2017 3:25:01 PM - Saving call information for Id='0034100001VHAp8' - Type='Contact'
 
Hello @Sam Smith,

The logs show that some hidden fields are causing this issue:
No such column 'AssistantPhone' on entity 'Contact'.
No such column 'Fax' on entity 'Account'.

In this case, the query is failing because the standard field AssistantPhone on entity Contact, and the standard field Fax on entity Account are missing. You just need to edit the Salesforce configuration to make these fields visible to the query, not necessarily visible in the layout. This way the query will succeed.

In order to do this change:
- Go to “Setup Home > Objects and Fields > Object Manager > Contact > Fields.”
- Click on the field that you want to make visible, for example “AssistantPhone”.
- Press the “View Field Accessibility” button on the upper right side of the screen.
- Click on the “Hidden” label on the right of “Standard User”.
- Under the “Field-Level Security” check the “Visible” option.
- Repeat the procedure for the field Fax on entity Account.

That should do the trick. Please after doing this change, test a new call and if it doesn't work, please check the Salesforce log to see if there is another field hidden that you need to make visible.

Kind regards.
Ernesto.
 
This worked. Thanks Ernesto!
 
Status
Not open for further replies.

Forum statistics

Threads
112,147
Messages
590,961
Members
165,168
Latest member
Stephan Eusebe